For AI agents: markdown of this page — /docs-content-en/management-keys/get.md documentation index — /llms.txt

Get an API key

GET /v1/keys/:id

Returns a single API key record that belongs to the management key's owner, by record ID. The key value is not returned.

Parameters

Parameter Type Required Description
Parameterid (path) Typestring Requiredyes DescriptionKey record ID. List: GET /v1/keys

Examples

This endpoint accepts only a management key — see Limitations.

curl — management key

Terminal
curl "https://vibecode.bitrix24.com/v1/keys/6dbad0ce-79a9-43f5-8ca4-3e1af7ef63bc" \
  -H "X-Api-Key: YOUR_MANAGEMENT_KEY"

JavaScript — management key

javascript
const res = await fetch('https://vibecode.bitrix24.com/v1/keys/6dbad0ce-79a9-43f5-8ca4-3e1af7ef63bc', {
  headers: {
    'X-Api-Key': 'YOUR_MANAGEMENT_KEY',
  },
})

const { success, data } = await res.json()
console.log('Key:', data.name, '—', data.status)

Response fields

Field Type Description
Fieldsuccess Typeboolean DescriptionAlways true on success
Fielddata.id Typestring DescriptionKey record ID
Fielddata.name Typestring DescriptionKey name set at creation
Fielddata.prefix Typestring DescriptionFirst characters of the key value
Fielddata.suffix Typestring DescriptionLast four characters of the key value
Fielddata.type Typestring DescriptionKey record type, always APP
Fielddata.userId Typestring DescriptionKey owner ID
Fielddata.portalId Typestring DescriptionBitrix24 account ID
Fielddata.clientId Typestring | null DescriptionOAuth client ID, if recorded on the key. Otherwise null
Fielddata.scopes Typearray DescriptionKey scopes
Fielddata.ipWhitelist Typearray DescriptionAllowed IP addresses. An empty array means no restriction
Fielddata.expiresAt Typestring | null DescriptionExpiration date (ISO 8601), null — no expiration
Fielddata.rateLimit Typenumber | null DescriptionIndividual request limit for AI endpoints, null — the platform-wide limit
Fielddata.status Typestring DescriptionACTIVE, REVOKED, EXPIRED or BLOCKED
Fielddata.lastUsedAt Typestring | null DescriptionDate of the last request made with this key (ISO 8601)
Fielddata.createdAt Typestring DescriptionCreation date (ISO 8601)
Fielddata.updatedAt Typestring DescriptionDate of the last update (ISO 8601)
Fielddata.accessMode Typestring DescriptionREADWRITE or READONLY
Fielddata.totalDefault Typeboolean | null DescriptionWhether meta.total is returned in lists requested with this key. null — the platform setting applies
Fielddata.issuedVia Typestring | null DescriptionChannel through which the key's webhook was issued: per-portal and cloud-shared — the connector module on the Bitrix24 account, dev_key — the owner's developer key, legacy — registration through Bitrix24 Network, none — no webhook was created, the key has only vibe:* permissions. null if the channel is not recorded
Fielddata.b24Ready Typeboolean | null DescriptionWhether the key has working credentials for requests to Bitrix24. null for an application authorization key and for a key with only vibe:* scopes

Response example

JSON
{
  "success": true,
  "data": {
    "id": "6dbad0ce-79a9-43f5-8ca4-3e1af7ef63bc",
    "name": "CRM integration",
    "prefix": "vibe_api_XXXXXXXXX",
    "suffix": "XXXX",
    "type": "APP",
    "userId": "fafa9780-eed7-4d29-b040-2448d924f452",
    "portalId": "0d9f7744-f853-47c7-b06e-6f61f9dd1b7f",
    "clientId": null,
    "scopes": ["crm", "task", "im", "vibe:ai", "vibe:search", "vibe:storage"],
    "ipWhitelist": [],
    "expiresAt": null,
    "rateLimit": null,
    "status": "ACTIVE",
    "lastUsedAt": "2026-10-23T10:01:53.371Z",
    "createdAt": "2026-10-14T07:07:00.732Z",
    "updatedAt": "2026-10-23T10:01:53.371Z",
    "accessMode": "READWRITE",
    "totalDefault": null,
    "issuedVia": "cloud-shared",
    "b24Ready": true
  }
}

Error response example

404 — the key was not found:

JSON
{
  "success": false,
  "error": {
    "code": "KEY_NOT_FOUND",
    "message": "API key not found"
  }
}

Errors

HTTP Code Description
HTTP404 CodeKEY_NOT_FOUND DescriptionThere is no key with this id, it belongs to another user, or it is a management key
HTTP403 CodeMANAGEMENT_SCOPE_REQUIRED DescriptionThe management key lacks the vibe:mgmt:keys scope
HTTP401 CodeWRONG_KEY_TYPE DescriptionThe request was sent with a Bitrix24 account key — a personal vibe_api_ key or a vibe_app_ authorization key. The endpoint accepts only a management key
HTTP401 CodeKEY_INACTIVE DescriptionThe management key has been revoked or blocked
HTTP401 CodeKEY_EXPIRED DescriptionThe management key has expired
HTTP401 CodeINVALID_API_KEY DescriptionNo key with the given value was found
HTTP401 CodeMISSING_API_KEY DescriptionThe X-Api-Key header was not sent

The OWNER_DELETED, OWNER_BLOCKED and ACCOUNT_PENDING_ERASURE refusals depend on the key owner's account — see Owner account state.

The full list of common API errors — Errors.

Known specifics

Ownership is checked, not membership in the Bitrix24 account. A record of your own key is readable even when the owner's access to the key's account is disabled and GET /v1/keys with this portalId responds with 403 PORTAL_ACCESS_BLOCKED.

An inactive key is read the same way as an active one. The record of a revoked, expired or blocked key is returned with the current status value.

See also