Documentação Akrus · v1 em prévia
Produtos, ofertas, vendas e acessos.
Modele sua integração com os mesmos conceitos usados pela Akrus, preservando identificadores, estados e unidades.
Nesta página
O que cada registro representa
| Conceito | Significado | Referência pública |
|---|---|---|
| Produtor | Conta responsável pelos dados consultados. | Determinado pela credencial, sem seleção por parâmetro. |
| Produto | O que será vendido e entregue. | products.id e products.slug. |
| Oferta | Condições comerciais associadas à compra. | sales.offer_id, quando preenchido; sem coleção pública de ofertas. |
| Venda | Registro de uma compra e seu estado. | sales.id; não significa necessariamente pagamento confirmado. |
| Concessão de acesso | Permissão para acessar um produto. | access.id; pode existir sem venda associada. |
Como relacionar as coleções
Relações disponíveis nos campos publicados. As consultas são separadas; não há endpoint público de junção.
products.id ← sales.product_id (quando preenchido)
products.slug ← sales.product_slug
sales.id ← access.sale_id (quando preenchido)
products.slug ← access.product_slug
Chave local recomendada: conta + recurso + idIdentidade, ausência e vínculos
Trate id como uma string opaca e use-o para atualizar um registro já conhecido. O slug é a referência legível do produto; não o interprete como identidade de uma pessoa. Um identificador de oferta não autoriza consultar uma rota que não esteja nesta referência.
Um vínculo pode estar ausente ou ainda não ter sido carregado pela sua sincronização. Preserve null e adie a associação local quando necessário. Não descarte uma venda porque product_id ou offer_id está vazio, nem uma concessão porque sale_id é null.
As coleções não incluem identificador, nome, e-mail, documento ou telefone do comprador. Não é possível montar uma lista de contatos ou determinar a identidade do aluno apenas com esses recursos.
Estados pertencem a cada recurso
| Recurso | Valores de referência | Interpretação |
|---|---|---|
| products | rascunho, publicado, arquivado | Estado do catálogo; não informa pagamento nem acesso. |
| sales | Exemplos: pending, paid, refunded | Estado da compra. Os exemplos não são uma lista exaustiva. |
| access | active, revoked, refunded | Estado da concessão de acesso. |
Convenções dos dados
Valores de venda usam centavos de real: amount_brl_cents igual a 10000 representa R$ 100,00. Faça somas em unidades inteiras e formate apenas para exibir. net_brl_cents é o líquido registrado naquela venda; não informa disponibilidade para saque.
Datas são timestamps com fuso. Preserve o texto original, incluindo a precisão de microssegundos. Converta apenas para apresentação e defina explicitamente o fuso usado em relatórios por dia. Datas null significam ausência de registro.
Tolere campos novos e estados desconhecidos. Guarde o valor recebido e sinalize uma classificação pendente em vez de assumir que um estado novo equivale a pago ou ativo.
Consulte os campos de cada recurso
API de produtos
GET /api/v1/products · products:read.
API de vendas
GET /api/v1/sales · sales:read.
API de acessos
GET /api/v1/access · access:read.
Referência conferida em 8 de outubro de 2026. Relatar uma dúvida na documentação.