eventpage API

Build on the event platform your stack already loves

REST endpoints, webhooks and a full OpenAPI spec. Connect events, guests, tickets and check-ins to your CRM, data warehouse or own product - API-first.

  • REST + JSON
  • OpenAPI 3 / Swagger
  • Real-time webhooks
201 CreatedGuest registered in 84 ms
1# Register a guest for your event
2curl -X POST https://api.eventpage.ai/v1/events/{event_id}/guests \
3  -H "Authorization: Bearer $EP_API_KEY" \
4  -H "Content-Type: application/json" \
5  -d '{
6    "first_name": "Anna",
7    "email": "anna@company.com",
8    "ticket_type": "vip"
9  }'
10
11# Response
12{ "id": "gst_8f2k1", "status": "confirmed" }
1// Register a guest for your event
2const res = await fetch(
3  "https://api.eventpage.ai/v1/events/evt_1/guests",
4  {
5    method: "POST",
6    headers: {
7      Authorization: `Bearer ${process.env.EP_API_KEY}`,
8      "Content-Type": "application/json"
9    },
10    body: JSON.stringify({ first_name: "Anna", email: "anna@company.com" })
11  }
12);
1# Register a guest for your event
2import os, requests
3
4res = requests.post(
5    "https://api.eventpage.ai/v1/events/evt_1/guests",
6    headers={"Authorization": f"Bearer {os.environ['EP_API_KEY']}"},
7    json={
8        "first_name": "Anna",
9        "email": "anna@company.com",
10        "ticket_type": "vip",
11    },
12)
Webhook sentguest.registered -> your CRM

REST + JSON

Predictable resource URLs and standard HTTP verbs.

OpenAPI 3 spec

Fully documented in Swagger - generate clients in any language.

Webhooks

Get notified the moment guests register, buy or check in.

EU hosting & GDPR

Your event data stays in Europe.

Quickstart

Your first API call in 5 minutes

Three steps from API key to live data. No SDK required - any HTTP client works.

Step 1

Create an API key

Generate a key in your workspace settings and keep it secret.

1EP_API_KEY="ep_live_••••••••"

Step 2

Make your first request

List the events in your workspace.

1curl https://api.eventpage.ai/v1/events
2  -H "Authorization: Bearer $EP_API_KEY"

Step 3

Listen to webhooks

Subscribe to events and react in real time.

1POST /v1/webhooks
2{ "event": "guest.checked_in" }

API reference

Everything in eventpage, available via API

The same objects you manage in the app - events, guests, tickets, check-ins and more. Fully documented in our OpenAPI spec.

Events

Create, update and publish events and their pages.

GET/v1/events
POST/v1/events
View in reference

Guests & RSVP

Import guests, manage RSVP status, plus-ones and segments.

GET/v1/events/{id}/guests
POST/v1/events/{id}/guests
View in reference

Tickets & orders

Ticket types, orders and payment status for every sale.

GET/v1/events/{id}/orders
GET/v1/tickets/{id}
View in reference

Check-in

Read check-ins in real time or check guests in from your own app.

POST/v1/checkins
GET/v1/events/{id}/checkins
View in reference

Contacts

Your guest database across all events, with tags and history.

GET/v1/contacts
PATCH/v1/contacts/{id}
View in reference

Webhooks

Subscribe to events and receive signed payloads.

POST/v1/webhooks
DELETE/v1/webhooks/{id}
View in reference

Built for API-first teams

Plug eventpage into the stack you already run

Keep your CRM, BI and internal tools as the single source of truth - eventpage syncs in both directions.

Sync guests with your CRM

Push registrations to HubSpot, Salesforce or your own CRM and pull contact lists back in.

guest.registeredcontact.updated

Feed your data warehouse

Stream orders, check-ins and no-shows into BigQuery, Snowflake or your BI tool.

order.paidcheckin.completed

Build your own registration

Use your own forms and app, keep eventpage for tickets, check-in and messaging.

POST /guestsPOST /orders

Automate workflows

Trigger onboarding, badges or Slack alerts the moment something happens.

