Skip to content

Overview

Gigmeister REST API

Read and write a band’s songs, setlists, calendar, practice data and more from scripts and external tools.

Authentication

Generate an API key under Settings > Advanced > API in the app. Keys look like gig_… and are shown only once. Send the key as a Bearer token:

Authorization: Bearer gig_your_api_key

A key acts as the user who created it, with that user’s band role permissions. Endpoints without a security requirement (public share links, booking forms, iCal feeds) take no token.

Targeting a band

A user can belong to several bands. Send X-Band-Id: <band id> to scope a request to one of them; without it the request uses the user’s active band. A band the user is not a member of fails with 403 and code FORBIDDEN_NOT_MEMBER — it never falls back to another band.

Response Format

Every JSON response uses the same envelope.

Success

{
  "ok": true,
  "data": { ... }
}

Error

{
  "ok": false,
  "error": "Human-readable message",
  "code": "RESOURCE_NOT_FOUND"
}

code is optional and stable — branch on it rather than on the error text.

Rate Limits

API-key requests are limited to 100 per minute per user, shared across all of that user’s keys. A request over the limit gets 429 with code RATE_LIMIT_EXCEEDED and the headers X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (Unix seconds) and Retry-After (seconds).

An API key (gig_…) generated under Settings > Advanced > API, or a session access token.

Security scheme type: http