For Agents
Search availability, create and book appointments, and manage customer records for online booking flows using OAuth 2.0 client-credentials authentication.
Jentic One is a self-hosted execution layer for AI agents. It lets your agent call the OnSched Consumer API, or any other public or private API you need. You set the rules, the agent never sees your credentials, and every call is logged.
# On the machine that will host your Jentic One instance:
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh# On the machine where your agent runs (keep this separate from the instance):
curl -fsSL https://raw.githubusercontent.com/jentic/jentic-one/main/tools/install.sh | sh
jentic register # connects your agent to your Jentic One instanceJentic One is in public beta. The setup above keeps your agent separate from the instance, which is what you want before using real credentials: an agent running as the same OS user as Jentic One can read its stored keys directly. Just evaluating? A single local install is fine to start. See the secure deployment guide for the tiers.
What an agent can do with OnSched Consumer API API.
Search availability for a service across a date range, day, or for explicit unavailability
Create, reserve, book, and confirm appointments through their dedicated PUT actions
Cancel, reschedule, or mark an appointment as no-show without recreating it
Manage customer records including custom fields and required booking fields
GET STARTED
Use for: I need to book an appointment for a customer next Tuesday at 2pm, Search for the next available slot for a haircut service, Cancel an appointment that the customer can no longer attend, Reschedule an existing appointment to a new time
Not supported: Does not handle service or resource configuration, payments, or platform health — use for consumer-facing booking flows on an existing OnSched profile only.
OnSched is a developer-first online booking platform. The Consumer API exposes the endpoints that power consumer-facing booking flows: searching for availability, creating appointments, reserving and confirming slots, managing customer records, and reading the locations and resources that customers can book against. It is paired with separate Setup and Utility APIs that handle profile configuration and health checks. The Consumer API is the right surface for any storefront, mobile app, or AI agent that books appointments on behalf of a real end user.
Read locations, resources, and resource groups available for booking
Look up customer countries and states for valid address entry
Authenticate with OAuth 2.0 using a ClientId and Secret bound to a company profile
Patterns agents use OnSched Consumer API API for, with concrete tasks.
★ Consumer-facing online booking
A storefront or mobile app uses the Consumer API to power its booking widget. The flow is: search availability for the chosen service, present time slots, create the appointment, and book it once the customer confirms. The reserve and confirm actions support a two-stage flow where a slot is held while the customer pays or fills in details. Most teams ship a working booking flow in one to two weeks.
GET /consumer/v1/availability/{serviceId}/{startDate}/{endDate} for the chosen service, POST /consumer/v1/appointments to create the slot, then PUT /consumer/v1/appointments/{id}/book to confirm.
Multi-location service business scheduling
Salons, clinics, and home-services businesses operate across many locations and resources. The Consumer API exposes locations, resourcegroups, and resources so the booking flow can route the customer to the right site and the right person, and the availability endpoint takes the resource into account. Custom fields and booking fields allow the business to capture the information they need without forking the schema.
GET /consumer/v1/locations to list sites, GET /consumer/v1/resources for the chosen service, then run availability and booking calls scoped to that resource.
Reschedule and cancellation self-service
Customers want to manage their own appointments without calling the business. The Consumer API exposes per-appointment cancel, reschedule, confirm, and noshow actions on PUT /consumer/v1/appointments/{id}/<action> so a self-service portal can offer all four with a single auth flow. The same actions back the email and SMS reminder links that ask customers to confirm.
Look up the appointment by id, PUT /consumer/v1/appointments/{id}/cancel or /reschedule with the new time, and surface the result back to the customer.
AI agent booking concierge through Jentic
An AI scheduling assistant can book appointments on a customer's behalf by calling the OnSched Consumer API through Jentic. The agent searches Jentic for the availability and create-appointment operations, loads their schemas, and submits the booking. Jentic injects the OAuth credential at execution time so the agent can act for many tenants without holding their secrets.
Search Jentic for 'onsched book appointment', load the POST /consumer/v1/appointments operation, and execute it for a known serviceId, customerId, and start time.
38 endpoints — onsched is a developer-first online booking platform.
METHOD
PATH
DESCRIPTION
/consumer/v1/availability/{serviceId}/{startDate}/{endDate}
Search availability for a service in a date range
/consumer/v1/appointments
Create an appointment
/consumer/v1/appointments/{id}/book
Book a created appointment
/consumer/v1/appointments/{id}/cancel
Cancel an appointment
/consumer/v1/appointments/{id}/reschedule
Reschedule an existing appointment
/consumer/v1/customers
List customer records
/consumer/v1/locations
List bookable locations
/consumer/v1/availability/{serviceId}/{startDate}/{endDate}
Search availability for a service in a date range
/consumer/v1/appointments
Create an appointment
/consumer/v1/appointments/{id}/book
Book a created appointment
/consumer/v1/appointments/{id}/cancel
Cancel an appointment
/consumer/v1/appointments/{id}/reschedule
Reschedule an existing appointment
Three things that make agents converge on Jentic-routed access.
Credential isolation
OnSched uses OAuth 2.0 client credentials per tenant. Jentic stores the ClientId and Secret in the vault and handles the token exchange and refresh, which matters because the Consumer API touches PII (customer names, emails, addresses) on every booking call.
Intent-based discovery
Agents search Jentic with intents like 'search availability for a service' or 'book an appointment' and Jentic returns the matching OnSched Consumer operations with their input schemas, so the agent can produce a valid booking payload without reading the OnSched docs.
Time to first call
Direct OnSched Consumer integration: 1-2 weeks for OAuth, availability search, the reserve-book-confirm flow, and customer field handling. Through Jentic: under 1 hour to search, load the schema, and book the first appointment.
Alternatives and complements available in the Jentic catalogue.
Calendly API
Hosted scheduling product with a smaller embeddable booking surface
Choose Calendly when the team wants a hosted booking page with minimal customisation rather than embedding scheduling deep in their own app.
Acuity Scheduling API
Scheduling API focused on small-business service providers
Choose Acuity when the customer is a small service business that wants an out-of-the-box admin UI and lighter API integration than OnSched offers.
OnSched Setup API
Companion API for configuring the company profile, services, and resources
Use the OnSched Setup API alongside the Consumer API when the workflow needs to provision new services, resources, or business rules before bookings can be made.
Specific to using OnSched Consumer API API through Jentic.
What authentication does the OnSched Consumer API use?
The Consumer API uses OAuth 2.0. Each tenant has a ClientId and Secret tied to its company profile, which the integration exchanges for an access token. Through Jentic, the credentials are stored in the vault and the access token is refreshed transparently so the agent never sees the raw secret.
Can I book an appointment for a specific resource and location?
Yes. Resolve the resource via GET /consumer/v1/resources and the location via GET /consumer/v1/locations, then call the availability endpoint scoped to the chosen service. POST /consumer/v1/appointments accepts the resourceId and locationId so the booking lands on the right slot in the right diary.
What is the difference between reserve, book, and confirm on an appointment?
PUT /consumer/v1/appointments/{id}/reserve holds a slot while the customer is paying or completing details. PUT /consumer/v1/appointments/{id}/book commits the slot. PUT /consumer/v1/appointments/{id}/confirm marks an existing booked appointment as confirmed by the customer, typically off the back of an email or SMS reminder.
What are the rate limits for the OnSched Consumer API?
OnSched does not publish a global rate limit in the spec. The platform serves consumer-facing booking flows at scale, and limits are signalled via 429 responses on the rare occasions they apply. Cache the locations, resources, and customer fields lookups, and avoid scanning availability for huge date ranges from the front end.
How do I search availability and book through Jentic?
Install the SDK with 'pip install jentic', search for the operation with the query 'onsched search availability', then load the GET /consumer/v1/availability/{serviceId}/{startDate}/{endDate} operation, and execute it for the customer. Once you have the slot, call POST /consumer/v1/appointments via the same Jentic flow to create and book it.
Does the Consumer API support custom and required booking fields?
Yes. GET /consumer/v1/appointments/customfields and GET /consumer/v1/appointments/bookingfields return the metadata that the booking flow needs to render the form. The same pattern is available on customers via GET /consumer/v1/customers/customfields and /consumer/v1/customers/bookingfields.
/consumer/v1/customers
List customer records
/consumer/v1/locations
List bookable locations