Introduction
The Gamma platform's HTTP API — the same one the web app is built on.
Everything the web app does, it does through this API: organizations, projects, models, issues, forms, markers and progress tracking. This site documents it for anyone who wants to automate it or connect another system.
The basics
- Base URL. The API answers under
/apion your deployment's server, e.g.https://gamma.example.com/api/projects. - JSON in, JSON out. Requests with a body send
Content-Type: application/jsonunless an operation says otherwise (uploads aremultipart/form-data, downloads are files). - Two ways to authenticate. A browser-style session from signing in, or a personal API key sent as
x-api-key. See Authentication and API keys. - Refusals are
{ "error": "…" }with an HTTP status, worded in the language you ask for. See Errors and Languages.
How the reference is organized
The API reference is grouped in three levels:
- Categories — Authentication, Account, Organizations, Projects, Models, Views, Search sets, Markers, Issues, Forms, Progress.
- Sections within each category — for example Projects → Project members or Models → Model metadata.
- Operations — one page each, with its parameters, request body, responses, code samples and a playground to try it.
Every operation states who may call it — any member, the project's managers, an owner or admin of the organization, or a member whose permission profile allows an action such as issue.update — and whether an API key reaches it.
Generated from the code
The reference is built from the server's routes and their validation schemas, and a test fails when the two disagree — so what you read here is what the server does.
The OpenAPI document
The machine-readable description is served by every deployment at GET /api/openapi.json (OpenAPI 3.1). Import it into Postman, Insomnia or a client generator.
