次の方法で共有


Outlook メール REST API リファレンス (バージョン 2.0)

適用対象: Exchange Online | Office 365 | Hotmail.com | Live.com | MSN.com | Outlook.com | Passport.com

Outlook メール API では、メッセージと添付ファイルの読み取り、作成、送信、イベント メッセージの表示と応答、および Office 365 での Azure Active Directory で保護されているフォルダーの管理が可能です。 また、次のドメインでは、Microsoft アカウントと同じ機能も提供されます: Hotmail.com、Live.com、MSN.com、Outlook.com、および Passport.com。

注意

リファレンスをわかりやすくするため、この記事の残りの部分では、これらの Microsoft アカウント ドメインを含めるために Outlook.com を使用します。

API v2.0 が不要な場合 左の目次で、[Office 365 REST API リファレンス] セクションに移動し、使用したいバージョンを選択します。

すべてのメール API の操作

メッセージの操作

メッセージはメールボックス フォルダーに格納されるため、多くの場合、メッセージ エンドポイントには、メッセージの入ったフォルダーが含まれています。 フォルダーは ID または InboxDraftsSentItems、もしくは DeletedItems などの既知のフォルダーの名前のいずれかで指定されます。

フォルダーの操作

メールボックス フォルダーにはメッセージとその他のフォルダーを格納することができます。 フォルダーを取得、作成、変更、削除、管理することができます。 ID の代わりに既知のフォルダー名 (InboxSentItemsDrafts、または DeletedItems) を使用して、対応するフォルダーを指定することができます。

関連項目

メール REST API を使用する

認証

他の Outlook REST API と同様に、メール API へのすべての要求に対して、有効なアクセス トークンを含める必要があります。 アクセス トークンを取得するには、アプリを登録して識別し、適切な承認を取得する必要があります。

効率化された登録と承認のオプションについては詳細情報をご覧ください。 メール API で特定の操作を続行する際には、この点にご留意ください。

API のバージョン

メール REST API は、すべてのバージョンの Outlook REST API でサポートされています。機能は、特定のバージョンによって異なる場合があります。

対象ユーザー

すべてのメール API 要求は、指定しない限り常にサインイン ユーザーのために実行されます。優先受信トレイ API など、一部の API サブセットは、サインイン ユーザーまたはユーザー ID で指定したユーザーで、適切な権限を付与して実行できます。

Outlook REST API のすべてのサブセットに共通な情報の詳細については、「Outlook REST API の使用」を参照してください。

メッセージを取得する

メールボックス フォルダーからメッセージ コレクションまたは個々のメッセージを取得できます。

応答内の各メッセージには、Body プロパティをはじめとする複数のプロパティが含まれます。 メッセージの本文は、テキストまたは HTML 形式のいずれかにできます。 本文が HTML の場合、既定では、Body プロパティに組み込まれている安全ではない可能性がある HTML (たとえば、JavaScript など) が、本文の内容が REST 応答で返される前に削除されます。

元の HTML コンテンツ全体を取得するには、次の HTTP 要求ヘッダーを含めます。

Prefer: outlook.allow-unsafe-html

GET 要求の Body プロパティと UniqueBody プロパティで返される目的の形式を指定するには、Prefer: outlook.body-content-type ヘッダーを使用します。

  • テキスト形式で返されるメッセージ本文を取得するには、Prefer: outlook.body-content-type="text" を指定します。
  • HTML 形式でメッセージ本文を返すには、Prefer: outlook.body-content-type="html" を指定するか、単にヘッダーをスキップします。

いずれかのヘッダーを指定すると、応答には対応する Preference-Applied ヘッダーが確認として含まれます。

  • テキスト形式要求の場合: Preference-Applied: outlook.body-content-type="text"
  • HTML 形式要求の場合: Preference-Applied: outlook.body-content-type="html"

メッセージ コレクションを取得する

最低限必要なスコープ

以下のいずれか:

注意

このセクションの操作の動作は、バージョンによって異なります。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] の下でバージョンを選択してください。

サインインしたユーザーの ([削除済みアイテム] と [低優先メール] フォルダーを含む) メールボックス全体から、メッセージ コレクションを取得します。

GET https://outlook.office.com/api/v2.0/me/messages

また、ユーザーのメールボックスのフォルダーを指定して、そのフォルダーからメッセージ コレクションを取得することもできます。

GET https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/messages
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、または既知のフォルダー名 InboxDraftsSentItems、または DeletedItems (特定のフォルダーからメッセージを取得する場合) です。AllItems を指定すると、メールボックス全体からすべてのメッセージを返します。

注意

既定では、応答内の各メッセージには、そのプロパティがすべて含まれます。 パフォーマンスを最適化するために必要なプロパティのみを指定する場合は、$select を使用します。 Id プロパティは常に返されます。 パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

次の例は、$select を使用して、応答内の各メッセージの SenderSubject プロパティのみを返すように指定する方法を示しています。 $select を使用しない場合にメッセージに返されるプロパティの完全なリストについては、「連絡先を取得する」の応答サンプルをご覧ください。

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/MailFolders/sentitems/messages/?$select=Sender,Subject

応答のサンプル

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('sentitems')/Messages(Sender,Subject)",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIzAAAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqS\"",
            "Id": "AAMkAGI2TIzAAAA=",
            "Subject": "Meeting Notes",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy-AAA=')",
            "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
            "Id": "AAMkAGI2TIy-AAA=",
            "Subject": "Contract Signing",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        },
        {
            "@odata.type": "#Microsoft.OutlookServices.EventMessage",
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2TIy9AAA=')",
            "@odata.etag": "W/\"CwAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqJ\"",
            "Id": "AAMkAGI2TIy9AAA=",
            "Subject": "Rob:Alex 1:1",
            "Sender": {
                "EmailAddress": {
                    "Name": "Alex D",
                    "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
                }
            }
        }
    ]
}

応答の種類

要求されたメッセージ コレクションです。

メッセージを取得する

最低限必要なスコープ

以下のいずれか:

ID でメッセージを取得します。

GET https://outlook.office.com/api/v2.0/me/messages/{message_id}
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2THVSAAA=

応答のサンプル

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')",
    "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz\"",
    "Id": "AAMkAGI2THVSAAA=",
    "CreatedDateTime": "2014-10-20T00:41:57Z",
    "LastModifiedDateTime": "2014-10-20T00:41:57Z",
    "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTIKz",
    "Categories": [],
    "ReceivedDateTime": "2014-10-20T00:41:57Z",
    "SentDateTime": "2014-10-20T00:41:53Z",
    "HasAttachments": true,
    "Subject": "Re: Meeting Notes",
    "Body": {
        "ContentType": "Text",
        "Content": "\n________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP\n"
    },
    "BodyPreview": "________________________________________\nFrom: Alex D\nSent: Sunday, October 19, 2014 5:28 PM\nTo: Katie Jordan\nSubject: Meeting Notes\n\nPlease send me the meeting notes ASAP",
    "Importance": "Normal",
    "ParentFolderId": "AAMkAGI2AAEMAAA=",
    "Sender": {
        "EmailAddress": {
            "Name": "Katie Jordan",
            "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Katie Jordan",
            "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "Alex D",
                "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com"
            }
        }
    ],
    "CcRecipients": [],
    "BccRecipients": [],
    "ReplyTo": [],
    "ConversationId": "AAQkAGI2yEto=",
    "IsDeliveryReceiptRequested": false,
    "IsReadReceiptRequested": false,
    "IsRead": false,
    "IsDraft": false,
    "WebLink": "https://outlook.office365.com/owa/?ItemID=AAMkAGI2THVSAAA%3D&exvsurl=1&viewmodel=ReadMessageItem"
}

応答の種類

要求されたメッセージです。

注意

既定では、指定されたメッセージのプロパティすべてが応答に含まれます。 パフォーマンスを最適化するために必要なプロパティのみを指定する場合は、$select を使用します。 Id プロパティは常に返されます。 パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

次の例は、$select を使用して、応答内のメッセージの SenderSubject プロパティのみを返すように指定する方法を示しています。

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1I5MTAAA=?$select=Sender,Subject

メッセージを同期する

最低限必要なスコープ

以下のいずれか:

ローカル データ ストアはサーバー上のメッセージと同期できます。メッセージの同期はフォルダー単位の操作であり、たとえば、受信トレイ内のすべてのメッセージを同期できます。フォルダー階層内のメッセージを同期するには、各フォルダーを個別に同期する必要があります。

API では、フォルダー内のすべてのメッセージを取得する完全な同期と、最後の完全な同期から変更されたすべてのメッセージを取得する差分同期の両方がサポートされています。

通常、メール フォルダーを同期するには、2 つ以上の GET 要求が必要です。GET 要求はメッセージを取得するのとよく似た方法で実行できますが、特定の要求ヘッダーおよび必要に応じて deltaToken または skipToken を含める必要があります。

要求ヘッダー

  • 以前の同期要求から返される skipToken を含む同期要求を除き、すべての同期要求で Prefer: odata.track-changes ヘッダーを指定する必要があります。最初の応答で Preference-Applied: odata.track-changes ヘッダーを探して、リソースが同期をサポートすることを確認してから、先に進みます。

  • Prefer: odata.maxpagesize={x} ヘッダーを指定して、要求で返されるメッセージの最大数を指定することができます。

