> ## Documentation Index
> Fetch the complete documentation index at: https://firespark.cloud/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Listar canales

> Lista todos los canales de venta visibles al cliente del comercio.

Devuelve todos los canales activos configurados para el comercio. Usa este endpoint para selectores de canal o para cargar metadatos antes de configurar menús y flujos de checkout.

> [!NOTE]
>
> Requiere un access token de Fire spark obtenido mediante [intercambio de
> token](https://firespark.cloud/docs/es/storefront-api/oauth/exchange/post.md). El token limita las
> solicitudes al cliente autenticado y al comercio correspondiente.

## Solicitud

```bash theme={null}
curl "https://firespark.cloud/api/storefront/v1/channels" \
  -H "Authorization: Bearer ACCESS_TOKEN"
```

## Respuesta

La respuesta envuelve un arreglo de canales en `data`. Solo se incluyen canales `ACTIVE`.

```json Éxito theme={null}
{
  "data": [
    {
      "id": "app",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "App móvil",
      "type": "APP",
      "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": "web",
      "uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "Pedidos web",
      "type": "WEB",
      "status": "ACTIVE",
      "cms_template_id": null,
      "cms": null
    }
  ]
}
```

## Objeto channel

| Campo | Tipo | Descripción |
| - | - | - |
| `id` | string | Identificador externo del canal. Solo alfanuméricos, `_` y `-`. 1–64 caracteres. |
| `uid` | string (UUID) | Identificador interno de Fire spark. |
| `merchant_id` | string (UUID) | Identificador de comercio en Fire spark. |
| `name` | string | Nombre visible. 1–100 caracteres. |
| `type` | string | Superficie del canal. Uno de `APP`, `WEB`, `KIOSK`, `POS`, `CALL_CENTER` o `AGGREGATOR`. |
| `status` | string | `ACTIVE` o `INACTIVE`. |
| `cms_template_id` | string (UUID) | Plantilla CMS vinculada al canal. `null` si no hay plantilla asignada. |
| `cms` | object | Solo lectura. `null` cuando `cms_template_id` es `null`. Plantilla CMS resuelta para este canal. |

> [accordion] cms
>
> Presente solo cuando `cms_template_id` no es `null`. Contiene la plantilla CMS asignada al canal.
>
> | Campo | Requerido | Tipo | Descripción |
> | - | - | - | - |
>
> \| `id` | Sí | string (UUID) | Identificador de la plantilla. Coincide con `cms_template_id`. |
> \| `name` | Sí | string | Nombre de la plantilla. 1–100 caracteres. |
> \| `entity` | Sí | string | Siempre `CHANNELS` en respuestas de canales. |
> \| `status` | Sí | string | `ACTIVE` o `INACTIVE`. |
> \| `fields` | Sí | array | Campos de la plantilla con sus valores almacenados. |
>
> Cada campo en `fields`:
>
> | Campo | Requerido | Tipo | Descripción |
> | - | - | - | - |
>
> \| `name` | Sí | string | Clave del campo. |
> \| `type` | Sí | string | `TEXT`, `SELECT`, `IMAGE` o `LIST`. |
> \| `label` | No | object | Etiqueta localizada por locale. |
> \| `required` | No | boolean | Si el campo es obligatorio. |
> \| `placeholder` | No | string | Texto placeholder opcional. |
> \| `options` | No | array | Para campos `SELECT` — objetos con `label` y `value`. |
> \| `altText` | No | string | Para campos `IMAGE` — texto alternativo. |
> \| `src` | No | string | Para campos `IMAGE` — URL de la imagen. |
> \| `href` | No | string | Para campos `IMAGE` — URL de enlace opcional. |
> \| `value` | No | varies | Valor almacenado para este canal. Omitido si está vacío. |

## Respuestas de error

| Estado | Descripción |
| - | - |
| `401` | Access token ausente o inválido. |
| `403` | El token no tiene acceso a los canales de este comercio. |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.