Skip to content

Autenticação

Todos os pedidos à API do badges.ninja requerem autenticação. Esta página explica como autenticar os seus pedidos.

URL base

https://api.badges.ninja

Todos os endpoints da API são relativos a este URL base.

Autenticação por chave de API

O método principal de autenticação é uma chave de API passada no cabeçalho X-Api-Key.

Obter uma chave de API

A partir do painel:

  1. Inicie sessão em badges.ninja.
  2. Aceda a Chaves de API na barra lateral.
  3. Clique em Criar chave de API.
  4. Copie a chave (apenas é mostrada uma vez).

Pela API:

As chaves de API também podem ser geridas através da API utilizando o token JWT obtido no fluxo de autenticação do Cognito. O modo mais simples é utilizar o painel.

Usar a sua chave de API

Inclua o cabeçalho X-Api-Key em cada pedido:

bash
curl -X GET https://api.badges.ninja/issuers \
  -H "X-Api-Key: bws_your_api_key_here"

Formato da chave de API

As chaves utilizam o prefixo bws_:

bws_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6

Formato dos pedidos

  • Os pedidos GET passam parâmetros como query strings
  • Os pedidos POST e PUT enviam um corpo JSON com um objecto parameters
  • Todas as respostas devolvem JSON com Content-Type: application/json

Estrutura dos pedidos POST/PUT

json
{
  "parameters": {
    "name": "My Badge",
    "description": "A sample badge"
  }
}

Exemplo de pedido

bash
curl -X POST https://api.badges.ninja/issuers \
  -H "X-Api-Key: bws_your_api_key_here" \
  -H "Content-Type: application/json" \
  -d '{
    "parameters": {
      "name": "My Organization",
      "url": "https://example.com",
      "email": "admin@example.com"
    }
  }'

Exemplo de resposta

json
{
  "statusCode": 200,
  "info": {
    "issuerId": "https://api.badges.ninja/certify-badge/issuer/abc123-def456"
  }
}

Limites de taxa

Os pedidos à API estão sujeitos a limitação de taxa. Se exceder o limite, recebe uma resposta 429 Too Many Requests. Aguarde alguns segundos e volte a tentar.

Endpoints públicos

Alguns endpoints não requerem autenticação. São os endpoints públicos de verificação em /certify-badge/, que permitem que qualquer pessoa verifique credenciais de distintivos.

badges.ninja Documentation