メッセージ同期の一般的なラウンドは次のとおりです。

  1. 必須の Prefer: odata.track-changes ヘッダーを指定して最初の GET 要求を行います。同期要求に対する最初の応答では、常に deltaToken が返されます。(2 番目以降の GET 要求は、前の応答で受信した deltaToken または skipToken のいずれかを含むため、最初の GET 要求とは異なります。)

  2. 最初の応答で Preference-Applied: odata.track-changes ヘッダーが返った場合は、フォルダーの同期に進むことができます。

  3. 第 2 の GET 要求を行います。最初の GET 要求から返された Prefer: odata.track-changes ヘッダーと deltaToken を指定して、追加のメッセージがあるかどうかを調べます。第 2 の要求では、追加のメッセージと、さらにメッセージがある場合は skipToken が返され、最後のメッセージが同期された場合は deltaToken が返されます (この場合、同期ラウンドは完了し、停止できます)。

  4. 前の呼び出しから返された skipToken を指定して GET 呼び出しを送信することで、同期を続けます。@odata.deltaLink ヘッダーと再び deltaToken (同期が完了したことを示します) が含まれる最後の応答を受け取ると、停止します。

完全同期ラウンドで受信した最後のデルタ トークンをキャッシュします。 これを使用して、増分同期ラウンドを開始します。

これは増分同期ラウンドです:

  1. 必須の Prefer: odata.track-changes ヘッダーと、完全同期ラウンドの最後の応答で受信したキャッシュ deltaToken を使用して、最初の GET 要求を行います。

  2. 2 番目以降の手順では、完全同期に使用されたパターンに従います。

特定のフォルダー内のメッセージを同期するには

最初の要求

GET https://outlook.office365.com/api/v2.0/me/MailFolders('{folder_id}')/messages

2 番目の要求、またはそれ以降のラウンドの最初の要求

GET https://outlook.office365.com/api/v2.0/me/MailFolders('{folder_id}')/messages/?$deltaToken={delta_token}

同じラウンドの 3 番目またはそれ以降の要求

前の応答に skipToken が含まれる場合は、次の同期要求の送信を続けます。@odata.deltaLink ヘッダーと deltaToken を再び含む応答を受け取ったら停止します。

GET https://outlook.office365.com/api/v2.0/me/MailFolders('{folder_id}')/messages/?$skipToken={skip_token}
パラメーター 説明
Header parameters
Prefer odata.track-changes 要求が同期要求であることを示します。ラウンドの最初の 2 つの GET 要求に対して必須です。
優先 odata.maxpagesize 各応答で返されるメッセージの数を設定します。省略可能。
URL パラメーター
folder_id 文字列 同期するフォルダーの ID、または既知のフォルダー名 (InboxDraftsSentItemsDeletedItems)。必須。
deltaToken 文字列 そのフォルダーの最後の同期要求を示すトークン。その前の同期応答で、@odata.deltaLink の値の一部として返されます。2 番目の GET 要求に対して必須です。
skipToken 文字列 ダウンロードするメッセージがまだあることを示すトークン。前の同期応答で @odata.nextLink の値の一部として返され手いる場合は必須です。

既定では、同期はフォルダー内のすべてのプロパティおよびすべてのメッセージを返します。$select クエリ式を使用して、最適なパフォーマンスに必要なプロパティのみを指定します。Id プロパティは常に返されます。

同期は、クエリ式 $select、$top、$expand をサポートします。$filter および $orderby のサポートは制限されており、$search はサポートされていません。

  • サポートされている $filter 式は “$filter=ReceivedDateTime+ge+{value}” または “$filter=ReceivedDateTime+gt+{value}" だけです。
  • サポートされている $orderby 式は “$orderby=ReceivedDateTime+desc” だけです。$orderby 式を含めない場合、戻り値の順序は保証されません。

パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

応答の種類

要求されたメッセージと、差分メッセージについてサーバーにメッセージ データの追加ページを要求するための deltaToken または skipToken を含むコレクション。

次の例では、7 通のメッセージが含まれる特定のフォルダーを同期するための一連の要求を示します。最初の同期要求では、一度に 2 通のメッセージを返し (odata.maxpagesize が 2)、各メッセージの Sender プロパティと Subject プロパティだけを返すように指定します。

  • 最初の応答では、2 通のメッセージ、deltaLink、および deltaToken が返されます。
  • 2 番目の要求では、その deltaToken を使用します。2 番目の応答では、2 通のメッセージ、nextLink、および skipToken が返されます。
  • 同期を完了するには、4 番目の同期応答で deltaLinkdeltaToken が返されるまで (この場合、このラウンドの同期は完了します)、前の同期要求で返された skipToken を 3 番目と 4 番目の要求で使用します。次のラウンドの同期のために deltaToken を保存します。

最初の要求のサンプル

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages?$select=Subject,Sender HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

最初の応答データのサンプル

最初の応答には、このフォルダーが同期をサポートすることを示す Preference-Applied: odata.track-changes ヘッダーが含まれます。応答には、2 つのメッセージと deltaToken も含まれます。

Preference-Applied: odata.track-changes

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADPAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS9+\"",
      "Id":"AAMkAGI5MAAAwXADPAAA=",
      "Subject":"Updates from All Company",
      "Sender":{
        "EmailAddress":{
          "Name":"Contoso Demo on Yammer",
          "Address":"noreply@yammer.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADVAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+E\"",
      "Id":"AAMkAGI5MAAAwXADVAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Alex Darrow",
          "Address":"AlexD@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.deltaLink":"https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=MfzCBD5nm2dcGAFGk5qypL1PSyEAADFmX28BAAAA"
}

2 番目の要求のサンプル

2 番目の要求では、前の応答で返された deltaToken を指定します。

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=MfzCBD5nm2dcGAFGk5qypL1PSyEAADFmX28BAAAA HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

2 番目の応答データのサンプル

2 番目の応答には、次の 2 つのメッセージと、フォルダーに同期するメッセージがまだあることを示す skipToken が含まれます。

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADQAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS9/\"",
      "Id":"AAMkAGI5MAAAwXADQAAA=",
      "Subject":"International Launch Planning for XT2000",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADUAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+D\"",
      "Id":"AAMkAGI5MAAAwXADUAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Anne Wallace",
          "Address":"AnneW@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.nextLink":"https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28CAAAA"
}

3 番目の要求のサンプル

3 番目の要求には、前の応答から返される skipToken が含まれます。

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28CAAAA HTTP/1.1
Prefer: odata.maxpagesize=2

3 番目の応答データのサンプル

3 番目の応答では、さらに 2 つのメッセージと、フォルダーに同期するメッセージがまだあることを示す別の skipToken が返されます。

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADTAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+C\"",
      "Id":"AAMkAGI5MAAAwXADTAAA=",
      "Subject":"RE: Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Pavel Bansky",
          "Address":"PavelB@contoso.onmicrosoft.com"
        }
      }
    },
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADSAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+B\"",
      "Id":"AAMkAGI5MAAAwXADSAAA=",
      "Subject":"Latin American Ad Campaign - XT Series",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.nextLink":"https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28DAAAA"
}

4 番目の要求のサンプル

4 番目の要求には、前の応答で返された skipToken を含めます。

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24skipToken=MfzCAj5nm2dcGAFGk5qypL1PSyEAADFmX28DAAAA HTTP/1.1
Prefer: odata.maxpagesize=2

4 番目と最後の応答データのサンプル

4 番目の応答では、フォルダーに残っている 1 つだけのメッセージと、そのフォルダーの同期が完了したことを示す deltaToken が返されます。そのフォルダーの同期の次のラウンドのために deltaToken を保存します。

{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value":[
    {
      "@odata.id":"https://outlook.office.com/api/v2.0/Users('f97adce1-d718-4a0e-9af8-b10167e3a346@0d76cf04-f6a0-46cc-947b-d2e1bdd98d11')/Messages('AAMkAGI5MAAAwXADRAAA=')",
      "@odata.etag":"W/\"CQAAABYAAAA+Z5tnXBgBRpOasqS9T0shAAAwYS+A\"",
      "Id":"AAMkAGI5MAAAwXADRAAA=",
      "Subject":"Data sheets for the XT2000 ",
      "Sender":{
        "EmailAddress":{
          "Name":"Engineering",
          "Address":"engineering@contoso.onmicrosoft.com"
        }
      }
    }
  ],
  "@odata.deltaLink": "https://outlook.office365.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24deltaToken=0_zCBD5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA"
}

増分同期要求のサンプル

最初の要求には、最後の完全同期応答からの deltaToken が含まれます。

GET https://outlook.office.com/api/v2.0/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24select=Subject%2cSender&%24deltatoken=0_zCBD5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA HTTP/1.1
Prefer: odata.maxpagesize=2
Prefer: odata.track-changes

増分同期要求に対する応答には、フォルダー メッセージ セットへの変更が含まれています。

増分同期応答のサンプル

応答は、メッセージ セットに 1 つの変更が加えられたことを示します。 メッセージが削除されます。


{
  "@odata.context":"https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('AAMkAGI5MAAAwW-j-AAA%3D')/Messages(Subject,Sender)/$delta",
  "value": [
        {
            "id": "Messages('AAMkAGY5MDFjNTQyLWI3NzItNGE4My04ZWE4LWQ4YmMwNTJkYTg1YwBGAAAAAAD7fYH1FVR1TayS78jtGGehBwDB1GgBNTpbT6Qe-PzdAR4YAh7cdimCAADwOTzPjXdMTKEex95TwbKkAACLEykWAAA=')",
            "reason": "deleted"
        }
    ]
,
  "@odata.deltaLink": "https://outlook.office365.com/api/beta/Me/MailFolders('AAMkAGI5MAAAwW-j-AAA=')/messages/?%24deltaToken=4_zRDV5nm2dcGAFGk5qypL1PSyEAADBb9RkEAAAA"
}

