Концепции
Scopes
Scopes определяют, что может делать ключ. Выбирайте их при создании ключа и давайте каждому ключу только то, что ему нужно.
Запрос к endpoint, scope которого нет у ключа, завершается ошибкой 403 INSUFFICIENT_SCOPE. Добавить scopes к существующему ключу нельзя: создайте новый ключ и отзовите старый.
Недоступно: платежи, кошелёк, токены, переводы и настройки аккаунта. Ни один scope не даёт к ним доступа.
Все scopes#
| Scope | Разрешает |
|---|---|
profile:read | Читать свой профиль и публичные профили других пользователей. |
posts:read | Читать посты (свои и те, что вы видите в приложении) и комментарии к ним. |
posts:write | Загружать медиафайлы, публиковать, редактировать и удалять свои посты. |
comments:write | Писать комментарии и удалять свои комментарии (или комментарии к своим постам). |
likes:write | Ставить и снимать лайки с постов. |
follows:write | Подписываться на пользователей и отписываться от них. |
stories:write | Публиковать истории. |
store:read | Читать данные своего магазина Bloop и его товары. |
store:write | Редактировать магазин, создавать, изменять и удалять товары, обновлять остатки. |
orders:read | Читать заказы, полученные вашим магазином. |
orders:write | Отмечать заказы как отправленные. |
chat:read | Читать свои переписки и сообщения в них. |
chat:write | Отправлять сообщения (с учётом правила антиспама). |
Endpoint по scopes#
Все пути указаны относительно https://api.linework.app/open/v1.
| Endpoint | Scope |
|---|---|
GET /me | profile:read |
GET /users/{id} | profile:read |
GET /users/by-username/{username} | profile:read |
GET /me/posts | posts:read |
GET /users/{id}/posts | posts:read |
GET /posts/{id} | posts:read |
GET /posts/{id}/comments | posts:read |
POST /media | posts:write, stories:write или store:write |
POST /posts | posts:write |
PATCH /posts/{id} | posts:write |
DELETE /posts/{id} | posts:write |
POST /posts/{id}/comments | comments:write |
DELETE /comments/{id} | comments:write |
POST DELETE /posts/{id}/like | likes:write |
POST DELETE /users/{id}/follow | follows:write |
POST /stories | stories:write |
GET /store | store:read |
POST PATCH /store | store:write |
GET /store/products | store:read |
POST /store/products | store:write |
PATCH DELETE /store/products/{id} | store:write |
PATCH /store/products/{id}/stock | store:write |
GET /store/orders | orders:read |
GET /store/orders/{id} | orders:read |
POST /store/orders/{id}/ship | orders:write |
GET /conversations | chat:read |
GET /conversations/{id}/messages | chat:read |
POST /conversations/{id}/messages | chat:write |
POST /messages | chat:write |
Источник истины — справочник API: для каждой операции в нём указан требуемый scope.
Рекомендуемые наборы#
| Интеграция | Scopes |
|---|---|
| Бот для публикаций | profile:read posts:read posts:write stories:write |
| Управление сообществом | posts:read comments:write likes:write |
| Синхронизация магазина | store:read store:write orders:read orders:write |
| Чат-бот поддержки | chat:read chat:write (+ orders:read для поиска заказов) |