Outlook REST API — отправить как

#outlook #outlook-restapi

#outlook #outlook-restapi

Вопрос:

В настоящее время я использую Outlook REST API для отправки электронной почты. Это работает нормально при отправке из почтового ящика пользователя, такого как:

https://outlook.office.com/api/v2.0/users/user@domain.com/sendMail

‘user@domain.com ‘ — это UPN действительной учетной записи пользователя в Azure AD.

Что мне нужно сделать, так это «отправить как» общий почтовый ящик. Согласно документации, этого можно достичь, изменив свойство ‘From’ в теле запроса JSON. Примером может быть:

 {
  "Message": {
    "Subject": "Email Unit Test",
    "Body": {
      "ContentType": "HTML",
      "Content": "Message body"
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "recipient@somehost.com"
        }
      }
    ],
    "Attachments": [
    ],
    "From": {
      "EmailAddress": {
        "Address": "shared_mailbox@domain.com"
      }
    },
    "Sender": {
      "EmailAddress": {
        "Address": "user@domain.com"
      }
    }
  },
  "SaveToSentItems": "false"
}  

Теперь, когда я даю user@domain.com «Отправить как» и «Отправить от имени» доступа к общему почтовому ящику — это работает. Получатель получает электронное письмо, в поле от которого указано ‘user@domain.com От имени shared_mailbox@domain.com ‘. Однако я хочу, чтобы электронное письмо отображалось как отправленное только из shared_mailbox без указания «от имени пользователя». Чтобы протестировать это дальше, я удалил ‘Отправлять от имени’ access и оставил ‘Отправлять только как’ access only. Теперь в API я получаю сообщение об ошибке:

 {
    "error": {
        "code": "ErrorSendAsDenied",
        "message": "The user account which was used to submit this request does not have the right to send mail on behalf of the specified sending account., Cannot submit message."
    }
}  

Интересно, однако, что в моем клиенте Outlook я все еще могу отправлять электронное письмо из общего почтового ящика, и оно работает должным образом, без «от имени» в поле «От». Я начинаю задаваться вопросом, является ли это ограничением REST API, однако в документах Microsoft нет ничего, что указывало бы на это.

Был ли у кого-нибудь подобный опыт работы с REST API?

Ответ №1:

Я пытался сделать то же самое, и, похоже, REST API позволяет реализовать функцию «отправлять от имени», но не «отправлять как».

Комментарии:

1. Спасибо за подтверждение, Виктор. К такому выводу я пришел также после исчерпывающего тестирования.

2. Знаете ли вы, так ли это до сих пор? Если да, нашли ли вы способ реализовать эту функцию?