メッセージを作成して送信する

オンザフライで新しいメッセージを送信するか、下書きメッセージを作成してからそれを送信することができます。任意のフォルダーに下書きを作成できます。

オンザフライで新しいメッセージを送信する

最低限必要なスコープ

以下のいずれか:

SendMail メソッドを使用して、要求本文で指定されたメッセージを送信します。Attachments コレクション プロパティでこれを指定して、同じアクションの呼び出しに添付ファイルを含めることができます。また、[送信済みアイテム] フォルダーにメッセージを保存できます。

POST https://outlook.office.com/api/v2.0/me/sendmail
必須のパラメーター 種類 説明
本文パラメーター
メッセージ メッセージ 送信するメッセージです。
SavetoSentItems ブール値 [送信済みアイテム] 内のメッセージを保存するかどうかを示します。既定値は true です。

要求本文に必要な ToRecipients プロパティと任意の書き込み可能な message プロパティを設定して、Message パラメーターを指定します。SaveToSentItems パラメーターは、false の場合にのみ必要です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/sendmail

{
  "Message": {
    "Subject": "Meet for lunch?",
    "Body": {
      "ContentType": "Text",
      "Content": "The new cafeteria is open."
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
        "Name": "menu.txt",
        "ContentBytes": "bWFjIGFuZCBjaGVlc2UgdG9kYXk="
      }
    ]
  },
  "SaveToSentItems": "false"
}

応答のサンプル

Status code: 202

下書きメッセージを作成する

最低限必要なスコープ

以下のいずれか:

新しいメッセージの下書きを作成します。下書きを任意のフォルダーに作成し、必要に応じて送信前に更新できます。[下書き] フォルダーに保存するには、/me/messages ショートカットを使用します。

POST https://outlook.office.com/api/v2.0/me/messages
POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/messages
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 宛先フォルダーの ID または既知のフォルダー名 (Inbox または Drafts)。

要求本文に任意の書き込み可能な message プロパティを指定します。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/MailFolders/inbox/messages
Content-Type: application/json

{
  "Subject": "Did you see last night's game?",
  "Importance": "Low",
  "Body": {
    "ContentType": "HTML",
    "Content": "They were <b>awesome</b>!"
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k0AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5\"",
  "Id": "AAMkAGE0Mz7k0AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0Ag5",
  "Categories": [],
  "CreatedDateTime": "2014-10-18T20:06:51Z",
  "LastModifiedDateTime": "2014-10-18T20:06:51Z",
  "Subject": "Did you see last night's game?",
  "BodyPreview": "They were awesome!",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<head>\r\n<meta http-equiv=\"Content-Type\" content=\"text/html; charset=utf-8\">\r\n</head>\r\n<body>\r\nThey were <b>awesome</b>!\r\n</body>\r\n</html>\r\n"
  },
  "Importance": "Low",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0Mpv2hisc=",
  "ReceivedDateTime": "2014-10-18T20:06:51Z",
  "SentDateTime": "2014-10-18T20:06:51Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

応答の種類

下書きメッセージです。

下書きメッセージを送信する

最低限必要なスコープ

以下のいずれか:

Send メソッドを使用して、新しいメッセージの下書き返信の下書き全員に返信の下書き、または転送の下書きを送信します。その後、メッセージは [送信済みアイテム] フォルダーに保存されます。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/send
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 送信する下書きメッセージの ID です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz7k0AAA=/send

応答のサンプル

Status code: 202

メッセージを返信または全員に返信する

注意

このセクションの操作の動作は、バージョンによって異なります。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] の下でバージョンを選択してください。

オンザフライでコメントを付けて返信することができます。 または、最初に返信の下書きを作成してから更新し、その下書きを送信することができます。

メッセージの送信者にのみ返信することも、一度にすべての受信者に返信することもできます。

オンザフライで送信者に返信する

最低限必要なスコープ

以下のいずれか:

メッセージの送信者に返信する場合は、Reply メソッドを使用します。その後、メッセージは [送信済みアイテム] フォルダーに保存されます。

または、返信のために更新可能なプロパティを変更する必要がある場合、最初に下書き返信メッセージを作成し、メッセージのプロパティを更新してから、返信を送信します。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/reply
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 返信するメッセージの ID です。
本文パラメーター
コメント 文字列 含めるコメントです。空の文字列にすることができます。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/reply
Content-Type: application/json

{
  "Comment": "Sounds great! See you tomorrow."
}

応答のサンプル

Status code: 202

オンザフライで全員に返信する

最低限必要なスコープ

以下のいずれか:

メッセージの送信者全員に返信する場合は、コメントを指定して、ReplyAll メソッドを使用します。その後、メッセージは [送信済みアイテム] フォルダーに保存されます。

または、返信のために更新可能なプロパティを変更する必要がある場合、最初に下書きの全員に返信メッセージを作成し、メッセージのプロパティを更新してから、返信を送信します。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/replyall
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 返信するメッセージの ID です。
本文パラメーター
コメント 文字列 含めるコメントです。空の文字列にすることができます。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0MSz8DmAAA=/replyall
Content-Type: application/json

{
  "Comment": "Thanks for the heads up."
}

応答のサンプル

Status code: 202

下書きの返信メッセージを作成する

最低限必要なスコープ

以下のいずれか:

指定したメッセージに返信するための下書きを作成します。 その後、下書きを更新して本文プロパティに返信のコンテンツを追加したり、その他のメッセージのプロパティを変更したり、下書きをそのまま送信したりすることができます。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/createreply
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 返信するメッセージの ID です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkADA1MTAAAAqldOAAA=/createreply

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTAAAH5JKoAAA=')",
  "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO\"",
  "Id": "AAMkADA1MTAAAH5JKoAAA=",
  "CreatedDateTime": "2016-03-15T08:33:43Z",
  "LastModifiedDateTime": "2016-03-15T08:33:43Z",
  "ChangeKey": "CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAH5/DO",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-15T08:33:43Z",
  "SentDateTime": "2016-03-15T08:33:43Z",
  "HasAttachments": false,
  "InternetMessageId": "<DM2PR00MB00571796B16132601E1F286CF7890@DM2PR00MB0057.namprd00.prod.outlook.com>",
  "Subject": "RE: Let's start a group",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n<body>Fanny, would you name the group if the project is approved, please?\r\n<b>From:</b> Fanny Downs<br>\r\n<b>Sent:</b> Friday, March 4, 2016 12:23:35 AM<br>\r\n<b>To:</b> Admin<br>\r\n<b>Subject:</b> Re: Let's start a group</font>\r\n<p>That's a great idea!<br>\r\n</body>\r\n</html>"
  },
  "BodyPreview": "Fanny, would you name the group if the project is approved, please?\r\n________________________________\r\nFrom: Fanny Downs\r\nSent: Friday, March 4, 2016 12:23:35 AM\r\nTo: Admin\r\nSubject: Re: Let's start a group\r\n\r\n\r\nThat's a gre",
  "Importance": "Normal",
  "ParentFolderId": "AQMkADA1MTAAAAIBDwAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Admin",
      "Address": "admin@contoso.onmicrosoft.com"
    }
  },
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkADA1MTVGjIwpLvWmGtIo-aFE=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkADA1MTAAAH5JKoAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "MentionedMe": null,
  "AppliedHashtagsPreview": null,
  "LikesPreview": null,
  "MentionsPreview": null,
  "Mentioned": [ ],
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" }
}

応答の種類

ToRecipientIsDraft、およびその他の適切なプロパティが事前に設定された下書きの返信メッセージです。

下書きの全員に返信メッセージを作成する

最低限必要なスコープ

以下のいずれか:

指定したメッセージの送信者とすべての受信者に対して返信するための下書きを作成します。 その後下書きを更新して本文に返信のコンテンツを追加したり、その他のメッセージのプロパティを変更したり、下書きをそのまま送信したりすることができます。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/createreplyall
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 返信するメッセージの ID です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/createreplyall

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k5AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhF\"",
  "Id": "AAMkAGE0Mz7k5AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhF",
  "Categories": [],
  "CreatedDateTime": "2014-10-18T21:21:06Z",
  "LastModifiedDateTime": "2014-10-18T21:21:06Z",
  "Subject": "RE: Check out the new Office 365 APIs",
  "BodyPreview": "If the project gets approved, please decide on the name.\r\n_________________________________\r\nFrom: Alex D\r\nSent: Saturday, October 18, 2014 9:18:18 PM\r\nTo: Katie Jordan; Garth Fort\r\nSubj",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0M3HbTkEU=",
  "ReceivedDateTime": "2014-10-18T21:21:06Z",
  "SentDateTime": "2014-10-18T21:21:06Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

応答の種類

ToRecipientIsDraft、およびその他の適切なプロパティが事前に設定された下書きの全員に返信メッセージです。

新規または下書きメッセージを転送する

注意

このセクションの操作の動作は、バージョンによって異なります。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] の下でバージョンを選択してください。

メッセージを直接転送するか、下書きの転送メッセージを作成し、それを更新してから送信することができます。

メッセージを直接転送する

最低限必要なスコープ

以下のいずれか:

