Create Project
HTTPBearerAuthorizationBearer <token>Bearer credential. API keys look like sqk_<geo>_<key_id>_<secret>: treat them as opaque and never put one in a browser. Older keys without the geo part stay valid until rotated. Find a geo's endpoints through GET /.well-known/sparq-discovery before sending a key.
workspace_id*Workspace IduuidSparq-Workspace?stringFor a person signed in to a console with several workspaces: the workspace this call is for, one of their memberships (listMyMemberships). Without it such a person gets workspace_required (400); a workspace they are not a member of is forbidden. It never grants anything, and other callers' credentials ignore it.
uuidIdempotency-Key?stringMakes a retry safe: the same key, route and body within 24 hours returns the stored response and the same result id. The same key with a different body or route is idempotency_conflict; while the first request runs, idempotency_in_progress.
8 <= length <= 128application/json- body
slug*SlugLower-case name: a letter, then letters, digits, '_' or '-'. Max 63.
^[a-z][a-z0-9_-]{0,62}$name*Name1 <= length <= 500issuers?array<>context_resolver?|Host tool Sparq calls to resolve what the caller may see.
model_classes?array<>Model classes the project's agents may request.
budgets?Spend limits in US dollars. Soft limits alert and may downgrade; hard limits stop.
Successful Response
application/json- response
One host application's contract with Sparq.
project_id*Project Iduuidworkspace_id*Workspace Iduuidslug*SlugLower-case name: a letter, then letters, digits, '_' or '-'. Max 63.
^[a-z][a-z0-9_-]{0,62}$name*Nameissuers*array<>context_resolver*|nullmodel_classes*array<>budgets*Spend limits in US dollars. Soft limits alert and may downgrade; hard limits stop.
project_tenant_id*Project Tenant IdThe project's reserved audience tenant, for work not on behalf of a customer.
uuidcreated_at*Created Atdate-timecurl -X POST 'http://dev-sparq.centralindia.cloudapp.azure.com:8000/v1/admin/workspaces/497f6eca-6276-4993-bfeb-53cbbbba6f08/projects' \ -H 'Content-Type: application/json' \ -d '{ "slug": "string", "name": "string"}'{ "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9", "workspace_id": "0967198e-ec7b-4c6b-b4d3-f71244cadbe9", "slug": "string", "name": "string", "issuers": [ { "issuer": "http://example.com", "jwks_uri": "http://example.com", "audience": "string", "algorithms": [ "RS256" ], "tenant_claim": "string", "roles_claim": "roles" } ], "context_resolver": "tickets.get", "model_classes": [ "fast" ], "budgets": { "monthly_usd_soft": "string", "monthly_usd_hard": "string", "per_audience_tenant_daily_usd": "string" }, "project_tenant_id": "1fb259a9-39f7-47d8-80b0-361629fd29d0", "created_at": "2019-08-24T14:15:22Z"}