Skip to content

What is waiting for your OK

GET/v1/organization/{orgId}/marketing/approvals

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

Every request an AI assistant made that reaches people and is waiting for a person in Sessionboard: sending invitations or emails, launching a campaign, publishing a page or library, approving ad spend, opening nominations, publishing an agenda. Covers Marketing, Learning, Awards and Sessions. Each request says what it is (title), the person's own words when the assistant passed them (asked), who asked (assistant, requested_by), when (created_at) and the Sessionboard page where a person approves or declines it (url). Newest first, 50 at most. Read-only: approving and declining happen only in Sessionboard, never through the API. Requires read:marketing and a key that is not restricted to particular events. Also at GET /v1/marketing/approvals.

Request example

Terminal window
curl --request GET \
--url 'https://public-api.sessionboard.com/v1/organization/{orgId}/marketing/approvals' \
--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

  • orgIdstringpathrequired

    Your organization ID. Any other organization returns 404.

Query parameters

  • statusstringquery

    Default pending.

    Allowed values
    "pending", "approved", "declined", "failed", "all"
  • productstringquery

    Only this product's requests. Default every product.

    Allowed values
    "marketing", "learning", "awards", "sessions"
  • surfacestringquery

    Only requests from one area of a product (for example campaigns).

    Max length
    32
  • idstring<uuid>query

    One request, whatever its status (the approval_id an action answered with).

Responses

200application/json

OK

  • payloadobject
    Show child attributes
    • approvalsAssistantApproval[]
      Show child attributes
      • idstring<uuid>
      • statusstring
        Allowed values
        "pending", "approved", "declined", "failed"
      • productstring
        Allowed values
        "marketing", "learning", "awards", "sessions"
      • surfacestring

        The area of the product, for example campaigns, pages, field_events.

      • actionstring

        What the assistant asked to do, for example launch.

      • titlestring

        The request in a sentence.

      • askedstring | null

        The person's own words, when the assistant passed them.

      • assistantobject
        Show child attributes
        • vendorstring

          For example claude, chatgpt, mcp.

        • labelstring
        • clientstring | null
        • viastring | null
      • requested_byobject
        Show child attributes
        • user_idinteger | null
        • namestring | null
      • event_idinteger | null
      • targetobject | null
        Show child attributes
        • typestring
        • idstring
      • created_atstring<date-time>
      • decided_byobject | null
        Show child attributes
        • user_idinteger | null
        • namestring | null
      • decided_atstring<date-time> | null
      • errorstring | null

        Why an approved request could not run.

      • urlstring

        The Sessionboard page where a person approves or declines it.

    • pendinginteger

      Requests waiting in total (for the product asked for).

    • notestring

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).

Response examples

{
"payload": {
"approvals": [
{
"id": "3c90c3cc-0d44-4b50-8888-8dd25736052a",
"status": "pending",
"product": "marketing",
"surface": "<string>",
"action": "<string>",
"title": "<string>",
"asked": "<string>",
"assistant": {
"vendor": "<string>",
"label": "<string>",
"client": "<string>",
"via": "<string>"
},
"requested_by": {
"user_id": 123,
"name": "<string>"
},
"event_id": 123,
"target": {
"type": "<string>",
"id": "<string>"
},
"created_at": "2026-01-15T09:30:00Z",
"decided_by": {
"user_id": 123,
"name": "<string>"
},
"decided_at": "2026-01-15T09:30:00Z",
"error": "<string>",
"url": "<string>"
}
],
"pending": 123,
"note": "<string>"
}
}