Saltar al contenido principal
GET
/
channels
Listar canales
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": "App móvil",
      "status": "ACTIVE",
      "cms_template_id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "cms": {
        "id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
        "name": "Landing de la app",
        "entity": "CHANNELS",
        "status": "ACTIVE",
        "fields": [
          {
            "name": "hero_title",
            "type": "TEXT",
            "label": { "en_us": "Título principal" },
            "required": true,
            "value": "Pide desde nuestra 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
    }
  ]
}
Devuelve todos los canales configurados para el comercio autenticado. Usa este endpoint para mapear canales de Fire spark con superficies de pedido en tu POS o RMS antes de sincronizar menús y enrutar pedidos.
Requiere un access token con el scope channels:read. Consulta Autorizar para obtener un token.

Solicitud

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

Respuesta

La respuesta envuelve un arreglo de canales en data. Cada canal representa una superficie de venta — canales propios como app o web, o agregadores como 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": "App móvil",
      "status": "ACTIVE",
      "cms_template_id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "cms": {
        "id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
        "name": "Landing de la app",
        "entity": "CHANNELS",
        "status": "ACTIVE",
        "fields": [
          {
            "name": "hero_title",
            "type": "TEXT",
            "label": { "en_us": "Título principal" },
            "required": true,
            "value": "Pide desde nuestra 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
    }
  ]
}

Objeto channel

CampoTipoDescripción
idstringIdentificador externo del canal. Solo alfanuméricos, _ y -. 1–64 caracteres. Único por comercio.
uidstring (UUID)Identificador interno de Fire spark.
organization_idstring (UUID)Organización propietaria del comercio.
merchant_idstring (UUID)Comercio al que pertenece el canal.
namestringNombre visible. 1–100 caracteres.
statusstringACTIVE o INACTIVE.
cms_template_idstring (UUID)Plantilla CMS vinculada al canal. null si no hay plantilla asignada.
cmsobjectSolo lectura. null cuando cms_template_id es null. Plantilla CMS resuelta para este canal.
Presente solo cuando cms_template_id no es null. Contiene la plantilla CMS asignada al canal.
CampoTipoDescripción
idstring (UUID)Identificador de la plantilla. Coincide con cms_template_id.
namestringNombre de la plantilla. 1–100 caracteres.
entitystringSiempre CHANNELS en respuestas de canales.
statusstringACTIVE o INACTIVE.
fieldsarrayCampos de la plantilla con sus valores almacenados.
Cada campo en fields:
CampoTipoDescripción
namestringClave del campo.
typestringTEXT, SELECT, IMAGE o LIST.
labelobjectEtiqueta localizada por locale.
requiredbooleanSi el campo es obligatorio.
placeholderstringTexto placeholder opcional.
optionsarrayPara campos SELECT — objetos con label y value.
altTextstringPara campos IMAGE — texto alternativo.
srcstringPara campos IMAGE — URL de la imagen.
hrefstringPara campos IMAGE — URL de enlace opcional.
valuevariesValor almacenado para este canal. Omitido si está vacío.

Mapear canales con tu POS

Relaciona el campo id con el identificador de canal en tu POS o RMS. Fire spark usa este ID externo al componer menús y enrutar pedidos por superficie.
Los valores uid del canal son identificadores estables de Fire spark. Usa id para mapeo entre sistemas y uid al referenciar canales en otras llamadas a la API de Fire spark.

Respuestas de error

EstadoDescripción
401Access token ausente o inválido.
403El token no incluye el scope channels:read.