Pedidos de mudança
Fila de pedidos dos sellers para mudar seus fluxos, e a rota que dá um fluxo próprio a um seller.
Num marketplace, o seller (lojista) não edita a estrutura do fluxo sozinho: ele pede a mudança e o administrador da loja decide. Estas rotas são o lado do administrador.
Listar pedidos de mudança
Sellers podem pedir mudanças na estrutura do fluxo que usam (por exemplo, uma etapa a mais). Esses pedidos chegam a esta fila para o administrador da loja analisar. A lista traz até 100 pedidos, os mais novos primeiro.
/api/v1/admin/whatsapp/flow-requestsAdminLista os pedidos de mudança de fluxo dos sellers
Parâmetros de consulta
statusstringpadrão: pendingpendingapprovedrejectedappliedallall traz todos. Omitido, traz só os pending.vendor_iduuidExemplo de requisição (Listar pedidos)
curl "$BASE_URL/api/v1/admin/whatsapp/flow-requests?status=all" \
-H "Authorization: Bearer $TOKEN"Resposta (Listar pedidos)
{
"requests": [
{
"id": "1be48fc0-0376-453c-942d-4847d2c20a21",
"vendor_id": "9d9d9d56-eb43-4719-889d-055632f7c7da",
"flow_id": "00d2a290-8dd8-4583-8f43-271461e01dfd",
"title": "Adicionar etapa de cupom",
"description": "Perguntar se o cliente tem cupom antes de fechar o pedido.",
"status": "pending",
"created_by": "a1a25b87-5e32-4439-b3df-f98eb03b6434",
"created_at": "2026-10-11T21:59:32.462039Z",
"updated_at": "2026-10-11T21:59:32.462039Z"
}
]
}Campos da resposta
requestsarrayPedidos de mudança.
iduuidvendor_iduuidflow_iduuidtitlestringdescriptionstringstatusstringpendingapprovedrejectedappliedadmin_notesstringcreated_byuuidreviewed_byuuidreviewed_atstringcreated_atstringupdated_atstringErros (Listar pedidos)
| 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_settings"} ou {"error":"admin access required"} |
| 500 | Falha ao consultar (inclusive vendor_id que não é UUID). | {"error":"..."} |
Revisar um pedido
Registra a decisão sobre um pedido: aprovado, rejeitado, aplicado (a mudança já foi feita) ou de volta a pendente. Grava quem revisou e quando.
/api/v1/admin/whatsapp/flow-requests/{id}/reviewAdminRegistra a decisão sobre um pedido de mudança
Parâmetros de caminho
iduuidobrigatórioCorpo da requisição
statusstringobrigatórioapprovedrejectedappliedpendingadmin_notesstringExemplo de requisição (Revisar um pedido)
curl -X POST "$BASE_URL/api/v1/admin/whatsapp/flow-requests/1be48fc0-0376-453c-942d-4847d2c20a21/review" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"status": "approved",
"admin_notes": "Vamos incluir na próxima revisão."
}'Resposta (Revisar um pedido)
{
"id": "1be48fc0-0376-453c-942d-4847d2c20a21",
"vendor_id": "9d9d9d56-eb43-4719-889d-055632f7c7da",
"flow_id": "00d2a290-8dd8-4583-8f43-271461e01dfd",
"title": "Adicionar etapa de cupom",
"description": "Perguntar se o cliente tem cupom antes de fechar o pedido.",
"status": "approved",
"created_by": "a1a25b87-5e32-4439-b3df-f98eb03b6434",
"created_at": "2026-10-11T21:59:32.462039Z",
"updated_at": "2026-10-11T21:59:32.462039Z",
"admin_notes": "Vamos incluir na próxima revisão.",
"reviewed_by": "a1a25b87-5e32-4439-b3df-f98eb03b6434",
"reviewed_at": "2026-10-11T22:10:00Z"
}Campos da resposta
iduuidvendor_iduuidflow_iduuidtitlestringdescriptionstringstatusstringpendingapprovedrejectedappliedadmin_notesstringcreated_byuuidreviewed_byuuidreviewed_atstringcreated_atstringupdated_atstringErros (Revisar um pedido)
| Status | Quando | Corpo |
|---|---|---|
| 400 | Corpo que não é JSON, status inválido, pedido inexistente ou id que não é UUID. | {"error":"invalid status \"x\""} ou {"error":"sql: no rows in result set"} |
| 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_settings"} ou {"error":"admin access required"} |
Garantir um fluxo próprio para um seller
Se o seller ainda não tem um fluxo seu, instala nele o pacote "Varejo B2C completo" (um conjunto pronto de fluxos). Se já tem um fluxo ativo próprio, devolve o id dele sem criar nada. Útil logo depois de conectar o número do seller.
/api/v1/admin/whatsapp/vendors/{vendor_id}/ensure-flowAdminGarante que o seller tenha um fluxo próprio
Parâmetros de caminho
vendor_iduuidobrigatórioExemplo de requisição (Garantir fluxo do seller)
curl -X POST "$BASE_URL/api/v1/admin/whatsapp/vendors/9d9d9d56-eb43-4719-889d-055632f7c7da/ensure-flow" \
-H "Authorization: Bearer $TOKEN"Resposta (Garantir fluxo do seller)
{
"flow_id": "fa4b0c91-2883-43c6-94ef-86e5b540a2aa",
"vendor_id": "9d9d9d56-eb43-4719-889d-055632f7c7da"
}Campos da resposta
flow_iduuidvendor_iduuidErros (Garantir fluxo do seller)
| Status | Quando | Corpo |
|---|---|---|
| 400 | vendor_id que não é UUID, módulo desligado ou falha ao instalar. | {"error":"..."} |
| 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_settings"} ou {"error":"admin access required"} |