Reference / Governance

grant a time-boxed role (rejected on a separation-of-duties conflict).

POST /v1/role-grants
Secret API key operationId: create_role_grant

Authorization

Server-to-server. Send a secret key as a Bearer token plus the x-application-id header.

Request body · required

  • duration_hours integer<int64> required int64

    How long the elevation lasts, in hours.

  • reason string
  • role string required
  • user_id string<uuid> required uuid

Responses

201 Granted
409 Separation-of-duties conflict

Request

curl -X POST "http://localhost:8080/v1/role-grants" \
  -H "Content-Type: application/json" \
  -d '{
  "duration_hours": 0,
  "reason": "string",
  "role": "string",
  "user_id": "018f3c4a-7b2e-7c1d-9e0a-1f2b3c4d5e6f"
}'

Try it

live request
POST http://localhost:8080/v1/role-grants

Request body

application/json