Изменить список разрешенных отправителей рассылок на группы и подразделения
Обновляет список пользователей, групп и подразделений, имеющих право отправлять письма на адреса почтовых рассылок.
Поддерживает три типа операций:
grant— добавить новых отправителей;revoke— удалить существующих отправителей;overwrite— полностью заменить текущий список.
Примечание
Чтобы выполнить запрос, приложению требуются разрешения:
ya360_admin:mail_read_mail_list_permissions— просмотр разрешений на рассылку;ya360_admin:mail_write_mail_list_permissions— изменение разрешений на рассылку.
Запрос
POST https://cloud-api.yandex.net/v1/admin/org/{org_id}/mail-lists/{email_id}/update-permissions
Path-параметры
|
Имя параметра |
Тип |
Описание |
|
org_id * |
integer |
Идентификатор организации. |
|
email_id * |
integer |
Идентификатор рассылки. |
Заголовки
Authorization: OAuth <токен>
Content-Type: application/json
Тело
|
Имя параметра |
Тип |
Описание |
|
role_actions * |
array |
Массив операций с разрешениями RoleAction. |
RoleAction
|
Имя параметра |
Тип |
Описание |
|
type * |
string |
Тип операции:
|
|
roles * |
array |
Всегда |
|
subjects * |
array |
Массив объектов Subject с информацией о субъектах, имеющих разрешение. |
Важно
При выполнении операции overwrite нужно заново указать всех разрешенных отправителей выбранных типов — текущие списки отправителей для этих типов будут удалены.
Например, при выполнении overwrite для типа субъектов group (группа) будут удалены все существующие разрешения для групп и заново добавлены разрешения для тех групп, которые вы укажете в permissions-list.json. При этом списки других типов — например, пользователей — останутся без изменений после этой операции.
Subject
|
Имя параметра |
Тип |
Описание |
|
type * |
string |
Тип субъекта:
|
|
id * |
integer |
Идентификатор субъекта. |
|
org_id |
integer |
Идентификатор организации ( |
Примеры
Пример запроса
curl -X POST -H "Authorization: OAuth <токен>" -H "Content-Type: application/json" -d "@permissions-list.json" https://cloud-api.yandex.net/v1/admin/org/1234567/mail-lists/1150000045826541/update-permissions
Пример тела permissions-list.json для добавления отправителя-пользователя
{
"role_actions": [{
"type": "grant",
"roles": ["mail_list_sender"],
"subjects": [{
"type": "user",
"id": 1150000062907856,
"org_id": 1234567
}]
}]
}
Пример тела permissions-list.json для разрешения отправки всем
{
"role_actions": [{
"type": "overwrite",
"roles": ["mail_list_sender"],
"subjects": [{
"type": "anonymous",
"id": null
}]
}]
}
Пример тела permissions-list.json для запрета отправки всем
{
"role_actions": [{
"type": "revoke",
"roles": ["mail_list_sender"],
"subjects": [{
"type": "anonymous",
"id": null
}]
}]
}
Ответ
Успешный ответ
Результатом корректного запроса является ответ с кодом 204.
204 No Content — запрос выполнен успешно.
Неуспешный ответ
Ошибки могут быть со следующими HTTP-статусами:
400 Bad Request— параметры запроса не заданы или заданы неверно;401 Unauthorized— пользователь не авторизован;403 Forbidden— у пользователя или приложения нет прав на доступ к списку разрешений;404 Not Found— запрашиваемая рассылка организации не найдена;500 Internal Server Error— ошибка произошла на стороне сервера (в этом случае попробуйте повторно отправить запрос через некоторое время).