- tocdepth
2
Сервисные аккаунты
Подсказка
Актуальную спецификацию можно скачать и использовать в привычном инструменте.Перед началом работы
Для работы с API личного кабинета Cloud.ru потребуется:
эндпоинт для запросов —
https://iam.api.cloud.ru
;customer_id
— его можно скопировать в личном кабинете.
Набор методов для управления сервисными аккаунтами
- POST /api/v1/service-accounts
Добавление нового сервисного аккаунта.
- Request JSON Object
description (string) – Описание.
name (string) – Название сервисного аккаунта.
projectId (string) – Идентификатор ресурса типа project, для которого добавляется сервисный аккаунт.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
409 Conflict – Конфликт.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
serviceAccount (object) – Информация о сервисном аккаунте.
serviceAccount.createdAt (string) – Дата создания записи.
serviceAccount.description (string) – Описание.
serviceAccount.email (string) – Электронная почта сервисного аккаунта.
serviceAccount.enabled (boolean) – Включен или выключен сервисный аккаунт.
serviceAccount.id (string) – Идентификатор сервисного аккаунта.
serviceAccount.name (string) – Название сервисного аккаунта. Уникально для namespace_id.
serviceAccount.namespaceId (string) – Область видимости.
serviceAccount.updatedAt (string) – Дата обновления записи.
serviceAccount.useRefreshTokens (boolean) – Выпускать обновления токена или нет (по умолчанию false).
- POST /api/v1/service-accounts/credentials/access-keys
Добавление ключа доступа сервисному аккаунту.
- Request JSON Object
description (string) – Описание.
serviceAccountId (string) – Идентификатор сервисного аккаунта.
ttl (string) – h - часы, m - минуты, s - секунды.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
createdAt (string) – Дата создания записи.
description (string) – Описание.
expiredAt (string) – Дата окончания действия ключа.
id (string) – IИдентификатор ключа.
keyId (string) – Секретный ключ.
secret (string) – Секретный ключ.
serviceAccountId (string) – Идентификатор сервисного аккаунта.
- GET /api/v1/service-accounts/credentials/access-keys/{id}
Возвращение информации о ключе доступа по идентификатору для сервисного аккаунта.
- Parameters
id (string) – Идентификатор ключа.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
key (object) – Ключ доступа без секрета.
key.createdAt (string) – Дата создания записи.
key.description (string) – Описание.
key.expiredAt (string) – Дата окончания действия ключа.
key.id (string) – Идентификатор ключа.
key.keyId (string) – Секретный ключ.
key.serviceAccountId (string) – Идентификатор сервисного аккаунта.
- DELETE /api/v1/service-accounts/credentials/access-keys/{id}
Удаление ключа доступа по идентификатору для сервисного аккаунта.
- Parameters
id (string) – Идентификатор ключа.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- GET /api/v1/service-accounts/credentials/api-keys
Просмотр списка API-ключей.
- Query Parameters
filter.serviceAccountId (string) – Идентификатор сервисного аккаунта.
filter.enabled (boolean) – Флаг активности ключа.
paths (string) – Список свойств API-ключа, которые будут использованы для фильтрации. Возможные значения: идентификатор сервисного аккаунта
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
keys (array) – Список API-ключей.
keys[].createdAt (string) – Дата создания ключа.
keys[].description (string) – Описание ключа.
keys[].enabled (boolean) – Флаг активности ключа.
keys[].expiresAt (string) – Дата окончания срока действия ключа.
keys[].id (string) – Идентификатор ключа.
keys[].name (string) – Имя ключа.
keys[].products (array) – Список названий продуктов, с которыми может работать ключ.
keys[].products[] (string) –
keys[].restrictions (object) – Ограничения ключа.
keys[].restrictions.ipAddresses (object) – Список IP-адресов.
keys[].restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
keys[].restrictions.ipAddresses.ipAddresses[] (string) –
keys[].restrictions.timeRange (object) – Диапазон времени.
keys[].restrictions.timeRange.timeSlots (array) – Список интервалов времени.
keys[].restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
keys[].restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
keys[].restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
keys[].secret (string) – @gotags: secret:»true»
keys[].serviceAccountId (string) – Идентификатор сервисного аккаунта.
keys[].updatedAt (string) – Дата обновления ключа.
- DELETE /api/v1/service-accounts/credentials/api-keys
Удаление API-ключа.
- Query Parameters
keyId (string) – Идентификатор ключа.
serviceAccountId (string) – Идентификатор сервисного аккаунта.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- POST /api/v1/service-accounts/credentials/api-keys
Добавление API-ключа.
- Request JSON Object
description (string) – Описание ключа: может содержать буквы unicode в разных регистрах, цифры, знаки пунктуации unicode и пробелы.
enabled (boolean) – Флаг активности ключа.
expiresAt (string) – Дата окончания срока действия ключа. Если не указана, то выставляется значение по умолчанию (1 год). Максимальный срок действия ключа - 1 год.
name (string) – Имя ключа: от 1 до 256 символов, может содержать латинские буквы в нижнем и верхнем регистрах, цифры, дефис, подчеркивание, точку, пробел.
products (array) – Список названий продуктов, для которых будет использоваться ключ: до 100 продуктов.
products[] (string) –
restrictions (object) – Ограничения ключа.
restrictions.ipAddresses (object) – Список IP-адресов.
restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
restrictions.ipAddresses.ipAddresses[] (string) –
restrictions.timeRange (object) – Диапазон времени.
restrictions.timeRange.timeSlots (array) – Список интервалов времени.
restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
serviceAccountId (string) – Идентификатор сервисного аккаунта.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
409 Conflict – Конфликт.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
createdAt (string) – Дата создания ключа.
description (string) – Описание ключа.
enabled (boolean) – Флаг активности ключа.
expiresAt (string) – Дата окончания срока действия ключа.
id (string) – Идентификатор ключа.
name (string) – Имя ключа.
products (array) – Список названий продуктов, с которыми может работать ключ.
products[] (string) –
restrictions (object) – Ограничения ключа.
restrictions.ipAddresses (object) – Список IP-адресов.
restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
restrictions.ipAddresses.ipAddresses[] (string) –
restrictions.timeRange (object) – Диапазон времени.
restrictions.timeRange.timeSlots (array) – Список интервалов времени.
restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
secret (string) – @gotags: secret:»true»
serviceAccountId (string) – Идентификатор сервисного аккаунта.
updatedAt (string) – Дата обновления ключа.
- PUT /api/v1/service-accounts/credentials/api-keys
Обновление API-ключа.
- Request JSON Object
key (object) – Модель для обновления API-ключа.
key.description (string) – Описание ключа: может содержать буквы unicode в разных регистрах, цифры, знаки пунктуации unicode и пробелы.
key.enabled (boolean) – Флаг активности ключа.
key.id (string) – Идентификатор ключа.
key.name (string) – Имя ключа: от 1 до 256 символов, может содержать латинские буквы в нижнем и верхнем регистрах, цифры, дефис, подчеркивание, точку, пробел.
key.products (array) – Список продуктов, для которых будет использоваться ключ: до 100 продуктов.
key.products[] (string) –
key.restrictions (object) – Ограничения ключа.
key.restrictions.ipAddresses (object) – Список IP-адресов.
key.restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
key.restrictions.ipAddresses.ipAddresses[] (string) –
key.restrictions.timeRange (object) – Диапазон времени.
key.restrictions.timeRange.timeSlots (array) – Список интервалов времени.
key.restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
key.restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
key.restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
paths (string) – Список свойств API-ключа, которые необходимо обновить. Возможные значения: название, описание, ограничения, включения, продукты.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
createdAt (string) – Дата создания ключа.
description (string) – Описание ключа.
enabled (boolean) – Флаг активности ключа.
expiresAt (string) – Дата окончания срока действия ключа.
id (string) – Идентификатор ключа.
name (string) – Имя ключа.
products (array) – Список названий продуктов, с которыми может работать ключ.
products[] (string) –
restrictions (object) – Ограничения ключа.
restrictions.ipAddresses (object) – Список IP-адресов.
restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
restrictions.ipAddresses.ipAddresses[] (string) –
restrictions.timeRange (object) – Диапазон времени.
restrictions.timeRange.timeSlots (array) – Список интервалов времени.
restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
secret (string) – @gotags: secret:»true»
serviceAccountId (string) – Идентификатор сервисного аккаунта.
updatedAt (string) – Дата обновления ключа.
- GET /api/v1/service-accounts/credentials/api-keys/products
Просмотр списка доступных продуктов.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
products (array) – Список доступных продуктов.
products[] (string) –
- GET /api/v1/service-accounts/credentials/api-keys/{id}
Просмотр API-ключей.
- Parameters
id (string) – Идентификатор ключа.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
createdAt (string) – Дата создания ключа.
description (string) – Описание ключа.
enabled (boolean) – Флаг активности ключа.
expiresAt (string) – Дата окончания срока действия ключа.
id (string) – Идентификатор ключа.
name (string) – Имя ключа.
products (array) – Список названий продуктов, с которыми может работать ключ.
products[] (string) –
restrictions (object) – Ограничения ключа.
restrictions.ipAddresses (object) – Список IP-адресов.
restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
restrictions.ipAddresses.ipAddresses[] (string) –
restrictions.timeRange (object) – Диапазон времени.
restrictions.timeRange.timeSlots (array) – Список интервалов времени.
restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
secret (string) – @gotags: secret:»true»
serviceAccountId (string) – Идентификатор сервисного аккаунта.
updatedAt (string) – Дата обновления ключа.
- POST /api/v1/service-accounts/credentials/api-keys/{id}/reissue
Перевыпуск API-ключа.
- Parameters
id (string) – Идентификатор ключа.
- Query Parameters
expiresAt (string) – Дата окончания срока действия нового ключа.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
createdAt (string) – Дата создания ключа.
description (string) – Описание ключа.
enabled (boolean) – Флаг активности ключа.
expiresAt (string) – Дата окончания срока действия ключа.
id (string) – Идентификатор ключа.
name (string) – Имя ключа.
products (array) – Список названий продуктов, с которыми может работать ключ.
products[] (string) –
restrictions (object) – Ограничения ключа.
restrictions.ipAddresses (object) – Список IP-адресов.
restrictions.ipAddresses.ipAddresses (array) – IP-адреса и подсети в формате CIDR.
restrictions.ipAddresses.ipAddresses[] (string) –
restrictions.timeRange (object) – Диапазон времени.
restrictions.timeRange.timeSlots (array) – Список интервалов времени.
restrictions.timeRange.timeSlots[].end (integer) – Конец диапазона в часах.
restrictions.timeRange.timeSlots[].start (integer) – Начало диапазона в часах.
restrictions.timeRange.timezone (integer) – Временная зона. Число от -12 до 12.
secret (string) – @gotags: secret:»true»
serviceAccountId (string) – Идентификатор сервисного аккаунта.
updatedAt (string) – Дата обновления ключа.
- GET /api/v1/service-accounts/{serviceAccountId}
Просмотр информации о сервисном аккаунте.
- Parameters
serviceAccountId (string) – Идентификатор сервисного аккаунта.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
serviceAccount (object) – Информация о сервисном аккаунте.
serviceAccount.createdAt (string) – Дата создания записи.
serviceAccount.description (string) – Описание.
serviceAccount.email (string) – Электронная почта сервисного аккаунта.
serviceAccount.enabled (boolean) – Включен или выключен сервисный аккаунт.
serviceAccount.id (string) – Идентификатор сервисного аккаунта.
serviceAccount.name (string) – Название сервисного аккаунта. Уникально для namespace_id.
serviceAccount.namespaceId (string) – Область видимости.
serviceAccount.updatedAt (string) – Дата обновления записи.
serviceAccount.useRefreshTokens (boolean) – Выпускать обновления токена или нет (по умолчанию false).
- DELETE /api/v1/service-accounts/{serviceAccountId}
Удаление сервисныйого аккаунта.
- Parameters
serviceAccountId (string) – Идентификатор сервисного аккаунта.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
409 Conflict – Конфликт.
500 Internal Server Error – Внутренняя ошибка сервера.
- GET /api/v1/service-accounts/{serviceAccountId}/credentials/access-keys
Просмотр списка ключей доступа для сервисного аккаунта.
- Parameters
serviceAccountId (string) – Идентификатор сервисного аккаунта.
- Status Codes
200 OK – Успешное выполнение запроса.
400 Bad Request – Некорректный запрос.
401 Unauthorized – Необходима авторизация.
403 Forbidden – Доступ запрещен.
404 Not Found – Ресурс не найден.
500 Internal Server Error – Внутренняя ошибка сервера.
- Response JSON Object
accessKeys (array) – Список ключей доступа.
accessKeys[].createdAt (string) – Дата создания записи.
accessKeys[].description (string) – Описание.
accessKeys[].expiredAt (string) – Дата окончания действия ключа.
accessKeys[].id (string) – Идентификатор ключа.
accessKeys[].keyId (string) – Секретный ключ.
accessKeys[].serviceAccountId (string) – Идентификатор сервисного аккаунта.
для Dev & Test