Skip to content

List sessions (CRUD proxy)

GET/v1/event/{eventId}/sessions

US Region: https://public-api.sessionboard.com · EU Region: https://public-api-eu.sessionboard.com

Paginated list of top-level sessions via the CRUD proxy. Returns nested language, track, level, format, and room metadata using the same field sets documented on the Session schema (null when unassigned). Also includes is_abstract and composition_status.

Query params: is_abstract (true/false), expand=linked_sources, expand=composition, plus standard pagination and filters.

Session categorization filters use snake_case query params on this endpoint: track_id/track_ids, tag_id/tag_ids, level_id/level_ids, format_id/format_ids, language_id/language_ids. Plural params take comma-separated UUIDs (OR within a filter; separate filters combine with AND).

Every value passed to these filters must be a UUID. A non-UUID value returns 400 with error code VALIDATION_ERROR and a message naming the offending parameter, for example track_id must be a UUID (received "nope").

Request example

Terminal window
curl --request GET \
--url 'https://public-api.sessionboard.com/v1/event/{eventId}/sessions' \
--header 'x-access-token: <api-token>'

Try it

Authorization

Your token stays in this page. It is sent only to the region above and is never saved; it is gone when you leave or reload the page.

Path parameters
Query parameters
GET

Authorizations

  • x-access-tokenstringheader

    Organization API token. Generate from Organization Settings → API Tokens.

  • AuthorizationBearer <token>headeror

    OAuth 2.1 access token. Obtained via the OAuth PKCE flow at /oauth/token.

Send one of these. See Authentication.

Path parameters

  • eventIdintegerpathrequired

    The event ID.

Query parameters

  • pageintegerquery

    Page number for pagination.

    Default
    1
    Minimum
    1
    Maximum
    999
  • page_sizeintegerquery
    Default
    25
    Minimum
    1
    Maximum
    100
  • is_abstractbooleanquery

    Filter to abstract submissions or program sessions.

  • expandstring[]query

    Expand records with additional data.

    Possible values:

    • translated_fields — includes the translated_fields array on records when the event has language variants configured.
    • subsession_details — applies to session responses. Each subsession inside parent.subsessions[] is returned with full parent-session field parity (status, custom_status, custom_fields, chairpersons, moderators, sponsors, exhibitors, tags, language, track, level, room, is_public, external_url, client_session_id, ceu_credits, capacity, source) instead of the default minimal shape. Subsessions inherit is_abstract, composition_status, and optional composition from the parent. Not required when calling GET /v1/event/{eventId}/sessions/{sessionId} with a subsession UUID — that endpoint always returns the full shape at the top level.
    • linked_sources — include sessions that are linked as composition sources (excluded from list/search results by default).
    • composition — attach a full composition object with target and source details on each returned session. Recommended for single-session GET; use cautiously on broad searches.

    A single value can be passed directly, and multiple values repeat the parameter — all of these are accepted:

    • ?expand=composition
    • ?expand=translated_fields&expand=composition
    • ?expand[]=translated_fields&expand[]=composition
    Allowed values
    "translated_fields", "subsession_details", "linked_sources", "composition"
  • statusstringquery
  • track_idstring<uuid>query

    Filter by a single track UUID.

  • track_idsstringquery

    Comma-separated track UUIDs (OR). Repeat track_id for the same effect.

  • level_idstring<uuid>query
  • level_idsstringquery

    Comma-separated level UUIDs (OR).

  • format_idstring<uuid>query
  • format_idsstringquery

    Comma-separated format UUIDs (OR).

  • language_idstring<uuid>query
  • language_idsstringquery

    Comma-separated language UUIDs (OR).

  • tag_idstring<uuid>query
  • tag_idsstringquery

    Comma-separated tag UUIDs (OR).

Responses

200application/json

