Basker Docs

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 any widget that needs live data fetched from the browser. Every endpoint is same-origin, unauthenticated for public content, and can be served from the edge cache.

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.
  • Embedded widgets on another site — anything that runs in a browser and can fetch from your Basker domain.
  • Lightweight integrations where the Partners API is overkill — no API key, no cross-origin setup, no custom infrastructure.

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 APIPartners API
HostYour Basker site ({your-domain}/api/...)https://api.basker.app/partners/...
AuthNone — public content onlyAPI key required
MethodsGET onlyFull REST (GET, POST, PATCH, DELETE)
Tenant contextInferred from the requested domainExplicit in the URL path
CachingCan be served from the edge cachePer-request, not edge-cached
ScopePublished content visible to site visitorsDrafts, archives, and editor-only fields too

Conventions

  • Base URL. Replace {your-domain} in examples with your Basker site's primary domain — for example, https://royal-opera-house.basker.app or your custom domain.
  • .json suffix. Endpoints accept the .json suffix and the bare path interchangeably (/api/event-instances.json and /api/event-instances).
  • Response shape. List endpoints return paginated JSON: a docs array 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. Most endpoints accept ?select= to return a narrowed subset of fields.
  • Relationship expansion. Endpoints that accept ?depth= can expand related records inline. 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.

Every endpoint follows the conventions above: a same-origin GET, the optional .json suffix, a paginated docs envelope on list endpoints, and optional edge caching.

What's coming

The FrontStage API will eventually serve rendered HTML for individual blocks and snippets, similar to Shopify's section rendering API — fetch a fragment of your theme rendered against live data and swap it into the page without a full reload. That work is in progress; this page will document it once it ships.

On this page