Skip to Content
Справочник APIПроверьте свой Key

Проверьте свой Key

GET /ping — это канонический первый запрос к Developer REST API: он подтверждает, что ваш key работает, и сообщает, что именно он может делать. Выполните этот запрос сразу после создания key, чтобы проверить учётные данные перед тем, как строить интеграцию на endpoints ресурсов.

GET /ping

Проверяет вызывающие учётные данные и сообщает контекст developer API, в который они разрешаются. Возвращает 200 с проверенным контекстом или 401, если key отсутствует, искажён, отозван или неизвестен.

Scope: не требуется — любой действительный key (или активная сессия) · Успех: 200

В отличие от каждого endpoint ресурсов, /ping не ограничен scope. Key, несущий любой отдельный scope — даже только knowledge:read — может вызвать его, чтобы проверить себя. В этом и смысл: вы должны иметь возможность убедиться, что key работает, независимо от того, что ему разрешено делать.

curl https://cuneiform.chat/api/developer/v1/ping \ -H "Authorization: Bearer cuk_live_xxxxxxxxxxxxxxxx"

Запрос, аутентифицированный по key, возвращает организацию, от имени которой действует key, аутентифицированную роль, способ аутентификации, а также id вызывающего key, его имя, последние четыре символа и предоставленные scopes:

{ "object": "developer_api_context", "organization": { "id": "org_8s2k1d", "name": "Acme Inc" }, "role": "owner", "authenticated_via": "api_key", "api_key": { "id": "key_4f9a2c", "name": "Production CI", "last4": "ab12", "scopes": ["agents:read", "agents:query", "knowledge:read"] } }

Массив scopes — это в точности набор, предоставленный key — используйте его, чтобы убедиться, что key имеет доступ, необходимый вашей интеграции, прежде чем полагаться на него.

Ошибки: 401, 429, 500.

Что сообщает ответ

ПолеЗначение
objectВсегда developer_api_context.
organizationОрганизация, от имени которой действуют учётные данные — id и отображаемое name. Каждый запрос ограничен этой организацией; вы никогда не передаёте id организации.
roleРоль, в которой действуют учётные данные (например owner, admin или member). Key никогда не может делать больше, чем эта роль могла бы в панели.
authenticated_viaapi_key для key cuk_… или session для активной сессии в панели администратора.
api_keyСамоописание вызывающего key — id, name, last4 и предоставленные scopes. Равно null, когда authenticated_via равно session (key отсутствует).

Что он никогда не возвращает

Ответ работает по принципу deny-by-default: он строится только из проверенного контекста запроса, поэтому никогда не может вернуть данные другой организации и не раскрывает внутреннее поле key. Полный секрет key, hash поиска, создатель, необработанный внутренний id и базовые RBAC-разрешения роли никогда не присутствуют — только четыре поля key выше.

Когда он завершается ошибкой

Отсутствующий, искажённый, отозванный или неизвестный key возвращает 401 со стандартным конвертом ошибки:

{ "error": { "type": "authentication_error", "code": "invalid_api_key", "message": "The API key is missing or invalid." } }

Поскольку /ping не ограничен scope, он никогда не возвращает 403 по причине scope — 401 означает, что сами учётные данные недействительны.

Last updated on