Email
Inboxes
Marketing
SMS
Sign
Verify
Forms
Scheduling
Hooks
Risk
Platform
Preview a bulk reassignment
POST
/v1/scheduling/reassignments/preview
Who each booking would go to, and why not when nobody can take it, without moving anything. It works down them in order, so two can't both be promised the same free hour. Change any of it and start the run with assignments. Covers the first 500. Things can change before you start it: the run decides again.
bearerAuthheader
AuthorizationBearer <token>A secret API key from the dashboard: coss_live_… for production environments, coss_test_… for sandbox environments.
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"application/json- body
- body
- …
selection*strategy?Default
{}overrides?array<>Items
items <= 6What would happen.
application/json- response
- response
- …
object*"scheduling.reassignment_preview"Value in
"scheduling.reassignment_preview"items*array<>truncated*booleanThere are more than a preview covers.
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.reassignments.preview({ selection: { host: "doctor_482", start_before: "2027-08-14T00:00:00.000Z", }, strategy: { preferred_hosts: [ "doctor_518", ], },});{ "object": "scheduling.reassignment_preview", "items": [ { "booking": "book_01kd2m9a0b1c2d3e4f5g6h7j8m", "event_type": "evtype_01kd2m9a0b1c2d3e4f5g6h7j8m", "title": "Consultation", "status": "confirmed", "start": "2027-08-03T15:00:00.000Z", "end": "2027-08-03T15:30:00.000Z", "series": null, "group_session": null, "from_host": "host_01kd2m9a0b1c2d3e4f5g6h7j8m", "to_host": "host_01kd2m9a0b1c2d3e4f5g6h7j8n", "reason": null } ], "truncated": false}