Forward メソッドを使用してメッセージを転送し、オプションでコメントを指定します。その後、メッセージは [送信済みアイテム] フォルダーに保存されます。

または、メッセージを転送するために更新可能なプロパティを変更する必要がある場合、最初に下書きの転送メッセージを作成し、メッセージのプロパティを更新してから、返信を送信します。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/forward
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 転送するメッセージの ID です。
本文パラメーター
コメント 文字列 含めるコメントです。空の文字列にすることができます。
ToRecipients コレクション(受信者) 受信者の一覧です。

要求本文に Comment パラメーターと ToRecipients パラメーターを指定します。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/forward
Content-Type: application/json

{
  "Comment": "FYI",
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com"
      }
    }
  ]
}

応答のサンプル

Status code: 202

転送メッセージの下書きを作成する

最低限必要なスコープ

以下のいずれか:

指定したメッセージを転送するための下書きを作成します。 その後下書きを更新して本文にコンテンツを追加したり、その他のメッセージのプロパティを変更したり、下書きをそのまま送信したりすることができます。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/createforward
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 転送するメッセージの ID です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8DmAAA=/createforward

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz7k6AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhG\"",
  "Id": "AAMkAGE0Mz7k6AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AhG",
  "Categories": [],
  "CreatedDateTime": "2016-03-15T08:42:10Z",
  "LastModifiedDateTime": "2016-03-15T08:42:10Z",
  "Subject": "FW: Let's start a group",
  "BodyPreview": "Dana, just want to make sure you get this.\r\n________________________________\r\nFrom: Admin\r\nSent: Tuesday, March 15, 2016 6:47:54 AM\r\nTo: Fanny Downs; Randi Welch\r\nSubject: RE: Let's st",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEPAAA=",
  "From": null,
  "Sender": {
    "EmailAddress": {
      "Address": "'alexd@contoso.onmicrosoft.com'",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0M3HbTkEU=",
  "ReceivedDateTime": "2016-03-15T08:42:10Z",
  "SentDateTime": "2016-03-15T08:42:10Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": true,
  "IsRead": true
}

応答の種類

IsDraft と適切なプロパティが事前に設定されている下書きの転送メッセージです。

メッセージを更新する

メッセージの書き込み可能なプロパティを変更して、変更を保存します。

メッセージを更新する

最低限必要なスコープ

以下のいずれか:

下書きまたは既存のメッセージの書き込み可能なプロパティを変更します。指定したプロパティのみが変更されます。

PATCH https://outlook.office.com/api/v2.0/me/messages/{message_id}
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 更新するメッセージの ID です。

要求本文に 1 つ以上の書き込み可能なメッセージのプロパティを指定します。

要求のサンプル

PATCH https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8S-AAA=
Content-Type: application/json

{
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "IsRead": true
}

応答のサンプル

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz8S-AAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP\"",
  "Id": "AAMkAGE0Mz8S-AAA=",
  "ChangeKey": "CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIP",
  "Categories": [
    "Orange category",
    "Green category"
  ],
  "CreatedDateTime": "2014-10-17T17:12:15Z",
  "LastModifiedDateTime": "2014-10-19T03:24:35Z",
  "Subject": "Meeting notes from today",
  "BodyPreview": "See attached",
  "Body": {
    "ContentType": "HTML",
    "Content": "<html>\r\n...</html>\r\n"
  },
  "Importance": "Normal",
  "HasAttachments": true,
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGE0Mip-qvhs=",
  "ReceivedDateTime": "2014-10-17T17:12:15Z",
  "SentDateTime": "2014-10-17T17:12:12Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}

応答の種類

更新されたメッセージです。

複数のメッセージを削除する

注意

メッセージを削除するときには注意してください。 削除した内容を回復できない可能性があります。 詳細については、「アイテムの削除」をご覧ください。

メッセージを削除する

最低限必要なスコープ

以下のいずれか:

DELETE https://outlook.office.com/api/v2.0/me/messages/{message_id}
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 削除するメッセージの ID です。

要求のサンプル

DELETE https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8TBAAA=

応答のサンプル

Status code: 204

メッセージを移動またはコピーする

メッセージをフォルダーに移動またはコピーできます。

メッセージを移動する

最低限必要なスコープ

以下のいずれか:

メッセージをフォルダーに移動します。これにより、宛先フォルダーにメッセージの新しいコピーが作成されます。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/move
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 移動するメッセージの ID です。
本文パラメーター
DestinationId 文字列 宛先フォルダーの ID、あるいは既知のフォルダー名 (InboxDraftsSentItems または DeletedItems) です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2TIy-AAA=/move
Content-Type: application/json

{
  "DestinationId": "AAMkAGI2AAEJAAA="
}

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0MGz_vSAAA=')",
  "@odata.etag": "W/\"CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP\"",
  "Id": "AAMkAGI2shBhAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "Categories": [],
  "CreatedDateTime": "2014-10-20T00:13:21Z",
  "LastModifiedDateTime": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGI2AAEJAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGWgitxag=",
  "ReceivedDateTime": "2014-10-20T00:13:21Z",
  "SentDateTime": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}

応答の種類

移動されたメッセージです。

メッセージをコピーする

最低限必要なスコープ

以下のいずれか:

メッセージをフォルダーにコピーします。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/copy
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 コピーするメッセージの ID です。
本文パラメーター
DestinationId 文字列 宛先フォルダーの ID、あるいは既知のフォルダー名 (InboxDraftsSentItems または DeletedItems) です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2TIy-AAA=/copy
Content-Type: application/json

{
  "DestinationId": "inbox"
}

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGE0Mz8TDAAA=')",
  "@odata.etag": "W/\"CQAAABYAAAAmP1Ln1wcHRariNdTMGAO9AAAS0AIS\"",
  "Id": "AAMkAGI2T8DtAAA=",
  "ChangeKey": "CQAAABYAAACd9nJ/tVysQos2hTfspaWRAAADTJqP",
  "Categories": [],
  "CreatedDateTime": "2014-10-20T00:13:21Z",
  "LastModifiedDateTime": "2014-10-20T00:13:23Z",
  "Subject": "Contract Signing",
  "BodyPreview": "There will be a detailed legal review of Project Falcon once the contract is ready.",
  "Body": {
    "ContentType": "Text",
    "Content": "There will be a detailed legal review of Project Falcon once the contract is ready."
  },
  "Importance": "Normal",
  "HasAttachments": false,
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "From": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "Sender": {
    "EmailAddress": {
      "Address": "alexd@a830edad9050849NDA1.onmicrosoft.com",
      "Name": "Alex D"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Address": "katiej@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Katie Jordan"
      }
    },
    {
      "EmailAddress": {
        "Address": "garthf@a830edad9050849NDA1.onmicrosoft.com",
        "Name": "Garth Fort"
      }
    }
  ],
  "CcRecipients": [],
  "BccRecipients": [],
  "ReplyTo": [],
  "ConversationId": "AAQkAGI2NGVhZTVlLTI1OGMtNDI4My1iZmE5LTA5OGJiZGEzMTc0YQAQAKjRc0YJSUBJpofjWgitxag=",
  "ReceivedDateTime": "2014-10-20T00:13:21Z",
  "SentDateTime": "2014-10-20T00:13:21Z",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsDraft": false,
  "IsRead": true
}

応答の種類

メッセージの新しいコピーです。

優先受信トレイを管理する

優先受信トレイでは、受信トレイの Focused タブに重要メッセージを表示し、その他の受信トレイのメッセージを Other タブに表示します。システム主体の分類方法によって、既定の方法で受信トレイのメッセージが整理されます。ユーザー インターフェイスまたはプログラムを介して、時間の経過によってシステムを修正し、学習させることができます。使用頻度が増えるほど、システムは、受信したメッセージの重要性をより高い精度で予想できるようになります。

プログラム レベルでは、優先受信トレイ REST API は指定のユーザー メッセージで機能し、メッセージごとの InferenceClassificationプロパティをサポートします。使用可能な値は FocusedOther であり、ユーザーがそれぞれのメッセージの重要性をどのように見なしているかを示しています。メッセージ分類システムを修正し学習させるには、メッセージ レベルで InferenceClassification プロパティの PATCH 操作を使用します。

優先受信トレイ REST API では、オーバーライドを作成することもできます。それぞれのオーバーライドは InferenceClassificationOverride インスタンスで表され、分類システムが常に一貫した方法 (常に "優先" または "その他") で、それまでに学習した方法に関係なく、特定の送信者からのメッセージを指定するように指示するものです。指定したユーザーのオーバーライドを作成取得更新削除することができます。そのユーザーのオーバーライド (ある場合) は、InferenceClassification インスタンスのコレクションである、InferenceClassificationOverride ナビゲーション プロパティでアクセスできます。オーバーライドでは、ユーザーは受信メッセージの分類をさらに細かく制御でき、分類システムの信頼性を高めることができます。

分類システムでは受信トレイの受信メッセージについてのみ分類を学習し、適用することに注意してください。その他のフォルダーにあるメッセージは、既定で "優先" になっています。オーバーライドの設定は、今後、受信トレイに入ってくるメッセージに反映され、オーバーライドでは、受信トレイを含むフォルダーにある既存のメッセージの InferenceClassification プロパティは変更されません。

メッセージ分類システムの記憶

オーバーライドを使用した、送信者ごとに一貫した分類

メッセージ分類を更新する

最低限必要なスコープ

以下のいずれか:

