Freebusy: query

여러 캘린더의 한가함/바쁨 정보를 반환합니다. 지금 사용해 보기

요청

HTTP 요청

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

승인

이 요청은 다음 범위 중 하나 이상을 사용한 승인을 허용합니다.

범위
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 단일 그룹에 제공할 최대 캘린더 식별자 수입니다. 선택사항입니다. 구성원이 이 값보다 많은 그룹에 대해서는 오류가 반환됩니다. 최댓값은 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' - 요청한 사용자 그룹이 너무 커서 단일 쿼리를 실행할 수 없습니다.
  • 'tooManyCalendarsRequested' - 요청한 캘린더 수가 너무 커서 단일 쿼리를 실행할 수 없습니다.
  • 'notFound' - 요청한 리소스를 찾을 수 없습니다.
  • 'internalError' - API 서비스에 내부 오류가 발생했습니다.
향후 오류 유형이 추가될 수 있으므로 클라이언트는 이 목록에 포함되지 않은 추가 오류 상태를 적절하게 처리해야 합니다.
groups.(key).calendars[] list 캘린더 목록 사용할 수 있습니다.
calendars object 캘린더의 한가함/바쁨 정보 목록입니다.
calendars.(key) nested object 단일 캘린더의 한가함/바쁨 확장
calendars.(key).errors[] list 선택적 오류입니다(캘린더 계산이 실패한 경우).
calendars.(key).errors[].domain string 오류의 도메인 또는 광범위한 카테고리입니다.
calendars.(key).errors[].reason string 오류가 발생한 구체적인 이유입니다. 가능한 값은 다음과 같습니다.
  • 'groupTooBig' - 요청한 사용자 그룹이 너무 커서 단일 쿼리를 실행할 수 없습니다.
  • 'tooManyCalendarsRequested' - 요청한 캘린더 수가 너무 커서 단일 쿼리를 실행할 수 없습니다.
  • 'notFound' - 요청한 리소스를 찾을 수 없습니다.
  • 'internalError' - API 서비스에 내부 오류가 발생했습니다.
향후 오류 유형이 추가될 수 있으므로 클라이언트는 이 목록에 포함되지 않은 추가 오류 상태를 적절하게 처리해야 합니다.
calendars.(key).busy[] list 이 캘린더가 바쁨으로 간주되어야 하는 시간 범위의 목록입니다.
calendars.(key).busy[].start datetime 기간의 시작 (해당 값 포함)입니다.
calendars.(key).busy[].end datetime 기간의 (제외) 종료 시간입니다.

사용해 보기

아래의 API 탐색기를 사용하여 실시간 데이터를 대상으로 이 메소드를 호출하고 응답을 확인해 보세요.