> ## 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 opciones de fulfillment

> Lista todos los modos de fulfillment visibles al cliente del comercio.

Devuelve todas las opciones de fulfillment activas configuradas para el comercio. Usa este endpoint para selectores de fulfillment o para cargar metadatos antes de configurar 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.

## Parámetros de consulta

| Parámetro | Requerido | Descripción |
| - | - | - |
| `channel_id` | No | Identificador externo del canal. Si se indica, solo se devuelven fulfillments cuyos `channel_ids` lo incluyan. |

## Solicitud

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

## Respuesta

La respuesta envuelve un arreglo de objetos de fulfillment en `data`. Solo se incluyen opciones `ACTIVE`.

```json Éxito theme={null}
{
  "data": [
    {
      "id": "delivery",
      "uid": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
      "brand_id": null,
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "Delivery",
      "type": "DELIVERY",
      "status": "ACTIVE"
    },
    {
      "id": "pickup",
      "uid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
      "brand_id": null,
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "Pickup",
      "type": "PICKUP",
      "status": "ACTIVE"
    },
    {
      "id": "drive-thru",
      "uid": "c3d4e5f6-a7b8-9012-cdef-123456789012",
      "brand_id": null,
      "merchant_id": "22222222-2222-2222-2222-222222222222",
      "name": "Drive-thru",
      "type": "DRIVE_THRU",
      "status": "ACTIVE"
    }
  ]
}
```

## Objeto fulfillment

| Campo | Tipo | Descripción |
| - | - | - |
| `id` | string | Identificador externo de fulfillment. Solo alfanuméricos, `_` y `-`. 1–64 caracteres. |
| `uid` | string (UUID) | Identificador interno de Fire spark. |
| `brand_id` | string \| null | Identificador externo de marca. `null` cuando el recurso no está ligado a una marca. |
| `merchant_id` | string (UUID) | Identificador de comercio en Fire spark. |
| `name` | string | Nombre visible. 1–100 caracteres. |
| `type` | string | Código del tipo de fulfillment. 1–100 caracteres. Valores comunes: `DELIVERY`, `PICKUP`, `DINE_IN`. También se admiten códigos personalizados como `DRIVE_THRU`. |
| `status` | string | `ACTIVE` o `INACTIVE`. |
| `checkout_release` | boolean | `true` si el workflow tiene un nodo Release checkout. El checkout debe esperar `order.changed` / `checkout_state`. |

> [!TIP]
>
> Las reglas a nivel tienda — precios, zonas de cobertura, disponibilidad e
> instrucciones — se devuelven en [tiendas](https://firespark.cloud/docs/es/storefront-api/stores/get.md) bajo
> el objeto `fulfillment` de cada tienda, indexado por `type`. Usa este
> endpoint para definiciones del comercio; usa tiendas para lo que cada
> ubicación puede cumplir.

## Respuestas de error

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


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