Skip to content

Update a sign-up form

PUT/v1/organization/{orgId}/marketing/audience/forms/{formId}

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

Change what was sent; anything left out stays. status: archived stops sign-ups (the people stay). Requires write:marketing. Also at PUT /v1/marketing/audience/forms/{formId}.

Request example

Terminal window
curl --request PUT \
--url 'https://public-api.sessionboard.com/v1/organization/{orgId}/marketing/audience/forms/{formId}' \
--header 'x-access-token: <api-token>' \
--header 'Content-Type: application/json' \
--data '{
"eventId": 123,
"placement": "event_page",
"targetKind": "media_item",
"targetId": "<string>",
"name": "<string>",
"heading": "<string>",
"body": "<string>",
"buttonText": "<string>",
"fields": {
"name": true,
"company": true
},
"listKey": "<string>",
"doubleOptIn": true,
"consentText": "<string>",
"successMessage": "<string>",
"status": "active"
}'

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
PUT

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

  • orgIdstringpathrequired

    Your organization ID. Any other organization returns 404.

  • formIdstring<uuid>pathrequired

Request body

application/jsonrequired

Every field is optional; defaults come from the event, the organization or the recording.

  • eventIdinteger | null
  • placementstring
    Allowed values
    "event_page", "gallery", "clip", "recording_gate"
  • targetKindstring | null
    Allowed values
    "media_item", "content_item", "gallery", "gallery_item", null
  • targetIdstring | null
  • namestring

    A label your team sees.

  • headingstring
  • bodystring
  • buttonTextstring
  • fieldsobject
    Show child attributes
    • nameboolean
    • companyboolean
  • listKeystring
  • doubleOptInboolean
  • consentTextstring

    What visitors agree to; {org} is replaced with your organization's name.

  • successMessagestring
  • statusstring
    Allowed values
    "active", "archived"
{
"eventId": 123,
"placement": "event_page",
"targetKind": "media_item",
"targetId": "<string>",
"name": "<string>",
"heading": "<string>",
"body": "<string>",
"buttonText": "<string>",
"fields": {
"name": true,
"company": true
},
"listKey": "<string>",
"doubleOptIn": true,
"consentText": "<string>",
"successMessage": "<string>",
"status": "active"
}

Responses

200

payload.form

403

  • SCOPE_REQUIRED — the token lacks read:marketing (reads) or write:marketing (writes).
  • ORG_WIDE_TOKEN_REQUIRED — the token is restricted to particular events; this operation reads the whole organization.
  • FORBIDDEN — the organization's plan does not include Marketing, or the token's user cannot change goals (writes need an organization admin or the organization settings permission).

404

Not found in your organization.