イベントを取得する

名前空間: microsoft.graph

重要

Microsoft Graph の /beta バージョンの API は変更される可能性があります。 実稼働アプリケーションでこれらの API を使用することは、サポートされていません。 v1.0 で API を使用できるかどうかを確認するには、Version セレクターを使用します。

指定したイベント オブジェクトのプロパティとリレーションシップを取得します。

アプリは、次の場合に別のユーザーの予定表でイベントを取得できます。

  • アプリにアプリケーションのアクセス許可がある
  • アプリには、あるユーザーからの適切な委任された アクセス許可 があり、別のユーザーがそのユーザーと予定表を共有しているか、そのユーザーに委任されたアクセス許可が付与されています。 詳細と例を参照してください。

イベント リソースは拡張機能をサポートしているため、 操作をGET使用して、イベント インスタンス内のカスタム プロパティと拡張機能データを取得することもできます。

この API は、次の国内クラウド展開で使用できます。

グローバル サービス 米国政府機関 L4 米国政府機関 L5 (DOD) 21Vianet が運営する中国

さまざまなタイム ゾーンをサポートします。

イベントを返す GET 操作の場合は、すべての操作で Prefer: outlook.timezone ヘッダーを使用して、応答のイベントの開始時刻と終了時刻のタイム ゾーンを指定できます。

たとえば、次の Prefer: outlook.timezone ヘッダーは、応答の開始時刻と終了時刻を東部標準時に設定します。

Prefer: outlook.timezone="Eastern Standard Time"

イベントが別のタイム ゾーンで作成された場合は、開始時刻と終了時刻は Prefer ヘッダーで指定したタイム ゾーンに合わせて調整されます。 サポートされているタイム ゾーン名については、この 一覧 を参照してください。 ヘッダーを指定しない場合、開始時刻と終了時刻は UTC で返されます。

イベントリソース上で OriginalStartTimeZone プロパティと OriginalEndTimeZone プロパティを使用して、イベント作成時に使用されたタイム ゾーンを検索できます。

アクセス許可

この API の最小特権としてマークされているアクセス許可またはアクセス許可を選択します。 アプリで必要な場合にのみ、より高い特権のアクセス許可またはアクセス許可を使用します。 委任されたアクセス許可とアプリケーションのアクセス許可の詳細については、「 アクセス許可の種類」を参照してください。 これらのアクセス許可の詳細については、 アクセス許可のリファレンスを参照してください

アクセス許可の種類 最小特権アクセス許可 特権の高いアクセス許可
委任 (職場または学校のアカウント) Calendars.ReadBasic Calendars.Read
委任 (個人用 Microsoft アカウント) Calendars.ReadBasic Calendars.Read
アプリケーション Calendars.ReadBasic Calendars.Read

HTTP 要求

GET /me/events/{id}
GET /users/{id | userPrincipalName}/events/{id}
GET /groups/{id}/events/{id}

GET /me/calendar/events/{id}
GET /users/{id | userPrincipalName}/calendar/events/{id}
GET /groups/{id}/calendar/events/{id}

GET /me/calendars/{id}/events/{id}
GET /users/{id | userPrincipalName}/calendars/{id}/events/{id}

GET /me/calendarGroups/{id}/calendars/{id}/events/{id}
GET /users/{id | userPrincipalName}/calendarGroups/{id}/calendars/{id}/events/{id}

オプションのクエリ パラメーター

このメソッドは、応答をカスタマイズするための OData クエリ パラメーターをサポートします。

要求ヘッダー

名前 説明
Authorization string ベアラー {token}。 必須です。
優先: outlook.timezone string これを使用して、応答内の開始および終了時刻のタイム ゾーンを指定します。 指定しない場合、これらの時刻値は UTC で返されます。 省略可能。
Prefer: outlook.body-content-type string body プロパティが返されるときの形式です。 値は、"text" または "html" になります。 この Prefer ヘッダーが指定されている場合、Preference-Applied ヘッダーが確認として返されます。 ヘッダーが指定されていない場合、 body プロパティは HTML 形式で返されます。 省略可能です。

要求本文

このメソッドには、要求本文を指定しません。

応答

成功した場合、このメソッドは 200 OK 応答コードと、応答本文で event オブジェクトを返します。

例 1: 指定したイベントを取得する

要求

次の例では、指定したイベントを取得します。 以下のものを指定します。

  • 太平洋標準時で返される日時の値を取得するための Prefer: outlook.timezone ヘッダー。
  • 特定の $select プロパティを返すクエリ パラメーター。 $select パラメーターを使用しないと、すべてのイベント プロパティが返されます。

要求では、返されたイベント本体の具体的な形式を示す Prefer: outlook.body-content-type ヘッダーを指定しません。

GET https://graph.microsoft.com/beta/me/events/AAMkAGIAAAoZDOFAAA=?$select=subject,body,bodyPreview,organizer,attendees,start,end,location,hideAttendees
Prefer: outlook.timezone="Pacific Standard Time"

応答

