Skip to content

Create a session status

POST/v1/event/{eventId}/statuses/create

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

Create a new custom session status. Requires the write:metadata scope.

Unlike the other metadata endpoints, name alone is not enough. color and status are stored NOT NULL with no defaults, so all three are required; a payload missing either answers 400 VALIDATION_ERROR naming the field.

status is the underlying approval state this custom label maps onto — several labels may share one. It must be one of the five values below; anything else is a 400, not a 500.

Request example

Terminal window
curl --request POST \
--url 'https://public-api.sessionboard.com/v1/event/{eventId}/statuses/create' \
--header 'x-access-token: <api-token>' \
--header 'Content-Type: application/json' \
--data '{
"name": "<string>",
"color": "<string>",
"status": "pending"
}'

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
Body application/json
POST

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

Request body

application/jsonrequired

  • namestringrequired
  • colorstringrequired
  • statusstringrequired

    Approval state this custom status maps onto.

    Allowed values
    "pending", "accepted", "declined", "accept_queue", "decline_queue"
{
"name": "<string>",
"color": "<string>",
"status": "pending"
}

Responses

201application/json

Status created

A custom session status definition configured for an event.

  • 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

400

Missing name, color or status, or a status outside the enum

401

Unauthorized

403

Missing write:metadata scope

Response examples

{
"id": "<string>",
"name": "<string>",
"status": "pending",
"status_name": "<string>",
"color": "<string>",
"order": 123,
"is_custom": true,
"created_at": "<string>",
"created_by_user_id": 123,
"created_by_user_name": "<string>"
}

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.