Start connecting a calendar
A URL for the host to give consent at Google or Microsoft. Open it in a new window: providers refuse to be framed. Coss.com reads only busy times, and writes events with a neutral title.
bearerAuthAuthorizationBearer <token>A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.
host*stringThe host's id or uid.
Coss-Version?"2026-10-10"The API version (a date) to use for this request. Defaults to your organization's version, pinned to the latest one when it first used the API and upgraded from the dashboard. The SDK always sends the version it was built for.
"2026-10-10"application/json- body
- body
- …
provider*string"google""microsoft"return_url?stringWhere to send the browser afterwards, on one of the environment's allowed origins. coss_calendar says what happened: connected, denied or invalid.
urilength <= 2000Where to send the host.
application/json- response
- response
- …
object*"scheduling.calendar_authorization""scheduling.calendar_authorization"url*stringOpen it in a new window: providers refuse to be framed.
import { Coss } from "coss";const coss = new Coss({ apiKey: process.env.COSS_API_KEY, baseUrl: "https://api.coss.com",});const { data, error } = await coss.scheduling.calendars.authorize({ value: "host_01kd2m9a0b1c2d3e4f5g6h7j8m",}, { provider: "google",});{ "object": "scheduling.calendar_authorization", "url": "https://accounts.google.com/o/oauth2/v2/auth?client_id=abc"}