Catalyst
The official Eventication API (work in progress)
Use the Catalyst integration to export Eventication data (memberships, jobs, shifts) to an external system.
Setup in Eventication
Go to: Admin → Event → General → Event integrations → + (button) → Catalyst. If you can't find it, ask an Eventication admin to add it for you.
Admin validation required: this integration must be validated by an Eventication admin before it becomes active and before you can use the API key.
In the Catalyst integration screen, if it’s not validated you’ll see an “Action required” note with a link to contact Eventication.
Note that a Catalyst API key is scoped to an event. Each event needs another Catalyst integration.
API key / authentication
Once validated, you’ll see an API key in the Catalyst integration screen. Keep this key secret (treat it like a password):
Do not commit it to git
Do not paste it in screenshots / tickets
Store it in your secret manager or encrypted environment variables
Authenticate every request with the Authorization Bearer header:
Authorization: Bearer YOUR_CATALYST_API_KEYBase URL
All endpoints are hosted on the API domain:
https://api.eventication.com
Example:
https://api.eventication.com/catalyst/memberships
Access control per endpoint
Eventication admins can enable/disable access per endpoint in the Catalyst integration settings. If your API key is valid but an endpoint is not allowed, you will receive:
HTTP 403 with
{ "error": "Access denied" }
Pagination
List endpoints are paginated to keep responses fast.
Query param:
page(1-based)Fixed page size: 100 objects per request
The response includes
meta:page,per_page,total_pages,total_count,next_page,prev_page
Example:
GET https://api.eventication.com/catalyst/memberships?page=2
Rate limiting
Requests are rate-limited:
10 requests per minute
On limit: HTTP 429 with
{ "error": "Rate limit exceeded" }
Endpoints
GET /catalyst/memberships
/catalyst/membershipsReturns members (users) for the event.
URL:
https://api.eventication.com/catalyst/memberships?page=1Fields per item:
idfirstnamelastnameemail_address
Response shape:
GET /catalyst/work_jobs
/catalyst/work_jobsReturns jobs for the event, including station and substation details.
URL:
https://api.eventication.com/catalyst/work_jobs?page=1Fields per item:
idstart_time(ISO8601)end_time(ISO8601)work_station_idwork_substation_idLocalized names (dynamic):
Job name:
name_<locale>Work station name:
work_station_name_<locale>Work substation name:
work_substation_name_<locale>
Locales are included when the corresponding database columns exist (for example name_en, name_fr, name_nl, …). This makes it forward-compatible when adding more languages later.
Example item:
GET /catalyst/work_shifts
/catalyst/work_shiftsReturns shifts for the event. A shift links a member to a job.
URL:
https://api.eventication.com/catalyst/work_shifts?page=1Fields per item:
idwork_job_idmembership_id
Example item:
Errors & status codes
Missing/invalid API key
Example:
{ "error": "Catalyst not found. Request UUID: ..." }
Endpoint access not enabled for this integration
Example:
{ "error": "Access denied" }
Rate limit exceeded
Example:
{ "error": "Rate limit exceeded" }
Example clients
cURL
Ruby (Net::HTTP)
JavaScript (fetch)
Python (requests)
This API is a work in progress BETA and might change over time.
Last updated
Was this helpful?