指定したメッセージの InferenceClassification プロパティを変更します。メッセージが受信トレイにある場合は、該当する Focused または Other タブでユーザーにメッセージが表示されます。この種の訂正によって、メッセージ分類システムは、指定したユーザーに関する将来の分類をカスタマイズする方法を学習します。

PATCH https://outlook.office.com/api/v2.0/me/messages('{message_id}')

PATCH https://outlook.office.com/api/v2.0/Users('{user_id}')/messages('{message_id}')
パラメーター 説明
URL パラメーター
message_id 文字列 送信する下書きメッセージの ID です。
user_id 文字列 ユーザーの電子メール アドレスです。

応答の種類

更新されたメッセージです。

要求のサンプル

この例では、サインイン ユーザーの指定したメッセージについて InferenceClassification プロパティを Other に変更します。

PATCH https://outlook.office.com/api/v2.0/me/messages('AAMkADA1MTQBAAA=')

{
    "InferenceClassification": "Other"
}

応答のサンプル

個々に示す応答オブジェクトは、更新された InferenceClassification プロパティを示しており、切り詰めて簡略化されています。実際の PATCH 要求では、メッセージのすべてのプロパティが返されます。

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/Messages('AAMkADA1MTQBAAA=')",
    "@odata.etag": "W/\"CQAAABYAAADX8oL1Wa7jQbcPAHouCzswAAAffAsD\"",
    "Id": "AAMkADA1MTQBAAA=",
    "Importance": "Normal",
    "Sender": {
        "EmailAddress": {
            "Name": "Fanny Downs",
            "Address": "fannyd@adatum.onmicrosoft.com"
        }
    },
    "From": {
        "EmailAddress": {
            "Name": "Fanny Downs",
            "Address": "fannyd@adatum.onmicrosoft.com"
        }
    },
    "ToRecipients": [
        {
            "EmailAddress": {
                "Name": "Admin",
                "Address": "admin@adatum.onmicrosoft.com"
            }
        }
    ],
    "InferenceClassification": "Other"
}

送信者のオーバーライドを作成する

最低限必要なスコープ

以下のいずれか:

SMTP アドレスで示される送信者のオーバーライドを作成します。この SMTP アドレスからの将来のメッセージは、オーバーライドで指定されたとおり一貫して分類されます。

注意

  • 同じ STMP アドレスですでにオーバーライドがある場合は、そのオーバーライドの ClassifyAs および Name フィールドが指定の値で更新されます。
  • メールボックスでサポートされているオーバーライドは、一意の送信者 SMTP アドレスに基づき、最大 1000 件までです。
  • POST 操作では、同時に作成できるオーバーライドは 1 件です。複数のオーバーライドを作成するには、複数の POST 要求を送信するか、またはバッチで送信します。
POST https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

POST https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides
パラメーター 説明
URL パラメーター
user_id 文字列 ユーザーの電子メール アドレスです。

応答の種類

新しく作成された InferenceClassificationOverride、または同じ SMTP アドレスが既にある場合は更新された InferenceClassificationOverride インスタンス。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

{
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@adatum.onmicrosoft.com"
    }
}

応答のサンプル

Status code: 201 Created

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/InferenceClassification/Overrides/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf11a9b9')",
    "Id": "98f5bdef-576a-404d-a2ea-07a3cf11a9b9",
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Fanny Downs",
        "Address": "fannyd@adatum.onmicrosoft.com"
    }
}

すべてのユーザーのオーバーライドを取得する

最低限必要なスコープ

以下のいずれか:

ユーザーが設定したオーバーライドを取得して、特定の送信者からのメッセージを常に一定の方法で分類します。

それぞれのオーバーライドは、送信者の SMTP アドレスに対応します。最初は、ユーザーにはオーバーライドはありません。

GET https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

GET https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides
パラメーター 説明
URL パラメーター
user_id 文字列 ユーザーの電子メール アドレスです。

応答の種類

InferenceClassificationOverride インスタンスのコレクション。ユーザーがオーバーライドを設定していない場合は、空のコレクションが返されます。

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides

応答のサンプル

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/InferenceClassification/Overrides",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf11a9b9')",
            "Id": "98f5bdef-576a-404d-a2ea-07a3cf11a9b9",
            "ClassifyAs": "Focused",
            "SenderEmailAddress": {
                "Name": "Fanny Downs",
                "Address": "fannyd@adatum.onmicrosoft.com"
            }
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')",
            "Id": "98f5bdef-576a-404d-a2ea-07a3cf34af4r",
            "ClassifyAs": "Other",
            "SenderEmailAddress": {
                "Name": "Randi Welch",
                "Address": "randiw@adatum.onmicrosoft.com"
            }
        }
    ]
}

送信者のオーバーライドを更新する

最低限必要なスコープ

以下のいずれか:

指定のとおり、オーバーライドの ClassifyAs フィールドを変更します。

InferenceClassificationOverride インスタンスのその他のフィールドの変更には、PATCH を使用できません。

送信者にオーバーライドがあり、その送信者が表示名を変更すると、既存のオーバーライドで POST を使用して [名前] フィールドの更新を実施できます

送信者にオーバーライドがあり、その送信者が SMTP アドレスを変更すると、既存のオーバーライドを削除して、新しい SMTP アドレスで新しくオーバーライドを作成することが、この送信者のオーバーライドを「更新」する唯一の方法になります。

PATCH https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('{override_id}')

PATCH https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides('{override_id}')
パラメーター 説明
URL パラメーター
override_id 文字列 更新するオーバーライドの ID です。
user_id 文字列 ユーザーの電子メール アドレスです。

応答の種類

更新された InferenceClassificationOverride インスタンス。

要求のサンプル

次の例では、サインイン ユーザーのオーバーライドを変更します。オーバーライドは SMTP アドレス randiw@adatum.onmicrosoft.com の送信者のものであり、Other から Focused に変更されます。

PATCH https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')

{
    "ClassifyAs": "Focused"
}

応答のサンプル

Status code: 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/InferenceClassification/Overrides/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('86b6ceaf-57f7-4278-97c4-4da0a97f6cdb@70559e59-b378-49ea-8e53-07a3a3d27f5b')/InferenceClassificationOverrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')",
    "Id": "98f5bdef-576a-404d-a2ea-07a3cf34af4r",
    "ClassifyAs": "Focused",
    "SenderEmailAddress": {
        "Name": "Randi Welch",
        "Address": "randiw@adatum.onmicrosoft.com"
    }
}

送信者のオーバーライドを削除する

最低限必要なスコープ

以下のいずれか:

その ID で指定されたオーバーライドを削除します。

DELETE https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('{override_id}')

DELETE https://outlook.office.com/api/v2.0/Users('{user_id}')/InferenceClassification/Overrides('{override_id}')
パラメーター 説明
URL パラメーター
override_id 文字列 送信する下書きメッセージの ID です。
user_id 文字列 ユーザーの電子メール アドレスです。

要求のサンプル

DELETE https://outlook.office.com/api/v2.0/me/InferenceClassification/Overrides('98f5bdef-576a-404d-a2ea-07a3cf34af4r')

応答のサンプル

Status code: 204 No Content

@- メンションの管理 (プレビュー)

この機能は現在ベータ版で利用できます。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] セクションで [ベータ版] を選択します。

ルールを管理する (プレビュー)

この機能は現在ベータ版で利用できます。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] セクションで [ベータ版] を選択します。

登録を解除する (プレビュー)

この機能は現在ベータ版で利用できます。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] セクションで [ベータ版] を選択します。

言語の選択肢を取得する (プレビュー)

この機能は現在ベータ版でのみ利用できます。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] セクションで [ベータ版] を選択します。

タイム ゾーンの選択肢を取得する (プレビュー)

この機能は現在ベータ版でのみ利用できます。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] セクションで [ベータ版] を選択します。

メールボックス設定を取得する

最低限必要なスコープ

サインインしているユーザーのプライマリ メールボックスの設定を取得します。設定の例として、ユーザーの優先言語と既定のタイムゾーン、自動応答の設定などが挙げられます。

GET https://outlook.office.com/api/v2.0/me/MailboxSettings

応答の種類

MailboxSettings

すべてのメールボックス設定から、優先言語の設定のみを取得するには:

GET https://outlook.office.com/api/beta/me/MailboxSettings/Language

応答の種類

LocaleInfo

すべてのメールボックス設定から、優先タイム ゾーンのみを取得するには:

GET https://outlook.office.com/api/beta/me/MailboxSettings/TimeZone

応答の種類

Windows のタイム ゾーン形式で優先タイム ゾーンを表す文字列。

自動応答設定のみを取得することもできます。

要求のサンプル

次の例では、サインインしているユーザーのすべてのメールボックス設定を取得します。

GET https://outlook.office.com/api/v2.0/me/MailboxSettings

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ExternalAudience": "All",
        "ScheduledStartDateTime": {
            "DateTime": "2016-03-14T07:00:00.0000000",
            "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
            "DateTime": "2016-03-28T07:00:00.0000000",
            "TimeZone": "UTC"
        },
        "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
        "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
    },
    "TimeZone": "Pacific Standard Time",
    "Language":{
        "Locale":"en-US",
        "DisplayName":"English (United States)"
    }
}

自動応答の設定を取得する

最低限必要なスコープ

サインインしているユーザーのメールボックスの自動応答の設定を取得します。

自動応答では、メールを受信したときに、そのメッセージの送信者に自動的にメッセージで通知することができます。たとえば、不在時に返信できない場合などにそれを通知できます。

