Update Project

PATCH
/v1/admin/projects/{project_id}

Not available yet. This operation is part of the published contract and answers 501 not_implemented until it is built. The request and response shapes below are final for this contract version.

Authorization

HTTPBearer
headerAuthorizationBearer <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.

Path Parameters

project_id*Project Id
Formatuuid

Header Parameters

Sparq-Workspace?string

For 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.

Formatuuid
If-Match?string

The ETag you last read. A different current version is precondition_failed (412). Optional in 0.5.0.

Request Body

application/json
  1. body

PATCH /v1/admin/projects/{project_id}. issuers and model_classes replace the lists.

name?|null
issuers?array<>|null
context_resolver?|null
model_classes?array<>|null
budgets?|null

Response Body

Successful Response

application/json
  1. response

One host application's contract with Sparq.

project_id*Project Id
Formatuuid
workspace_id*Workspace Id
Formatuuid
slug*Slug

Lower-case name: a letter, then letters, digits, '_' or '-'. Max 63.

Match^[a-z][a-z0-9_-]{0,62}$
name*Name
issuers*array<>
context_resolver*|null
model_classes*array<>
budgets*

Spend limits in US dollars. Soft limits alert and may downgrade; hard limits stop.

project_tenant_id*Project Tenant Id

The project's reserved audience tenant, for work not on behalf of a customer.

Formatuuid
created_at*Created At
Formatdate-time
Example Request
curl -X PATCH 'http://dev-sparq.centralindia.cloudapp.azure.com:8000/v1/admin/projects/497f6eca-6276-4993-bfeb-53cbbbba6f08' \  -H 'Content-Type: application/json' \  -d '{}'
Example Response
{  "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"}