Общие ящики

Общий ящик — ящик, у которого нет конкретного владельца: им пользуются несколько сотрудников, например из одного отдела.

Если у организации не подключен домен, создать общие ящики не получится. Как подключить домен

Создание и настройка общего ящика

Все операции с общими ящиками пока доступны только через API.

Шаг 1. Подготовьтесь к работе с API

  1. Для работы с API вам потребуется OAuth-токен, который можно получить после создания приложения в сервисе Яндекс OAuth.

    • Если у вас еще нет OAuth-приложения, то для его создания и получения токена воспользуйтесь инструкцией на странице Доступ к API. При создании приложения выберите права ya360_admin:mail_read_shared_mailbox_inventory и ya360_admin:mail_write_shared_mailbox_inventory.
    • Если у вас уже есть OAuth-приложение для работы с API Яндекс 360 для бизнеса, то добавьте ему права на просмотр и изменение настроек доступа к почтовым ящикам, а затем получите новый OAuth-токен по инструкции.
  2. Соберите данные, которые потребуются для API-запросов.

    1. Определите идентификатор организации: откройте admin.yandex.ru и выберите Общие настройки → Профиль организации. Идентификатор будет написан под названием организации.

    2. Определите идентификатор сотрудника, которому нужно предоставить доступ. Чтобы определить идентификатор:

      1. Выберите Пользователи → Сотрудники.

      2. Найдите строчку нужного сотрудника и нажмите на его имя.

      3. Правой кнопкой нажмите на логин сотрудника и скопируйте адрес ссылки.

      4. Вставьте адрес в любой текстовый редактор. Идентификатор — это часть адреса после uid=. Например, из адреса

        https://staff.yandex.ru/bb?org_id=5487632&uid=2260000054273165
        

        получится идентификатор 2260000054273165.

        А можно ли определить идентификаторы сотрудников тоже по API?

        Конечно. Есть запрос, который возвращает их список. Посмотреть документацию

Шаг 2. Создайте общий ящик

  1. Подготовьте файл с именем parameters.json, который будет содержать данные для запроса. Это можно сделать в любом текстовом редакторе. В файле укажите параметры создаваемого общего ящика в следующем формате:

    {
       "email": "{АДРЕС}",
       "name": "{ИМЯ}",
       "description": "{ОПИСАНИЕ}"
    }
    

    где
    {АДРЕС} — адрес электронной почты общего ящика;
    {ИМЯ} — имя общего ящика;
    {ОПИСАНИЕ} — краткое описание общего ящика.

  2. Сформируйте и отправьте запрос на создание общего ящика:

    • HTTP-метод: PUT

    • URL запроса:

      https://api360.yandex.net/admin/v1/org/{ОРГАНИЗАЦИЯ}/mailboxes/shared
      

      где {ОРГАНИЗАЦИЯ} — идентификатор организации, полученный по инструкции «Подготовка к работе с API» на шаге 2.1.

      Пример
      https://api360.yandex.net/admin/v1/org/1234567/mailboxes/shared
      
    • Заголовки:

      Authorization: OAuth {OAUTH-ТОКЕН}
      Content-Type: application/json
      

      где {OAUTH-ТОКЕН} — OAuth-токен, полученный по инструкции «Подготовка к работе с API» на шаге 1.

    • Тело запроса: содержится в файле parameters.json, созданном на шаге 1 данной инструкции.

    Если вы работаете на Windows, то отправить запрос на разрешение делегирования ящика можно с помощью команды curl такого вида:

    curl -X PUT -H "Authorization: OAuth {OAUTH-ТОКЕН}" -H "Content-Type: application/json" -d "@parameters.json" https://api360.yandex.net/admin/v1/org/{ОРГАНИЗАЦИЯ}/mailboxes/shared
    

    где
    {OAUTH-ТОКЕН} — OAuth-токен, полученный по инструкции «Подготовка к работе с API» на шаге 1;
    parameters.json — файл с телом запроса, созданный на шаге 1 данной инструкции;
    {ОРГАНИЗАЦИЯ} — идентификатор организации, полученный по инструкции «Подготовка к работе с API» на шаге 2.1.

    Я не понимаю, как это сделать
    1. Подготовьте команду: скопируйте пример в любой редактор, вставьте в указанные места токен и идентификаторы.

    2. Откройте папку, в которой лежит файл parameters.json.

    3. Нажмите на пустое место в адресной строке.

    4. Напишите туда cmd и нажмите клавишу Enter.

    5. Откроется окно «Командная строка». Вставьте в него готовую команду и нажмите Enter.

  3. Проанализируйте полученный ответ: в случае успешного выполнения запроса в ответе вы получите статус 200 OK с указанием идентификатора созданного общего ящика. Сохраните этот идентификатор.

Шаг 3. Предоставьте доступ

