Create a booker session

POST
/v1/scheduling/booker_sessions

Lets a browser book one event type, on coss.com's hosted page or your own UI, without your API key.

Authorization

bearerAuth
headerAuthorizationBearer <token>

A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.

Header Parameters

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.

Value in"2026-10-10"

Request Body

application/json
  1. body
event_type*string

The event type's id or uid.

host?string

Only this host (id or uid).

attendee?

Who's booking, if you already know: the browser then can't change it.

expires_in?integer

Seconds until it stops working. At most a day.

Range60 <= value <= 86400

Response Body

The session.

application/json
  1. response
object*"scheduling.session"
Value in"scheduling.session"
id*string
token*string

Shown only now. A bearer token for the client API.

url*|

coss.com's hosted page, with the token in its fragment.

expires_at*string
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.sessions.createForBooker({  event_type: "evtype_01kd2m9a0b1c2d3e4f5g6h7j8m",  attendee: {    uid: "patient_77",    name: "Sam Lee",    time_zone: "UTC",  },});
{  "object": "scheduling.session",  "id": "schs_01kd2m9a0b1c2d3e4f5g6h7j8m",  "token": "cossch_abc123",  "url": "https://example.test/h/schs_01kd2m9a0b1c2d3e4f5g6h7j8m#cossch_abc123",  "expires_at": "2027-01-01T11:00:00.000Z"}