List admin keys
⚠️
Preview — this feature is being built; the design below is the spec.
GET https://app.syntic.ai/v1/organizations/admin_keysReturn the organization’s admin keys with their prefix, creator, IP allowlist and last use. Secrets are never returned. Admin keys are created and revoked only in the Console.
For how this fits into a full workflow, see Admin API and admin keys.
Headers
| Header | Required | Value |
|---|---|---|
Authorization | Yes | Bearer <admin key>: an Admin API key (sk_admin_...). Inference keys are refused with 403 admin_key_required. See Admin API keys. |
syntic-beta | Yes, while in preview | admin-2026-11-01. Without it the call fails with 400 beta_required. See Versioning. |
Query parameters
| Parameter | Type | Default | Description |
|---|---|---|---|
status | string | active | active, inactive or all. |
limit | integer | 20 | 1 to 100. |
after_id | string | Next page: the previous page’s last_id. | |
before_id | string | Previous page: the previous page’s first_id. |
Response
200 OK, Content-Type: application/json
{
"data": [
{
"id": "adminkey_01JCC2E4G6J8L0N2Q4S6",
"type": "admin_key",
"name": "terraform-org",
"prefix": "sk_admin_7d3e",
"status": "active",
"created_by": {
"id": "user_01J9X8Z6B4D2F0H8K6M4",
"email": "ops@example.com",
"role": "owner"
},
"allowed_ips": [
"203.0.113.0/24"
],
"created_at": "2026-11-01T09:00:00Z",
"last_used_at": "2026-11-05T02:00:13Z"
}
],
"has_more": false,
"first_id": "adminkey_01JCC2E4G6J8L0N2Q4S6",
"last_id": "adminkey_01JCC2E4G6J8L0N2Q4S6"
}Examples
curl -sS https://app.syntic.ai/v1/organizations/admin_keys \
-H "Authorization: Bearer $SYNTIC_ADMIN_KEY" \
-H "syntic-beta: admin-2026-11-01"Errors
Errors use the error envelope and carry a request_id. Codes specific to this operation:
| Status | type | code | When |
|---|---|---|---|
| 400 | invalid_request_error | beta_required | The syntic-beta header is missing. |
| 401 | authentication_error | invalid_api_key | The admin key is missing, unknown, revoked or expired. |
| 403 | permission_error | admin_key_required | An inference key was used. |
| 429 | rate_limit_error | rate_limited | Too many requests; wait for Retry-After. See Rate-limit headers. |
Related
Was this page helpful?