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

# Respostas rápidas

> Lista as respostas rápidas do negócio para enviá-las por nome

<Info>
  **Endpoint** · `GET /quick-replies`
</Info>

<Note>
  Endpoint de **somente consulta**: devolve informação e não modifica nada. Não é enviado dentro do array `actions` — é chamado direto.
</Note>

Devolve o catálogo de respostas rápidas do negócio, em ordem alfabética e
paginado por cursor. Cada item traz apenas o `name`, e esse é o valor que depois
é passado em `quick_reply.name` ao montar uma ação de envio. O catálogo não
expõe o conteúdo da resposta rápida (o shape de suas `actions` não é incluído):
serve para descobrir quais nomes existem, não para inspecionar o que cada uma
envia.

**Parâmetros**

* `slug` — slug do negócio na rota, sem diferenciar maiúsculas. Deve coincidir com o negócio do token. **Obrigatório**.
* `search` — substring do nome, sem diferenciar maiúsculas (1 a 100 caracteres). O asterisco `*` funciona como curinga e corresponde a qualquer sequência de caracteres; os caracteres `%` e `_` são buscados literalmente. Opcional.
* `cursor` — cursor opaco devolvido pela página anterior em `next_cursor`. Omitir para pedir a primeira página. Não reutilizar cursores entre endpoints diferentes: mesmo que o formato seja idêntico, cada endpoint o interpreta sobre seu próprio conjunto de dados. Opcional.
* `limit` — respostas rápidas por página. Por padrão 20, máximo 100. Opcional.

### Resposta

```json theme={null}
{
  "items": [
    { "name": "Horario de atención" },
    { "name": "Saludo inicial" }
  ],
  "next_cursor": "SG9yYXJpbyBkZSBhdGVuY2lvbnw0MDIz",
  "has_more": true
}
```

`has_more` indica se restam resultados depois desta página. Enquanto for `true`,
repetir a chamada passando o valor de `next_cursor` em `?cursor=` e mantendo os
mesmos filtros. Quando `has_more` for `false`, `next_cursor` vem como `null`.

### Exemplo

É uma leitura pura: pede a primeira página do catálogo para ver quais nomes
estão disponíveis. A chamada não envia nenhuma mensagem nem modifica nenhuma
conversa — apenas devolve nomes, que depois alimentam uma ação de envio.

```bash theme={null}
curl -X GET "https://app.1to1.ai/api/v1/public/{slug}/quick-replies?search=salu&limit=20" \
  -H "Authorization: Bearer sk_1to1_sua_api_key"
```

A página seguinte, com o cursor devolvido pela resposta anterior:

```bash theme={null}
curl -X GET "https://app.1to1.ai/api/v1/public/{slug}/quick-replies?search=salu&limit=20&cursor=SG9yYXJpbyBkZSBhdGVuY2lvbnw0MDIz" \
  -H "Authorization: Bearer sk_1to1_sua_api_key"
```

### Erros

| Código                    | Status | Quando                                                                                                    |
| ------------------------- | ------ | --------------------------------------------------------------------------------------------------------- |
| `INVALID_REQUEST`         | 400    | Query params inválidos (por exemplo, `limit` fora do intervalo).                                          |
| `INVALID_CURSOR`          | 400    | O `cursor` está corrompido ou não corresponde a este endpoint.                                            |
| `INVALID_API_TOKEN`       | 401    | Token ausente, malformado ou inválido.                                                                    |
| `TOKEN_BUSINESS_MISMATCH` | 403    | O slug da rota não coincide com o negócio do token.                                                       |
| `RATE_LIMIT_EXCEEDED`     | 429    | Limite de requisições excedido. Os headers `Retry-After` e `X-RateLimit-*` indicam quando tentar de novo. |
| `UNKNOWN_ERROR`           | 500    | Erro inesperado do servidor.                                                                              |

Veja o catálogo completo em [Erros](/pt/errors).

O `name` que esta consulta devolve é exatamente o consumido pelas ações de
envio: [Enviar mensagem](/pt/action-groups/send-message) no modo resposta rápida
(`quick_reply: { "name": ... }`) e [Enviar resposta rápida ou
template](/pt/action-groups/send-quick-reply-or-template), que envia a resposta
rápida com a janela de 24h aberta e o template se estiver fechada. O nome é
comparado sem diferenciar maiúsculas, mas é melhor copiá-lo exatamente como vem
do catálogo.
