Modo catálogo
Diz se um produto, ou todos os produtos de um seller, são vendidos em modo catálogo (sem carrinho), com o link externo de compra quando existe.
Alguns sellers (lojistas) usam a loja como vitrine de catálogo: não vendem pelo carrinho, e o cliente pede orçamento ou compra em um link externo. Isso é o modo catálogo (catalog_mode), uma opção do seller que vale para todos os produtos dele. As duas rotas desta página servem para a interface decidir qual botão mostrar: "Adicionar ao carrinho", "Comprar agora" (link externo) ou "Solicitar orçamento".
As rotas são públicas e sempre existem, mesmo em lojas que nunca ligaram o modo catálogo (nelas, a resposta é simplesmente "não está em modo catálogo").
/api/v1/storefront/catalog-store/products/{id}PúblicaModo catálogo de um produto
Use na página do produto, onde há um único produto em mãos.
Parâmetros de caminho
iduuidobrigatórioExemplo de requisição
curl "$BASE_URL/api/v1/storefront/catalog-store/products/5e833a7f-1a77-402c-835a-32594350d7a7"Resposta
{
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"catalog_mode": true,
"buy_now_url": "https://exemplo.com.br/comprar/cafeteira"
}{
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"catalog_mode": false,
"buy_now_url": ""
}Campos da resposta
vendor_iduuid"") quando o produto é da própria loja.catalog_modebooleantrue quando o seller está em modo catálogo: o produto não deve ter botão de carrinho.buy_now_urlstringcatalog_mode é false; só use-o se catalog_mode for true. Sem link, mostre "Solicitar orçamento".Erros
| Status | Quando | Corpo |
|---|---|---|
| 404 | Produto inexistente ou apagado. | {"error":"PRODUCT_NOT_FOUND"} |
| 500 | id que não é UUID, ou falha interna. | {"error":"CATALOG_STORE_LOOKUP_FAILED","detail":"..."} |
/api/v1/storefront/catalog-store/vendorsPúblicaSellers em modo catálogo
Devolve os ids de todos os sellers em modo catálogo, de uma vez. Use nas listagens (categoria, busca, página do seller): em vez de uma chamada por cartão de produto, busque este conjunto uma vez e esconda o botão de carrinho dos cartões cujo vendor_id esteja nele.
Exemplo de requisição (sellers)
curl "$BASE_URL/api/v1/storefront/catalog-store/vendors"Resposta (sellers)
{ "vendor_ids": ["94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36"] }Campos da resposta
vendor_idsarrayErros (sellers)
| Status | Quando | Corpo |
|---|---|---|
| 500 | Falha interna. | {"error":"CATALOG_VENDORS_LIST_FAILED","detail":"..."} |