Доступ. API доступно на тарифах «Про» и выше (в том числе на пробном периоде). Создайте ключ в профиле («Ключи API») и передавайте его
в заголовке Authorization: Bearer sah_… (или X-API-Key: sah_…). Права — те же, что у владельца ключа
в веб-интерфейсе: лимиты тарифа, доступ к проектам, удаление — автор или владелец проекта.
Версии. Каждое изменение содержимого создаёт версию артефакта, как кнопка «Сохранить» в редакторе.
В истории версий указаны автор и источник изменений: WEB, API, MCP или AI. Откат к версии создаёт
новую версию; …/diff показывает разницу между версиями (unified diff).
Защита от затирания. Артефакт возвращается с номером текущей версии version. Передайте его как
baseVersion при изменении (PUT, …/edit): если с тех пор артефакт сохранил кто-то другой (в редакторе,
через API или MCP), правка не применяется — ответ 409 VERSION_CONFLICT. Перечитайте артефакт и повторите.
Точечные правки. POST …/edit заменяет фрагменты текста (oldText → newText) без передачи файла целиком.
Проверка синтаксиса (без ИИ) — POST /validate для текста и GET …/validation для сохранённого артефакта:
те же правила, что в редакторах (DBML, PlantUML, OpenAPI, AsyncAPI, JSON Schema, XSD/WSDL со связанными файлами
проекта, BPMN, XML, YAML, JSON).
Ошибки — JSON { "code": "…", "message": "…" }: API_KEY_INVALID (401); API_TARIFF_REQUIRED,
AUTH_USER_BLOCKED, FORBIDDEN (403 — тариф ниже «Про», пользователь заблокирован, действие доступно только
владельцу проекта или автору); NOT_FOUND (404); VALIDATION_FAILED, EDIT_NOT_FOUND / EDIT_AMBIGUOUS (400,
точечная правка); VERSION_CONFLICT (409); PROJECT_LIMIT, <TOOL>_DIAGRAM_LIMIT (409, лимиты тарифа),
PROJECT_FOLDER_NAME_TAKEN, PROJECT_FOLDER_CYCLE (409, дерево папок).
Одновременная работа. Если артефакт открыт в редакторе у участников проекта, ваша правка через API
не потеряется и не затрёт их изменения молча: сохранение в редакторе от устаревшей версии покажет им окно
конфликта (затереть, посмотреть текущую версию, сохранить как новый артефакт или отменить).
Для ИИ-агентов тот же набор операций доступен через MCP-сервер /api/mcp.