OK

  • dataSession[]
    Show child attributes
    • idstring<uuid>
    • friendly_idstring
    • friendly_id_rawinteger
    • titlestring
    • descriptionstring
    • statusstring
      Allowed values
      "accepted", "accept_queue", "pending", "decline_queue", "declined"
    • custom_status_idstring
    • custom_statusobject
      Show child attributes
      • idstring
      • namestring
    • starts_atstring<date-time>
    • ends_atstring<date-time>
    • is_publicboolean
    • is_abstractboolean

      True for CFP abstract submissions; false for program sessions.

    • composition_statusCompositionStatus

      Summary of how this session participates in a composition (merge or link). Always present on session responses.

      Show child attributes
      • rolestring
        • standalone — normal editable record
        • target — composite parent with one or more linked sources
        • source — linked into another record (still editable)
        Allowed values
        "standalone", "target", "source"
      • is_linkedboolean
      • is_read_onlyboolean

        Always false. Linked sources stay editable; the key is kept for compatibility.

        Allowed values
        false
      • source_countinteger

        Number of records merged or linked into this session.

      • targetobject | null

        Present when role is source.

        Show child attributes
        • idstring<uuid>
        • friendly_idstring
        • titlestring
        • is_abstractboolean
    • compositionCompositionDetail

      Present when expand=composition is requested.

      Show child attributes
      • targetobject | null

        Summary of a related session in a composition relationship.

        Show child attributes
        • idstring<uuid>
        • friendly_idstring
        • titlestring
        • is_abstractboolean
      • sourcesCompositionSource[]
        Show child attributes
        • composition_idstring<uuid>
        • relationship_typestring
          Allowed values
          "merged_session", "merged_abstract", "composed_into_session"
        • created_atstring<date-time>
        • idstring<uuid>
        • friendly_idstring
        • titlestring
        • is_abstractboolean
    • external_urlstring<uri>
    • client_session_idstring
    • created_atstring<date-time>
    • updated_atstring<date-time>
    • ceu_creditsnumber<float>
    • capacityinteger
    • custom_fieldsCustomFieldValue[]
      Show child attributes
      • idstring
      • namestring
      • valuestring | boolean | null

        The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

        checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

        datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

        date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

      • typestring
      • internal_namestring
      • created_atstring
    • translated_fieldsTranslatedField[]
      Show child attributes
      • idstring
      • namestring
      • typestring
      • parent_field_idstring
      • parent_field_sourcestring
      • parent_field_namestring
      • parent_field_internal_namestring
      • translated_languagestring
      • valuestring
    • speakersSessionSpeaker[]

      Legacy junction-table speakers (Session_Speakers). Retained for backwards compatibility. Each entry includes participant_role when the event has Sessions 2.0 roles configured. Prefer participants for new integrations that need custom program roles or a single flat participant list.

      Show child attributes
      • idstring
      • participant_roleParticipantRole

        The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

        Show child attributes
        • idstring<uuid>

          Session_Roles.id

        • slugstring

          Stable programmatic identifier for the role within the event.

        • namestring

          Display name (singular).

        • name_pluralstring

          Display name (plural).

        • core_rolestring

          Legacy junction category this role maps to for integrations.

          Allowed values
          "speaker", "chairperson", "moderator"
      • session_affiliationSessionAffiliation

        The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

        Show child attributes
        • companystring | nullrequired

          Company for this session, or null to use the contact's.

        • job_titlestring | nullrequired

          Job title for this session, or null to use the contact's.

      • friendly_idstring
      • full_namestring
      • first_namestring
      • last_namestring
      • emailstring
      • created_atstring
      • updated_atstring
      • photo_urlstring

        URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

      • company_namestring
      • titlestring
      • aboutstring
      • phone_homestring
      • phone_mobilestring
      • address_line_1string
      • address_line_2string
      • address_citystring
      • address_statestring
      • address_postal_codestring
      • address_countrystring
      • website_urlstring
      • linkedin_urlstring
      • twitter_urlstring
      • facebook_urlstring
      • instagram_urlstring
      • snapchat_usernamestring
      • tiktok_usernamestring
      • translated_fieldsTranslatedField[]
        Show child attributes
        • idstring
        • namestring
        • typestring
        • parent_field_idstring
        • parent_field_sourcestring
        • parent_field_namestring
        • parent_field_internal_namestring
        • translated_languagestring
        • valuestring
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
    • chairpersonsSessionSpeaker[]

      Legacy junction-table chairpersons (Session_Chairpersons). See speakers for migration guidance.

      Show child attributes
      • idstring
      • participant_roleParticipantRole

        The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

        Show child attributes
        • idstring<uuid>

          Session_Roles.id

        • slugstring

          Stable programmatic identifier for the role within the event.

        • namestring

          Display name (singular).

        • name_pluralstring

          Display name (plural).

        • core_rolestring

          Legacy junction category this role maps to for integrations.

          Allowed values
          "speaker", "chairperson", "moderator"
      • session_affiliationSessionAffiliation

        The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

        Show child attributes
        • companystring | nullrequired

          Company for this session, or null to use the contact's.

        • job_titlestring | nullrequired

          Job title for this session, or null to use the contact's.

      • friendly_idstring
      • full_namestring
      • first_namestring
      • last_namestring
      • emailstring
      • created_atstring
      • updated_atstring
      • photo_urlstring

        URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

      • company_namestring
      • titlestring
      • aboutstring
      • phone_homestring
      • phone_mobilestring
      • address_line_1string
      • address_line_2string
      • address_citystring
      • address_statestring
      • address_postal_codestring
      • address_countrystring
      • website_urlstring
      • linkedin_urlstring
      • twitter_urlstring
      • facebook_urlstring
      • instagram_urlstring
      • snapchat_usernamestring
      • tiktok_usernamestring
      • translated_fieldsTranslatedField[]
        Show child attributes
        • idstring
        • namestring
        • typestring
        • parent_field_idstring
        • parent_field_sourcestring
        • parent_field_namestring
        • parent_field_internal_namestring
        • translated_languagestring
        • valuestring
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
    • moderatorsSessionSpeaker[]

      Legacy junction-table moderators (Session_Moderators). See speakers for migration guidance.

      Show child attributes
      • idstring
      • participant_roleParticipantRole

        The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

        Show child attributes
        • idstring<uuid>

          Session_Roles.id

        • slugstring

          Stable programmatic identifier for the role within the event.

        • namestring

          Display name (singular).

        • name_pluralstring

          Display name (plural).

        • core_rolestring

          Legacy junction category this role maps to for integrations.

          Allowed values
          "speaker", "chairperson", "moderator"
      • session_affiliationSessionAffiliation

        The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

        Show child attributes
        • companystring | nullrequired

          Company for this session, or null to use the contact's.

        • job_titlestring | nullrequired

          Job title for this session, or null to use the contact's.

      • friendly_idstring
      • full_namestring
      • first_namestring
      • last_namestring
      • emailstring
      • created_atstring
      • updated_atstring
      • photo_urlstring

        URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

      • company_namestring
      • titlestring
      • aboutstring
      • phone_homestring
      • phone_mobilestring
      • address_line_1string
      • address_line_2string
      • address_citystring
      • address_statestring
      • address_postal_codestring
      • address_countrystring
      • website_urlstring
      • linkedin_urlstring
      • twitter_urlstring
      • facebook_urlstring
      • instagram_urlstring
      • snapchat_usernamestring
      • tiktok_usernamestring
      • translated_fieldsTranslatedField[]
        Show child attributes
        • idstring
        • namestring
        • typestring
        • parent_field_idstring
        • parent_field_sourcestring
        • parent_field_namestring
        • parent_field_internal_namestring
        • translated_languagestring
        • valuestring
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
    • participantsSessionParticipant[]

      Flat list of session participants from the Sessions 2.0 data model (Session_Participants + Session_Roles). Always returned on session search and get (no expand flag). Includes custom program roles (for example Author, Panelist) in addition to the legacy speaker/chairperson/moderator junction tables. Legacy arrays above remain for backwards compatibility; each legacy entry also includes participant_role when event roles are configured. Contact profile fields (photo_url, company_name, title, address_country, etc.) are hydrated from the contact record in the event's default language without requiring expand.

      Show child attributes
      • idstring
      • participant_roleParticipantRole

        The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

        Show child attributes
        • idstring<uuid>

          Session_Roles.id

        • slugstring

          Stable programmatic identifier for the role within the event.

        • namestring

          Display name (singular).

        • name_pluralstring

          Display name (plural).

        • core_rolestring

          Legacy junction category this role maps to for integrations.

          Allowed values
          "speaker", "chairperson", "moderator"
      • session_affiliationSessionAffiliation

        The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

        Show child attributes
        • companystring | nullrequired

          Company for this session, or null to use the contact's.

        • job_titlestring | nullrequired

          Job title for this session, or null to use the contact's.

      • friendly_idstring
      • full_namestring
      • first_namestring
      • last_namestring
      • emailstring
      • created_atstring
      • updated_atstring
      • photo_urlstring

        URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

      • company_namestring
      • titlestring
      • aboutstring
      • phone_homestring
      • phone_mobilestring
      • address_line_1string
      • address_line_2string
      • address_citystring
      • address_statestring
      • address_postal_codestring
      • address_countrystring
      • website_urlstring
      • linkedin_urlstring
      • twitter_urlstring
      • facebook_urlstring
      • instagram_urlstring
      • snapchat_usernamestring
      • tiktok_usernamestring
      • translated_fieldsTranslatedField[]
        Show child attributes
        • idstring
        • namestring
        • typestring
        • parent_field_idstring
        • parent_field_sourcestring
        • parent_field_namestring
        • parent_field_internal_namestring
        • translated_languagestring
        • valuestring
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
      • session_participant_idstring<uuid>

        Primary key of the Session_Participants row.

      • acceptance_statusstring

        The participant's answer to their acceptance invitation. Present only when the event has Participant Acceptance turned on (features.speaker_acceptance).

        Allowed values
        "pending", "accepted", "declined", "not_accepted"
      • acceptance_invite_sent_atstring<date-time> | null

        When the acceptance invitation for this role was last sent, or null if it has not been sent. Present only when the event has Participant Acceptance turned on.

    • sponsorsSessionSponsor[]
      Show child attributes
      • idstring
      • friendly_idstring
      • friendly_id_rawinteger
      • namestring
      • descriptionstring
      • logo_image_urlstring
      • banner_image_urlstring
      • phonestring
      • address_line_1string
      • address_line_2string
      • address_citystring
      • address_statestring
      • address_postal_codestring
      • address_coutnrystring
      • facebook_urlstring
      • instagram_urlstring
      • linkedin_urlstring
      • snapchat_usernamestring
      • tiktok_usernamestring
      • twitter_urlstring
      • website_urlstring
      • created_atstring
      • updated_atstring
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
      • translated_fieldsTranslatedField[]
        Show child attributes
        • idstring
        • namestring
        • typestring
        • parent_field_idstring
        • parent_field_sourcestring
        • parent_field_namestring
        • parent_field_internal_namestring
        • translated_languagestring
        • valuestring
      • contactsAccountContact[]
        Show child attributes
        • idstring
        • friendly_idstring
        • friendly_id_rawinteger
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • is_primaryboolean
        • contact_created_atstring
        • contact_updated_atstring
        • relationship_created_atstring
        • relationship_updated_atstring
    • exhibitorsSessionExhibitor[]
      Show child attributes
      • idstring
      • friendly_idstring
      • friendly_id_rawinteger
      • namestring
      • descriptionstring
      • logo_image_urlstring
      • banner_image_urlstring
      • phonestring
      • address_line_1string
      • address_line_2string
      • address_citystring
      • address_statestring
      • address_postal_codestring
      • address_coutnrystring
      • facebook_urlstring
      • instagram_urlstring
      • linkedin_urlstring
      • snapchat_usernamestring
      • tiktok_usernamestring
      • twitter_urlstring
      • website_urlstring
      • created_atstring
      • updated_atstring
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
      • translated_fieldsTranslatedField[]
        Show child attributes
        • idstring
        • namestring
        • typestring
        • parent_field_idstring
        • parent_field_sourcestring
        • parent_field_namestring
        • parent_field_internal_namestring
        • translated_languagestring
        • valuestring
      • contactsAccountContact[]
        Show child attributes
        • idstring
        • friendly_idstring
        • friendly_id_rawinteger
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • is_primaryboolean
        • contact_created_atstring
        • contact_updated_atstring
        • relationship_created_atstring
        • relationship_updated_atstring
    • contentContent[]
      Show child attributes
      • idstring<uuid>
      • urlstring<uri> | null

        Download URL. null while Approvals holds the file back (see approval_status), so nothing built on the API can publish it early.

      • titlestring
      • filenamestring
      • sizeinteger
      • mimetypestring
      • typestring | null

        Organizer-facing file type, e.g. presentation, handout, poster, or holding_slide for slides generated by Sessionboard. Filterable with ?type= on the list endpoint.

        Example
        "holding_slide"
      • labelstring | null

        Display label shown on the session's Files tab, e.g. Holding Slide.

        Example
        "Holding Slide"
      • created_atstring<date-time>
      • updated_atstring<date-time>
      • assigned_participant_idstring<uuid> | null

        Contact UUID of the session participant this file is assigned to.

      • assigned_participant_emailstring<email> | null
      • assigned_participant_namestring | null
      • content_slot_idstring<uuid> | null

        The upload slot this file answers — see GET /v1/event/{eventId}/content-slots. Present only while the event uses upload slots; null for events on a single file request, and for files uploaded before slots existed or outside any slot.

      • approval_statusstring

        Approval state, returned by the Session Files endpoints.

        • not_required: not under an approval workflow (no workflow, workflow off, or uploaded before it was turned on).
        • pending: waiting on a reviewer.
        • approved: approved and released.
        • denied: sent back to the uploader for changes.
        • superseded: a newer version replaced it before it was decided.
        • embargoed: approved (or not required) but held until a release time; see embargo_until.

        Only approved and not_required files have a url.

        Allowed values
        "not_required", "pending", "approved", "denied", "superseded", "embargoed"
        Example
        "approved"
      • embargo_untilstring<date-time> | null

        When an embargoed file is released (UTC). null when it is not embargoed, or when it waits for its session to be scheduled (release "when each file's session starts").

    • tagsTag[]
      Show child attributes
      • idstring<uuid>
      • typestring
        Allowed values
        "tag"
      • namestring
      • colorstring | null
      • orderinteger | null
      • created_atstring
      • updated_atstring
    • languageobject

      Assigned session language. Includes id, event_id, name, order, created_at, and updated_at when set. Unassigned values are an empty object {} on POST session search responses and null on CRUD proxy responses (GET list, create, update, restore).

      Show child attributes
      • idstring<uuid>
      • event_idinteger
      • namestring
      • orderinteger
      • created_atstring
      • updated_atstring
    • trackobject

      Assigned session track. Includes id, event_id, name, color, order, created_at, and updated_at when set. Unassigned values are {} on POST session search and null on CRUD proxy responses.

      Show child attributes
      • idstring<uuid>
      • event_idinteger
      • namestring
      • colorstring
      • orderinteger
      • created_atstring
      • updated_atstring
    • levelobject

      Assigned session level. Includes id, name, order, created_at, and updated_at when set (no event_id on nested objects). Unassigned values are {} on POST session search and null on CRUD proxy responses.

      Show child attributes
      • idstring<uuid>
      • namestring
      • orderinteger
      • created_atstring
      • updated_atstring
    • formatobject

      Assigned session format. Nested session objects include only id and name (not the full standalone Format schema).

      Show child attributes
      • idstring
      • namestring
    • roomobject

      Assigned room when location is room. Includes id, name, order, capacity, created_at, and updated_at when set. Omitted when location is external or unset ({} on POST search, null on CRUD proxy). event_id is not included on nested room objects.

      Show child attributes
      • idstring<uuid>
      • namestring
      • orderinteger
      • capacityinteger | null

        Maximum room capacity. Returned on nested session room objects and standalone room list/search endpoints.

      • created_atstring
      • updated_atstring
    • subsessionsSubsession | SubsessionDetailed[]

      Subsessions of this parent session. Each item defaults to the minimal Subsession shape; pass expand=subsession_details to receive the full SubsessionDetailed shape on every subsession in the array. Composition fields (is_abstract, composition_status, optional composition) are inherited from the parent session.

      Items are returned in the order set by the event admin (subsession_order), falling back to subsession number and then start time for subsessions that have never been reordered.

      Option 1 (Subsession)

      A subsession nested within a parent session. This is the default minimal shape returned inside parent.subsessions[] when the subsession_details expand value is not requested.

      To receive the full parent-shape parity (status, custom_status, custom_fields, chairpersons, moderators, sponsors, exhibitors, tags, language, track, level, room, etc.), pass expand=subsession_details on the GET or POST search request. See the SubsessionDetailed schema.

      is_abstract, composition_status, and optional composition (when expand=composition) are inherited from the parent session.

      Alternatively, call GET /v1/event/{eventId}/sessions/{sessionId} with the subsession's UUID directly — the endpoint always returns the full session shape at the top level.

      • idstring<uuid>
      • friendly_idstring

        Human-readable id formatted as <event-prefix>-<parent-friendly-id>-<subsession-number> (or <event-prefix>-<subsession-friendly-id> when the event has show_subsession_friendly_id enabled).

      • friendly_id_rawinteger

        Underlying numeric friendly id (the suffix of friendly_id).

      • parent_session_friendly_idstring

        Human-readable friendly id of the parent session, e.g. SESS-3370.

      • parent_session_friendly_id_rawinteger

        Numeric friendly id of the parent session.

      • subsession_orderinteger | null

        Admin-defined position among the parent session's subsessions; subsessions are returned in this order, falling back to subsession number and start time. null when the parent's subsessions have never been reordered.

      • titlestring
      • descriptionstring
      • starts_atstring<date-time>
      • ends_atstring<date-time>
      • created_atstring<date-time>
      • updated_atstring<date-time>
      • translated_fieldsobject[]

        Present only when expand=translated_fields is set and the event has language variants configured.

      • speakersSessionSpeaker[]
        Show child attributes
        • idstring
        • participant_roleParticipantRole

          The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

          Show child attributes
          • idstring<uuid>

            Session_Roles.id

          • slugstring

            Stable programmatic identifier for the role within the event.

          • namestring

            Display name (singular).

          • name_pluralstring

            Display name (plural).

          • core_rolestring

            Legacy junction category this role maps to for integrations.

            Allowed values
            "speaker", "chairperson", "moderator"
        • session_affiliationSessionAffiliation

          The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

          Show child attributes
          • companystring | nullrequired

            Company for this session, or null to use the contact's.

          • job_titlestring | nullrequired

            Job title for this session, or null to use the contact's.

        • friendly_idstring
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • created_atstring
        • updated_atstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • phone_homestring
        • phone_mobilestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_countrystring
        • website_urlstring
        • linkedin_urlstring
        • twitter_urlstring
        • facebook_urlstring
        • instagram_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
      • participantsSessionParticipant[]

        Sessions 2.0 participants for this subsession (see Session.participants).

        Show child attributes
        • idstring
        • participant_roleParticipantRole

          The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

          Show child attributes
          • idstring<uuid>

            Session_Roles.id

          • slugstring

            Stable programmatic identifier for the role within the event.

          • namestring

            Display name (singular).

          • name_pluralstring

            Display name (plural).

          • core_rolestring

            Legacy junction category this role maps to for integrations.

            Allowed values
            "speaker", "chairperson", "moderator"
        • session_affiliationSessionAffiliation

          The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

          Show child attributes
          • companystring | nullrequired

            Company for this session, or null to use the contact's.

          • job_titlestring | nullrequired

            Job title for this session, or null to use the contact's.

        • friendly_idstring
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • created_atstring
        • updated_atstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • phone_homestring
        • phone_mobilestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_countrystring
        • website_urlstring
        • linkedin_urlstring
        • twitter_urlstring
        • facebook_urlstring
        • instagram_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
        • session_participant_idstring<uuid>

          Primary key of the Session_Participants row.

        • acceptance_statusstring

          The participant's answer to their acceptance invitation. Present only when the event has Participant Acceptance turned on (features.speaker_acceptance).

          Allowed values
          "pending", "accepted", "declined", "not_accepted"
        • acceptance_invite_sent_atstring<date-time> | null

          When the acceptance invitation for this role was last sent, or null if it has not been sent. Present only when the event has Participant Acceptance turned on.

      • is_abstractboolean

        Inherited from the parent session.

      • composition_statusCompositionStatus

        Summary of how this session participates in a composition (merge or link). Always present on session responses.

        Show child attributes
        • rolestring
          • standalone — normal editable record
          • target — composite parent with one or more linked sources
          • source — linked into another record (still editable)
          Allowed values
          "standalone", "target", "source"
        • is_linkedboolean
        • is_read_onlyboolean

          Always false. Linked sources stay editable; the key is kept for compatibility.

          Allowed values
          false
        • source_countinteger

          Number of records merged or linked into this session.

        • targetobject | null

          Present when role is source.

          Show child attributes
          • idstring<uuid>
          • friendly_idstring
          • titlestring
          • is_abstractboolean
      • formatobject
        Show child attributes
        • idstring
        • namestring
      • contentContent[]
        Show child attributes
        • idstring<uuid>
        • urlstring<uri> | null

          Download URL. null while Approvals holds the file back (see approval_status), so nothing built on the API can publish it early.

        • titlestring
        • filenamestring
        • sizeinteger
        • mimetypestring
        • typestring | null

          Organizer-facing file type, e.g. presentation, handout, poster, or holding_slide for slides generated by Sessionboard. Filterable with ?type= on the list endpoint.

          Example
          "holding_slide"
        • labelstring | null

          Display label shown on the session's Files tab, e.g. Holding Slide.

          Example
          "Holding Slide"
        • created_atstring<date-time>
        • updated_atstring<date-time>
        • assigned_participant_idstring<uuid> | null

          Contact UUID of the session participant this file is assigned to.

        • assigned_participant_emailstring<email> | null
        • assigned_participant_namestring | null
        • content_slot_idstring<uuid> | null

          The upload slot this file answers — see GET /v1/event/{eventId}/content-slots. Present only while the event uses upload slots; null for events on a single file request, and for files uploaded before slots existed or outside any slot.

        • approval_statusstring

          Approval state, returned by the Session Files endpoints.

          • not_required: not under an approval workflow (no workflow, workflow off, or uploaded before it was turned on).
          • pending: waiting on a reviewer.
          • approved: approved and released.
          • denied: sent back to the uploader for changes.
          • superseded: a newer version replaced it before it was decided.
          • embargoed: approved (or not required) but held until a release time; see embargo_until.

          Only approved and not_required files have a url.

          Allowed values
          "not_required", "pending", "approved", "denied", "superseded", "embargoed"
          Example
          "approved"
        • embargo_untilstring<date-time> | null

          When an embargoed file is released (UTC). null when it is not embargoed, or when it waits for its session to be scheduled (release "when each file's session starts").

      Option 2 (SubsessionDetailed)

      Full-parity subsession returned inside parent.subsessions[] when the subsession_details expand value is set on the request. The shape mirrors Session (minus the recursive subsessions property, since subsessions cannot be nested) and adds the parent-friendly-id fields so callers can iterate the array and then call GET /v1/event/{eventId}/sessions/{sessionId} with each subsession id for the same shape at the top level.

      is_abstract, composition_status, and optional composition (when expand=composition) are inherited from the parent session.

      • idstring<uuid>
      • friendly_idstring
      • friendly_id_rawinteger
      • parent_session_friendly_idstring
      • parent_session_friendly_id_rawinteger
      • subsession_orderinteger | null

        Admin-defined position among the parent session's subsessions; subsessions are returned in this order, falling back to subsession number and start time. null when the parent's subsessions have never been reordered.

      • titlestring
      • descriptionstring
      • statusstring
      • custom_status_idstring<uuid> | null
      • custom_statusSessionCustomStatus

        A custom session status definition configured for an event.

        Show child attributes
        • idstring
        • namestring
        • statusstring

          Approval state this custom label maps onto. Stored NOT NULL, so it is always present on a status created through this API.

          Allowed values
          "pending", "accepted", "declined", "accept_queue", "decline_queue"
        • status_namestring | null
        • colorstring
        • orderinteger
        • is_customboolean
        • created_atstring | null
        • created_by_user_idinteger | null
        • created_by_user_namestring | null
      • starts_atstring<date-time>
      • ends_atstring<date-time>
      • is_publicboolean
      • is_abstractboolean

        Inherited from the parent session.

      • composition_statusCompositionStatus

        Summary of how this session participates in a composition (merge or link). Always present on session responses.

        Show child attributes
        • rolestring
          • standalone — normal editable record
          • target — composite parent with one or more linked sources
          • source — linked into another record (still editable)
          Allowed values
          "standalone", "target", "source"
        • is_linkedboolean
        • is_read_onlyboolean

          Always false. Linked sources stay editable; the key is kept for compatibility.

          Allowed values
          false
        • source_countinteger

          Number of records merged or linked into this session.

        • targetobject | null

          Present when role is source.

          Show child attributes
          • idstring<uuid>
          • friendly_idstring
          • titlestring
          • is_abstractboolean
      • external_urlstring | null
      • client_session_idstring | null
      • ceu_creditsnumber | null
      • capacityinteger | null
      • translated_fieldsobject[]

        Present only when expand=translated_fields is set and the event has language variants configured.

      • created_atstring<date-time>
      • updated_atstring<date-time>
      • custom_fieldsCustomFieldValue[]
        Show child attributes
        • idstring
        • namestring
        • valuestring | boolean | null

          The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

          checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

          datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

          date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

        • typestring
        • internal_namestring
        • created_atstring
      • speakersSessionSpeaker[]
        Show child attributes
        • idstring
        • participant_roleParticipantRole

          The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

          Show child attributes
          • idstring<uuid>

            Session_Roles.id

          • slugstring

            Stable programmatic identifier for the role within the event.

          • namestring

            Display name (singular).

          • name_pluralstring

            Display name (plural).

          • core_rolestring

            Legacy junction category this role maps to for integrations.

            Allowed values
            "speaker", "chairperson", "moderator"
        • session_affiliationSessionAffiliation

          The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

          Show child attributes
          • companystring | nullrequired

            Company for this session, or null to use the contact's.

          • job_titlestring | nullrequired

            Job title for this session, or null to use the contact's.

        • friendly_idstring
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • created_atstring
        • updated_atstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • phone_homestring
        • phone_mobilestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_countrystring
        • website_urlstring
        • linkedin_urlstring
        • twitter_urlstring
        • facebook_urlstring
        • instagram_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
      • chairpersonsSessionSpeaker[]
        Show child attributes
        • idstring
        • participant_roleParticipantRole

          The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

          Show child attributes
          • idstring<uuid>

            Session_Roles.id

          • slugstring

            Stable programmatic identifier for the role within the event.

          • namestring

            Display name (singular).

          • name_pluralstring

            Display name (plural).

          • core_rolestring

            Legacy junction category this role maps to for integrations.

            Allowed values
            "speaker", "chairperson", "moderator"
        • session_affiliationSessionAffiliation

          The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

          Show child attributes
          • companystring | nullrequired

            Company for this session, or null to use the contact's.

          • job_titlestring | nullrequired

            Job title for this session, or null to use the contact's.

        • friendly_idstring
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • created_atstring
        • updated_atstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • phone_homestring
        • phone_mobilestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_countrystring
        • website_urlstring
        • linkedin_urlstring
        • twitter_urlstring
        • facebook_urlstring
        • instagram_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
      • moderatorsSessionSpeaker[]
        Show child attributes
        • idstring
        • participant_roleParticipantRole

          The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

          Show child attributes
          • idstring<uuid>

            Session_Roles.id

          • slugstring

            Stable programmatic identifier for the role within the event.

          • namestring

            Display name (singular).

          • name_pluralstring

            Display name (plural).

          • core_rolestring

            Legacy junction category this role maps to for integrations.

            Allowed values
            "speaker", "chairperson", "moderator"
        • session_affiliationSessionAffiliation

          The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

          Show child attributes
          • companystring | nullrequired

            Company for this session, or null to use the contact's.

          • job_titlestring | nullrequired

            Job title for this session, or null to use the contact's.

        • friendly_idstring
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • created_atstring
        • updated_atstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • phone_homestring
        • phone_mobilestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_countrystring
        • website_urlstring
        • linkedin_urlstring
        • twitter_urlstring
        • facebook_urlstring
        • instagram_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
      • participantsSessionParticipant[]

        Sessions 2.0 participants for this subsession (see Session.participants).

        Show child attributes
        • idstring
        • participant_roleParticipantRole

          The event's configured program role for this participant (Sessions 2.0). name and slug reflect the configured Session_Roles record (for example Author, Panelist). core_role is the legacy junction category mapping only (speaker, chairperson, moderator) and must not be used as the display role label. Present on legacy speakers, chairpersons, and moderators entries when the event has Session_Roles configured.

          Show child attributes
          • idstring<uuid>

            Session_Roles.id

          • slugstring

            Stable programmatic identifier for the role within the event.

          • namestring

            Display name (singular).

          • name_pluralstring

            Display name (plural).

          • core_rolestring

            Legacy junction category this role maps to for integrations.

            Allowed values
            "speaker", "chairperson", "moderator"
        • session_affiliationSessionAffiliation

          The person's company and job title for this session only, set by an organizer on the session's participant list. A null value means this session uses the contact's own company_name / title, so the value to display is session_affiliation.company ?? company_name and session_affiliation.job_title ?? title. Both keys are always present.

          Show child attributes
          • companystring | nullrequired

            Company for this session, or null to use the contact's.

          • job_titlestring | nullrequired

            Job title for this session, or null to use the contact's.

        • friendly_idstring
        • full_namestring
        • first_namestring
        • last_namestring
        • emailstring
        • created_atstring
        • updated_atstring
        • photo_urlstring

          URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

        • company_namestring
        • titlestring
        • aboutstring
        • phone_homestring
        • phone_mobilestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_countrystring
        • website_urlstring
        • linkedin_urlstring
        • twitter_urlstring
        • facebook_urlstring
        • instagram_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
        • session_participant_idstring<uuid>

          Primary key of the Session_Participants row.

        • acceptance_statusstring

          The participant's answer to their acceptance invitation. Present only when the event has Participant Acceptance turned on (features.speaker_acceptance).

          Allowed values
          "pending", "accepted", "declined", "not_accepted"
        • acceptance_invite_sent_atstring<date-time> | null

          When the acceptance invitation for this role was last sent, or null if it has not been sent. Present only when the event has Participant Acceptance turned on.

      • sponsorsSponsor[]
        Show child attributes
        • idstring
        • friendly_idstring
        • friendly_id_rawinteger
        • namestring
        • descriptionstring
        • logo_image_urlstring
        • banner_image_urlstring
        • phonestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_coutnrystring

          Country (note: field name contains a known typo preserved for backwards compatibility).

        • facebook_urlstring
        • instagram_urlstring
        • linkedin_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • twitter_urlstring
        • website_urlstring
        • created_atstring
        • updated_atstring<date-time>

          When the sponsor last changed, from any source, including Public API creates, updates and bulk writes. Send it back as updated_at on an update for optimistic concurrency; the write returns the new value.

        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • contactsAccountContact[]
          Show child attributes
          • idstring
          • friendly_idstring
          • friendly_id_rawinteger
          • full_namestring
          • first_namestring
          • last_namestring
          • emailstring
          • photo_urlstring

            URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

          • company_namestring
          • titlestring
          • aboutstring
          • is_primaryboolean
          • contact_created_atstring
          • contact_updated_atstring
          • relationship_created_atstring
          • relationship_updated_atstring
        • admin_urlstring<uri> | null

          Deep link to this entity in the Sessionboard admin UI.

      • exhibitorsExhibitor[]
        Show child attributes
        • idstring
        • friendly_idstring
        • friendly_id_rawinteger
        • namestring
        • descriptionstring
        • logo_image_urlstring
        • banner_image_urlstring
        • phonestring
        • address_line_1string
        • address_line_2string
        • address_citystring
        • address_statestring
        • address_postal_codestring
        • address_coutnrystring

          Country (note: field name contains a known typo preserved for backwards compatibility).

        • facebook_urlstring
        • instagram_urlstring
        • linkedin_urlstring
        • snapchat_usernamestring
        • tiktok_usernamestring
        • twitter_urlstring
        • website_urlstring
        • created_atstring
        • updated_atstring<date-time>

          When the exhibitor last changed, from any source, including Public API creates, updates and bulk writes. Send it back as updated_at on an update for optimistic concurrency; the write returns the new value.

        • custom_fieldsCustomFieldValue[]
          Show child attributes
          • idstring
          • namestring
          • valuestring | boolean | null

            The formatted field value, or null when the field is empty. Numeric field types (number, currency, percent, quantity, formula) serialize a stored zero as its formatted value (for example "0") — null means the field has no value, not that the value is zero.

            checkbox fields serialize as the strings "Yes" (checked) and "No" (explicitly unchecked); a checkbox that was never set is null. Writes take boolean true / false.

            datetime fields serialize as ISO 8601. On event custom fields (GET /v1/events?expand=custom_fields) the value is event-local time with the event's UTC offset (for example 2026-08-15T09:00:00-03:00), falling back to the raw UTC instant (2026-08-15T12:00:00.000Z) when the event has no valid timezone. On session, speaker, sponsor, and exhibitor custom fields the value is the raw UTC instant.

            date (date-only) fields serialize as M-DD-YYYY: month without a leading zero, day with one, four-digit year (for example 9-22-2026 for 22 September 2026, 3-04-2026 for 4 March 2026). This is not ISO 8601; parse it with that exact pattern.

          • typestring
          • internal_namestring
          • created_atstring
        • translated_fieldsTranslatedField[]
          Show child attributes
          • idstring
          • namestring
          • typestring
          • parent_field_idstring
          • parent_field_sourcestring
          • parent_field_namestring
          • parent_field_internal_namestring
          • translated_languagestring
          • valuestring
        • contactsAccountContact[]
          Show child attributes
          • idstring
          • friendly_idstring
          • friendly_id_rawinteger
          • full_namestring
          • first_namestring
          • last_namestring
          • emailstring
          • photo_urlstring

            URL of the contact's headshot. Images larger than 2 MB are delivered resized from this URL, scaled to fit within 2400 x 2400 pixels (a PNG may arrive as WebP for clients that accept it). The uploaded file is stored unchanged; for full-resolution originals use the bulk download tools in Sessionboard, such as Download Headshots (Contacts, More menu).

          • company_namestring
          • titlestring
          • aboutstring
          • is_primaryboolean
          • contact_created_atstring
          • contact_updated_atstring
          • relationship_created_atstring
          • relationship_updated_atstring
        • admin_urlstring<uri> | null

          Deep link to this entity in the Sessionboard admin UI.

      • contentContent[]
        Show child attributes
        • idstring<uuid>
        • urlstring<uri> | null

          Download URL. null while Approvals holds the file back (see approval_status), so nothing built on the API can publish it early.

        • titlestring
        • filenamestring
        • sizeinteger
        • mimetypestring
        • typestring | null

          Organizer-facing file type, e.g. presentation, handout, poster, or holding_slide for slides generated by Sessionboard. Filterable with ?type= on the list endpoint.

          Example
          "holding_slide"
        • labelstring | null

          Display label shown on the session's Files tab, e.g. Holding Slide.

          Example
          "Holding Slide"
        • created_atstring<date-time>
        • updated_atstring<date-time>
        • assigned_participant_idstring<uuid> | null

          Contact UUID of the session participant this file is assigned to.

        • assigned_participant_emailstring<email> | null
        • assigned_participant_namestring | null
        • content_slot_idstring<uuid> | null

          The upload slot this file answers — see GET /v1/event/{eventId}/content-slots. Present only while the event uses upload slots; null for events on a single file request, and for files uploaded before slots existed or outside any slot.

        • approval_statusstring

          Approval state, returned by the Session Files endpoints.

          • not_required: not under an approval workflow (no workflow, workflow off, or uploaded before it was turned on).
          • pending: waiting on a reviewer.
          • approved: approved and released.
          • denied: sent back to the uploader for changes.
          • superseded: a newer version replaced it before it was decided.
          • embargoed: approved (or not required) but held until a release time; see embargo_until.

          Only approved and not_required files have a url.

          Allowed values
          "not_required", "pending", "approved", "denied", "superseded", "embargoed"
          Example
          "approved"
        • embargo_untilstring<date-time> | null

          When an embargoed file is released (UTC). null when it is not embargoed, or when it waits for its session to be scheduled (release "when each file's session starts").

      • tagsTag[]
        Show child attributes
        • idstring<uuid>
        • typestring
          Allowed values
          "tag"
        • namestring
        • colorstring | null
        • orderinteger | null
        • created_atstring
        • updated_atstring
      • languageobject

        Same shape as Session.language when assigned; {} when unassigned.

        Show child attributes
        • idstring<uuid>
        • event_idinteger
        • namestring
        • orderinteger
        • created_atstring
        • updated_atstring
      • trackobject

        Same shape as Session.track when assigned; {} when unassigned.

        Show child attributes
        • idstring<uuid>
        • event_idinteger
        • namestring
        • colorstring
        • orderinteger
        • created_atstring
        • updated_atstring
      • levelobject

        Same shape as Session.level when assigned; {} when unassigned.

        Show child attributes
        • idstring<uuid>
        • namestring
        • orderinteger
        • created_atstring
        • updated_atstring
      • formatobject

        Nested format includes only id and name.

        Show child attributes
        • idstring
        • namestring
      • roomobject

        Same shape as Session.room when location is room; {} when location is external or unset.

        Show child attributes
        • idstring<uuid>
        • namestring
        • orderinteger
        • capacityinteger | null

          Maximum room capacity. Returned on nested session room objects and standalone room list/search endpoints.

        • created_atstring
        • updated_atstring
      • sourcestring
    • admin_urlstring<uri> | null

      Deep link to this entity in the Sessionboard admin UI.

  • paginationobject
    Show child attributes
    • current_pageinteger
    • page_sizeinteger
    • total_pagesinteger
    • total_resultsinteger

