Pular para o conteúdo

Ler o catálogo

GET/v1/instances/{id}/catalogdesde M12token da instância ou admin

Quando usar

Uma página de produtos do catálogo do próprio número (sem jid) ou do catálogo público de outra empresa (jid: número com DDI). Preços em price_amount_1000 (milésimos da moeda, a convenção do WhatsApp: R$ 12,50 = 12500), price na unidade e price_text formatado em BRL. catalog_link (https://wa.me/c/<número>) compartilha o catálogo inteiro: envie como texto, com prévia de link. image_path baixa a primeira foto pelo LiteZap. Lido pela proxy da instância, com cache de 5 minutos e limite de 30 leituras novas por minuto por instância. O endpoint público pode omitir produtos ocultos ou em análise. Catálogo vazio: products: []; número sem catálogo: 404 catalog_not_found.

Autenticação

Aceita o token da instância (só a própria instância) ou o token admin. Um token de outra instância recebe 403 forbidden (ou 404 not_found em webhooks de outra instância).

Parâmetros

Caminho

NomeTipoDescrição
idobrigatóriostringId da instância (inst_...).

Query

NomeTipoDescrição
jidstringNúmero ou JID (…@s.whatsapp.net) da empresa; padrão, o próprio número.
limitintegerProdutos por página (padrão 30, máximo 50). (padrão 30)
cursorstringnext_cursor da página anterior (opaco).

Exemplo

Janela do terminal
curl -s "$LITEZAP_URL/v1/instances/$ID/catalog" \
-H "Authorization: Bearer $LITEZAP_TOKEN"

Nos exemplos, LITEZAP_URL é a URL base (ex.: http://localhost:8787) e o token vem deLITEZAP_TOKEN (instância) ou LITEZAP_ADMIN_TOKEN.

Resposta

200 Uma página do catálogo.

Campos de Catalog
ownerstring
catalog_linkstringhttps://wa.me/c/<número>: envie como texto para compartilhar o catálogo inteiro.
productsCatalogProduct[]
next_cursorstring
cachedboolean
{
"owner": "[email protected]",
"catalog_link": "https://wa.me/c/5511999990000",
"products": [
{
"id": "8364718273645",
"name": "Camiseta",
"description": "Algodão",
"price": 59.9,
"price_amount_1000": 59900,
"currency": "BRL",
"price_text": "R$ 59,90",
"hidden": false,
"availability": "in_stock",
"review_status": "approved",
"image_count": 1,
"image_path": "/v1/instances/inst_7f3a9c2e5b1d4086/catalog/products/8364718273645/image?jid=5511999990000"
}
],
"next_cursor": "",
"cached": false
}

Erros

CódigoHTTPRetentávelO que fazer
validation_failed400nãoCorrija o corpo ou os parâmetros; a message diz o campo.
unauthorized401nãoEnvie Authorization: Bearer <token> válido.
forbidden403nãoUse o token certo (admin, ou o da própria instância).
catalog_not_found404não
rate_limited429simEspere e tente de novo com backoff.
upstream_changed502não
catalog_unavailable503não

Todo erro usa o envelope {"error":{"code","message","retryable"}}. Tabela completa em Erros.

Equivalente na Z-API: Listar produtos. Veja Migrar da Z-API.

Outras operações de Catálogo e pedidos: Ler as coleções · Ler um produto · Baixar a foto de um produto · Pedidos recebidos · Detalhes de um pedido