自動応答はユーザーのメールボックス設定の一部 (MailboxSettings) であるため、自動応答設定を含むすべてのメールボックス設定を取得、または自動応答設定だけを取得すると表示できます。

HTTP ヘッダーを使用して優先するタイムゾーンに ScheduledStartDateTimeScheduledEndDateTime の値が表示されるように指定します。Prefer: outlook.timezone

GET https://outlook.office.com/api/v2.0/me/MailboxSettings/AutomaticRepliesSetting

応答の種類

AutomaticRepliesSetting

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/MailboxSettings/AutomaticRepliesSetting

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings/AutomaticRepliesSetting",
    "Status": "AlwaysEnabled",
    "ExternalAudience": "None",
    "ScheduledStartDateTime": {
        "DateTime": "2016-03-19T02:00:00.0000000",
        "TimeZone": "UTC"
    },
    "ScheduledEndDateTime": {
        "DateTime": "2016-03-20T02:00:00.0000000",
        "TimeZone": "UTC"
    },
    "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
    "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
}

自動応答の設定を更新する

最低限必要なスコープ

自動応答はユーザーの (MailboxSettings で表される) メールボックス設定の一部です。該当するメールボックス設定を更新して、自動応答を有効化、構成、または無効化することができます。

注意

メールボックス設定は作成または削除できません。

PATCH https://outlook.office.com/api/v2.0/me/MailboxSettings

応答の種類

MailboxSettings

要求のサンプル

自動応答設定の取得を示す前の例に続き、次の例ではステータスAlwaysEnabled から Scheduled に変更し、開始日と終了日を異なる日付範囲に変更します。

PATCH https://outlook.office.com/api/v2.0/me/MailboxSettings
Content-Type: application/json

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ScheduledStartDateTime": {
          "DateTime": "2016-03-20T18:00:00.0000000",
          "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
          "DateTime": "2016-03-28T18:00:00.0000000",
          "TimeZone": "UTC"
        }
    }
}

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailboxSettings",
    "AutomaticRepliesSetting": {
        "Status": "Scheduled",
        "ExternalAudience": "None",
        "ScheduledStartDateTime": {
            "DateTime": "2016-03-20T02:00:00.0000000",
            "TimeZone": "UTC"
        },
        "ScheduledEndDateTime": {
            "DateTime": "2016-03-28T02:00:00.0000000",
            "TimeZone": "UTC"
        },
    "InternalReplyMessage": "<html>\n<body>\n<p>I'm at our company's worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n",
    "ExternalReplyMessage": "<html>\n<body>\n<p>I'm at the Contoso worldwide reunion and will respond to your message as soon as I return.<br>\n</p></body>\n</html>\n"
    },
    "TimeZone": "Pacific Standard Time",
    "Language":{
        "Locale":"en-US",
        "DisplayName":"English (United States)"
    }
}

メール ヒントを取得する (プレビュー)

この機能は現在ベータ版で利用できます。 詳細を確認するには、左側の目次の [Office 365 REST API リファレンス] セクションで [ベータ版] を選択します。

添付ファイルを取得する

添付ファイルのコレクションまたは添付ファイルを取得できます。

添付ファイルのコレクションを取得する

最低限必要なスコープ

以下のいずれか:

特定のメッセージから添付ファイルを取得します。

GET https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。

注意

既定では、応答内の各添付ファイルに、その添付ファイルの種類に対応するすべてのプロパティが含まれます。 パフォーマンスを最適化するために必要なプロパティのみを指定する場合は、$select を使用します。 Id プロパティは常に返されます。 パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

応答の種類

FileAttachment または ItemAttachment の種類を使用できる添付ファイル コレクション。

要求と応答のサンプル

以下の例は、$select を使用して応答内の各添付ファイルの 名前 プロパティのみを返すことを指定する方法を示しています。 $select を使用しない場合、添付ファイルに返されるプロパティの完全なリストについては、「添付ファイルを取得する」にある応答のサンプルをご覧ください。

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2THVSAAA=/attachments?$select=Name

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages('AAMkAGI2THVSAAA%3D')/Attachments(Name)",
    "value": [
        {
            "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')/Attachments('AAMkAGI2j4kShdM=')",
            "Id": "AAMkAGI2j4kShdM=",
            "Name": "minutes.docx"
        }
    ]
}

次の例では、Outlook のメール アイテムである添付ファイルのみの取得を示します。応答には、添付メッセージの ID でもある添付ファイル ID が含まれています。

GET https://outlook.office.com/api/v2.0/me/messages('AAMkADFiNTPAAA=')/attachments

Content-Type: application/json

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages('AAMkADFiNTPAAA%3D')/Attachments",
  "value": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ItemAttachment",
      "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-20075df800e5@1717622f-1d94-4d0c-9d74-f907ad6677b4')/Messages('AAMkADFiNTPAAA=')/Attachments('AAMkADFiNTAUhhYuYi0=')",
      "Id": "AAMkADFiNTAUhhYuYi0=",
      "Name": "How to retrieve item attachment using Outlook REST API",
      "ContentType": message/rfc822,
      "Size": 71094,
      "IsInline": false,
      "LastModifiedDateTime": "2015-09-24T05:57:59Z",
    }
  ]
}

添付ファイルを取得する

最低限必要なスコープ

以下のいずれか:

特定のメッセージから添付ファイルを取得します。

GET https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments/{attachment_id}

注意

パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。
attachment_id 文字列 添付ファイル ID。

注意

既定では、応答には添付ファイルのすべてのプロパティが含まれます。 パフォーマンスを最適化するために必要なプロパティのみを指定する場合は、$select を使用します。 例については、「添付ファイルのコレクションを取得する」をご覧ください。 Id プロパティは常に返されます。 パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

応答の種類

要求されたファイルの添付またはアイテムの添付

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGI2THVSAAA=/attachments/AAMkAGI2j4kShdM=

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/Messages('AAMkAGI2THVSAAA%3D')/Attachments/$entity",
    "@odata.type": "#Microsoft.OutlookServices.FileAttachment",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/Messages('AAMkAGI2THVSAAA=')/Attachments('AAMkAGI2j4kShdM=')",
    "Id": "AAMkAGI2j4kShdM=",
    "LastModifiedDateTime": "2014-10-20T00:41:52Z",
    "Name": "minutes.docx",
    "ContentType": "application/vnd.openxmlformats-officedocument.wordprocessingml.document",
    "Size": 11585,
    "IsInline": false,
    "ContentId": null,
    "ContentLocation": null,
    "ContentBytes": "UEsDBBQABgAIAAAAIQDCAAA4KQAAAAA="
}

サンプル要求 (参照添付ファイル)

次の例では、メッセージの参照添付ファイルを取得します。

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments/AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=

応答のサンプル

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
  "LastModifiedDateTime": "2016-03-12T06:04:38Z",
  "Name": "Koala picture",
  "ContentType": null,
  "Size": 382,
  "IsInline": false,
  "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
  "ProviderType": "OneDriveBusiness",
  "ThumbnailUrl": null,
  "PreviewUrl": null,
  "Permission": "Edit",
  "IsFolder": false
}

サンプル要求 (添付ファイルの $expand)

次の例では、メッセージのプロパティを持つ 3 つの参照添付ファイルすべてのインラインを取得して展開します。

GET https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/?$expand=attachments

応答のサンプル

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages/$entity",
  "@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZsPav\"",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAA=",
  "CreatedDateTime": "2016-03-08T01:01:57Z",
  "LastModifiedDateTime": "2016-03-12T06:18:54Z",
  "ChangeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZsPav",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-08T01:01:57Z",
  "SentDateTime": "2016-03-08T01:01:51Z",
  "HasAttachments": true,
  "InternetMessageId": "<SN2SR0101MB00299F0D7D22EE5D380104ED84B20@SN2SR0101MB0029.namsdf01.sdf.exchangelabs.com>",
  "Subject": "RE: New year activity",
  "Body": {
    "ContentType": "html",
    "Content": "<html>\r\n<<body>Let's gather to celebrate the new year! </body>\r\n</html>\r\n"
  },
  "BodyPreview": "What about the tulips?\r\n________________________________\r\nFrom: Dana Swope <danas@contoso.onmicrosoft.com>\r\nSent: Monday, March 7, 2016 10:51:39 PM\r\nTo: Dana Swope; Culinary Expert Group\r\nSubject: RE: New year activity\r\n\r\nLet's gather to celebrate the new year! ",
  "Importance": "Normal",
  "ParentFolderId": "AQMkAGE1MQN7j5uzzwAAAIBDAAAAA==",
  "Sender": {
    "EmailAddress": {
      "Name": "Dana Swope",
      "Address": "danas@contoso.onmicrosoft.com"
    }
  },
  "From": {
    "EmailAddress": {
      "Name": "Dana Swope",
      "Address": "danas@contoso.onmicrosoft.com"
    }
  },
  "ToRecipients": [
    {
      "EmailAddress": {
        "Name": "Dana Swope",
        "Address": "danas@contoso.onmicrosoft.com"
      }
    },
    {
      "EmailAddress": {
        "Name": "Culinary Expert Group",
        "Address": "Chefs@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkAGE1MMM2SaRFsKgx7BKVfig=",
  "ConversationIndex": "AQHRaThgdSG4wzZJpEWwqDHsEpV+KJ9OtWGUgAAkYLI=",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": false,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1Mbs88AADUv0uFAAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "InferenceClassification": "Focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "FlagStatus": "NotFlagged" },
  "Attachments@odata.context": "https://outlook.office.com/api/beta/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments",
  "Attachments": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=",
      "LastModifiedDateTime": "2016-03-12T05:54:31Z",
      "Name": "Personal pictures",
      "ContentType": null,
      "Size": 362,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": true
    },
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
      "LastModifiedDateTime": "2016-03-12T06:04:38Z",
      "Name": "Koala picture",
      "ContentType": null,
      "Size": 382,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    },
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAO3wkFiM3KlCpn81m8qS1W0=",
      "LastModifiedDateTime": "2016-03-12T06:18:54Z",
      "Name": "Hydrangea picture",
      "ContentType": null,
      "Size": 412,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg",
      "ProviderType": "OneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    }
  ]
}

