Skip to main content
The Soundcheck api-events service provides RESTful endpoints for managing events, teams, setlists, and more. OpenAPI source of truth: docs/openapi/soundcheck.json (from npm run openapi:emit in api-events/).

Base URL


Authentication

All API requests require authentication via Clerk JWT tokens.
See Authentication for details.

API Services

Users

Manage user accounts, profiles, and push notification targets.

Organizations

Manage organizations, members, and positions.

Events

Manage events (gigs), schedules, attachments, and team assignments.

Invitations

Manage event invitations.

Calllists

Reusable team templates for quick event staffing.

Preset Teams

Saved team configurations for recurring event types.

Setlists

Manage setlists and their song arrangements.

Songs

Manage the song library and attachments (sheet music, charts).

Positions

Global position definitions (instruments, roles).

Performance Folders

Personal folders for performers containing their materials for an event.

Lead Requests

Manage booking inquiries and leads.

Finance

Track event finances, income, expenses, and member payments.
Stripe payout requests can return per-item results for batch payments: success, processing, requires_action, or error. When requires_action is returned, the client should complete the Stripe next-action flow and then refresh the ledger item.

Payments

Configure organization payment settings and Stripe payout funding methods.
Card-funded member payouts use the configured platform fee percentage. ACH-funded payouts use a 0% platform fee because Soundcheck absorbs ACH fees.

Notifications

Send and manage notifications (email, SMS, push).

Subscriptions

Manage subscription plans and billing.

Wrapped

Annual statistics and year-in-review data.

Response format

Success response

Error response


Status codes


Pagination

List endpoints support pagination via query parameters:
Common pagination parameters: Customer, inventory, sponsor, organization venue, user, organization member, group, group member, availability request, and user engagement lists default to 10,000 rows and cap each request at 10,000 rows. Venue search defaults to 50 rows and has the same 10,000-row maximum. Existing smaller limits on other endpoints are unchanged. These lists apply pagination in the database. To read a complete collection, request a fixed page size (for example, 500), increment offset by that size, and stop when a response contains fewer rows than requested. Keep filters the same across requests. Unique ID tie-breakers make ordering deterministic for unchanged data; concurrent inserts or deletes can still shift offset pages.