API

The API behind the Gomry dashboard.

REST over HTTPS, API keys with per-resource scopes, webhooks for payments, forms and subscriptions.

events.tswebhooks.ts
// List your events. Same endpoint the dashboard uses.
const res = await fetch(
  "https://www.gomry.com/api/v1/events?page=1&page_size=20",
  { headers: { "X-API-KEY": process.env.GOMRY_API_KEY } }
);
const { data, pagination } = await res.json();

// Attendees for the first event.
const attendees = await fetch(
  `https://www.gomry.com/api/v1/events/${data[0].id}/attendees`,
  { headers: { "X-API-KEY": process.env.GOMRY_API_KEY } }
).then(r => r.json());
Why it matters

One API, the dashboard included.

The API covers spaces, events, experiences, recurrences, ticket classes, attendees, contacts, lists, forms, applications, payments and custom fields. Keys are created in Organization Settings → API Keys.

Auth and scopes

API keys sent in the X-API-KEY header. Each key carries a scope map: none, read or write per resource. Any language over HTTPS.

Webhooks

Five event types today: payment succeeded, form response created and updated, subscription created and deleted. Delivery is best-effort and unsigned, so confirm against the API before acting.

Pagination and limits

Page-based listing on every collection. Rate limits per key are documented.

Reference

A few of the calls you'll use.

GET
/api/v1/events
List your events, paginated.
POST
/api/v1/events
Create an event.
GET
/api/v1/events/:id/attendees
Attendees for an event, with ticket status.
GET
/api/v1/events/:id/ticket-classes
Ticket classes with price and capacity.
GET
/api/v1/payments
Payments across the organization.
POST
/api/v1/contacts
Create a contact.

Create a key and make the first call.