サンプル要求 (入れ子になった添付ファイル アイテムの $expand)

次の例では、入れ子になった添付ファイル アイテムを取得します。

GET https://outlook-sdf.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments/AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=$expand=Microsoft.OutlookServices.ItemAttachment/Item

応答のサンプル

Status code: 200

{
    "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAL53d0u3BKBJmCxKVxZKBZ8=",
    "LastModifiedDateTime": "2017-04-25T20:05:55Z",
    "Name": "RE: Changes to GetConditionMetadata handler",
    "ContentType": null,
    "Size": 78927,
    "IsInline": false,
    "Item": {
        "Id": "", 
        "Name": "How to retrieve item attachment using Outlook REST API",
        "ContentType": message/rfc822,
        "Size": 71094,
        "IsInline": false,
        "LastModifiedDateTime": "2015-09-24T05:57:59Z",
    }
}

添付ファイルを作成する

メッセージに添付するファイルまたはアイテムを作成できます。

添付ファイルを作成する

最低限必要なスコープ

以下のいずれか:

メッセージに添付ファイルを追加します。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。
本文パラメーター
@odata.type 文字列 #Microsoft.OutlookServices.FileAttachment
名前 文字列 添付ファイルの名前。
ContentBytes バイナリ 添付するファイル。

要求本文に、NameContentBytes パラメーターおよび任意の書き込み可能なファイルの添付 プロパティを指定します。

応答の種類

新しい添付ファイル

添付アイテムを作成する

最低限必要なスコープ

以下のいずれか:

メッセージにアイテムの添付ファイルを追加します。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。
本文パラメーター
@odata.type 文字列 #Microsoft.OutlookServices.ItemAttachment
名前 文字列 添付ファイルの名前。
アイテム Message または Event エンティティです。 添付するアイテム。

要求本文に、NameItem パラメーターおよび任意の書き込み可能なアイテムの添付 プロパティを指定します。

応答の種類

新しい添付アイテム

参照添付ファイルを作成する

最低限必要なスコープ

以下のいずれか:

メッセージに参照添付ファイルを追加します。

POST https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。
本文パラメーター
@odata.type 文字列 #Microsoft.OutlookServices.ReferenceAttachment
名前 文字列 添付ファイルの表示名。必須。
SourceUrl 文字列 添付ファイルの内容を取得するための URL。フォルダーへの URL の場合、Outlook または Outlook on the web 上でフォルダーが正しく表示されるには、IsFolder を true に設定します。必須。

要求本文に、NameSourceUrl パラメーター、および任意の書き込み可能な参照添付ファイルのプロパティを指定します。

応答の種類

参照添付ファイル

要求のサンプル

次の例では、既存メッセージに添付ファイルを追加します。添付ファイルは、OneDrive for Business 上のファイルへのリンクです。

POST https://outlook.office.com/api/v2.0/me/messages/AAMkAGE1Mbs88AADUv0uFAAA=/attachments
Content-Type: application/json

{ 
    "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment", 
    "Name": "Koala picture", 
    "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg", 
    "ProviderType": "oneDriveBusiness", 
    "Permission": "Edit", 
    "IsFolder": "False" 
} 

応答のサンプル

Status code: 201 Created

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADUv0uFAAA%3D')/attachments/$entity",
  "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
  "Id": "AAMkAGE1Mbs88AADUv0uFAAABEgAQAPSg72tgf7hJp0PICVGCc0g=",
  "LastModifiedDateTime": "2016-03-12T06:04:38Z",
  "Name": "Koala picture",
  "ContentType": null,
  "Size": 382,
  "IsInline": false,
  "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/koala.jpg",
  "ProviderType": "oneDriveBusiness",
  "ThumbnailUrl": null,
  "PreviewUrl": null,
  "Permission": "edit",
  "IsFolder": false
}

要求のサンプル

次の例では、下書きメッセージを作成する場合と同じ呼び出しで、参照添付ファイルを追加します。添付ファイルは、OneDrive for Business 上のファイルへのリンクです。

POST https://outlook.office.com/api/v2.0/me/messages
Content-Type: application/json

{
    "Subject": "Plan for dinner",
    "Body": {
      "ContentType": "HTML",
      "Content": "Office anniversary is coming soon!"
    },
    "ToRecipients": [
      {
        "EmailAddress": {
          "Address": "randiw@contoso.onmicrosoft.com"
        }
      }
    ],
    "Attachments": [
      {
        "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment", 
        "Name": "Hydrangea picture", 
        "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg", 
        "ProviderType": "oneDriveBusiness", 
        "Permission": "Edit", 
        "IsFolder": "False" 
      }
    ]
}

応答のサンプル

Status code: 201 Created

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages/$entity",
  "@odata.etag": "W/\"CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZ8qi1\"",
  "Id": "AAMkAGE1Mbs88AADZ0CU9AAA=",
  "CreatedDateTime": "2016-03-12T09:04:54Z",
  "LastModifiedDateTime": "2016-03-12T09:04:54Z",
  "ChangeKey": "CQAAABYAAACY4MQpaFz9SbqUDe4+bs88AADZ8qi1",
  "Categories": [ ],
  "ReceivedDateTime": "2016-03-12T09:04:54Z",
  "SentDateTime": "2016-03-12T09:04:54Z",
  "HasAttachments": true,
  "InternetMessageId": "<BL2SR0101MB00188944566BDECE6EDE57F384B60@BL2SR0101MB0018.namsdf01.sdf.exchangelabs.com>",
  "Subject": "Plan for dinner",
  "Body": {
    "ContentType": "html",
    "Content": "<html>\r\n<body>\r\nOffice anniversary is coming soon!\r\n</body>\r\n</html>\r\n"
  },
  "BodyPreview": "Office anniversary is coming soon!",
  "Importance": "normal",
  "ParentFolderId": "AQMkAGE1MQN7j5uzzwAAAIBDwAAAA==",
  "Sender": null,
  "From": null,
  "ToRecipients": [
    {
      "EmailAddress": {
      "Name": "Randi Welch",
      "address": "randiw@contoso.onmicrosoft.com"
      }
    }
  ],
  "CcRecipients": [ ],
  "BccRecipients": [ ],
  "ReplyTo": [ ],
  "ConversationId": "AAQkAGE1MMAAQAJk0cqqggzpKtIHErqyDkcU=",
  "ConversationIndex": "AQHRfD4+mTRyqqCDOkq0gcSurIORxQ==",
  "IsDeliveryReceiptRequested": false,
  "IsReadReceiptRequested": false,
  "IsRead": true,
  "IsDraft": true,
  "WebLink": "https://outlook.office.com/owa/?ItemID=AAMkAGE1Mbs88AADZ0CU9AAA%3D&exvsurl=1&viewmodel=ReadMessageItem",
  "InferenceClassification": "focused",
  "UnsubscribeData": [ ],
  "UnsubscribeEnabled": false,
  "Flag": { "flagStatus": "notFlagged" },
  "Attachments@odata.context": "https://outlook.office.com/api/v2.0/$metadata#users('ddfcd489-628b-40d7-b48b-57002df800e5')/messages('AAMkAGE1Mbs88AADZ0CU9AAA%3D')/attachments",
  "Attachments": [
    {
      "@odata.type": "#Microsoft.OutlookServices.ReferenceAttachment",
      "Id": "AAMkAGE1Mbs88AADZ0CU9AAABEgAQAGe4H1iqXwtLsrCCLLkDxqo=",
      "LastModifiedDateTime": null,
      "Name": "Hydrangea picture",
      "ContentType": null,
      "Size": 0,
      "IsInline": false,
      "SourceUrl": "https://contoso-my.spoppe.com/personal/danas_contoso_onmicrosoft_com/Documents/Pics/hydrangea.jpg",
      "ProviderType": "oneDriveBusiness",
      "ThumbnailUrl": null,
      "PreviewUrl": null,
      "Permission": "edit",
      "IsFolder": false
    }
  ]
}

添付ファイルを削除する

最低限必要なスコープ

以下のいずれか:

メッセージの指定した添付ファイルを削除します。添付ファイルは、ファイルまたはアイテムにすることができます。

DELETE https://outlook.office.com/api/v2.0/me/messages/{message_id}/attachments/{attachment_id}
必須のパラメーター 種類 説明
URL パラメーター
message_id 文字列 メッセージ ID。
attachment_id 文字列 添付ファイル ID。

要求のサンプル

DELETE https://outlook.office.com/api/v2.0/me/messages/AAMkAGE0Mz8S-AAA=/attachments/AAMkAGE0Mg67gL7o=

応答のサンプル

Status code: 204

