Skip to main content
GET
/
channels
List channels
curl --request GET \
  --url https://api.example.com/channels
{
  "data": [
    {
      "id": "app",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "organization_id": "f1e2d3c4-b5a6-7890-fedc-ba0987654321",
      "merchant_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
      "name": "Mobile app",
      "status": "ACTIVE",
      "cms_template_id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "cms": {
        "id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
        "name": "App landing page",
        "entity": "CHANNELS",
        "status": "ACTIVE",
        "fields": [
          {
            "name": "hero_title",
            "type": "TEXT",
            "label": { "en_us": "Hero title" },
            "required": true,
            "value": "Order from our app"
          }
        ]
      }
    },
    {
      "id": "uber-eats",
      "uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "organization_id": "f1e2d3c4-b5a6-7890-fedc-ba0987654321",
      "merchant_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
      "name": "Uber Eats",
      "status": "ACTIVE",
      "cms_template_id": null,
      "cms": null
    }
  ]
}
Returns all channels configured for the authenticated merchant. Use this endpoint to map Fire spark channels to ordering surfaces in your POS or RMS before syncing menus and routing orders.
Requires an access token with the channels:read scope. See Authorize to obtain a token.

Request

curl "https://firespark.vercel.app/api/integrations/v1/channels" \
  -H "Authorization: Bearer ACCESS_TOKEN"

Response

The response wraps an array of channel objects in data. Each channel represents a sales surface — owned channels such as app or web, or aggregators such as Uber Eats.
{
  "data": [
    {
      "id": "app",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "organization_id": "f1e2d3c4-b5a6-7890-fedc-ba0987654321",
      "merchant_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
      "name": "Mobile app",
      "status": "ACTIVE",
      "cms_template_id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "cms": {
        "id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
        "name": "App landing page",
        "entity": "CHANNELS",
        "status": "ACTIVE",
        "fields": [
          {
            "name": "hero_title",
            "type": "TEXT",
            "label": { "en_us": "Hero title" },
            "required": true,
            "value": "Order from our app"
          }
        ]
      }
    },
    {
      "id": "uber-eats",
      "uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "organization_id": "f1e2d3c4-b5a6-7890-fedc-ba0987654321",
      "merchant_id": "c1d2e3f4-a5b6-7890-cdef-123456789abc",
      "name": "Uber Eats",
      "status": "ACTIVE",
      "cms_template_id": null,
      "cms": null
    }
  ]
}

Channel object

FieldTypeDescription
idstringExternal channel identifier. Alphanumeric characters, _, and - only. 1–64 characters. Unique per merchant.
uidstring (UUID)Fire spark internal identifier.
organization_idstring (UUID)Organization that owns the merchant.
merchant_idstring (UUID)Merchant the channel belongs to.
namestringDisplay name. 1–100 characters.
statusstringACTIVE or INACTIVE.
cms_template_idstring (UUID)CMS template linked to this channel. null when no template is assigned.
cmsobjectRead-only. null when cms_template_id is null. When set, the resolved CMS template for this channel.
Present only when cms_template_id is not null. Contains the resolved CMS template assigned to the channel.
FieldTypeDescription
idstring (UUID)Template identifier. Matches cms_template_id.
namestringTemplate name. 1–100 characters.
entitystringAlways CHANNELS for channel responses.
statusstringACTIVE or INACTIVE.
fieldsarrayTemplate fields with their current stored values.
Each field in fields:
FieldTypeDescription
namestringField key.
typestringTEXT, SELECT, IMAGE, or LIST.
labelobjectOptional localized label keyed by locale.
requiredbooleanWhether the field is required.
placeholderstringOptional placeholder text.
optionsarrayFor SELECT fields — objects with label and value.
altTextstringFor IMAGE fields — alternative text.
srcstringFor IMAGE fields — image URL.
hrefstringFor IMAGE fields — optional link URL.
valuevariesCurrent stored value for this channel. Omitted when empty.

Mapping channels to your POS

Match the id field to the channel identifier in your POS or RMS. Fire spark uses this external ID when composing menus and routing orders per surface.
Channel uid values are stable Fire spark identifiers. Use id for cross-system mapping and uid when referencing channels in other Fire spark API calls.

Error responses

StatusDescription
401Missing or invalid access token.
403Token does not include the channels:read scope.