Skip to main content
The studio management API reads event metadata and manages event form schemas. It does not expose athletes, guardians, roster rows, orders, or CRM records. Every studio-owned request includes the studio’s stable public ID:
The path selects the requested studio. Authorization still comes from the API key. Batch Relay verifies that a studio-owned key belongs to that studio or that an individual key has an active grant for it.

Select a studio

List the studios available to the current credential:
A single-studio integration receives one item. Multi-studio integrations should retain the selected stu_... ID and use it in every studio request. List responses use this envelope:
Pass next_cursor back as cursor to read the next page. The limit must be between 1 and 100. The CLI selects the only accessible studio automatically. If the credential can access more than one studio, pass --studio or save a default on the profile:
The saved studio ID is a local preference, not authorization. The API still checks the selected studio against the credential on every request.

Read events

An event response contains operational metadata and its active form revision ID. It never includes submitted form answers or participant records.

Inspect reusable definitions

Reusable definitions are read-only in V1. They can seed a new event revision, but changing a definition does not alter revisions already attached to events.

Create a draft revision

Create a draft from a reusable definition, explicit fields, or both. Supply an idempotency key so retrying an interrupted request cannot create a second draft.
Batch Relay resolves semantic keys against the platform vocabulary and rejects an incompatible input type. The matching CLI command reads the request body from a file or stdin:

Update a draft

Only drafts can be changed. Pass the edit_version returned by the prior read or write. A stale version returns 409 form_revision_conflict instead of overwriting another edit.

Publish a revision

Publishing makes the draft immutable, supersedes the prior active revision, and updates the event’s active revision pointer in one transaction. Publication fails if the draft was based on an active revision that has since changed.
Test keys cannot create, update, or publish revisions because forms are live studio configuration. Anonymous sessions cannot access these routes.

Semantic fields

Semantic fields use platform-owned keys such as athlete.jersey_number. Query the vocabulary before generating a form:
The response includes each field’s compatible input types, status, and aliases. Clients should persist the stable semantic key, not a label or internal ID. All management list endpoints use the same cursor envelope. Treat cursors as opaque values and stop when is_done is true.