VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API legada/Referência completa

API de apps (token vat_)

Como aplicativos de terceiros acessam relatórios, banners, páginas e estoque em massa pelas rotas /api/admin com token de app e escopos.

Um app de terceiros (um conector de ERP, uma ferramenta de BI, um gerenciador de conteúdo) não deve usar o login de uma pessoa. A plataforma oferece um acesso próprio para eles: o app é cadastrado no portal de desenvolvedores da loja, recebe um token de app (começa com vat_live_ ou vat_test_) e só pode o que os escopos aprovados pela loja permitem.

As rotas desse acesso ficam sob /api/admin/..., sem prefixo de versão. Esta seção documenta as que não são de pedidos: relatórios, banners, páginas e atualização de estoque em massa. As rotas de pedidos com token de app estão em Pedidos por token de app.

Pontos-chave
  • Cabeçalho: Authorization: Bearer vat_live_.... Um JWT de usuário nestas rotas responde 401 {"error":"app_token_required"}.
  • Cada rota exige um escopo: read_analytics, read_content, write_content ou write_inventory. Sem o escopo, 403 {"error":"missing_scope","required":"..."}.
  • Não há usuário por trás do token: os privilégios finos do painel (como manage_products) não são conferidos, vale só o escopo.
  • Dinheiro nos relatórios é inteiro em centavos. Datas dos relatórios são YYYY-MM-DD, no fuso da loja.

Como funciona

  1. Cadastre o app

    No portal de desenvolvedores da loja o administrador cadastra o app e aprova os escopos. O app recebe o token de app. Veja Autenticação.

  2. Chame a rota com o escopo certo

    Envie Authorization: Bearer vat_live_.... O token vale só para a loja em que foi emitido.

  3. Trate os dois formatos de erro

    Falhas de token e de escopo vêm no formato simples {"error":"..."}. Falhas das próprias operações também usam {"error":"mensagem"}, às vezes com detail.

Conceitos-chave

Escopos desta seção

EscopoLibera
read_analyticsOs quatro relatórios de Relatórios.
read_contentListar banners (Banners e páginas).
write_contentCriar e alterar páginas (Banners e páginas).
write_inventoryAtualizar estoque em massa (Estoque em massa).

Erros de autenticação

StatusCorpoQuando
401{"error":"app_token_required"}Não veio token de app (por exemplo, veio um JWT de usuário).
401{"error":"invalid or expired app access token"}O token de app não existe, expirou ou foi revogado.
403{"error":"missing_scope","required":"read_analytics"}O app não tem o escopo que a rota exige.

Dinheiro e datas

Valores em reais são sempre inteiros em centavos (27418842 = R$ 274.188,42). Os relatórios recebem datas YYYY-MM-DD e interpretam cada dia no fuso horário da loja.

Endpoints

MétodoCaminhoPara quêEscopoPágina
GET/api/admin/analytics/ordersResumo de pedidos de um períodoread_analyticsRelatórios
GET/api/admin/analytics/salesRelatório de vendas com série diáriaread_analyticsRelatórios
GET/api/admin/analytics/top-productsProdutos mais vendidosread_analyticsRelatórios
GET/api/admin/analytics/customersEstatísticas de clientesread_analyticsRelatórios
GET/api/admin/bannersListar banners da lojaread_contentBanners e páginas
POST/api/admin/pagesCriar uma páginawrite_contentBanners e páginas
PUT/api/admin/pages/{id}Alterar uma páginawrite_contentBanners e páginas
POST/api/admin/inventory/bulk-updateDefinir o estoque de vários produtoswrite_inventoryEstoque em massa

Erros comuns

  • Usar o JWT do administrador. Estas rotas só aceitam token de app: o resultado é 401 app_token_required.
  • Esquecer o escopo. O app foi aprovado só com read_products e read_orders (o padrão) e chama um relatório: 403 missing_scope.
  • Errar o nome do relatório. O resumo de pedidos é /api/admin/analytics/orders, o de vendas é .../sales e o de clientes é .../customers. Um nome diferente responde 404.
  • Esperar que status: "draft" guarde um rascunho. Na criação de página por esta API, draft vira active e a página fica publicada.
  • Tratar failed_ids como erro HTTP. A atualização de estoque em massa responde 200 mesmo quando alguns produtos falham.
  • Pedir mais de um ano de relatório. Intervalos maiores que 366 dias são recusados com 400.

Próximos passos

Relatórios
Pedidos, vendas, top produtos e clientes.
Banners e páginas
Ler banners e publicar páginas.
Estoque em massa
Definir o estoque de muitos produtos de uma vez.
Pedidos por token de app
As rotas de pedidos do mesmo acesso.
Anterior
Avisos
Próxima
Relatórios
Nesta página
  • Como funciona
  • Conceitos-chave
  • Escopos desta seção
  • Erros de autenticação
  • Dinheiro e datas
  • Endpoints
  • Erros comuns
  • Próximos passos