Оформление
Жизненный цикл
Все методы · Ключи и права · Ошибки
Примеры ответов сокращены. Пустой массив означает допустимый результат без доступных записей, а не обязательное отсутствие данных.
Для методов с ключом действуют общие проверки: 401 — ключ не принят, 403 — не хватает scope или прав владельца, 429 — превышен лимит. Неверные параметры могут дать 400, недоступный адресный ресурс — 404. Особенности команды указаны рядом с методом. Точную причину смотрите в error.code и details: как обработать ошибку и безопасно повторить запрос.
Получить доступные переходы
GET /api/v1/objects/{objectId}/workflow
Действие ключа: workflow:read. Оно не заменяет права владельца на объекты и поля.
Читайте этот снимок перед переходом: возможность зависит от текущего состояния, прав и правил.
Параметры пути: objectId. Тело: не требуется.
Пример запроса
http
GET /api/v1/objects/OBJECT_ID/workflow HTTP/1.1
Host: service.example.invalid
Authorization: Bearer YOUR_API_KEYОтвет и ошибки
Успех: 200. object, state, transitions, permission.
json
{
"data": {
"object": {
"id": "OBJECT_ID",
"revision": 1
},
"state": {
"id": "STATE_ID"
},
"transitions": []
},
"meta": {
"correlationId": "CORRELATION_ID",
"apiVersion": "v1"
}
}Выполнить переход
POST /api/v1/objects/{objectId}/transitions
Действие ключа: workflow:write. Оно не заменяет права владельца на объекты и поля.
transitionId берётся из workflow; expectedRevision и expectedStateId защищают от параллельных изменений. values — поля перехода. Нужны право перехода и выполнение условий; приём тела не гарантирует переход.
Параметры пути: objectId. Тело: JSON; пример ниже показывает основные поля.
Пример запроса
http
POST /api/v1/objects/OBJECT_ID/transitions HTTP/1.1
Host: service.example.invalid
Authorization: Bearer YOUR_API_KEY
Content-Type: application/json
{
"transitionId": "TRANSITION_ID",
"expectedRevision": 1,
"expectedStateId": "STATE_ID",
"values": {}
}Ответ и ошибки
Успех: 200. Результат с object и сведениями перехода.
json
{
"data": {
"object": {
"id": "OBJECT_ID",
"revision": 2
},
"transition": {
"id": "TRANSITION_ID"
}
},
"meta": {
"correlationId": "CORRELATION_ID",
"apiVersion": "v1"
}
}JSON-тело свыше 10 MiB отклоняется с 413.