{
  "url": "https://telipot.com/catalog/capabilities/calendar.calendars.list",
  "id": "calendar.calendars.list",
  "description": "Calendars on a user's calendar list, with their access role and colors",
  "platform": "calendar",
  "providers": [
    {
      "slug": "google-calendar",
      "name": "Google Calendar"
    }
  ],
  "tasks": 1,
  "taskPages": [
    {
      "id": "google-calendar.calendars.list",
      "name": "Calendars on the connected account's list, with access role",
      "provider": {
        "slug": "google-calendar",
        "name": "Google Calendar"
      },
      "capability": "calendar.calendars.list",
      "platform": "calendar",
      "kind": "data",
      "tier": "core",
      "identity": "user",
      "identityLabel": "Person’s own",
      "price": {
        "amount": "Free",
        "state": "free",
        "label": "Free",
        "detail": "Free from the tool",
        "type": "free"
      },
      "providers": 1,
      "retention": "standard",
      "runsOn": "free",
      "live": true,
      "summary": "Returns the calendars on the user's calendar list.",
      "method": "GET",
      "path": "/calendar/v3/users/me/calendarList",
      "host": "https://www.googleapis.com",
      "docsUrl": "https://developers.google.com/workspace/calendar/api/v3/reference/calendarList/list",
      "auth": {
        "scheme": "oauth",
        "label": "oauth · OAuth 2.0 with PKCE",
        "short": "oauth · OAuth 2.0"
      },
      "scope": "own_account",
      "principal": "user",
      "requiredScopes": [
        "calendar.readonly"
      ],
      "verification": {
        "state": "none",
        "label": "Not verified yet",
        "detail": "Not checked yet. We test with a real request before we mark it."
      },
      "input": [
        {
          "name": "minAccessRole",
          "location": "queryParams",
          "type": "string",
          "required": false,
          "constraints": [
            "one of \"freeBusyReader\", \"reader\", \"writer\", \"writerWithoutPrivateAccess\", \"owner\""
          ],
          "note": "Keep only calendars the user holds at least this role on"
        },
        {
          "name": "maxResults",
          "location": "queryParams",
          "type": "integer",
          "required": false,
          "constraints": [
            "1 to 250",
            "default 100"
          ],
          "note": "Entries on one page"
        },
        {
          "name": "pageToken",
          "location": "queryParams",
          "type": "string",
          "required": false,
          "constraints": [],
          "note": "The nextPageToken of the previous page"
        },
        {
          "name": "showDeleted",
          "location": "queryParams",
          "type": "boolean",
          "required": false,
          "constraints": [
            "default false"
          ],
          "note": "Whether to include entries deleted from the list"
        },
        {
          "name": "showHidden",
          "location": "queryParams",
          "type": "boolean",
          "required": false,
          "constraints": [
            "default false"
          ],
          "note": "Whether to include entries hidden from the list"
        }
      ],
      "sampleInput": {},
      "inputSchema": {
        "type": "object",
        "properties": {
          "minAccessRole": {
            "type": "string",
            "description": "Keep only calendars the user holds at least this role on",
            "enum": [
              "freeBusyReader",
              "reader",
              "writer",
              "writerWithoutPrivateAccess",
              "owner"
            ]
          },
          "maxResults": {
            "type": "integer",
            "description": "Entries on one page",
            "default": 100,
            "minimum": 1,
            "maximum": 250
          },
          "pageToken": {
            "type": "string",
            "description": "The nextPageToken of the previous page"
          },
          "showDeleted": {
            "type": "boolean",
            "description": "Whether to include entries deleted from the list",
            "default": false
          },
          "showHidden": {
            "type": "boolean",
            "description": "Whether to include entries hidden from the list",
            "default": false
          }
        },
        "additionalProperties": false
      },
      "output": [
        {
          "name": "items",
          "type": "object[]"
        },
        {
          "name": "nextPageToken",
          "type": "string",
          "description": "Absent on the last page"
        },
        {
          "name": "nextSyncToken",
          "type": "string"
        },
        {
          "name": "etag",
          "type": "string"
        },
        {
          "name": "kind",
          "type": "string"
        }
      ],
      "outputSchema": {
        "type": "object",
        "properties": {
          "items": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "id": {
                  "type": "string",
                  "description": "The calendar id; for a user's own calendar it is an address"
                },
                "summary": {
                  "type": "string"
                },
                "summaryOverride": {
                  "type": "string",
                  "description": "The title the user gave it"
                },
                "description": {
                  "type": "string"
                },
                "timeZone": {
                  "type": "string"
                },
                "accessRole": {
                  "type": "string",
                  "description": "freeBusyReader, reader, writer or owner"
                },
                "primary": {
                  "type": "boolean",
                  "description": "True for the user's own calendar"
                },
                "selected": {
                  "type": "boolean"
                },
                "hidden": {
                  "type": "boolean"
                },
                "deleted": {
                  "type": "boolean"
                },
                "backgroundColor": {
                  "type": "string"
                },
                "foregroundColor": {
                  "type": "string"
                },
                "colorId": {
                  "type": "string"
                },
                "defaultReminders": {
                  "type": "array",
                  "items": {
                    "type": "object",
                    "properties": {
                      "method": {
                        "type": "string"
                      },
                      "minutes": {
                        "type": "integer"
                      }
                    }
                  }
                },
                "etag": {
                  "type": "string"
                },
                "kind": {
                  "type": "string"
                }
              }
            }
          },
          "nextPageToken": {
            "type": "string",
            "description": "Absent on the last page"
          },
          "nextSyncToken": {
            "type": "string"
          },
          "etag": {
            "type": "string"
          },
          "kind": {
            "type": "string"
          }
        }
      },
      "example": {
        "file": "examples/google-calendar.calendars.list.json",
        "json": {
          "kind": "calendar#calendarList",
          "etag": "\"EXAMPLEETAG\"",
          "items": [
            {
              "kind": "calendar#calendarListEntry",
              "etag": "\"EXAMPLEETAG\"",
              "id": "contact@example.com",
              "summary": "contact@example.com",
              "timeZone": "America/Los_Angeles",
              "accessRole": "owner",
              "primary": true,
              "selected": true,
              "backgroundColor": "#9fe1e7",
              "foregroundColor": "#000000",
              "colorId": "14",
              "defaultReminders": [
                {
                  "method": "popup",
                  "minutes": 10
                }
              ]
            },
            {
              "kind": "calendar#calendarListEntry",
              "etag": "\"EXAMPLEETAG\"",
              "id": "team@example.com",
              "summary": "Team",
              "timeZone": "America/Los_Angeles",
              "accessRole": "reader",
              "backgroundColor": "#cabdbf",
              "foregroundColor": "#000000",
              "colorId": "8"
            }
          ]
        }
      },
      "commands": {
        "mode": "inspect",
        "cli": "telipot inspect google-calendar.calendars.list",
        "http": "curl https://api.telipot.com/v1/tasks/google-calendar.calendars.list \\\n  -H \"Authorization: Bearer $TELIPOT_TOKEN\""
      },
      "siblings": []
    }
  ]
}
