message: createReply
Пространство имен: microsoft.graph
Создайте черновик, чтобы ответить отправителю сообщения в формате JSON или MIME.
При использовании формата JSON:
- Укажите комментарий или свойство
message
body параметра. Если указать оба варианта, вы получите ошибку HTTP 400 Bad Request. - Если параметр replyTo указан в исходном сообщении в соответствии с форматом сообщений Интернета (RFC 2822), ответ следует отправлять получателям в replyTo, а не получателям из.
- Вы можете обновить черновик позже, чтобы добавить содержимое ответа в текст или изменить другие свойства сообщения.
При использовании формата MIME:
- Укажите соответствующие заголовки сообщений Интернета и содержимое MIME, а также закодируйте их в формате Base64 в тексте запроса.
- Добавьте все вложения и свойства S/MIME в содержимое MIME.
Отправьте черновик сообщения в ходе последующей операции.
Кроме того, можно ответить на сообщение в одной операции.
Этот API доступен в следующих национальных облачных развертываниях.
Глобальная служба | Правительство США L4 | Правительство США L5 (DOD) | Китай управляется 21Vianet |
---|---|---|---|
✅ | ✅ | ✅ | ✅ |
Разрешения
Выберите разрешение или разрешения, помеченные как наименее привилегированные для этого API. Используйте более привилегированное разрешение или разрешения только в том случае, если это требуется приложению. Дополнительные сведения о делегированных разрешениях и разрешениях приложений см. в разделе Типы разрешений. Дополнительные сведения об этих разрешениях см. в справочнике по разрешениям.
Тип разрешения | Разрешения с наименьшими привилегиями | Более высокие привилегированные разрешения |
---|---|---|
Делегированные (рабочая или учебная учетная запись) | Mail.ReadWrite | Недоступно. |
Делегированные (личная учетная запись Майкрософт) | Mail.ReadWrite | Недоступно. |
Для приложений | Mail.ReadWrite | Недоступно. |
HTTP-запрос
POST /me/messages/{id}/createReply
POST /users/{id | userPrincipalName}/messages/{id}/createReply
POST /me/mailFolders/{id}/messages/{id}/createReply
POST /users/{id | userPrincipalName}/mailFolders/{id}/messages/{id}/createReply
Заголовки запросов
Имя | Тип | Описание |
---|---|---|
Authorization | string | Bearer {token}. Обязательно. Дополнительные сведения о проверке подлинности и авторизации. |
Content-Type | string | Характер данных в теле объекта. Используйте application/json для объекта JSON и text/plain для содержимого MIME. |
Prefer: outlook.timezone | string | Задает часовой пояс в потоке электронной почты в нужном формате при ответе на сообщение электронной почты. Значения могут быть любым из поддерживаемыхTimeZones для Outlook. Если заголовок не указан, по умолчанию следует часовой пояс UTC. Необязательный параметр. |
Текст запроса
Для этого метода не требуется текст запроса.
Однако для создания черновика ответа с использованием формата MIME предоставьте содержимому MIME применимые заголовки сообщений Интернета, которые в тексте запроса закодированы в формате Base64 .
Отклик
В случае успеха этот метод возвращает код отклика 201 Created
и объект Message в тексте отклика.
Если текст запроса содержит неправильно отформатированное содержимое MIME, этот метод возвращает 400 Bad request
и следующее сообщение об ошибке: "Недопустимая строка Base 64 для содержимого MIME".
Примеры
Пример 1. Создание черновика сообщения в формате JSON для ответа на существующее сообщение.
Ниже приведен пример вызова этого API.
Запрос
Ниже показан пример запроса.
POST https://graph.microsoft.com/v1.0/me/messages/{id}/createReply
Отклик
Ниже показан пример отклика. Примечание. Объект отклика, показанный здесь, может быть сокращен для удобочитаемости.
HTTP/1.1 200 OK
Content-type: application/json
{
"receivedDateTime": "datetime-value",
"sentDateTime": "datetime-value",
"hasAttachments": true,
"subject": "subject-value",
"body": {
"contentType": "",
"content": "content-value"
},
"bodyPreview": "bodyPreview-value"
}
Пример 2. Создание черновика сообщения в формате MIME для ответа на существующее сообщение
Запрос
POST https://graph.microsoft.com/v1.0/me/messages/AAMkADA1MTAAAAqldOAAA=/createReply
Content-type: text/plain
RnJvbTogQWxleCBXaWxiZXIgPEFsZXhXQGNvbnRvc28uY29tPgpUbzogTWVnYW4gQm93ZW4gPE1l
Z2FuQkBjb250b3NvLmNvbT4KU3ViamVjdDogSW50ZXJuYWwgUmVzdW1lIFN1Ym1pc3Npb246IFNh
bGVzIEFzc29jaWF0ZQpUaHJlYWQtVG9waWM6IEludGVybmFsIFJlc3VtZSBTdWJtaXNzaW9uOiBT
YWxlcyBBc3NvY2lhdGUKVGhyZWFkLUluZGV4OiBjb2RlY29kZWNvZGVoZXJlaGVyZWhlcmUKRGF0
ZTogU3VuLCAyOCBGZWIgMjAyMSAwNzoxNTowMCA
Отклик
Ниже показан пример отклика.
HTTP/1.1 201 Created
Content-Type: application/json
{
"@odata.context": "https://graph.microsoft.com/v1.0/$metadata#users('0aaa0aa0-0000-0a00-a00a-0000009000a0')/messages/$entity",
"@odata.etag": "W/\"AAAAAAAAAAAa00AAAa0aAaAa0a0AAAaAAAAaAa0a\"",
"id": "AAMkADA1MTAAAAqldOAAA=",
"createdDateTime": "2021-04-23T18:13:44Z",
"lastModifiedDateTime": "2021-04-23T18:13:44Z",
"changeKey": "AAAAAAAAAAAA00aaaa000aaA",
"categories": [],
"receivedDateTime": "2021-04-23T18:13:44Z",
"sentDateTime": "2021-02-28T07:15:00Z",
"hasAttachments": false,
"internetMessageId": "<AAAAAAAAAA@AAAAAAA0001AA0000.codcod00.prod.outlook.com>",
"subject": "Internal Resume Submission: Sales Associate",
"bodyPreview": "Hi, Megan.I have an interest in the Sales Associate position. Please consider my resume, which you can access here...",
"importance": "normal",
"parentFolderId": "LKJDSKJHkjhfakKJHFKWKKJHKJdhkjHDK==",
"conversationId": "SDSFSmFSDGI5LWZhYjc4fsdfsd=",
"conversationIndex": "Adfsdfsdfsdfw==",
"isDeliveryReceiptRequested": null,
"isReadReceiptRequested": false,
"isRead": true,
"isDraft": true,
"webLink": "https://outlook.office365.com/owa/?ItemID=AAMkAGNhOWAvsurl=1&viewmodel=ReadMessageItem",
"inferenceClassification": "focused",
"body": {
"contentType": "text",
"content": "Hi, Megan.I have an interest in the Sales Associate position. Please consider my resume, which you can access here... Regards,Alex"
},
"sender": {
"emailAddress": {
"name": "Alex Wilber",
"address": "AlexW@contoso.com"
}
},
"from": {
"emailAddress": {
"name": "Alex Wilber",
"address": "AlexW@contoso.com"
}
},
"toRecipients": [
{
"emailAddress": {
"name": "Megan Bowen",
"address": "MeganB@contoso.com"
}
}
],
"ccRecipients": [],
"bccRecipients": [],
"replyTo": [],
"flag": {
"flagStatus": "notFlagged"
}
}
Если текст запроса содержит неправильно отформатированное содержимое MIME, этот метод возвращает следующее сообщение об ошибке.
HTTP/1.1 400 Bad Request
Content-type: application/json
{
"error": {
"code": "ErrorMimeContentInvalidBase64String",
"message": "Invalid base64 string for MIME content."
}
}