webhooksn8n / Make / Zapier

Webhooks

React the moment something happens

Subscribe to the events you care about. We send a signed JSON payload to your endpoint and retry automatically if it is down.

guest.registeredguest.cancelledrsvp.updatedorder.paidticket.refundedcheckin.completedevent.published
  • HMAC-signed payloads
  • Automatic retries with backoff
  • Delivery log in your workspace
Anna checked inMain gate - 18:04
1{
2  "type": "checkin.completed",
3  "created": "2026-05-15T18:04:12Z",
4  "data": {
5    "guest_id": "gst_8f2k1",
6    "event_id": "evt_summit26",
7    "entrance": "Main gate"
8  }
9}
200 OKDelivered to your-app.com/hooks

Interactive docs

Every endpoint documented - and testable

Our reference is generated from the OpenAPI spec, so it is always in sync with the API. Try requests right in the browser.

POST/v1/events/{event_id}/guests

Add a guest to an event

Creates a guest and, depending on the event settings, sends the confirmation email and ticket.

Body parameters
first_namestringrequired
emailstringrequired
ticket_typestringoptional
tagsarrayoptional
send_confirmationbooleanoptional
1curl -X POST https://api.eventpage.ai/v1/events/evt_1/guests \
2  -H "Authorization: Bearer $EP_API_KEY" \
3  -d '{"first_name":"Anna","email":"anna@company.com"}'
1const res = await fetch(
2  "https://api.eventpage.ai/v1/events/evt_1/guests",
3  { method: "POST", headers, body }
4);
1res = requests.post(
2    "https://api.eventpage.ai/v1/events/evt_1/guests",
3    headers=headers, json=body
4)
1$res = $client->post(
2    'https://api.eventpage.ai/v1/events/evt_1/guests',
3    ['headers' => $headers, 'json' => $body]
4);
Try it Uses your test API key

Developer resources

Everything you need to ship faster

API reference

Swagger docs for every endpoint, with examples and try-it.

Open reference

OpenAPI spec

Download the spec and generate a client in your language.

Download JSON

Postman & Insomnia

Import the OpenAPI spec and start testing in seconds.

How to import

Changelog

New endpoints, fields and deprecations - versioned and dated.

View changelog

Security & reliability

Enterprise-ready from the first request

Authentication, permissions and limits that your security team will sign off on.

API keys per workspace

Scoped keys you can rotate or revoke at any time.

HTTPS & signed webhooks

TLS everywhere, HMAC signatures on every webhook.

Fair rate limits

Clear limits and headers so your integration never gets surprised.

Versioned API

Breaking changes only in new versions, announced in the changelog.

EU hosting

Data processed and stored in the EU, GDPR-compliant.

Roles & permissions

API access follows the roles in your workspace.

No code? Use AI instead

Prefer prompts over code? Connect eventpage to Claude & ChatGPT

Our MCP server sits on top of the same API. Create events, invite guests and pull reports by just asking your AI assistant.

FAQ

Developer questions

What developers ask us before they integrate.

Need a hand with your integration?

Our team helps with architecture, auth and edge cases.

Contact the dev team
Which plans include API access?

API access is part of the Pro and Enterprise plans. Your API keys live in the workspace settings.

Is there a sandbox or test mode?

Yes. Next to your live key you can create a test API key and try every request without affecting real events, guests or payments.

How are rate limits handled?

Every workspace has clear rate limits. Each response includes headers with your remaining quota, and if you hit the limit you get HTTP 429 with a Retry-After header.

Do you offer SDKs?

You do not need one: any HTTP client works. Because the API is fully described in OpenAPI 3, you can generate a typed client for your language in minutes.

How do I authenticate?

Send your API key as a bearer token in the Authorization header of every request. Keys are scoped to a workspace and can be rotated or revoked at any time.

Can I use the API and the MCP connector together?

Yes. The MCP connector runs on the same API, so integrations and AI assistants work with the same events, guests and permissions.

Start building

Your stack, your events - connected

Get your API key, read the docs and ship your first integration today.