> ## 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 marcas

> Lista todas las marcas visibles al cliente del comercio.

Devuelve todas las marcas activas configuradas para el comercio. Usa este endpoint para selectores de marca o para cargar metadatos antes de filtrar con `brand_id`.

> [!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/brands" \
  -H "Authorization: Bearer ACCESS_TOKEN"
```

## Respuesta

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

```json Éxito theme={null}
{
  "data": [
    {
      "id": "0001",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "Burger Co.",
      "status": "ACTIVE",
      "cms_template_id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
      "cms": {
        "id": "d4e5f6a7-b8c9-0123-def4-567890abcdef",
        "name": "Landing de marca",
        "entity": "BRANDS",
        "status": "ACTIVE",
        "fields": [
          {
            "name": "tagline",
            "type": "TEXT",
            "label": { "es_ec": "Eslogan" },
            "required": false,
            "value": "A la parrilla desde 1987"
          }
        ]
      }
    },
    {
      "id": "0002",
      "uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "Taco Co.",
      "status": "ACTIVE",
      "cms_template_id": null,
      "cms": null
    }
  ]
}
```

## Objeto marca

| Campo | Tipo | Descripción |
| - | - | - |
| `id` | string | Identificador externo de la marca. Solo alfanuméricos, `_` y `-`. 1–64 caracteres. Usa este valor en `brand_id` al filtrar tiendas y canales. |
| `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. |
| `status` | string | `ACTIVE` o `INACTIVE`. |
| `cms_template_id` | string (UUID) | Plantilla CMS vinculada a esta marca. `null` cuando no hay plantilla asignada. |
| `cms` | object | Solo lectura. `null` cuando `cms_template_id` es `null`. Si está asignada, la plantilla CMS resuelta con definiciones de campos y valores guardados. |

> [accordion] cms
>
> Presente solo cuando `cms_template_id` no es `null`. Contiene la plantilla CMS resuelta asignada a la marca.
>
> | 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 `BRANDS` en respuestas de marca. |
> | `status` | Sí | string | `ACTIVE` o `INACTIVE`. |
> | `fields` | Sí | array | Campos de la plantilla con sus valores guardados actuales. |
>
> 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 opcional por locale. |
> | `required` | No | boolean | Si el campo es obligatorio. |
> | `placeholder` | No | string | Texto de 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 | varía | Valor guardado actual para esta marca. Se omite cuando está vacío. |

## Respuestas de error

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


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