Português (BR)
Português (BR)
Appearance
Português (BR)
Português (BR)
Appearance
Gerencie emissores de distintivos — as organizações ou pessoas que concedem distintivos.
Todos os endpoints exigem autenticação pelo cabeçalho X-Api-Key. Veja Autenticação.
Cria um novo emissor de distintivos.
POST /issuers| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
name | string | Sim | Nome da organização (mínimo de 3 caracteres) |
url | string | Sim | Site da organização (precisa ser uma URL HTTP/HTTPS válida) |
email | string | Sim | E-mail de contato do emissor |
logo | string | Não | Imagem codificada em Base64 (PNG ou JPG) |
linkedinOrganizationId | string | Não | ID numérico da página de empresa no LinkedIn. Quando definido, toda página pública de concessão deste emissor exibe um botão Adicionar ao perfil do LinkedIn. |
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": "Acme Academy",
"url": "https://acme.example.com",
"email": "badges@acme.example.com"
}
}'{
"statusCode": 200,
"info": {
"issuerId": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-e5f6-7890-abcd-ef1234567890"
}
}Recupera todos os emissores que você criou.
GET /issuerscurl -X GET https://api.badges.ninja/issuers \
-H "X-Api-Key: bws_your_api_key_here"{
"statusCode": 200,
"info": {
"issuers": [
{
"id": "https://api.badges.ninja/certify-badge/issuer/a1b2c3d4-...",
"name": "Acme Academy",
"url": "https://acme.example.com",
"email": "badges@acme.example.com",
"verified": true,
"timestamp": "2025-01-15T10:30:00.000Z"
}
]
}
}Verifica um emissor usando o código de verificação enviado ao seu e-mail.
POST /issuers/{issuerId}/verify| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
issuerId | string | Sim | O ID do emissor (parâmetro de caminho) |
code | string | Sim | O código de verificação do e-mail |
curl -X POST https://api.badges.ninja/issuers/a1b2c3d4-e5f6-7890-abcd-ef1234567890/verify \
-H "X-Api-Key: bws_your_api_key_here" \
-H "Content-Type: application/json" \
-d '{
"parameters": {
"issuerId": "a1b2c3d4-e5f6-7890-abcd-ef1234567890",
"code": "ABC123"
}
}'{
"statusCode": 200,
"info": {
"verified": true
}
}Exclui um emissor. O emissor não pode ter distintivos.
DELETE /issuers/{issuerId}curl -X DELETE https://api.badges.ninja/issuers/a1b2c3d4-e5f6-7890-abcd-ef1234567890 \
-H "X-Api-Key: bws_your_api_key_here"{
"statusCode": 200,
"info": {
"deleted": true
}
}400 — o emissor tem distintivos ou concessões e não pode ser excluído (exclua-os primeiro)404 — emissor não encontradoAtualiza os campos de um emissor não verificado. Após o emissor ser verificado, apenas logo e linkedinOrganizationId continuam editáveis, para preservar a estabilidade das credenciais.
PUT /issuers/{issuerId}| Parâmetro | Tipo | Obrigatório | Descrição |
|---|---|---|---|
issuerId | string | Sim | O ID do emissor (parâmetro de caminho) |
name | string | Não | Novo nome (apenas se não verificado) |
url | string | Não | Nova URL (apenas se não verificado) |
email | string | Não | Novo e-mail (apenas se não verificado — envia um novo e-mail de verificação) |
logo | string | Não | Novo logo codificado em Base64 |
linkedinOrganizationId | string | Não | Novo ID de organização do LinkedIn (ou string vazia para remover) |
Invalida o link de verificação anterior e envia outro por e-mail. Válido apenas enquanto o emissor ainda não estiver verificado.
POST /issuers/{issuerId}/rotate-code{
"statusCode": 200,
"info": {
"sent": true
}
}