フォルダーを取得する

ユーザーのメールボックス内のフォルダーのコレクションまたはフォルダーを取得できます。

フォルダーのコレクションを取得する

最低限必要なスコープ

以下のいずれか:

サインイン中のユーザーのルート フォルダーからフォルダー コレクションを取得する (.../me/MailFolders) か、指定したフォルダーから取得します。.../me/MailFolders ショートカットを使用すると、最上位フォルダーのコレクションを取得して、別のフォルダーに移動することができます。

GET https://outlook.office.com/api/v2.0/me/MailFolders
GET https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/childfolders

注意

パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、または既知のフォルダー名 InboxDraftsSentItems、または DeletedItems (特定のフォルダーからフォルダーを取得する場合) です。

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/MailFolders

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders",
    "value": [
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEKAAA=')",
            "Id": "AAMkAGI2AAEKAAA=",
            "DisplayName": "Deleted Items",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 1
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEPAAA=')",
            "Id": "AAMkAGI2AAEPAAA=",
            "DisplayName": "Drafts",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEMAAA=')",
            "Id": "AAMkAGI2AAEMAAA=",
            "DisplayName": "Inbox",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 6,
            "TotalItemCount": 6
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEeAAA=')",
            "Id": "AAMkAGI2AAEeAAA=",
            "DisplayName": "Junk Email",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAELAAA=')",
            "Id": "AAMkAGI2AAELAAA=",
            "DisplayName": "Outbox",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 0
        },
        {
            "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEJAAA=')",
            "Id": "AAMkAGI2AAEJAAA=",
            "DisplayName": "Sent Items",
            "ParentFolderId": "AAMkAGI2AAEIAAA=",
            "ChildFolderCount": 0,
            "UnreadItemCount": 0,
            "TotalItemCount": 3
        }
    ]
}

応答の種類

要求されたフォルダーのコレクションです。

フォルダーを取得する

最低限必要なスコープ

以下のいずれか:

ID でフォルダーを取得します。

GET https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}

ユーザーが共有しているメールボックス フォルダーを取得します:

GET https://outlook.office.com/api/v2.0/users/{user_id}/mailFolders/{folder_id}

注意

パラメーターのフィルタリング、並べ替え、およびページングについては、「OData クエリ パラメーター」をご覧ください。

必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、あるいは InboxDraftsSentItems または DeletedItems の既知のフォルダー名です。

要求のサンプル

GET https://outlook.office.com/api/v2.0/me/MailFolders/inbox

応答のサンプル

Status code: 200

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
    "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGI2AAEMAAA=')",
    "Id": "AAMkAGI2AAEMAAA=",
    "DisplayName": "Inbox",
    "ParentFolderId": "AAMkAGI2AAEIAAA=",
    "ChildFolderCount": 0,
    "UnreadItemCount": 6,
    "TotalItemCount": 6
}

要求のサンプル

別のユーザーが共有したフォルダーを取得する

GET https://outlook.office.com/api/v2.0/users/8c14ebe1-e4ba-4232cd011db47/mailFolders/AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM

応答のサンプル

HTTP/1.1 200 OK

{
    "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
    "@odata.id": "https://outlook.office.com/api/beta/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM')",
    "Id": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM",
    "DisplayName": "Inbox",
    "ParentFolderId": "AAMkADk0MGFkODE3LWE4MmYtNDRhOS04OGQxLTM4QCHGmLqkYhISaO_lSymODLQABa6L5YpAAA=",
    "ChildFolderCount": 4,
    "UnreadItemCount": 27962,
    "TotalItemCount": 64420
}

応答の種類

要求されたフォルダーです。

フォルダー階層を同期する

メールボックス内のすべてのフォルダーのフラットなテーブルを取得できます。メール フォルダー階層を同期するときは、このカテゴリを要求します。

エンドポイント フォルダー カテゴリ
Me/MailFolders メール フォルダー

各フォルダー カテゴリの最上位レベルのみを同期できます。たとえば、Me/MailFolders は要求できますが、Me/MailFolders('inbox') は要求できません。

同期では、階層内のすべてのフォルダーを取得する完全な同期と、最後の完全な同期から変更されたすべてのフォルダーを取得する差分同期の両方がサポートされています。

最低限必要なスコープ

以下のいずれか:

GET https://outlook.office.com/api/v2.0/me/MailFolders
必須のパラメーター 種類 説明
ヘッダー パラメーター
優先 odata.trackchanges 要求が同期要求であることを示します。
本文パラメーター
odata.deltaLink 文字列 前回フォルダー階層が同期されたことを示すトークン。

クエリ パラメーター$filter $orderby$search$top は、要求に含まれていてもどれもが無視されます。

応答の種類

要求されたカテゴリ内のフォルダーのフラット リストです。

フォルダーを作成する

新しいフォルダーをフォルダーのコレクションに追加します。

フォルダーを作成する

最低限必要なスコープ

以下のいずれか:

DisplayName に指定した名前で子フォルダーを作成します。DisplayName は、フォルダーの唯一の書き込み可能なプロパティです。

POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/childfolders
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、あるいは InboxDraftsSentItems または DeletedItems の既知のフォルダー名です。
本文パラメーター
DisplayName 文字列 フォルダーの表示名です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/MailFolders/inbox/childfolders
Content-Type: application/json

{
  "DisplayName": "Company"
}

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders('inbox')/ChildFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Company",
  "ChildFolderCount": 0,
  "UnreadItemCount": 2,
  "TotalItemCount": 27
}

応答の種類

新しいフォルダーです。

注釈

最上位フォルダーを作成することはできません。フォルダーを追加できるのは、childfolders エンドポイントのみです。

フォルダーを更新する

フォルダー名を変更します。

フォルダーを更新する

最低限必要なスコープ

以下のいずれか:

フォルダー名を DisplayName で指定した名前に変更します。この名前は、フォルダーの唯一の書き込み可能なプロパティです。

PATCH https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、あるいは InboxDraftsSentItems または DeletedItems の既知のフォルダー名です。
本文パラメーター
DisplayName 文字列 フォルダーの新しい表示名です。

要求のサンプル

PATCH https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=
Content-Type: application/json

{
  "DisplayName": "Business"
}

応答のサンプル

Status code: 200

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}

応答の種類

更新されたフォルダーです。

フォルダーを削除する

フォルダーとそのすべての内容を削除します。

注意

フォルダーを削除するときには注意してください。 削除した内容を回復できない可能性があります。 詳細については、「アイテムの削除」をご覧ください。

フォルダーを削除する

最低限必要なスコープ

以下のいずれか:

folder_id で指定したフォルダーを削除します。

DELETE https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、あるいは InboxDraftsSentItems または DeletedItems の既知のフォルダー名です。

要求のサンプル

DELETE https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=

応答のサンプル

Status code: 204

フォルダーを移動またはコピーする

フォルダーを別のフォルダーに移動またはコピーできます。

フォルダーを移動する

最低限必要なスコープ

以下のいずれか:

フォルダーとその内容を別のフォルダーに移動するには、Move メソッドを使用します。

POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/move
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、あるいは InboxDraftsSentItems または DeletedItems の既知のフォルダー名です。
本文パラメーター
DestinationId 文字列 宛先フォルダーの ID、あるいは既知のフォルダー名 (InboxDraftsSentItems または DeletedItems) です。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=/move
Content-Type: application/json

{
  "DestinationId": "AAMkAGE0MyxQ9AAA="
}

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-l_AAA=')",
  "Id": "AAMkAGE0Mz-l_AAA=",
  "ParentFolderId": "AAMkAGE0MyxQ9AAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}

応答の種類

移動されたフォルダーです。

フォルダーをコピーする

最低限必要なスコープ

以下のいずれか:

フォルダーとその内容を別のフォルダーにコピーするには、Copy メソッドを使用します。

要求のサンプル

POST https://outlook.office.com/api/v2.0/me/MailFolders/{folder_id}/copy
必須のパラメーター 種類 説明
URL パラメーター
folder_id 文字列 フォルダーの ID、あるいは InboxDraftsSentItems または DeletedItems の既知のフォルダー名です。
本文パラメーター
DestinationId 文字列 宛先フォルダーの ID、あるいは既知のフォルダー名 (InboxDraftsSentItems または DeletedItems) です。
POST https://outlook.office.com/api/v2.0/me/MailFolders/AAMkAGE0Mz-l_AAA=/copy
Content-Type: application/json

{
  "DestinationId": "inbox"
}

応答のサンプル

Status code: 201

{
  "@odata.context": "https://outlook.office.com/api/v2.0/$metadata#Me/MailFolders/$entity",
  "@odata.id": "https://outlook.office.com/api/v2.0/Users('ddfcd489-628b-40d7-b48b-57002df800e5@1717622f-1d94-4d0c-9d74-709fad664b77')/MailFolders('AAMkAGE0Mz-mAAAA=')",
  "Id": "AAMkAGE0Mz-mAAAA=",
  "ParentFolderId": "AAMkAGE0MAAEMAAA=",
  "DisplayName": "Business",
  "ChildFolderCount": 0,
  "UnreadItemCount": 4,
  "TotalItemCount": 38
}

応答の種類

フォルダーの新しいコピーです。

次の手順

アプリケーション開発を開始する準備ができている方にも、単に詳しい情報を必要としている方にも、最適なコンテンツをご用意しています。

Office 365 プラットフォームの使い方の詳細については、次のリンク先をご覧ください。