Primeiros passos com a API

A API REST da Acreditta permite automatizar a emissão, consulta e gestão de credenciais digitais a partir dos seus próprios sistemas. Este guia leva você do zero até sua primeira chamada autenticada.

1. Obtenha sua API Key

  1. Vá para Integrações → API no menu lateral.
  2. Clique em Criar APIKey.
  3. Digite um nome descritivo para identificar a chave (por exemplo, o sistema que vai usá-la) e clique em Criar.

⚠️ Importante: o valor da API Key só é exibido uma vez, no momento em que é criada. Guarde-o em um lugar seguro — você não poderá vê-lo novamente pela plataforma.

Com isso você tem um DeveloperUser: um usuário com nome de usuário API User e senha API Key. Esses dois valores são os que você vai usar para se autenticar na API, não o seu usuário e senha normais da Acreditta.

2. Autentique-se e obtenha seus tokens

Faça login no endpoint /login com seu API User e API Key:

curl -X 'POST' \
  'https://public-api.acreditta.com/login' \
  -H 'accept: application/json' \
  -H 'Content-Type: application/json' \
  -d '{
  "username": "YOUR_API_USER",
  "password": "YOUR_API_KEY_VALUE"
}'

A resposta inclui dois valores:

  • idToken: use-o como Bearer Token (Authorization: Bearer <idToken>) em todas as chamadas seguintes.
  • refreshToken: guarde-o para solicitar um novo idToken quando o atual expirar, no endpoint /login/refresh-token.

3. Faça sua primeira chamada

Com o idToken você pode consumir qualquer endpoint protegido, por exemplo o relatório de status de credenciais:

curl -X 'GET' \
  'https://public-api.acreditta.com/report/credential/status' \
  -H 'accept: application/json' \
  -H 'Authorization: Bearer ID_TOKEN'

Ambientes disponíveis

Ambiente URL base
Produção https://public-api.acreditta.com
Sandbox (testes) https://publicapi-demo.acreditta.app

🔎 Observação: use sempre o sandbox enquanto desenvolve sua integração — as credenciais emitidas ali não contam para sua cota de produção.

Referência completa

A lista completa de rotas, parâmetros e esquemas de request/response está no Swagger: https://public-api.acreditta.com/swagger/#/. É a fonte da verdade — este guia e os seguintes mostram como usar a API, não substituem essa referência.

Fluxo lógico de uma integração típica

Depois de conseguir se autenticar, esta é a ordem habitual em que uma integração (por exemplo, com um LMS ou um ERP acadêmico) costuma usar os endpoints entre si:

  1. Autentique-se na API com /login usando seu API User e API Key.
  2. Permita que o administrador da sua instituição associe um modelo de reconhecimento ao curso, buscando entre os modelos da sua organização com /template/list (aceita um parâmetro de busca).
  3. (Opcional) Permita que ele também associe um fluxo de aprovação ao curso, listando os fluxos disponíveis da sua organização com /flows.
  4. Persista o credentialTemplateId e, se aplicável, o flowId selecionado pelo administrador, associando-os ao curso dentro do seu próprio sistema.

A partir daí, o caminho se divide conforme o curso tenha ou não um fluxo de aprovação associado:

Com fluxo de aprovação:

  1. Quando um grupo de estudantes cumprir as condições para receber a credencial, abra um lote com POST /credential/batch/create e guarde em memória o batchId retornado.
  2. Percorra o grupo de estudantes e adicione cada um ao lote com POST /credential/issue, passando o batchId como parâmetro de consulta (?batch_id={batchId}).
  3. Ao terminar de adicionar estudantes, feche o lote com PATCH /credential/batch/close/{batchId}, informando no corpo o flowId persistido no passo 4 — isso é o que dispara o processo de revisão.

Sem fluxo de aprovação (emissão simples):

  1. Emita a credencial diretamente quando o estudante cumprir as condições, com POST /credential/issue (sem batch_id).

🔎 Observação: o parâmetro batch_id é o que determina se uma emissão fica associada a um lote em revisão ou não — com ou sem fluxo de aprovação, o endpoint que emite é sempre o mesmo, /credential/issue.

Próximo passo

Precisa de ajuda?

Escreva para tech@acreditta.com se tiver dúvidas durante sua integração.


CONTENIDO