AtacaHub API
Versão 1

Documentação

Tudo passa por https://api.atacahub.com, com respostas em JSON. Envie sua chave em todas as chamadas.

Autenticação

Envie a chave no cabeçalho Authorization. A chave fica no painel e aparece só quando é gerada. Nunca coloque a chave no navegador ou no aplicativo do celular: use sempre do seu servidor.

Authorization: Bearer ah_live_SUA_CHAVE

1. Conectar uma loja

Gere o link e mande o vendedor abrir. Ele autoriza na Shopee ou no Mercado Livre e volta para o endereço volta, que precisa ser do site cadastrado. Na volta chegam shopee=ok ou ml=ok (ou =erro com motivo). O link vale 15 minutos.

  • canal: shopee ou ml
  • ref: o nome que você dá para essa loja no seu sistema (letras, números e _.:@-)
  • volta: opcional
curl -X POST https://api.atacahub.com/v1/lojas/conectar \
  -H "Authorization: Bearer ah_live_..." \
  -H "Content-Type: application/json" \
  -d '{"canal":"shopee","ref":"cliente-42","volta":"https://seusistema.com.br/integracoes"}'

{ "ok": true, "url": "https://atacahub.com/gw/shopee/conectar?s=...", "vale_minutos": 15 }

2. Chamar a Shopee

POST /v1/shopee/{ref}. Use os caminhos da API oficial v2 da Shopee sem o prefixo /api/v2. A assinatura, o partner_id, o shop_id e o acesso da loja são colocados por nós.

  • caminho: ex. /product/get_item_list
  • metodo: GET ou POST
  • consulta: parâmetros de consulta (GET)
  • corpo: corpo JSON (POST)
curl -X POST https://api.atacahub.com/v1/shopee/cliente-42 \
  -H "Authorization: Bearer ah_live_..." \
  -H "Content-Type: application/json" \
  -d '{"caminho":"/order/get_order_list","consulta":{"time_range_field":"create_time","time_from":1730000000,"time_to":1730600000,"page_size":50}}'

{ "ok": true, "resposta": { "response": { "order_list": [ ... ] } } }

3. Chamar o Mercado Livre

POST /v1/ml/{ref}. Use os caminhos da API oficial do Mercado Livre (api.mercadolibre.com). O acesso da conta é colocado e renovado por nós. A resposta traz o status HTTP original.

  • caminho: ex. /users/me ou /orders/search?seller=123&sort=date_desc
  • metodo: GET, POST, PUT ou DELETE
  • corpo: corpo JSON
curl -X POST https://api.atacahub.com/v1/ml/cliente-42 \
  -H "Authorization: Bearer ah_live_..." \
  -H "Content-Type: application/json" \
  -d '{"caminho":"/questions/search?seller_id=123&status=UNANSWERED"}'

{ "ok": true, "status": 200, "resposta": { "questions": [ ... ] } }

Outras rotas

  • GET /v1/conta: plano, limites, uso de hoje e lojas
  • GET /v1/lojas: lojas conectadas
  • DELETE /v1/lojas/{shopee|ml}/{ref}: desconecta a loja da sua chave

Limites e erros

  • Chamadas por dia conforme o plano. Passou do limite: 429, e o contador zera à meia-noite (horário de Brasília).
  • Muitas chamadas por segundo: 429. Espere e tente de novo.
  • 401: chave inválida ou a loja precisa ser conectada de novo.
  • 403: acesso suspenso por mensalidade em aberto ou limite de lojas do plano.
  • 404: loja não conectada para essa referência.

Toda resposta de erro traz {"ok": false, "erro": "..."} explicando o motivo.

Suporte

Escreva para suporte@atacahub.com.