Base URL
All Storefront API endpoints live under a single base URL:/storefront — for example GET /storefront/products lists your bookable services. Responses are JSON with camelCase property names.
Make your first request
1
Get an API key
- Sign up at opencals.com and set up your store — services, staff members, locations, and schedules.
- In the dashboard, go to Settings → API Keys and create a new Storefront API Key.
- Each key is scoped to your store and starts with
sfk_.
2
List your services
List your store’s active services with a single call:
3
Read the response
The response is a paginated collection:
Pagination
List endpoints acceptpage (1-indexed) and take (items per page, maximum 100) query parameters and return a meta object with page, take, itemCount, pageCount, hasPreviousPage, and hasNextPage.
Rate limits
Requests are rate-limited per API key:
When you exceed a limit the API responds with
429 Too Many Requests.
Timezones
All date and time values in requests and responses are in UTC. Availability endpoints accept a
timezone query parameter (for example America/New_York) so slots come back converted for display, and you should convert user-selected times back to UTC before creating appointments.Next steps
Authentication
API keys, customer tokens, and error responses.
Build a booking page
The full flow from listing services to a confirmed booking.
Storefront SDK
The typed TypeScript client for this API.
API reference
Every endpoint, parameter, and response shape.