次の例は応答を示しています。 Prefer: outlook.body-content-type ヘッダーが指定されていないため、body プロパティが既定の HTML 形式で返されます。

HTTP/1.1 200 OK
Content-type: application/json
Preference-Applied: outlook.timezone="Pacific Standard Time"

{
    "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('cd209b0b-3f83-4c35-82d2-d88a61820480')/events(subject,body,bodyPreview,organizer,attendees,start,end,location,hideAttendees)/$entity",
    "@odata.etag":"W/\"ZlnW4RIAV06KYYwlrfNZvQAAKGWwbw==\"",
    "id":"AAMkAGIAAAoZDOFAAA=",
    "iCalUId": "040000008200E00074=",
    "uid": "040000008200E00074C=",
    "subject":"Orientation ",
    "bodyPreview":"Dana, this is the time you selected for our orientation. Please bring the notes I sent you.",
    "body":{
        "contentType":"html",
        "content":"<html><head></head><body><p>Dana, this is the time you selected for our orientation. Please bring the notes I sent you.</p></body></html>"
    },
    "start":{
        "dateTime":"2017-04-21T10:00:00.0000000",
        "timeZone":"Pacific Standard Time"
    },
    "end":{
        "dateTime":"2017-04-21T12:00:00.0000000",
        "timeZone":"Pacific Standard Time"
    },
    "location": {
        "displayName": "Assembly Hall",
        "locationType": "default",
        "uniqueId": "Assembly Hall",
        "uniqueIdType": "private"
    },
    "locations": [
        {
            "displayName": "Assembly Hall",
            "locationType": "default",
            "uniqueIdType": "unknown"
        }
    ],
    "attendees":[
        {
            "type":"required",
            "status":{
                "response":"none",
                "time":"0001-01-01T00:00:00Z"
            },
            "emailAddress":{
                "name":"Samantha Booth",
                "address":"samanthab@contoso.com"
            }
        },
        {
            "type":"required",
            "status":{
                "response":"tentativelyAccepted",
                "time":"0001-01-01T00:00:00Z"
            },
            "proposedNewTime": {
                "start": {
                    "dateTime": "2019-08-16T12:00:00.0000000",
                    "timeZone": "Pacific Standard Time"
                },
                "end": {
                    "dateTime": "2019-08-16T14:00:00.0000000",
                    "timeZone": "Pacific Standard Time"
                }
            },
            "emailAddress":{
                "name":"Dana Swope",
                "address":"danas@contoso.com"
            }
        }
    ],
    "hideAttendees": false,
    "organizer":{
        "emailAddress":{
            "name":"Samantha Booth",
            "address":"samanthab@contoso.com"
        }
    }
}

例 2: 本文プロパティをテキスト形式で取得する

要求

次の例は、ヘッダーを使用して、 Prefer: outlook.body-content-type="text" 指定したイベントの body プロパティをテキスト形式で取得する方法を示しています。

この要求も、$select クエリ パラメーターを使用して特定のプロパティを返します。 $select パラメーターを使用しないと、すべてのイベント プロパティが返されます。

GET https://graph.microsoft.com/beta/me/events/AAMkAGI1AAAoZDOFAAA=?$select=subject,body,bodyPreview
Prefer: outlook.body-content-type="text"

応答

次の例は応答を示しています。 body プロパティがテキスト形式で返されます。

HTTP/1.1 200 OK
Content-type: application/json
Preference-Applied: outlook.body-content-type="text"

{
    "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('cd209b0b-3f83-4c35-82d2-d88a61820480')/events(subject,body,bodyPreview)/$entity",
    "@odata.etag":"W/\"ZlnW4RIAV06KYYwlrfNZvQAAKGWwbw==\"",
    "id":"AAMkAGI1AAAoZDOFAAA=",
    "iCalUId": "040000008200E00074=",
    "uid": "040000008200E00074C=",
    "subject":"Orientation ",
    "bodyPreview":"Dana, this is the time you selected for our orientation. Please bring the notes I sent you.",
    "body":{
        "contentType":"text",
        "content":"Dana, this is the time you selected for our orientation. Please bring the notes I sent you.\r\n"
    }
}

例 3: 複数の場所を指定するイベントを取得する

要求

次の例は、複数の場所を指定するイベントの取得を示しています。 この要求では、特定のプロパティを返すように $select クエリ パラメーターを指定しています。

GET https://graph.microsoft.com/beta/me/events/AAMkADAGAADDdm4NAAA=?$select=subject,body,bodyPreview,organizer,attendees,start,end,location,locations

応答

次の例は応答を示しています。 locations プロパティには、イベントを開催する 3 つの場所の詳細が含まれています。

