# Listar produtos

URL: https://staging.pagpolar.com/docs/referencia/produtos/list-products

`GET /products`

## Autenticação

- Token Bearer no header `Authorization` (esquema `BearerAuth`). Token de acesso devolvido por POST /auth/token. Envie como "Authorization: Bearer <token>". Vale 24 horas.

## Parâmetros de consulta

| Parâmetro | Tipo | Obrigatório | Descrição |
| --- | --- | --- | --- |
| `page` | inteiro | não | Número da página, começando em 1. |
| `per_page` | inteiro | não | Itens por página, de 1 a 100. |
| `is_active` | booleano | não | `true` lista só os ativos; `false`, só os inativos. Sem o filtro, lista os dois. |
| `name` | texto | não | Nome do produto. Busca por parte do texto, sem diferenciar maiúsculas de minúsculas. |
| `type` | enum | não | Tipo do produto. Planos (`SUBSCRIPTION`) não aparecem aqui: use `GET /plans`. Valores: `DIGITAL`, `PHYSICAL`, `PACKAGE`. |

## Respostas

### 200 — Lista de produtos

| Campo | Tipo | Obrigatório | Descrição |
| --- | --- | --- | --- |
| `data` | [lista de Produto](/docs/referencia/entidades/produto) | não | — |
| `meta` | objeto | não | — |
| `meta.page` | inteiro | não | Exemplo: `1`. |
| `meta.per_page` | inteiro | não | Exemplo: `25`. |
| `meta.total` | inteiro | não | Exemplo: `143`. |
| `meta.total_pages` | inteiro | não | Exemplo: `6`. |

## Erros

| Status | Descrição |
| --- | --- |
| `401` | Token ausente, inválido ou expirado, ou credencial revogada ou expirada. Chame POST /auth/token para obter um token novo. |
| `403` | IP não autorizado |
| `429` | Limite de requisições excedido |

Lista completa de códigos e como tratá-los: [Erros](/docs/guias/fundamentos/erros).
