Decide Change Request

POST
/v1/admin/change-requests/{change_request_id}/approvals

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.

Approve or reject. The author of the change request cannot approve it.

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

change_request_id*Change Request 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
Idempotency-Key?string

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

Length8 <= length <= 128

Request Body

application/json
  1. body
decision*Decision
Value in"approve""reject"
comment?|null

Response Body

Successful Response

application/json
  1. response

A set of drafts going live together. The author can never approve it (maker != checker).

change_request_id*Change Request Id
Formatuuid
project_id*Project Id
Formatuuid
draft_ids*array<>
title*Title
description*string|null
status*ChangeRequestStatus
Value in"open""approved""rejected""published""withdrawn"
created_by*Created By
requires_operator*Requires Operator

True when a destructive tool binding changes.

approvals*array<>
created_at*Created At
Formatdate-time
Example Request
curl -X POST 'http://dev-sparq.centralindia.cloudapp.azure.com:8000/v1/admin/change-requests/497f6eca-6276-4993-bfeb-53cbbbba6f08/approvals' \  -H 'Content-Type: application/json' \  -d '{  "decision": "approve"}'
Example Response
{  "change_request_id": "f90819c3-6f40-44d9-9518-d77c485c0c12",  "project_id": "405d8375-3514-403b-8c43-83ae74cfe0e9",  "draft_ids": [    "fff3ab91-b09a-47fa-8c64-04c041debbb6"  ],  "title": "string",  "description": "string",  "status": "open",  "created_by": "string",  "requires_operator": true,  "approvals": [    {      "approver": "string",      "credential_id": "13c40afa-2996-4a0c-b2e9-68fba9462242",      "decision": "approve",      "comment": "string",      "decided_at": "2019-08-24T14:15:22Z"    }  ],  "created_at": "2019-08-24T14:15:22Z"}