Freebusy: query

複数のカレンダーの空き時間情報を返します。 実習をご覧ください。

リクエスト

HTTP リクエスト

POST https://www.googleapis.com/calendar/v3/freeBusy

承認

このリクエストは、次のスコープのうち少なくとも 1 つを使用した承認を許可します。

範囲
https://www.googleapis.com/auth/calendar.readonly
https://www.googleapis.com/auth/calendar

詳細については、認証と認可のページをご覧ください。

リクエスト本文

リクエストの本文には、以下の構造を使用してデータを指定してください。

{
  "timeMin": datetime,
  "timeMax": datetime,
  "timeZone": string,
  "groupExpansionMax": integer,
  "calendarExpansionMax": integer,
  "items": [
    {
      "id": string
    }
  ]
}
プロパティ名 説明 メモ
timeMin datetime RFC3339 形式のクエリの間隔の開始。
timeMax datetime RFC3339 形式のクエリの間隔の終了。
timeZone string レスポンスで使用されるタイムゾーン。省略可。デフォルトは UTC です。
groupExpansionMax integer 1 つのグループに対して指定するカレンダー ID の最大数。省略可。この値より多くのメンバーを持つグループに対しては、エラーが返されます。最大値は 100 です。
calendarExpansionMax integer FreeBusy 情報を提供するカレンダーの最大数。省略可。最大値は 50 です。
items[] list クエリ対象のカレンダーまたはグループのリスト。
items[].id string カレンダーまたはグループの識別子。

レスポンス

成功すると、このメソッドは次の構造を含むレスポンスの本文を返します。

{
  "kind": "calendar#freeBusy",
  "timeMin": datetime,
  "timeMax": datetime,
  "groups": {
    (key): {
      "errors": [
        {
          "domain": string,
          "reason": string
        }
      ],
      "calendars": [
        string
      ]
    }
  },
  "calendars": {
    (key): {
      "errors": [
        {
          "domain": string,
          "reason": string
        }
      ],
      "busy": [
        {
          "start": datetime,
          "end": datetime
        }
      ]
    }
  }
}
プロパティ名 説明 メモ
kind string リソースの種類(「calendar#freeBusy」)。
timeMin datetime 間隔の開始。
timeMax datetime 期間の終了。
groups object グループの拡張。
groups.(key) nested object このグループのメンバーになっているカレンダーのリスト。
groups.(key).errors[] list オプションのエラー(グループの計算が失敗した場合)。
groups.(key).errors[].domain string エラーのドメインまたは大まかなカテゴリ。
groups.(key).errors[].reason string エラーの具体的な理由。有効な値は次のとおりです。
  • groupTooBig」- 1 つのクエリに対して、リクエストされたユーザー グループが大きすぎます。
  • tooManyCalendarsRequested」- リクエストされたカレンダーの数が、1 つのクエリに対して大きすぎます。
  • notFound」- リクエストされたリソースが見つかりませんでした。
  • internalError」- API サービスで内部エラーが発生しました。
今後、他のエラータイプが追加される可能性があるため、クライアントはこのリストに含まれていないその他のエラー ステータスを適切に処理する必要があります。
groups.(key).calendars[] list カレンダーのリストグループ化できます。
calendars object カレンダーの空き時間情報のリスト。
calendars.(key) nested object 1 つのカレンダーの空き時間情報の拡張。
calendars.(key).errors[] list オプションのエラー(カレンダーの計算が失敗した場合)。
calendars.(key).errors[].domain string エラーのドメインまたは大まかなカテゴリ。
calendars.(key).errors[].reason string エラーの具体的な理由。有効な値は次のとおりです。
  • groupTooBig」- 1 つのクエリに対して、リクエストされたユーザー グループが大きすぎます。
  • tooManyCalendarsRequested」- リクエストされたカレンダーの数が、1 つのクエリに対して大きすぎます。
  • notFound」- リクエストされたリソースが見つかりませんでした。
  • internalError」- API サービスで内部エラーが発生しました。
今後、他のエラータイプが追加される可能性があるため、クライアントはこのリストに含まれていないその他のエラー ステータスを適切に処理する必要があります。
calendars.(key).busy[] list このカレンダーを予定ありとみなす期間のリスト。
calendars.(key).busy[].start datetime 期間の開始値(両端を含む)。
calendars.(key).busy[].end datetime 期間の終了日時(この値を含まない)。

試してみよう:

以下の API Explorer を使用して、ライブデータに対してこのメソッドを呼び出し、レスポンスを確認してください。