How to assign speakers to a session
Use this guide when you need to assign one or more speakers to a session. The speakers[] parameter in POST /api/v2/sessions/set replaces the entire speaker list on the session — so always pass the full desired list, not just the new additions.
Prerequisites
Account must have
speaker=trueset first. An account can only be assigned as a speaker on a session if they have already been registered as a speaker for this event viaPOST /api/v2/account/set.See the "How to enable an account as a speaker" guide under
POST account/set.
Request — assign speakers to an existing session
curl -X POST "https://your-event-domain.com/api/v2/sessions/set" \
-H "Authorization: Bearer your_api_key_here" \
-F "id=42" \
-F "speakers[]=18860" \
-F "speakers[]=18861"
You can also pass account emails instead of IDs:
curl -X POST "https://your-event-domain.com/api/v2/sessions/set" \
-H "Authorization: Bearer your_api_key_here" \
-F "id=42" \
-F "speakers[]=jane.doe@example.com" \
-F "speakers[]=peter.jones@example.com"
Request — clear all speakers from a session
curl -X POST "https://your-event-domain.com/api/v2/sessions/set" \
-H "Authorization: Bearer your_api_key_here" \
-F "id=42" \
-F "speakers[]="
Full two-step workflow
Step 1: Register account as event speaker
POST /api/v2/account/set
→ event_id=7, email=jane.doe@example.com, speaker=true
Step 2: Assign speaker to a session
POST /api/v2/sessions/set
→ id=42, speakers[]=18860
Notes
-
speakers[]is a full replacement — every update overwrites the current list. To add a speaker without removing others, first retrieve existing speakers viaGET /api/v2/sessions/getSpeakersand include all of them in your new request -
Speaker schedule records are created automatically when a speaker is assigned
-
speakers[]accepts account IDs (integers) or email addresses (strings) — mix is allowed