canonical: https://jentic.com/apis/dayschedule.com/dayschedule

# DaySchedule API

DaySchedule is an appointment scheduling platform that exposes resources, availability windows, and bookings via a small REST API. The six endpoints cover the end-to-end flow: register schedulable resources, query available time slots, create new bookings, and cancel existing ones. Authentication is a single apiKey query parameter, which keeps the integration shape simple for embedding into customer-facing booking widgets, internal scheduling bots, or AI agents that need to book on a user's behalf.

## For AI agents

Manage scheduling resources, check availability, and create or cancel bookings on the DaySchedule platform.

## Scope

Does not handle payment collection, video conferencing, or full CRM contact management - use for resource registration, availability, and booking lifecycle only.

## Capabilities

- Register a new bookable resource (room, person, equipment) via POST `/v1/resources`
- List configured resources via GET `/v1/resources`
- Query available time slots for a resource via GET /availability
- Create a booking against an open slot via POST /bookings
- Cancel an existing booking via DELETE /bookings
- Drive automated scheduling without operating the DaySchedule UI

## Use cases

### Customer Booking Widget

SaaS apps embed a DaySchedule-backed booking widget in their UI to let customers book onboarding calls or support sessions. The flow calls GET /availability to render open slots and POST /bookings when the customer confirms - typically wired up in a few hours. The slim API surface keeps client-side state minimal.

Example prompt: Call GET /availability for resource 'onboarding-call' between Monday and Friday, render slots, and call POST /bookings when the customer selects one

### Internal Resource Scheduling

Operations teams use the resources endpoints to register internal bookable assets (meeting rooms, demo equipment, advisor calendars) and let employees self-serve booking via a slim internal tool. POST `/v1/resources` registers the asset, GET /availability surfaces open windows, and POST /bookings reserves them. Cancellations flow through DELETE /bookings.

Example prompt: Register a new meeting room 'Helsinki-12', then book it for tomorrow 2-3pm via POST /bookings

### Booking Lifecycle Automation

Customer success teams automate booking lifecycle events - auto-rebooking missed sessions, cancelling abandoned bookings - using DELETE /bookings to clear stale entries and POST /bookings to create replacement slots. The pattern reduces the need for human intervention when a customer no-shows.

Example prompt: Identify bookings older than 24 hours that were never confirmed, call DELETE /bookings to remove them, and reopen the slots

### AI Agent Scheduling

AI assistants book appointments on a user's behalf by calling DaySchedule through Jentic. The agent finds available slots via GET /availability and confirms via POST /bookings, with the apiKey isolated in Jentic's vault so it never reaches the agent's prompt context.

Example prompt: Find the earliest 30-minute slot tomorrow on resource 'sales-call' and book it for contact 'jane@example.com' via POST /bookings

## Key endpoints

| Method | Path | Description |
| --- | --- | --- |
| GET | `/v1/resources` | List bookable resources |
| POST | `/v1/resources` | Register a new bookable resource |
| GET | `/availability` | Query open time slots for a resource |
| GET | `/bookings` | List existing bookings |
| POST | `/bookings` | Create a new booking |
| DELETE | `/bookings` | Cancel an existing booking |

## Key resources

- **Resources** — Bookable resources such as rooms, people, or equipment
- **Availability** — Open time slots for a given resource and date range
- **Bookings** — Confirmed reservations that can be created or cancelled

## Why Jentic

- **Setup:** Wiring DaySchedule by hand means learning that its API key rides as a query parameter, then chaining the availability check to the booking create yourself while keeping the key out of logged URLs. Through Jentic you install once, import DaySchedule from the API Directory, store the API key once, and your agent calls it.
- **Permission scoping:** DaySchedule carries the booking and resource details in the request rather than as a resource id in the URL path, so limit the agent to the operations it needs, such as checking availability and creating a booking. Because you pick the operations, destructive ones like booking deletion are not included unless you add them.
- **Credential handling:** Your DaySchedule API key is stored once, encrypted, by your own Jentic One instance and injected as the apiKey query parameter at execution time. It never enters the agent's prompt, logs, or the request URLs recorded in logs.
- **Discovery method:** Agents search Jentic by intent such as 'find an available booking slot' or 'create a booking', and Jentic returns the matching DaySchedule operations with their input schemas so the agent runs the availability-then-book flow without browsing dayschedule.com/docs.

## Related APIs

- **Calendly** — Calendly is a widely-adopted scheduling platform with a richer free-tier embed and event-type model.
- **Acuity Scheduling** — Acuity Scheduling (Squarespace) targets service businesses with payments and intake forms baked in.
- **HubSpot** — HubSpot CRM is a common system of record where DaySchedule bookings are logged as activities.

## FAQ

### What authentication does the DaySchedule API use?

DaySchedule uses an API key passed as the apiKey query parameter on every request. Through Jentic, the key is stored encrypted in your Jentic One instance and injected at call time, so the scheduling agent never handles the raw secret.

### Can I create a booking via the DaySchedule API?

Yes. POST /bookings accepts a resource ID, a time slot, and contact details, and returns a booking record. Pair it with GET /availability to make sure the slot is still open before confirming.

### What are the rate limits for the DaySchedule API?

Per-endpoint limits are not declared in the OpenAPI spec; check your DaySchedule plan in dayschedule.com/docs/api for current quotas before running availability polls in tight loops.

### How do I find an open slot through Jentic?

Search Jentic for 'find an available time slot', load the GET /availability operation, and execute it with a resource ID and date range. Jentic injects the apiKey and returns the open slots ready for booking.

### Can I cancel an existing booking via the API?

Yes. DELETE /bookings removes a previously created booking and frees up the underlying slot, which is the right call for no-show cleanup or customer-initiated cancellations.

### Can I register new bookable resources programmatically?

Yes. POST `/v1/resources` registers a new room, person, or equipment as a bookable resource, and GET `/v1/resources` lists everything currently available to book against.

### Can I limit what my agent is allowed to do with the DaySchedule API?

Yes. Because Jentic One is self-hosted, you decide which DaySchedule operations your agent can call, so you can grant read-only access like GET /availability and GET `/v1/resources` while withholding write operations. If a booking bot only needs to check open slots and create reservations, you expose just GET /availability and POST /bookings and leave out the destructive DELETE /bookings cancellation unless you deliberately add it. Your own rules also govern the stored API key, so it is injected only for the operations you allow and never reaches the agent's prompt.
