Overview
Read-only JSON endpoints served from your Basker site for use in themes and embedded widgets
The FrontStage API is the read-only JSON surface served from your Basker site. Themes use it to power calendars, search-as-you-type, and widgets that need live data fetched from the browser. Requests made from a theme use the site's own origin and do not require an API key.
When to use it
- Live data inside a theme: a calendar widget that paginates by month, an event search box, an "upcoming events" feed that updates without a redeploy.
- Lightweight, public-data integrations where the Partners API is unnecessary.
For server-to-server integrations, large data syncs, or anything that mutates content, use the Partners API instead.
How it differs from the Partners API
| FrontStage API | Partners API | |
|---|---|---|
| Host | Your Basker site ({your-domain}/api/...) | https://api.basker.app/partners/... |
| Auth | None: public content only | API key required |
| Methods | GET only | Authenticated integration endpoints |
| Tenant context | Inferred from the requested domain | Explicit in the URL path |
| Caching | Can be served from the edge cache | Per-request, not edge-cached |
| Scope | Public content intended for site visitors | Depends on the API key and endpoint |
Conventions
- Base URL. Replace
{your-domain}in examples with your Basker site's primary domain. For example, usehttps://remarkable-theatre.example. .jsonsuffix. Content list endpoints accept both forms (/api/event-instances.jsonand/api/event-instances). Detail endpoints and custom-object routes use the bare path shown in their reference pages.- Response shape. List endpoints return paginated JSON: a
docsarray plus pagination metadata (totalDocs,page,limit,totalPages,hasNextPage,hasPrevPage,nextPage,prevPage,pagingCounter). - Pagination. Use
?page=and?limit=query parameters. Defaults vary by endpoint. - Field selection. Event and event-instance lists accept
?select=to narrow their fields. - Relationship expansion. Event and event-instance lists accept
?depth=from0to5. Custom data settings can keep selected relationships as summaries or IDs. - Locale. Translated fields come back in your site's configured language automatically: there's no locale parameter to set on these endpoints.
Reference
- Content endpoints: list and fetch any content type: events, pages, posts, blogs, people, venues, organizations, seasons, series, works, and smart collections.
- Event instances: list and fetch upcoming or past performances, with date filtering and ticketing data.
- Search: full-text query across all your published content at once.
- Custom objects: read your site's custom object definitions and their instances.
Search and single-record responses have their own response shapes. Follow the examples on each reference page rather than assuming every route is paginated.