Skip to content
AbloAblo
Esc
navigateopen⌘Jpreview

Mint a capability for an agent or system

A scoped, revocable grant. Narrow by default: an agent or system capability must name its syncGroups and operations.

POST/v1/capabilities
Request body
requiredapplication/json
participantKindstringrequired
Allowed:useragentsystem
participantIdstring
min length 1
organizationIdstring
min length 1
syncGroupsstring[]
Show properties
Array of string
Any of:
string
string
string
string
operationsstring[]
ttlSecondsintegerrequired
max 9007199254740991
labelstring
min length 1
wideScopeboolean
userMetaobject
Responses
201The minted capability. `token` is the credential — carry it as the Bearer token on every other call. `scope` is what was minted, which is not always what was asked for.
capabilityIdstringrequired
min length 1
tokenstringrequired
min length 1
expiresAtstring<date-time>required
matches ^(?:(?:\d\d[2468][048]|\d\d[13579][26]|\d\d0[48]|[02468][048]00|[13579][26]00)-02-29|\d{4}-(?:(?:0[13578]|1[02])-(?:0[1-9]|[12]\d|3[01])|(?:0[469]|11)-(?:0[1-9]|[12]\d|30)|(?:02)-(?:0[1-9]|1\d|2[0-8])))T(?:(?:[01]\d|2[0-3]):[0-5]\d(?::[0-5]\d(?:\.\d+)?)?(?:Z))$
organizationIdstringrequired
min length 1
scopeobjectrequired
Show properties
organizationIdstringrequired
min length 1
projectIdstring | anyrequired
default: null
Show properties
Any of:
string
string
any
any
branchIdstring | anyrequired
default: null
Show properties
Any of:
string
string
any
any
branchRootbooleanrequired
default: false
syncGroupsstring[]required
operationsstring[]required
participantKindstringrequired
Allowed:useragentsystem
participantIdstringrequired
min length 1
userMetaobjectrequired
400The request did not satisfy the published contract.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
401The Bearer credential is missing, malformed, or expired.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
403The credential does not authorize this operation.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
404The addressed resource does not exist in the credential scope.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
409The request conflicts with current claim, version, or idempotency state.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
429The caller exceeded an enforced rate limit.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
500The server could not complete the request.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
503A required service is temporarily unavailable.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
defaultAn HTTP error not otherwise listed; decoded through the canonical envelope.
typestringrequired
codestring
paramstring
messagestringrequired
doc_urlstring
request_idstring
errorsobject[]
Show properties
Array of object
codestring
messagestringrequired
paramstring
Request
curl -X POST "https://api.abloatai.com/api/v1/capabilities" \
  -H "Content-Type: application/json" \
  -d '{
  "participantKind": "user",
  "participantId": "string",
  "organizationId": "string",
  "syncGroups": [
    "default"
  ],
  "operations": [
    "string"
  ],
  "ttlSeconds": 0,
  "label": "string",
  "wideScope": true,
  "userMeta": {}
}'
Response
{
  "capabilityId": "string",
  "token": "string",
  "expiresAt": "2024-01-01T00:00:00Z",
  "organizationId": "string",
  "scope": {
    "organizationId": "string",
    "projectId": null,
    "branchId": null,
    "branchRoot": false,
    "syncGroups": [
      "string"
    ],
    "operations": [
      "string"
    ],
    "participantKind": "user",
    "participantId": "string"
  },
  "userMeta": {}
}