API Shopee em 2026: Produtos, Preços e Estoque
Quer testar? Comece com 100 créditos iniciais, sem cartão.
Ir para o DashboardSe você procura uma API da Shopee, primeiro defina o trabalho: operar uma loja, participar do programa de afiliados ou analisar páginas públicas. Para produtos, preços, estoque, sellers e resultados de busca da Shopee Brasil, a GeckoAPI recebe uma URL ou keyword e retorna JSON por endpoints PDP e PLP. Para pedidos e operações autorizadas, use a Open Platform; para links e comissão, use a Affiliate Open API.
Este guia foi verificado em 27 de julho de 2026 e cobre a escolha da integração, a primeira chamada, os campos disponíveis, custos, latência, falhas e um desenho seguro para monitoramento.
Qual API da Shopee usar?
As três opções abaixo não são concorrentes diretas. Cada uma existe para um tipo de autorização e resultado.
| Opção | Use quando | Autenticação | Resultado |
|---|---|---|---|
| Shopee Open Platform | Você precisa operar uma loja autorizada e integrar processos ligados à conta | Aplicação e autorização conforme o programa oficial | Operações e dados de seller permitidos pela plataforma |
| Shopee Affiliate Open API | Seu caso pertence ao programa de afiliados | AppId e secret do programa | Recursos de catálogo, atribuição e comissão previstos pelo programa |
| GeckoAPI para Shopee | Você precisa estruturar páginas públicas para pricing, catálogo, BI ou monitoramento | Chave da GeckoAPI no seu backend | Produto e busca da Shopee Brasil em JSON |
Em resumo:
- operação de loja: Open Platform;
- afiliados: Affiliate Open API;
- inteligência sobre páginas públicas: GeckoAPI.
A GeckoAPI é independente e não é afiliada, patrocinada ou endossada pela Shopee.
O que os endpoints da GeckoAPI cobrem
Existem dois contratos documentados para Shopee Brasil:
| Endpoint | Entrada | Uso principal | Documentação |
|---|---|---|---|
| PDP | URL pública de produto | Aprofundar produto, seller, estoque, avaliações, variações, mídia e frete | Shopee PDP |
| PLP | Keyword ou URL pública /search | Descobrir produtos, preços, sellers e sinais de catálogo em uma busca | Shopee PLP |
PDP significa Product Detail Page, a página de um produto. PLP significa Product Listing Page, uma página de busca ou listagem.
Uma arquitetura prática usa PLP como radar e PDP como ficha detalhada:
keywords
-> Shopee PLP
-> normalização e deduplicação
-> seleção dos itens relevantes
-> Shopee PDP
-> snapshots no seu banco
-> alertas, BI ou automação
Como autenticar sem expor sua chave
Envie a chave no header Authorization a partir do seu servidor:
Authorization: Bearer SUA_CHAVE
Não coloque a chave em código JavaScript enviado ao navegador, aplicativos públicos, exemplos versionados ou logs. Se sua interface roda no browser, ela deve chamar seu backend, e seu backend chama a GeckoAPI.
Exemplo 1: buscar produtos por keyword com Shopee PLP
O request mínimo para uma busca é:
curl -X POST "https://api.geckoapi.com.br/v1/extract" \
-H "Authorization: Bearer SUA_CHAVE" \
-H "Content-Type: application/json" \
-d '{
"target": "shopee.com.br",
"type": "plp",
"keyword": "notebook gamer"
}'
Também é possível informar uma URL pública de busca:
{
"target": "shopee.com.br",
"type": "plp",
"url": "https://shopee.com.br/search?keyword=notebook%20gamer"
}
O contrato PLP atual aceita keyword ou URL. O parâmetro page não é suportado, mesmo que alguns campos de continuação apareçam no payload. Portanto, não programe um loop supondo que page: 2 será aceito; use a documentação Shopee PLP como fonte de verdade.
Resposta PLP reduzida
Este trecho foi reduzido a partir do exemplo publicado; IDs e valores servem para mostrar o contrato:
{
"requestId": "f38d98f0-8d1b-42a7-9a15-8f75d20ac1e7",
"executionId": "5afac754-6361-4f84-8a78-80b8dc6ce6dd",
"data": {
"source": "shopee.com.br",
"type": "plp",
"query": "notebook gamer",
"totalResults": 6167,
"items": [
{
"itemId": "58254322220",
"shopId": "387363734",
"name": "Notebook Dell 3410 Core i5",
"currency": "BRL",
"price": 1784.15,
"regularPrice": 2099,
"discountPercentage": 15,
"stock": 12,
"soldCount": 254,
"sellerName": "Loja Dell Usados",
"sellerIsPreferredPlus": true,
"freeShipping": true,
"aggregateRating": {
"rating": 5,
"reviewCount": 7
}
}
]
}
}
Exemplo 2: consultar uma página de produto com Shopee PDP
Para enriquecer um item específico, envie a URL pública do produto:
import requests
response = requests.post(
"https://api.geckoapi.com.br/v1/extract",
headers={"Authorization": "Bearer SUA_CHAVE"},
json={
"target": "shopee.com.br",
"type": "pdp",
"url": "https://shopee.com.br/product/1157985386/23897901346",
},
timeout=90,
)
response.raise_for_status()
payload = response.json()
if payload.get("notFound"):
print("Produto não encontrado")
else:
product = payload["data"]
print(product["name"], product.get("stock"))
O timeout de 90 segundos é intencional: a documentação informa que algumas execuções de Shopee PDP e PLP podem levar até 1 minuto.
Resposta PDP reduzida
{
"requestId": "66666666-1111-4111-8111-666666666666",
"executionId": "66666666-2222-4222-8222-666666666666",
"data": {
"name": "Relógio Technos Executive",
"itemId": "23897901346",
"shopId": "1157985386",
"sellerName": "Zilla Relógios",
"sellerLocation": "Paiçandu, Paraná",
"sellerRating": 4.931507,
"sellerIsOfficialShop": false,
"currency": "BRL",
"availability": "InStock",
"stock": 10,
"soldCount": 124,
"aggregateRating": {
"ratingValue": 4.96875,
"reviewCount": 32
},
"tierVariations": [
{
"name": "Cor",
"options": ["Preto", "Marrom"]
}
]
}
}
Exemplo 3: chamar Shopee PLP com JavaScript
Este exemplo deve rodar em Node.js, uma API route ou outra superfície server-side:
const response = await fetch("https://api.geckoapi.com.br/v1/extract", {
method: "POST",
headers: {
Authorization: "Bearer SUA_CHAVE",
"Content-Type": "application/json",
},
body: JSON.stringify({
target: "shopee.com.br",
type: "plp",
keyword: "notebook gamer",
}),
});
if (!response.ok) {
throw new Error(`GeckoAPI respondeu HTTP ${response.status}`);
}
const payload = await response.json();
console.log(payload.data.items);
Campos mais úteis
O contrato completo está nas páginas PDP e PLP. Para modelar um pipeline, estes grupos costumam ser os mais importantes:
| Grupo | Campos | Observação |
|---|---|---|
| Identidade | itemId, shopId, sku, url | Prefira IDs e URL para deduplicar |
| Produto | name, brand, categoryId, additionalProperties | Nem todo item expõe todos os atributos |
| Preço | price, priceMin, priceMax, regularPrice, discountPercentage | PLP pode representar uma faixa de variações |
| Estoque e tração | stock, availability, soldCount, likedCount | São sinais observados, não histórico automático |
| Seller | sellerName, sellerId, sellerRating, flags de loja | Flags refletem o conteúdo público da origem |
| Avaliação | aggregateRating.ratingValue, reviewCount | PDP e PLP usam caminhos levemente diferentes |
| Variações | tierVariations, variants | Cor, tamanho e outras opções quando expostas |
| Logística | freeShipping, shippingChannels | Frete e prazo dependem do contexto apresentado |
| Rastreio | requestId, executionId | Guarde para suporte e deduplicação |
Evite criar um tipo no qual tudo é obrigatório. Campos podem estar ausentes porque o produto não tem aquela informação, a página não a expôs ou o estado da oferta mudou.
Paginação, região e moeda
Os endpoints desta página miram shopee.com.br:
- moeda normalizada em
BRL; - textos, seller e logística pertencem ao contexto brasileiro;
- contratos de outros países não devem ser presumidos;
- Shopee PLP não aceita
pagecomo entrada no contrato atual; - Shopee PDP consulta uma URL por request.
Se a paginação PLP for essencial ao seu projeto, valide o comportamento vigente na documentação antes de desenhar a coleta. Não baseie uma automação em campos que aparecem na resposta mas não são aceitos como entrada.
Latência, erros e retentativas
Uma integração resiliente separa quatro estados:
- Sucesso com dados:
datacontém a entidade ou listagem. - Entidade ausente:
notFound: trueedata: null. - Erro 4xx: request inválido, chave ausente ou sem autorização.
- Falha transitória: rede, timeout ou indisponibilidade temporária.
Para falhas transitórias, use poucas tentativas com exponential backoff e jitter. Para 4xx, corrija a entrada ou autenticação antes de repetir. Um exemplo simples:
import random
import time
import requests
for attempt in range(3):
try:
response = requests.post(
"https://api.geckoapi.com.br/v1/extract",
headers={"Authorization": "Bearer SUA_CHAVE"},
json={
"target": "shopee.com.br",
"type": "plp",
"keyword": "fone bluetooth",
},
timeout=90,
)
response.raise_for_status()
break
except requests.RequestException:
if attempt == 2:
raise
time.sleep((2 ** attempt) + random.random())
Na aplicação do usuário, mostre “processando” enquanto aguarda. Um spinner que expira em dez segundos cria uma falsa falha para um endpoint cujo contrato admite até um minuto.
Quanto custa
A documentação Shopee PLP informa atualmente 25 créditos por request. O consumo dos demais endpoints deve ser confirmado na própria documentação, porque endpoints especializados podem ter custo diferente.
Antes de escalar:
- liste quantas keywords e produtos serão consultados;
- defina a frequência necessária para a decisão;
- faça um piloto;
- meça taxa de sucesso, latência e créditos;
- aumente o volume somente depois de validar o orçamento.
Evite consultar PDP de todo item retornado. Primeiro filtre por preço, seller, marca, posição ou regra de relevância.
Como montar histórico de preço e estoque
A API entrega um snapshot; ela não mantém sua série histórica. Salve cada execução como um registro imutável:
source
query
item_id
shop_id
product_name
seller_name
price
regular_price
stock
sold_count
rating
review_count
execution_id
captured_at
Depois, compare o snapshot atual com o anterior para detectar:
- queda ou aumento de preço;
- entrada em promoção;
- ruptura ou retorno de estoque;
- troca de seller;
- produto novo em uma busca;
- mudança de sortimento;
- crescimento de vendas ou avaliações, quando o sinal estiver disponível.
Para um desenho multi-marketplace, veja monitoramento de concorrentes com PLP e PDP.
Uso responsável e limitações
A GeckoAPI estrutura dados de páginas públicas. Isso não transforma toda coleta ou finalidade em automaticamente permitida.
- colete somente o necessário;
- não tente acessar áreas privadas ou contornar autorização;
- respeite contratos, políticas da plataforma, privacidade e legislação aplicável;
- proteja chaves e dados armazenados;
- defina retenção e acesso aos resultados;
- não trate um snapshot como verdade histórica;
- valide decisões de alto impacto com a página de origem.
Esta seção não é aconselhamento jurídico. Consulte também os princípios de uso responsável da GeckoAPI.
Perguntas frequentes
A GeckoAPI é a API oficial da Shopee?
Não. A GeckoAPI é independente e estrutura páginas públicas. Para operar uma loja ou usar recursos privados, consulte a Shopee Open Platform.
Posso buscar produtos da Shopee por palavra-chave?
Sim. O endpoint PLP aceita keyword ou uma URL pública /search com o parâmetro de busca.
Shopee PLP aceita page?
Não no contrato atual. A documentação marca page como não suportado. Trate a resposta como um snapshot da busca e acompanhe o contrato antes de implementar continuação.
Consigo extrair preço, estoque e seller?
PLP e PDP expõem campos de preço, estoque, seller e outros sinais quando a página os disponibiliza. Modele todos os campos variáveis como opcionais.
Por que a chamada pode demorar?
Os endpoints processam conteúdo renderizado da Shopee. A documentação alerta que algumas execuções podem levar até um minuto, então configure timeout e estado de espera compatíveis.
Quanto custa Shopee PLP?
O custo documentado atualmente é de 25 créditos por request. Confira a página do endpoint antes de dimensionar uma rotina.
A API guarda histórico?
Não. Salve snapshots no seu banco e compare as execuções para criar séries e alertas.
Próximos passos
- Compare as opções na página principal da API Shopee.
- Escolha Shopee PLP para busca ou Shopee PDP para produto.
- Faça uma chamada server-side com uma keyword ou URL real.
- Valide os campos opcionais e o estado
notFound. - Meça latência e créditos antes de automatizar.
Fontes oficiais consultadas: Shopee Open Platform e Shopee Affiliate Open API Explorer.
Comece agora: abra o dashboard da GeckoAPI e use os créditos iniciais sem cartão para validar o endpoint. O consumo varia e aparece na documentação.
Quer testar?
Use 100 créditos iniciais para validar a integração. O consumo varia conforme o endpoint e aparece na documentação.
Criar conta grátis