Produtos Patrocinados
Este endpoint trata-se do retorno de Vitrines de produtos patrocinados da API de Ads. Através deste retorno, é possível visualizar os produtos que serão exibidos na vitrine, assim como seus respectivos dados.
Algumas dicas importantes para a correta implementação do endpoint:
- A chamada de todas as URLs de eventos são obrigatórias na renderização da vitrine
- Todos os produtos retornados nas APIs devem ser impressos nas vitrines
- É necessário o envio do mesmo ID de usuário para o pixel de conversão através do parâmetro GET
cUID
Tipos de Contexto de Página (Placements)
| Placement | Descrição |
|---|---|
home | Para este placement retornamos todos os produtos disponíveis |
category | Para este placement o parâmetro categories é obrigatório. A API retornará produtos publicados da mesma categoria, e caso não encontre, buscará das categorias acima |
product | Para este placement o parâmetro id é obrigatório. A API retornará produtos publicados da mesma categoria do produto enviado (id), e caso não encontre, buscará das categorias acima |
search | Para este placement os parâmetros search, searchResults, searchPage e searchProducts são obrigatórios. |
Query Params
hashstring
hashstringO
hash é utilizado quando a chamada de API for via Frontend. Caso não saiba qual é o seu hash, solicite ao responsável técnico de integração enviando um e-mail para atendimento@linximpulse.com.br.widgetsstringrequired
widgetsstringrequiredResponsável por informar o tipo da vitrine e a quantidade de produtos que serão retornados. Exemplo: Caso seja o tipo
native e a quantidade de produtos seja 24, será passado da seguinte forma: native,24_all.typesstringrequired
typesstringrequiredTipo da vitrine.Exemplo:
native, banner ou text.productTypesstringrequired
productTypesstringrequiredTipos de produto que serão retornados.Exemplo:
brand, seller, half, all.placementstringrequired
placementstringrequiredIdentificador da página que a vitrine está localizada.Exemplo:
home, category, product.custom_placementsstringrequired
custom_placementsstringrequiredNecessário para a identificação da posição da vitrine no dashboard. Por exemplo: Uma vez ocorrido um click na vitrine, esse click será registrado em nosso dashboard como
native - (placement) - (custom_placements). Essa informação torna-se necessária, uma vez que mais de uma vitrine pode ser chamada na mesma página. Como sugestão, recomendamos utilizar este valor com a origem do dispositivo, sendo desktop ou mobile, somado a posição de onde o retorno está inserido.Exemplo: mobile-top, desktop-middle e desktop-bottom.categoriesstring
categoriesstringNomes de categorias da página de categoria, especificadas pelo título da categoria desejada, separadas por
>.Exemplo: tv-e-video > tvs ou informática > notebooksidstring
idstringDeve ser utilizado quando estiver em uma página de produto, passando respectivo ID do produto referência.
campaignIdsstring
campaignIdsstringSe provido, retorna apenas produtos da determinada campanha especificada.
linxcd_idstring
linxcd_idstringIdentificador externo de uma navegação, caso exista na query string da página de produto.
Headers
X-Originstring
X-OriginstringURL da página que será exibido os anúncios.Exemplo:Utilize-o quando a chamada for via Backend.
https://dominio.com.brX-Refererstring
X-RefererstringURL da página que está requisitando esse recurso.Exemplo:Utilize-o quando a chamada for via Backend.
https://dominio.com.brX-Api-Keystring
X-Api-KeystringCaso não saiba qual é a suaUtilize-o quando a chamada for via Backend.
api-key, solicite ao responsável técnico de integração enviando um e-mail para atendimento@linximpulse.com.br.X-User-Idstring
X-User-IdstringTrata-se de uma maneira de identificar a sessão do usuário e consequentemente, apresentar as vitrines com base na navegação daquele usuário.Utilize-o quando a chamada for via Backend.
X-User-Agentstring
X-User-AgentstringIdentifica o agente está requisitando a API.Exemplo:Utilize-o quando a chamada for via Backend.
axios/1.3.5, http/456.X-Client-Ipstring
X-Client-IpstringEndereço IP do agente que está requisitando a API.Utilize-o quando a chamada for via Backend.
Requests
curl
curl -v -G "https://api-ads.percycle.com/showcase" \
-d widgets="native,24_all" \
-d types="native" \
-d productTypes="all" \
-d placement="home" \
-d custom_placements="desktop-top" \
-H "X-Api-Key: XXX" \
-H "X-Client-Ip: XXX.XXX.XX.XXX" \
-H "X-Referer: https://www.exemplo.com" \
-H "X-User-Agent: Mozilla/5.0 (Linux; Android 6.0.1; SM-G935S Build/MMB29K; wv) AppleWebKit/537.36 (KHTML, like Gecko) Version/4.0 Chrome/55.0.2883.91 Mobile Safari/537.36" \
-H "X-User-Id: XXX" \
-H "accept: application/json" \
-H "origin: https://www.exemplo.com.br"
Responses
Success Response
{
"v": 2,
"data": [
{
"widget": "native",
"px": "https://api-ads.percycle.com/v.gif?hash=WIDGET_LONG_STRING",
"data": [
{
"link": "https://api-ads.percycle.com/click/?hash=CLICK_LONG_STRING",
"px": "https://api-ads.percycle.com/v.gif?hash=PRODUCT_LONG_STRING",
"installment": {
"months": 2,
"amount": {
"formattedValue": "R$39,95",
"value": "39.95",
"integerPart": 39,
"decimalPart": 95,
"currencySymbol": "R$",
"currencyCode": "BRL",
"thousandSeparator": ".",
"decimalSeparator": ","
}
},
"hasSuperAds": "0",
"hasRetarget": "1",
"price": {
"formattedValue": "R$99,90",
"value": "99.90",
"integerPart": 99,
"decimalPart": 9,
"currencySymbol": "R$",
"currencyCode": "BRL",
"thousandSeparator": ".",
"decimalSeparator": ","
},
"imageLink": "http://example.product.com.br/1.jpg",
"salePrice": {
"formattedValue": "R$79,90",
"value": "79.90",
"integerPart": 79,
"decimalPart": 9,
"currencySymbol": "R$",
"currencyCode": "BRL",
"thousandSeparator": ".",
"decimalSeparator": ","
},
"customFields": {},
"discount": {
"value": "20",
"symbol": "%",
"formattedValue": "20%"
},
"title": "Título do produto",
"description": "Descrição longa do produto",
"categories": [
"informatica",
"notebooks"
],
"brand": "Marca do produto",
"id": "ID-DO-PRODUTO",
"seller": "publisher"
}
]
}
]
}
