Аутентификация
Ключ проекта, права, ограничение по рабочему пространству и почему API не отвечает браузеру.
На этой странице
Ключ #
Каждый запрос несёт заголовок Authorization: Bearer wck_… Ключ выдаётся на один подключённый сайт и открывает переписку только этого сайта: разговор соседнего подключения по нему не найдётся даже по точному номеру.
В базе хранится только отпечаток ключа. Потерянный ключ не восстанавливается: он отзывается и выдаётся заново. Отозванный перестаёт открывать что-либо сразу — запись остаётся с отметкой revokedAt.
Authorization: Bearer wck_cZLLSCqi7pQ2m4E1vN…Ключ серверный. В код страницы его класть нельзя: оттуда его прочитает любой посетитель и получит доступ ко всей переписке сайта.
Права #
| Право | Методы |
|---|---|
| conversations:read | GET /conversations, GET /conversations/{id}, GET /conversations/{id}/messages |
| conversations:write | POST /conversations/{id}/messages, POST /conversations/{id}/close |
| media:read | GET /media/{id} |
CORS #
Заголовков CORS публичное API не выдаёт намеренно, и обращение из браузера посетителя не пройдёт. Виджет работает по другому входу — подписанному токену окна, который выдаёт шлюз.
Отказы аутентификации #
| HTTP | code | Когда |
|---|---|---|
| 401 | unauthorized | заголовка нет, ключ не тот или отозван |
| 403 | insufficient_scope | у ключа нет права на этот метод |
| 429 | rate_limit_exceeded | больше 300 запросов в минуту на ключ |