Integrate registrations, results, payments and statistics of your events with Grupify's public API. REST, JSON, scoped API keys and an OpenAPI specification you can load into any client or agent.
Every request carries an API key from your organization. You create it from the organization dashboard on the platform (Settings → API keys) with the scopes each integration needs. Send it as Authorization: Bearer cok_live_… or as X-API-Key: cok_live_…. Without a key the API answers 401; with a key that lacks the scope, 403 INSUFFICIENT_SCOPE.
Production keys start with cok_live_. Treat them as passwords: keep them out of front-ends and repositories.
events:read and stats:read scopes.COK.page and page_size; errors come with a stable code.# 1. Listar los eventos de tu organización
curl -s "https://api.grupify.app/public/v1/events?page=1&page_size=20" \
-H "Authorization: Bearer $COK"
# 2. Estadísticas de un evento
curl -s "https://api.grupify.app/public/v1/events/EVENT_ID/stats" \
-H "X-API-Key: $COK"
# 3. Buscar una inscripción por dorsal
curl -s "https://api.grupify.app/public/v1/events/EVENT_ID/participants/lookup?bib=1024" \
-H "Authorization: Bearer $COK"| Scope | What it allows |
|---|---|
events:read | The organization's events and their configuration. |
participants:read | Paid participants: bib, category, document. This is PII. |
stats:read | Aggregate figures per event: registrations, revenue, by distance. |
payments:read | The organization's payments, one row per transaction. |
results:write | Upload times by bib (JSON or CSV). The only write scope. |
There is no separate public sandbox today. We recommend creating a test organization on the platform and an API key with read-only scopes: none of them modify data. The only write scope, results:write, upserts by bib, so a repeated upload does not duplicate rows.
Accept: text/markdown or at /md/{es,en}/…