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

# Listar cupons

> Lista os cupons de desconto da conta

Retorna os cupons de desconto da conta, paginados. Cupons são da **conta** — quando `campaign_id` está preenchido, o cupom vale apenas para aquela ação; quando `null`, vale para todas.

## Query params

<ParamField query="page" type="number" default="1">Página.</ParamField>
<ParamField query="limit" type="number" default="20">Itens por página (máx. 100).</ParamField>
<ParamField query="is_active" type="boolean">Filtra por status.</ParamField>
<ParamField query="campaign_id" type="string">Filtra cupons restritos a uma ação (UUID).</ParamField>

## Resposta

<ResponseField name="data.coupons" type="array">
  <Expandable title="Campos do cupom">
    <ResponseField name="id" type="string">Identificador único (UUID).</ResponseField>
    <ResponseField name="code" type="string">Código do cupom (sempre em MAIÚSCULAS).</ResponseField>
    <ResponseField name="discount_type" type="string">`percentage`, `fixed` ou `bundle` (preço fechado).</ResponseField>
    <ResponseField name="discount_value" type="number">Para `percentage`: percentual (1–100). Para `fixed`: desconto em **centavos**. Para `bundle`: preço total fechado em **centavos**.</ResponseField>
    <ResponseField name="bundle_quantity" type="number | null">Quantidade exata de cotas exigida quando `bundle`; `null` nos demais.</ResponseField>
    <ResponseField name="campaign_id" type="string | null">Ação à qual o cupom está restrito; `null` = todas.</ResponseField>
    <ResponseField name="max_uses" type="number | null">Limite de usos; `null` = ilimitado.</ResponseField>
    <ResponseField name="current_uses" type="number">Usos já realizados.</ResponseField>
    <ResponseField name="min_order_value" type="number | null">Valor mínimo do pedido em **centavos**.</ResponseField>
    <ResponseField name="valid_from" type="string | null">Início da validade (ISO 8601, UTC).</ResponseField>
    <ResponseField name="valid_until" type="string | null">Fim da validade (ISO 8601, UTC).</ResponseField>
    <ResponseField name="is_active" type="boolean">Se o cupom está ativo.</ResponseField>
  </Expandable>
</ResponseField>

<RequestExample>
  ```bash curl theme={null}
  curl -u "pb_xxx:sk_xxx" \
    "https://api.sortify.com.br/v1/discount-coupons?page=1&limit=20&is_active=true"
  ```
</RequestExample>