400application/json

A categorization filter param (track_id/track_ids, level_id/level_ids, format_id/format_ids, language_id/language_ids, tag_id/tag_ids) carried a non-UUID value. The message names the offending parameter.

  • errorstring
  • messagestring

401

Unauthorized

Response examples

{
"data": [
{
"id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
"friendly_id": "SESS-8",
"friendly_id_raw": 8,
"title": "Networking",
"description": "<p>Networking session description</p>",
"status": "accepted",
"starts_at": "2024-03-15T09:00:00Z",
"ends_at": "2024-03-15T10:00:00Z",
"is_public": true,
"created_at": "2024-01-10T14:30:00Z",
"updated_at": "2024-03-01T09:15:00Z",
"ceu_credits": 1.5,
"capacity": 200,
"language": {
"id": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"event_id": 42,
"name": "English",
"order": 0,
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z"
},
"track": {
"id": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"event_id": 42,
"name": "Artificial Intelligence & ML",
"color": "#329af0",
"order": 1,
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z"
},
"level": {
"id": "c3d4e5f6-a7b8-9012-cdef-123456789012",
"name": "Beginner",
"order": 2,
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z"
},
"format": {
"id": "d4e5f6a7-b8c9-0123-def0-234567890123",
"name": "Session"
},
"room": {
"id": "e5f6a7b8-c9d0-1234-ef01-345678901234",
"name": "Workshop Room 1",
"order": 3,
"capacity": 120,
"created_at": "2024-01-01T00:00:00Z",
"updated_at": "2024-01-01T00:00:00Z"
},
"tags": [],
"speakers": [],
"content": [],
"custom_fields": [],
"admin_url": "https://app.sessionboard.com/event/42/sessions/497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
],
"pagination": {
"current_page": 123,
"page_size": 123,
"total_pages": 123,
"total_results": 123
}
}

Get release notes by email

A short digest on the days something new goes live — each change with a link to its note in the release notes. No marketing, and one click to stop.

Company email addresses only. We’ll send one email to confirm it’s you. Already use Sessionboard? You can also turn this on under Community → What’s new.