Documentación para desarrolladores

Automatiza enlaces profesionales con la API de Blinkode.

Crea enlaces, administra destinos y genera códigos QR desde una API clara con autenticación por token.

RESTAutenticación BearerJSONQR dinámico
respuesta
{
  "data": {
    "link": {
      "id": "clx_123",
      "slug": "K8m2pQzR",
      "destinationUrl": "https://example.com",
      "shortUrl": "https://bkode.link/K8m2pQzR",
      "createdAt": "2026-05-27T20:00:00.000Z",
      "expiresAt": null,
      "hasPassword": false,
      "clickCount": 0
    }
  }
}

Autenticación

Utiliza una clave API que solo se muestra una vez.

Los usuarios Pro crean claves API desde su cuenta. El secreto completo se muestra una sola vez; después Blinkode conserva solo el prefijo y el hash.

  1. 1Usa una cuenta Pro con acceso a la API para clientes.
  2. 2Crea una clave desde el endpoint de claves API para usuarios con sesión.
  3. 3Guarda el secreto devuelto una sola vez; Blinkode conserva solo el hash.
  4. 4Envía la clave con Authorization: Bearer en las rutas /api/v1.

Códigos QR

Genera códigos QR bajo demanda.

La salida QR se genera dinámicamente desde la URL corta y se devuelve como archivo listo para usar.

Errores

Maneja errores JSON predecibles.

Las llamadas fallidas devuelven un mensaje de error y un código legible por máquina. Las solicitudes limitadas incluyen retry-after.

respuesta de error
{
  "error": "API access is not enabled for this account.",
  "code": "api_access_disabled"
}

missing_api_key

No se envió el token Bearer.

invalid_api_key

La clave está mal formada, revocada o no coincide con el hash guardado.

api_access_disabled

El plan de la cuenta no incluye acceso a la API para clientes.

rate_limited

La clave API excedió el límite de solicitudes definido en Redis.

invalid_json

El cuerpo de la solicitud no es JSON válido.

invalid_destination_url

La URL de destino debe ser pública y usar HTTP o HTTPS.

invalid_expires_at

expiresAt debe ser una fecha ISO válida.

expired_expires_at

expiresAt debe estar al menos 24 horas en el futuro.

invalid_password

La contraseña debe ser una cadena de texto.

password_too_short

La contraseña debe tener al menos 6 caracteres.

unsafe_destination_url

El destino fue bloqueado por la validación de seguridad.

custom_domain_required

Los enlaces creados mediante la API requieren un dominio personalizado Pro activo.

custom_domain_unavailable

El dominio personalizado seleccionado no está disponible para esta cuenta.

custom_slug_unavailable

Los identificadores cortos personalizados requieren un dominio personalizado Pro en las solicitudes de la API para clientes.

slug_unavailable

El slug personalizado solicitado ya existe en ese dominio.

invalid_qr_format

El formato QR debe ser PNG o SVG.

short_link_not_found

El enlace solicitado no existe para el propietario de esta clave API.

Referencia API

Rutas disponibles en v1.

La gestión de dominios personalizados se realiza en el panel; los enlaces creados mediante la API deben usar un dominio Pro existente enviando `domainId`.

GET/api/api-keysLista claves API de un usuario con sesión y acceso API.
POST/api/api-keysCrea una clave API y devuelve el secreto una sola vez.
PATCH/api/api-keys/:idRota, habilita o deshabilita una clave API.
DELETE/api/api-keys/:idRevoca una clave API.
GET/api/v1/linksLista enlaces cortos propiedad del cliente.
POST/api/v1/linksCrea un enlace corto propiedad del cliente.
GET/api/v1/links/:idConsulta un enlace corto propiedad del cliente.
DELETE/api/v1/links/:idElimina un enlace corto propiedad del cliente.
GET/api/v1/links/:id/qrGenera un código QR dinámico en PNG o SVG.