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
/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": ""
}
} /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
}
]
}
} /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
}
} /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 }
]
}
} /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" } | code | status | Significado |
|---|---|---|
api_invalid_token | 401 | Falta el token o no es válido |
link_invalid_url | 400 | URL no válida (solo http/https) |
link_invalid_slug | 400 | Formato de slug no válido |
link_not_found | 400 | El enlace no existe |
domain_not_found | 400 | El dominio personalizado no existe |
link_own_domain | 400 | No puede acortar su propio dominio |
link_create_failed | 400 | Error al crear el enlace |
link_rate_limit | 429 | Se superó el límite de solicitudes |