Speakers API

Manage event speakers and their details

Overview

The Speakers API allows you to manage speakers for your events. You can create speakers, update their information, filter by status, and more.

Endpoints

List speakers

GET
/speakers

Get a paginated list of speakers for an event with optional filtering by status, tags, and search query.

Query parameters

ParameterTypeRequiredDescription
event_idUUIDYesEvent ID to filter speakers
statusStringNoFilter by speaker status (invited, applied, accepted, confirmed, scheduled, checked_in, declined, withdrawn)
tagsStringNoComma-separated list of tags to filter by
searchStringNoSearch by name, email, or company
pageIntegerNoPage number (default: 1)
limitIntegerNoItems per page (default: 20, max: 100)

Example request

curl -X GET "https://eventnerds.com/api/developer/v1/speakers?event_id=EVENT_ID&status=confirmed" \
  -H "Authorization: Bearer YOUR_API_KEY"

Response

{
  "success": true,
  "data": [
    {
      "id": "uuid",
      "event_id": "uuid",
      "email": "speaker@example.com",
      "name": "Jane Doe",
      "title": "Senior Developer",
      "company": "Tech Corp",
      "bio": "Experienced software engineer",
      "status": "confirmed",
      "created_at": "2025-01-15T10:00:00Z",
      "updated_at": "2025-01-15T10:00:00Z"
    }
  ],
  "meta": {
    "page": 1,
    "limit": 20,
    "total": 45,
    "totalPages": 3
  }
}

Create speaker

POST
/speakers

Create a new speaker or update existing speaker if email exists.

Request body

FieldTypeRequiredDescription
event_idUUIDYesEvent ID
emailStringYesSpeaker email address
nameStringYesSpeaker full name
titleStringNoSpeaker job title
companyStringNoSpeaker company
bioStringNoSpeaker biography
statusStringNoSpeaker status (default: invited)

Example request

curl -X POST "https://eventnerds.com/api/developer/v1/speakers" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "event_id": "EVENT_ID",
    "email": "speaker@example.com",
    "name": "Jane Doe",
    "title": "Senior Developer",
    "company": "Tech Corp",
    "bio": "Experienced software engineer",
    "status": "confirmed"
  }'

Update speaker

PATCH
/speakers/{id}

Update speaker details. Only provided fields will be updated.

Example request

curl -X PATCH "https://eventnerds.com/api/developer/v1/speakers/SPEAKER_ID" \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "status": "checked_in"
  }'

Delete speaker

DELETE
/speakers/{id}

Delete a speaker. This action cannot be undone.

Warning: Deleting a speaker will also remove them from any sessions they are assigned to.

Ready to get started?

Create your free EventNerds account and start building amazing events today. No credit card required.

Built by EventNerdsStrategic Nerds

The API-first event engine for developers who mean business