Групповые операции на предоставление доступов пока не поддерживаются. За один запрос можно предоставить, изменить или удалить право доступа только для одного сотрудника к одному почтовому ящику. Но вы можете одновременно направить несколько таких запросов.

  1. Подготовьте файл с именем roles.json, который будет содержать данные для запроса. Это можно сделать в любом текстовом редакторе. В файле укажите роли сотрудника, которому открывается доступ к ящику. Описание ролей приведено в разделе Роли и права доступа.

    Пример файла roles.json:

    {
       "roles": [
          "shared_mailbox_imap_admin",
          "shared_mailbox_half_sender"
       ]
    }
    

    В списке должна присутствовать одна из ролей shared_mailbox_sender либо shared_mailbox_owner, потому что они отвечают за чтение почты.

  2. С помощью запроса к API предоставьте доступ сотрудникам к общему ящику:

    • HTTP-метод: POST

    • URL запроса:

      https://api360.yandex.net/admin/v1/org/{ОРГАНИЗАЦИЯ}/mailboxes/set/{ЯЩИК}?actorId={СОТРУДНИК С ДОСТУПОМ}&notify={ПАРАМЕТР ОТПРАВКИ УВЕДОМЛЕНИЙ}
      

      где
      {ОРГАНИЗАЦИЯ} — идентификатор организации, полученный по инструкции «Подготовка к работе с API» на шаге 2.1;
      {ЯЩИК} — идентификатор общего ящика, созданного по инструкции Создание ящика;
      {СОТРУДНИК С ДОСТУПОМ} — идентификатор сотрудника, которому нужно предоставить доступ к ящику, полученный по инструкции «Подготовка к работе с API» на шаге 2.2;
      {ПАРАМЕТР ОТПРАВКИ УВЕДОМЛЕНИЙ} — параметр, который определяет, кому необходимо отправить письмо-уведомление об изменении прав доступа к ящику. Возможные значения: all, delegates, none. Описание значений параметра приведены в разделе Уведомления.

      Пример
      https://api360.yandex.net/admin/v1/org/1234567/mailboxes/mailboxes/set/2260000054273165?actorId=3340000075421587&notify=all
      
    • Заголовки:

      Authorization: OAuth {OAUTH-ТОКЕН}
      Content-Type: application/json
      

      где {OAUTH-ТОКЕН} — OAuth-токен, полученный по инструкции «Подготовка к работе с API» на шаге 1.

    • Тело запроса: содержится в файле roles.json, созданном на шаге 1 данной инструкции.

    Если вы работаете на Windows, то отправить запрос на разрешение делегирования ящика можно с помощью команды curl такого вида:

    curl -X POST -H "Authorization: OAuth {OAUTH-ТОКЕН}" -H "Content-Type: application/json" -d "@roles.json" https://api360.yandex.net/admin/v1/org/{ОРГАНИЗАЦИЯ}/mailboxes/set/{ЯЩИК}?actorId={СОТРУДНИК С ДОСТУПОМ}&notify={ПАРАМЕТР ОТПРАВКИ УВЕДОМЛЕНИЙ}
    

    где
    {OAUTH-ТОКЕН} — OAuth-токен, полученный по инструкции «Подготовка к работе с API» на шаге 1;
    roles.json — файл с телом запроса, созданный на шаге 1 данной инструкции;
    {ОРГАНИЗАЦИЯ} — идентификатор организации, полученный по инструкции «Подготовка к работе с API» на шаге 2.1;
    {ЯЩИК} — идентификатор общего ящика, созданного по инструкции Создание ящика;
    {СОТРУДНИК С ДОСТУПОМ} — идентификатор сотрудника, которому нужно предоставить доступ к ящику, полученный по инструкции «Подготовка к работе с API» на шаге 2.2;
    {ПАРАМЕТР ОТПРАВКИ УВЕДОМЛЕНИЙ} — параметр, который определяет, кому необходимо отправить письмо-уведомление об изменении прав доступа к ящику. Возможные значения: all, delegates, none. Описание значений параметра приведены в разделе Уведомления.

  3. Проанализируйте полученный ответ: в случае успешного выполнения запроса в ответе вы получите статус 200 OK и идентификатор задачи на изменение прав. Сохраните полученный идентификатор.

  4. Чтобы убедиться, что доступ предоставлен, выполните еще один запрос, подставив в него идентификатор задачи:

    curl -X GET -H "Authorization: OAuth {OAUTH-ТОКЕН}" https://api360.yandex.net/admin/v1/org/{ОРГАНИЗАЦИЯ}/mailboxes/tasks/{ID ЗАДАЧИ}
    

    В ответ вы получите статус задачи на изменение прав. Права успешно изменены, если в ответе пришло значение complete.

Шаг 4. Помогите сотрудникам с настройкой почты

Инструкция по настройке почтовых клиентов содержится в разделе Совместный доступ к ящикам в почтовых программах.

Отключение доступа

Чтобы отключить доступ к ящику конкретному сотруднику, выполните пункты инструкции по предоставлению доступа, только в файле с перечнем доступных ролей roles.json укажите пустой список:

   {
      "roles": []
   }

Удаление ящика

Удалить общий ящик можно с помощью DELETE-запроса:

curl -X DELETE -H "Authorization: OAuth {OAUTH-ТОКЕН}" https://api360.yandex.net/admin/v1/org/{ОРГАНИЗАЦИЯ}/mailboxes/shared/{ЯЩИК}

Документация API

Полное описание всех методов для управления доступом вы найдете в документации.

Написать в службу поддержки