要求ではまたはPrefer: outlook.timezonePrefer: outlook.body-content-typeヘッダーが指定されていないため、start プロパティと end プロパティは既定の UTC タイム ゾーンで表示され、本文は既定の HTML 形式で表示されます。

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('d1a2fae9-db66-4cc9-8133-2184c77af1b8')/events(subject,body,bodyPreview,organizer,attendees,start,end,location,locations)/$entity",
  "@odata.etag":"W/\"y53lbKh6jkaxHzFwGhgyxgAAw5zhug==\"",
  "id":"AAMkADAGAADDdm4NAAA=",
  "iCalUId": "040000008200E00074=",
  "uid": "040000008200E00074C=",
  "subject":"Plan summer company picnic",
  "bodyPreview":"Let's kick-start this event planning!",
  "body":{
    "contentType":"html",
    "content":"<html>\r\n<head>\r\n</head>\r\n<body>\r\nLet's kick-start this event planning!\r\n</body>\r\n</html>\r\n"
  },
  "start":{
    "dateTime":"2017-08-30T11:00:00.0000000",
    "timeZone":"UTC"
  },
  "end":{
    "dateTime":"2017-08-30T12:00:00.0000000",
    "timeZone":"UTC"
  },
  "location":{
    "displayName":"Conf Room 3; Fourth Coffee; Home Office",
    "locationType":"default",
    "uniqueId":"Conf Room 3; Fourth Coffee; Home Office",
    "uniqueIdType":"private"
  },
  "locations":[
    {
      "displayName":"Conf Room 3",
      "locationType":"default",
      "uniqueIdType":"unknown"
    },
    {
      "displayName":"Fourth Coffee",
      "locationType":"default",
      "uniqueId":"Fourth Coffee",
      "uniqueIdType":"private",
      "address":{
        "type":"unknown",
        "street":"4567 Main St",
        "city":"Redmond",
        "state":"WA",
        "countryOrRegion":"US",
        "postalCode":"32008"
      },
      "coordinates":{
        "latitude":47.672,
        "longitude":-102.103
      }
    },
    {
      "displayName":"Home Office",
      "locationType":"default",
      "uniqueIdType":"unknown"
    }
  ],
  "attendees":[
    {
      "type":"required",
      "status":{
        "response":"none",
        "time":"0001-01-01T00:00:00Z"
      },
      "emailAddress":{
        "name":"Dana Swope",
        "address":"DanaS@contoso.com"
      }
    },
    {
      "type":"required",
      "status":{
        "response":"none",
        "time":"0001-01-01T00:00:00Z"
      },
      "emailAddress":{
        "name":"Alex Wilber",
        "address":"AlexW@contoso.com"
      }
    }
  ],
  "organizer":{
    "emailAddress":{
      "name":"Adele Vance",
      "address":"AdeleV@contoso.com"
    }
  }
}

例 4: シリーズ マスター イベントを展開する

要求

次の例は、例外と取り消された発生を伴う定期的な系列の系列マスター イベントの展開を示しています。 この要求では、特定のプロパティを返すように $select クエリ パラメーターを指定しています。

GET https://graph.microsoft.com/beta/me/events/AAMkADAGAADDdm4NAAA=?$select=subject,start,end,occurrenceId,exceptionOccurrences,cancelledOccurrences&$expand=exceptionOccurrences

応答

GET 操作は、シリーズ マスター イベントの選択したプロパティを返します。 具体的には、 exceptionOccurrences コレクション内のイベントの場合、操作は id プロパティと、該当する選択されたプロパティ (サブジェクトstartendoccurrenceId) を返します。 cancelledOccurrences コレクションのイベントに関しては、イベントが存在しなくなったため、操作は occurrenceId プロパティ値のみを返します。

HTTP/1.1 200 OK
Content-type: application/json

{
  "@odata.context":"https://graph.microsoft.com/beta/$metadata#users('d1a2fae9-db66-4cc9-8133-2184c77af1b8')/events(subject,start,end,occurrenceId,exceptionOccurrences,cancelledOccurrences)/$entity",
  "@odata.etag":"W/\"y53lbKh6jkaxHzFwGhgyxgAAw5zhug==\"",
  "id":"AAMkADAGAADDdm4NAAA=",
  "iCalUId": "040000008200E00074=",
  "uid": "040000008200E00074C=",
  "subject": "Daily stand-up",
  "cancelledOccurrences": [
     "OID.AAMkADAGAADDdm4NAAA=.2020-04-30",
     "OID.AAMkADAGAADDdm4NAAA=.2020-05-07",
     "OID.AAMkADAGAADDdm4NAAA=.2020-05-14"
    ],
  "occurrenceId": null,
    "start": {
        "dateTime": "2020-04-23T11:30:00.0000000",
        "timeZone": "UTC"
    },
  "end": {
        "dateTime": "2020-04-23T12:00:00.0000000",
        "timeZone": "UTC"
    },
  "exceptionOccurrences": [
        {
            "id": "AAMkADM0ZGRhMjdjLTA==",
            "Subject": "SM update 24",
            "occurrenceId": "OID.AAMkADAGAADDdm4NAAA=.2020-05-21",
            "start": {
                "dateTime": "2020-05-21T11:30:00.0000000",
                "timeZone": "UTC"
            },
            "end": {
                "dateTime": "2020-05-21T12:00:00.0000000",
                "timeZone": "UTC"
            }
        }
    ]
}