Create session

POST/manage/events/:eventId/sessions

Create a session. Requires the sessionsWrite permission. SessionSpeaker links are created from speakerIds / speakers.

AuthLogin required

Path parameters

eventIdstringrequired

Event ID or slug.

Request body

titlestringrequired

Session title (required); no length limit.

descriptionstring

Description.

languagesobject

Localized title / description.

statusstring

One of DRAFT / COMPLETED / CANCELLED.

startTime / endTimestring

Start / end time (ISO 8601); endTime must not be earlier than startTime.

stageIdstring

Stage ID; must belong to the same event.

speakerIdsstring[]

Array of speaker IDs; SessionSpeaker links are reconciled to match this array (links not present in the array are removed).

speakersobject[]

Array used to create and link speakers in one call; each element has speakerId (required), order (integer ≥ 0) and status.

Object structures

languages

Keyed by language code; each entry overrides the title / description shown for that language. Languages you omit fall back to the default fields.

<lang>object

Language code (ja, en, …)

<lang>.titlestring

Title shown in that language.

<lang>.descriptionstring

Description shown in that language.

{
  "ja": { "title": "オープニング基調講演", "description": "..." },
  "en": { "title": "Opening Keynote", "description": "..." }
}

speakers

Links between the session and its speakers (SessionSpeaker). Use it when you need more control than speakerIds; when both are sent, this field takes precedence.

speakerIdstringrequired

Speaker ID; must belong to the same event.

ordernumber

Display order within the session; an integer of 0 or more.

statusstring

One of DRAFT / PENDING / CONFIRMED / REJECTED.

rolestring

Role within the session (e.g. moderator)

commentstring

Internal note for organizers.

[
  { "speakerId": "sp1a2b3-...", "order": 0, "status": "CONFIRMED", "role": "moderator" }
]
Request
curl https://api.4s.link/manage/events/EVENT_ID/sessions \
-X POST \
-H "Authorization: Bearer 4s_at_..." \
-H "Content-Type: application/json" \
-d '{
"title": "Opening Keynote",
"status": "COMPLETED",
"startTime": "2026-09-01T01:00:00.000Z",
"endTime": "2026-09-01T02:00:00.000Z",
"stageId": "sg1a2b3c-...",
"speakerIds": ["sp1a2b3-..."]
}'
Example response
{
"id": "s1a2b3c4-...",
"title": "Opening Keynote",
"description": "...",
"status": "COMPLETED",
"startTime": "2026-09-01T01:00:00.000Z",
"endTime": "2026-09-01T02:00:00.000Z",
"stageId": "sg1a2b3c-...",
"speakers": [
{ "id": "sp1a2b3-...", "firstName": "太郎", "lastName": "山田" }
]
}