1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

Microsoft Graph APIで自分のOutlookメールをフィルターして読み出すには

Last updated at Posted at 2022-09-04

Summary

自分に対するメモですが、どこかのどなたかのなんらかにも貢献できたら望外の喜びなので、こちらに貼っておきます。

Outlookメールに到着したメールに従って、LEDマトリクスを表示させたいとおもい、Microsoft Graph APIを調べました。

受信したOutlookメールで、ある日時以降の宛先が特定の名前の前半を指定した場合のAPIをはっておきます。

How to Use

  • 手順
  1. https://developer.microsoft.com/ja-jp/graph/graph-explorer こちらにアクセスする
  2. https://graph.microsoft.com/v1.0/me/messages?$filter=receivedDateTime ge 2022-09-02T09:00:00Z and startsWith(from/emailAddress/name, '{{なまえの先頭の一部}}') をクエリに入力する
  3. 「クエリの実行」ボタンを押下する
https://graph.microsoft.com/v1.0/me/messages?$filter=receivedDateTime ge 2022-09-02T09:00:00Z and startsWith(from/emailAddress/name, '{{なまえの先頭の一部}}')

いわずもがなだとは思いますが、{{なまえの先頭の一部}}は任意の文字列に置換してください。

  • 結果
    3. OK - 200が返却される。
    3.下ペインの「応答のプレビュー」にフィルタされたメール内容がJson形式で表示される。

セキュリティの観点よりJsonの掲載は控えております。
1レコードは以下の通り(キーだけ貼っておきます)

{
  "@odata.context": "XXX",
  "value": [
    {
      "@odata.etag": "XXX",
      "id": "XXX",
      "createdDateTime": "2022-09-01T09:27:05Z",
      "lastModifiedDateTime": "2022-09-01T09:27:06Z",
      "changeKey": "XXX",
      "categories": [],
      "receivedDateTime": "2022-09-01T09:27:05Z",
      "sentDateTime": "2022-09-01T09:27:03Z",
      "hasAttachments": false,
      "internetMessageId": "XXX",
      "subject": "XXX",
      "bodyPreview": "XXX",
      "importance": "normal",
      "parentFolderId": "XXX",
      "conversationId": "XXX",
      "conversationIndex": "XXX",
      "isDeliveryReceiptRequested": null,
      "isReadReceiptRequested": false,
      "isRead": false,
      "isDraft": false,
      "webLink": "XXX",
      "inferenceClassification": "focused",
      "body": {
        "contentType": "text",
        "content": "XXX"
      },
      "sender": {
        "emailAddress": {
          "name": "XXX",
          "address": "XXX"
        }
      },
      "from": {
        "emailAddress": {
          "name": "XXX",
          "address": "XXX"
        }
      },
      "toRecipients": [
        {
          "emailAddress": {
            "name": "XXX",
            "address": "XXX"
          }
        }
      ],
      "ccRecipients": [],
      "bccRecipients": [],
      "replyTo": [],
      "flag": {
        "flagStatus": "notFlagged"
      }
    }
}

補足

フィルタで使用する日時は文字列ではなさそうです。
つまり'2022-09-02T09:00:00Z' ではなくて2022-09-02T09:00:00Z です。ご注意ください。

Conclusion

これで、デプロイされたら、LEDが光ってチームが気づける装置(仮称)が作れそうですw

See Also

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?