Skip to main content
Доступ — ваша отметка у пользователя Ai-Seven: например, «участник чемпионата». Что доступ означает, решаете вы; в Ai-Seven он ничего не открывает и не закрывает. Мы храним, кому и до какого момента вы его выдали, и показываем действующие доступы в статистике. Выдача доступа не связана с выдачей подписки: за что давать доступ, решаете вы.
1

Заведите доступ

Один раз: ключ и название. POST /accesses
2

Выдайте пользователю

По public_id, бессрочно или до заданного момента. PUT /accesses/{key}/users/{public_id}
3

Проверяйте в статистике

Действующие доступы — в поле accesses ответов статистики.
4

Отзовите, когда нужно

DELETE /accesses/{key}/users/{public_id}
Вы видите и выдаёте только свои доступы: доступы других партнёров вам не видны, а ваши — им.

Завести доступ

Тело запроса

string
required
Ключ доступа, от 1 до 64 символов: латинские буквы, цифры и _ . : -. Уникален в рамках вашей интеграции. Его вы передаёте при выдаче и видите в статистике.
string
required
Название, от 1 до 100 символов.

Ответ

201 Created
string
Ключ доступа.
string
Название доступа.
integer
Момент создания, unix-время в секундах.
Доступ с уже заведённым ключом второй раз не заводится: вернётся 409 с кодом access_exists, существующий доступ не меняется. При повторе после таймаута такой ответ означает, что доступ уже заведён.

Список доступов

Все заведённые вами доступы в порядке создания.
Поля — как в ответе на создание.

Выдать доступ

Выдаёт пользователю заведённый доступ. Запрос идемпотентный: повторная выдача не создаёт второй записи, а заменяет срок на переданный.
string
required
Ключ заведённого доступа. Незаведённый ключ — 404, новый доступ при выдаче не создаётся.
string
required
Идентификатор пользователя в Ai-Seven, UUID — из статистики или из токена виджета.

Тело запроса

Тело — JSON-объект, обязательно. Для бессрочного доступа — пустой объект {}.
integer
Момент окончания доступа, unix-время в секундах. Не передан или null — доступ бессрочный. После этого момента доступ не показывается в статистике.

Ответ

string
Ключ доступа.
string
Название доступа.
integer | null
Момент окончания, unix-время в секундах. null — бессрочный.
Повторная выдача заменяет срок, а не продлевает: запрос с {} делает доступ бессрочным, даже если раньше у него был срок. Чтобы продлить, передайте новый момент окончания целиком.

Отозвать доступ

string
required
Ключ заведённого доступа.
string
required
Идентификатор пользователя в Ai-Seven.
Ответ — 204 No Content, без тела. Запрос идемпотентный: отзыв доступа, которого у пользователя нет, тоже возвращает 204.

Проверить доступ

Отдельного эндпоинта проверки нет: действующие доступы пользователя приходят в поле accesses статистики — и в списке, и по одному пользователю.
В ответе показаны только поля, относящиеся к доступам. Истёкшие и отозванные доступы не показываются. В список пользователей GET /stats/users попадают только пользователи с активностью за период; чтобы проверить доступ конкретного пользователя, запрашивайте его по public_id.

Пример

Ошибки

Помимо общих ошибок: