Skip to content

Autenticación

Todas las llamadas a la API de badges.ninja requieren autenticación. Esta página te explica cómo autenticar tus solicitudes.

URL base

https://api.badges.ninja

Todos los endpoints son relativos a esta URL base.

Autenticación mediante clave API

El método principal de autenticación es una clave API enviada en la cabecera X-Api-Key.

Obtener una clave API

Desde el panel:

  1. Inicia sesión en badges.ninja.
  2. Entra en API Keys desde la barra lateral.
  3. Pulsa Create API Key.
  4. Copia la clave (solo se muestra una vez).

Desde la API:

Las claves API también pueden gestionarse mediante la API usando tu token JWT del flujo de autenticación de Cognito. Para lo más sencillo, hazlo desde el panel.

Usar tu clave API

Incluye la cabecera X-Api-Key en cada solicitud:

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

Formato de la clave API

Las claves llevan el prefijo bws_:

bws_a1b2c3d4e5f6a7b8c9d0e1f2a3b4c5d6

Formato de las solicitudes

  • Las solicitudes GET pasan los parámetros como query string
  • Las solicitudes POST y PUT envían un cuerpo JSON con un objeto parameters
  • Todas las respuestas devuelven JSON con Content-Type: application/json

Estructura de solicitud POST/PUT

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

Solicitud de ejemplo

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"
    }
  }'

Respuesta de ejemplo

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

Límites de frecuencia

Las solicitudes están sujetas a límites de frecuencia. Si superas el límite, recibirás una respuesta 429 Too Many Requests. Espera unos segundos y vuelve a intentar.

Endpoints públicos

Algunos endpoints no requieren autenticación. Son los endpoints públicos de verificación bajo /certify-badge/ que permiten a cualquiera verificar credenciales.

badges.ninja Documentation