Respostas prontas
Modelos de texto que o atendente insere com um clique: criar, listar, ordenar, editar e excluir.
Respostas prontas são textos que a equipe usa o tempo todo ("Atendemos de segunda a sexta..."). Cada resposta tem título e texto. Quem não está vinculado a um seller enxerga e edita só as respostas da loja; um usuário vinculado a um seller enxerga e edita só as desse seller. Cada escopo comporta até 200 respostas.
Listar
Só as ativas, ordenadas por sort_order e depois por título.
/api/v1/admin/whatsapp/canned-repliesAdminLista as respostas prontas do seu escopo
Exemplo de requisição (Listar)
curl "$BASE_URL/api/v1/admin/whatsapp/canned-replies" \
-H "Authorization: Bearer $TOKEN"Resposta (Listar)
{
"replies": [
{
"id": "bbaa8f20-98c7-4c97-ac5e-ece63b4c0b0b",
"title": "Horário de atendimento",
"body": "Atendemos de segunda a sexta, das 9h às 18h.",
"sort_order": 0,
"active": true,
"created_at": "2026-05-15T18:29:34Z",
"updated_at": "2026-05-15T18:29:34Z",
"created_by": "9b7bfd43-e9f8-4365-b6e1-15bccdad64ee"
}
],
"total": 1
}Campos da resposta
repliesarrayRespostas.
idstringvendor_idstringtitlestringbodystringsort_orderintegeractivebooleantrue nas listagens: excluídas não aparecem.created_atstringupdated_atstringcreated_bystringtotalintegerErros (Listar)
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O módulo WhatsApp Commerce está desligado na loja, o usuário não é administrador ou não tem o privilégio exigido. | {"error":"module_disabled","module":"whatsapp-commerce"} ou {"error":"insufficient privileges","required":"manage_orders"} ou {"error":"admin access required"} |
Criar
Cria a resposta no escopo do usuário.
/api/v1/admin/whatsapp/canned-repliesAdminCria uma resposta pronta
Corpo da requisição
titlestringobrigatóriobodystringobrigatóriosort_orderintegerpadrão: 0Exemplo de requisição (Criar)
curl -X POST "$BASE_URL/api/v1/admin/whatsapp/canned-replies" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Horário de atendimento",
"body": "Atendemos de segunda a sexta, das 9h às 18h."
}'Resposta (Criar)
{
"id": "bbaa8f20-98c7-4c97-ac5e-ece63b4c0b0b",
"title": "Horário de atendimento",
"body": "Atendemos de segunda a sexta, das 9h às 18h.",
"sort_order": 0,
"active": true,
"created_at": "2026-05-15T18:29:34Z",
"updated_at": "2026-05-15T18:29:34Z",
"created_by": "9b7bfd43-e9f8-4365-b6e1-15bccdad64ee"
}Campos da resposta
idstringvendor_idstringtitlestringbodystringsort_orderintegeractivebooleantrue nas listagens: excluídas não aparecem.created_atstringupdated_atstringcreated_bystringErros (Criar)
| Status | Quando | Corpo |
|---|---|---|
| 400 | Título ou texto vazio ou acima do limite, limite de 200 respostas atingido, ou corpo inválido. | {"error":"whatsapp canned reply: title required"} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O módulo WhatsApp Commerce está desligado na loja, o usuário não é administrador ou não tem o privilégio exigido. | {"error":"module_disabled","module":"whatsapp-commerce"} ou {"error":"insufficient privileges","required":"manage_orders"} ou {"error":"admin access required"} |
Reordenar
Recebe os ids na ordem desejada: o primeiro vira sort_order 0, o segundo 1, e assim por diante, numa só transação. Ids de outro escopo são ignorados em silêncio.
/api/v1/admin/whatsapp/canned-replies/reorderAdminDefine a ordem da lista
Corpo da requisição
idsarrayobrigatórioExemplo de requisição (Reordenar)
curl -X PUT "$BASE_URL/api/v1/admin/whatsapp/canned-replies/reorder" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"ids": [
"bbaa8f20-98c7-4c97-ac5e-ece63b4c0b0b"
]
}'Resposta (Reordenar)
{
"ok": true,
"count": 1
}Campos da resposta
okbooleantrue.countintegerErros (Reordenar)
| Status | Quando | Corpo |
|---|---|---|
| 400 | Corpo inválido ou mais de 200 ids. | {"error":"whatsapp canned reply: too many ids (201 > 200)"} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O módulo WhatsApp Commerce está desligado na loja, o usuário não é administrador ou não tem o privilégio exigido. | {"error":"module_disabled","module":"whatsapp-commerce"} ou {"error":"insufficient privileges","required":"manage_orders"} ou {"error":"admin access required"} |
Editar
Atualização parcial: só os campos enviados mudam. active: false esconde a resposta sem excluí-la.
/api/v1/admin/whatsapp/canned-replies/{id}AdminAltera uma resposta pronta
Parâmetros de caminho
idstringobrigatórioCorpo da requisição
titlestringbodystringsort_orderintegeractivebooleanExemplo de requisição (Editar)
curl -X PUT "$BASE_URL/api/v1/admin/whatsapp/canned-replies/bbaa8f20-98c7-4c97-ac5e-ece63b4c0b0b" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"title": "Horário"
}'Resposta (Editar)
{
"id": "bbaa8f20-98c7-4c97-ac5e-ece63b4c0b0b",
"title": "Horário",
"body": "Atendemos de segunda a sexta, das 9h às 18h.",
"sort_order": 0,
"active": true,
"created_at": "2026-05-15T18:29:34Z",
"updated_at": "2026-05-15T18:29:34Z",
"created_by": "9b7bfd43-e9f8-4365-b6e1-15bccdad64ee"
}Campos da resposta
idstringvendor_idstringtitlestringbodystringsort_orderintegeractivebooleantrue nas listagens: excluídas não aparecem.created_atstringupdated_atstringcreated_bystringErros (Editar)
| Status | Quando | Corpo |
|---|---|---|
| 400 | Título ou texto em branco, ou corpo inválido. | {"error":"whatsapp canned reply: title cannot be empty"} |
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O módulo WhatsApp Commerce está desligado na loja, o usuário não é administrador ou não tem o privilégio exigido. | {"error":"module_disabled","module":"whatsapp-commerce"} ou {"error":"insufficient privileges","required":"manage_orders"} ou {"error":"admin access required"} |
| 404 | Resposta inexistente, excluída ou de outro escopo. | {"error":"canned reply not found"} |
Excluir
Marca como inativa. Responde 204 sem corpo.
/api/v1/admin/whatsapp/canned-replies/{id}AdminExclui (logicamente) uma resposta pronta
Parâmetros de caminho
idstringobrigatórioExemplo de requisição (Excluir)
curl -X DELETE "$BASE_URL/api/v1/admin/whatsapp/canned-replies/bbaa8f20-98c7-4c97-ac5e-ece63b4c0b0b" \
-H "Authorization: Bearer $TOKEN"Resposta (Excluir)
HTTP/1.1 204 No ContentErros (Excluir)
| Status | Quando | Corpo |
|---|---|---|
| 401 | Sem token, token inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O módulo WhatsApp Commerce está desligado na loja, o usuário não é administrador ou não tem o privilégio exigido. | {"error":"module_disabled","module":"whatsapp-commerce"} ou {"error":"insufficient privileges","required":"manage_orders"} ou {"error":"admin access required"} |
| 404 | Resposta inexistente ou de outro escopo. | {"error":"canned reply not found"} |