Ficha do produto
Abre um produto com preço do cliente, fotos, opções e disponibilidade, e lê os produtos relacionados e a oferta de compre junto.
A ficha é a tela de decisão de compra. GET /product traz tudo que ela precisa numa chamada só; related e combo são leituras separadas para as faixas "Você também pode gostar" e "Compre junto", que só aparecem se a loja as usa.
Todas as três reaproveitam o preço do cliente do token: preço de tabela, faixas por quantidade e acordo com o representante só vêm para o cliente identificado, e com o preço escondido até o login o produto sai com price_redacted: true e valores zerados.
Abrir o produto
/api/v1/storefront/wa-coex/product/{token}/{productID}PúblicaFicha completa do produto para o cliente do token
Um produto que o seller não entrega no endereço do cliente não dá 404: vem com available: false e outside_delivery_area: true, para a tela explicar por que não pode comprar. Produto inexistente, inativo ou escondido deste canal dá 404.
Parâmetros de caminho
tokenstringobrigatórioproductIDuuidobrigatórioExemplo de requisição
Resposta
Campos da resposta
iduuidnamestringshort_descriptionstringdescriptionstringimage_urlstringgalleryarrayvideosarrayurl, poster, youtube_id, vimeo_id, kind (upload, youtube, vimeo ou live_clip), title.slugstringurlstringprice_centsinteger0 se price_redacted.list_price_centsintegerprice_cents. Ausente quando não há desconto.price_redactedbooleantrue quando a loja esconde preço até o login e o cliente não está identificado.tier_base_centsintegerqty_tiersarraymin_qty, price_cents, percentage_discount, value_per_kg_cents, value_per_unit_cents. A primeira linha é a quantidade 1.availablebooleanbackorderbooleanavailable fica true.backorder_noticestringbackorder_notice_offbooleanavail_sincestringoutside_delivery_areabooleandelivery_destinationstringsale_unitstringun, kg).sale_unit_labelstringallow_fractionalbooleanquantity_stepnumbermin_quantitynumbermax_quantitynumber0 ou ausente: sem limite.vendor_namestringseller_offersarrayproduct_id, vendor_name, price_cents, list_price_cents, available, current.category_iduuidcategory_idsarraybreadcrumbarrayid e name.skustringbarcodestringbrandstringpromo_textstringweight_kgnumberunit_weight_kgnumberunits_per_boxintegersell_unitstringKG, CX, PC).price_per_kg_centsintegerprice_per_unit_centsintegerrep_agreementobjectprice_cents, min_qty, rep_name, valid_until.stock_amountintegerstock_originsarraywarehouse_id, label, qty, available, is_default.specsarrayname e value.optionsarrayid, name, type, required, values, choices (id, value, label, modifier em centavos) e, para múltipla escolha, min_select e max_select.needs_choicebooleancolor_swatchesarraylabel, color.fiscalobjectrating_avgnumberrating_countintegerstickersarrayid, name_admin, name_desktop, name_mobile, style, appearance, display_on.tagsarraydelivery_forecast_daysinteger0 quando desligada.attachmentsarrayid, name, url, mime_type, size_bytes, description.required_productsarrayid, name, image_url, price_cents, price_redacted, available, mandatory.look_tryonbooleanmin_ageinteger0 ou ausente: sem restrição.requires_vehicle_fitmentbooleanrequires_quotebooleancold_chainbooleancontrolled_schedulestringmax_qty_per_orderintegerrequires_cnpjbooleanOs campos de texto vazios e os zeros que não significam nada são omitidos da resposta, então trate qualquer campo opcional como "pode faltar".
Erros
| Status | Quando | Corpo |
|---|---|---|
| 403 | Porta de entrada fechada, ou a loja exige login para ver produtos. | {"error":"entry_required"} ou {"error":"account_required","message":"..."} |
| 404 | Produto inexistente, inativo ou fora deste canal. | {"error":"not_found"} |
| 503 | Catálogo indisponível. | {"error":"catalog unavailable"} |
Ler produtos relacionados
/api/v1/storefront/wa-coex/product/{token}/{productID}/relatedPúblicaProdutos relacionados à ficha aberta
Devolve até 12 produtos. A base é a curadoria do lojista; sem ela, os mais vendidos da mesma categoria. Cada item passa pelas mesmas regras de visibilidade e preço do catálogo. Sempre responde 200: se o produto de origem não está visível neste canal, a lista vem vazia.
Parâmetros de caminho
tokenstringobrigatórioproductIDuuidobrigatórioCampos da resposta
productsarray[] quando não há.Os erros possíveis são o 403 de porta de entrada ou de login.
Ler a oferta de compre junto
/api/v1/storefront/wa-coex/product/{token}/{productID}/comboPúblicaCombo 'compre junto' do produto, com o desconto do combo
O "compre junto" é um combo de produtos com desconto, cadastrado pelo lojista. A rota só devolve oferta se a loja ligou o recurso (wa.pdp.buy_together) e todos os produtos do combo estão disponíveis, são vendidos neste canal, têm preço visível para o cliente e não exigem escolha de opção. Em qualquer outro caso, combo: null.
Parâmetros de caminho
tokenstringobrigatórioproductIDuuidobrigatórioCampos da resposta
comboobjectA oferta, ou null.
bundle_iduuidPOST /cart/{token}/combo.anchor_iduuiditemsarrayproduct (formato da ficha) e qty.total_centsintegercombo_centsintegersavings_centsintegertotal_cents - combo_cents).