rdurl API

Cree y gestione enlaces cortos con código

Información general de la API

  • Todas las solicitudes requieren un token de API. Consulte la sección de autenticación.
  • El punto final base es: https://rdurl.link/api
  • Solo se admite HTTPS.
  • Todos los endpoints devuelven un objeto JSON.
  • Las solicitudes se envían como JSON (Content-Type: application/json).
  • Todos los campos de tiempo y marcas de tiempo están en milisegundos.
  • Toda la codificación de caracteres es UTF-8.

Autenticación

La API usa un token para identificar a qué cuenta pertenece una solicitud. Un token equivale a la contraseña de su cuenta: quien lo posea puede crear y eliminar sus enlaces.

Paso 1. Emita un token

Inicie sesión en el panel y emita un token desde el menú 'Token de API'. Cada emisión genera un token nuevo y solo puede verse una vez.

Paso 2. Añada el token a su solicitud

Elija uno de los dos métodos siguientes.

1. Authorization: Bearer (recomendado)

El método de autenticación estándar de la mayoría de las APIs públicas.

curl https://rdurl.link/api/link/create   -H "Authorization: Bearer rd_YOUR_TOKEN"   -H "Content-Type: application/json"   -d '{ "url": "https://example.com/very/long/url" }'

2. x-api-key cabecera

Útil para herramientas que no admiten fácilmente la cabecera Authorization.

curl https://rdurl.link/api/link/create   -H "x-api-key: rd_YOUR_TOKEN"   -H "Content-Type: application/json"   -d '{ "url": "https://example.com/very/long/url" }'

Paso 3. Verifique su token

Ejecute el comando siguiente. Si se devuelve su lista de enlaces, el token funciona correctamente.

curl https://rdurl.link/api/link/list \
  -H "Authorization: Bearer rd_YOUR_TOKEN"

Gestión de tokens

Un token consta de rd_ seguido de 32 caracteres hexadecimales. Solo puede verse una vez al emitirlo, así que guárdelo de forma segura. Si sospecha de una fuga, revóquelo de inmediato desde el panel: dejará de funcionar al instante.

Endpoints

POST /api/link/create

Cree un enlace corto. Envíe una URL y recibirá un slug y el enlace corto.

Parámetros

  • urlURL a acortar (obligatorio)
  • titleTítulo del enlace (opcional, hasta 100 caracteres)
  • folderCarpeta del enlace (opcional, hasta 100 caracteres — filtra la lista por carpeta)
  • domainDominio personalizado (opcional, p. ej., example.com)

Solicitud

{ "url": "https://example.com/very/long/url" }

Respuesta

{
  "success": true,
  "message": {
    "slug": "abc123",
    "short": "https://rdurl.link/abc123",
    "domain_no": 0,
    "domain": ""
  }
}
GET /api/link/list

Obtenga la lista de sus enlaces con paginación, 20 por página. Admite búsqueda y filtro por dominio.

Parámetros

  • pageNúmero de página (por defecto 1)
  • domainDominio personalizado (opcional, p. ej., example.com)
  • searchPalabra clave (coincidencia parcial en slug/URL)
  • folderCarpeta del enlace (opcional, hasta 100 caracteres — filtra la lista por carpeta)

Solicitud

GET /api/link/list?page=1&domain=example.com&search=keyword

Respuesta

{
  "success": true,
  "message": {
    "total": 42,
    "page": 1,
    "list": [
      {
        "slug": "abc123",
        "url": "https://example.com/very/long/url",
        "short": "https://rdurl.link/abc123",
        "clicks": 128,
        "tm": 1789379625000
      }
    ]
  }
}
GET /api/link/info

Obtenga los detalles y el número de clics de un enlace.

Parámetros

  • slugslug (obligatorio)
  • domainDominio personalizado (opcional, p. ej., example.com)

Solicitud

GET /api/link/info?slug=abc123

Respuesta

{
  "success": true,
  "message": {
    "slug": "abc123",
    "url": "https://example.com/very/long/url",
    "short": "https://rdurl.link/abc123",
    "clicks": 128,
    "tm": 1789379625000
  }
}
GET /api/link/stats

Estadísticas de clics por enlace: total, hoy y top 10 países.

Parámetros

  • slugslug (obligatorio)
  • domainDominio personalizado (opcional, p. ej., example.com)

Solicitud

GET /api/link/stats?slug=abc123

Respuesta

{
  "success": true,
  "message": {
    "clicks": 128,
    "clicksToday": 5,
    "countries": [
      { "country": "KR", "clicks": 80 },
      { "country": "US", "clicks": 30 }
    ]
  }
}
DELETE /api/link

Elimine un enlace. Los enlaces globales se pueden restaurar durante 30 días; los de dominio personalizado se eliminan de inmediato.

Parámetros

  • slugslug (obligatorio)
  • domainDominio personalizado (opcional, p. ej., example.com)

Solicitud

DELETE /api/link
{ "slug": "abc123" }

Respuesta

{ "success": true }

Límites de velocidad

Hasta 10 solicitudes por minuto por IP y 1.000 enlaces por día por cuenta. Al superarse el límite se devuelve 429.

Códigos de error

En caso de fallo, la respuesta incluye success: false y un código de error.

{ "success": false, "message": "api_invalid_token" }
codestatusSignificado
api_invalid_token401Falta el token o no es válido
link_invalid_url400URL no válida (solo http/https)
link_invalid_slug400Formato de slug no válido
link_not_found400El enlace no existe
domain_not_found400El dominio personalizado no existe
link_own_domain400No puede acortar su propio dominio
link_create_failed400Error al crear el enlace
link_rate_limit429Se superó el límite de solicitudes
koenjazh-TWzh-CNviesptfrru