Справка по REST API сгенерирована автоматически из спецификации OpenAPI 3.0 Deckhouse Code и представлена только на английском языке.
Операции сгруппированы по ресурсам, каждой группе отведена отдельная страница. Для каждой операции приведены параметры, тело запроса и ответы; после операций описаны схемы возвращаемых объектов.
Базовый адрес
Пути операций в справке начинаются с /api/v4.
Отправляйте запросы на адрес Deckhouse Code, дополненный путём операции.
Если используется шаблон публичных доменов %s.example.com, список проектов доступен по адресу https://code.example.com/api/v4/projects.
Аутентификация
Запрос аутентифицируется токеном, переданным одним из способов:
- в заголовке
Authorization: Bearer <TOKEN>— для токена доступа или токена OAuth 2.0; - в заголовке
PRIVATE-TOKEN: <TOKEN>— для токена доступа; - в параметре строки запроса
private_token=<TOKEN>— для токена доступа.
Токены доступа — это персональные токены, токены групп и токены проектов.
Пример запроса с персональным токеном доступа:
curl --header "PRIVATE-TOKEN: <TOKEN>" "https://code.example.com/api/v4/projects"OAuth 2.0
Приложение, зарегистрированное в Deckhouse Code, получает токен OAuth 2.0 по схеме с кодом авторизации (authorization code):
- пользователь перенаправляется на
https://code.example.com/oauth/authorize; - приложение обменивает код авторизации на токен по адресу
https://code.example.com/oauth/token; - приложение обновляет токен по тому же адресу,
https://code.example.com/oauth/token.
Области, которые запрашивает приложение, ограничивают права токена:
| Область | Доступ |
|---|---|
api | Чтение и запись через API, включая все группы и проекты, хранилище образов контейнеров, прокси зависимостей и реестр пакетов |
read_api | Чтение через API, включая все группы и проекты, хранилище образов контейнеров и реестр пакетов |
read_user | Чтение профиля пользователя через эндпоинт /user (имя пользователя, публичный email и полное имя) и доступ к эндпоинтам /users, работающим только на чтение |
create_runner | Создание раннеров |
manage_runner | Управление раннерами |
k8s_proxy | Вызовы Kubernetes API через агент для Kubernetes |
self_rotate | Ротация токена самим токеном |
mcp | Чтение и запись через сервер Model Context Protocol (MCP) для запуска инструментов |
mcp_orbit | Доступ к MCP-серверу Orbit Knowledge Graph для запросов к графу и получения его схемы |
Приложениями управляют операции из раздела Applications.
Постраничный вывод
Операции, которые возвращают списки, принимают параметр page (номер страницы, по умолчанию 1) и параметр per_page (число элементов на странице, по умолчанию 20).
Если операция ограничивает per_page, ограничение указано в таблице параметров операции.
Пример запроса второй страницы из 50 проектов:
curl --header "PRIVATE-TOKEN: <TOKEN>" "https://code.example.com/api/v4/projects?page=2&per_page=50"Файл спецификации
Файл спецификации OpenAPI содержит те же операции и схемы в формате JSON. Используйте его, чтобы импортировать операции в API-клиент, например Postman, или сгенерировать клиентскую библиотеку с помощью OpenAPI Generator.