shopee api e-commerce monitoramento

API Shopee em 2026: Produtos, Preços e Estoque

28 de janeiro de 2026 · 12 min · Equipe GeckoAPI
API Shopee em 2026: Produtos, Preços e Estoque

Quer testar? Comece com 100 créditos iniciais, sem cartão.

Ir para o Dashboard

Se 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çãoUse quandoAutenticaçãoResultado
Shopee Open PlatformVocê precisa operar uma loja autorizada e integrar processos ligados à contaAplicação e autorização conforme o programa oficialOperações e dados de seller permitidos pela plataforma
Shopee Affiliate Open APISeu caso pertence ao programa de afiliadosAppId e secret do programaRecursos de catálogo, atribuição e comissão previstos pelo programa
GeckoAPI para ShopeeVocê precisa estruturar páginas públicas para pricing, catálogo, BI ou monitoramentoChave da GeckoAPI no seu backendProduto 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:

EndpointEntradaUso principalDocumentação
PDPURL pública de produtoAprofundar produto, seller, estoque, avaliações, variações, mídia e freteShopee PDP
PLPKeyword ou URL pública /searchDescobrir produtos, preços, sellers e sinais de catálogo em uma buscaShopee 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:

GrupoCamposObservação
IdentidadeitemId, shopId, sku, urlPrefira IDs e URL para deduplicar
Produtoname, brand, categoryId, additionalPropertiesNem todo item expõe todos os atributos
Preçoprice, priceMin, priceMax, regularPrice, discountPercentagePLP pode representar uma faixa de variações
Estoque e traçãostock, availability, soldCount, likedCountSão sinais observados, não histórico automático
SellersellerName, sellerId, sellerRating, flags de lojaFlags refletem o conteúdo público da origem
AvaliaçãoaggregateRating.ratingValue, reviewCountPDP e PLP usam caminhos levemente diferentes
VariaçõestierVariations, variantsCor, tamanho e outras opções quando expostas
LogísticafreeShipping, shippingChannelsFrete e prazo dependem do contexto apresentado
RastreiorequestId, executionIdGuarde 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 page como 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:

  1. Sucesso com dados: data contém a entidade ou listagem.
  2. Entidade ausente: notFound: true e data: null.
  3. Erro 4xx: request inválido, chave ausente ou sem autorização.
  4. 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:

  1. liste quantas keywords e produtos serão consultados;
  2. defina a frequência necessária para a decisão;
  3. faça um piloto;
  4. meça taxa de sucesso, latência e créditos;
  5. 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

  1. Compare as opções na página principal da API Shopee.
  2. Escolha Shopee PLP para busca ou Shopee PDP para produto.
  3. Faça uma chamada server-side com uma keyword ou URL real.
  4. Valide os campos opcionais e o estado notFound.
  5. 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