API de Acortamiento de Enlaces de Linkly
Crea, actualiza y gestiona enlaces mediante programación usando la API de Acortamiento de Enlaces de Linkly.
Relacionado: Analytics API | Webhooks
Antes de comenzar
Linkly genera solicitudes de API en la interfaz para que las copies y pegues en tus aplicaciones.
Esto funciona para la creación de enlaces y la actualización de enlaces.
Ahorra tiempo y deja que hagamos el trabajo duro:
- 1Consulta a continuación las solicitudes de API para la creación de enlaces.
- 2Copia las solicitudes en su totalidad. Puedes verificar que funcionen para ti.
- 3Pídele a ChatGPT o equivalente que adapte estas solicitudes en código fuente para tu aplicación. No hay necesidad de gastar tiempo en una integración compleja. Nuestra API es completamente consumible por máquinas.
Especificación OpenAPI 3.0
Puedes generar solicitudes de API directamente desde la interfaz de usuario de Linkly.
Constructor de API de Acortamiento de Enlaces de Linkly
La API de acortamiento de enlaces de Linkly construye solicitudes de API automáticamente basándose en el contenido del formulario. Puedes pegar el texto proporcionado aquí en cualquier LLM para generar automáticamente código para tu aplicación.
La API de Linkly está documentada utilizando el estándar OpenAPI, que va más allá de lo que se proporciona a continuación. Los mismos endpoints también están disponibles como una colección de Postman de un clic.
Autorización
Necesitarás:
- Tu Clave de API
- ID del Espacio de Trabajo
Puedes obtener estos detalles desde dentro de Linkly.
- 1Inicia sesión en Linkly.
- 2Haz clic en Configuración.
- 3Haz clic en Claves de API.
Crear o actualizar un enlace
Para crear un enlace, todo lo que necesitas hacer es enviar una solicitud POST a:
https://app.linklyhq.com/api/v1/link
con los siguientes campos en el cuerpo.
El tipo de codificación es x-www-form-urlencoded o application/json.
Si estás enviando el campo Rules, debes usar application/json.
Recomendamos que uses JSON con la especificación Open API.
| Etiqueta | Clave | Tipo | Notas |
|---|---|---|---|
| Clave de API de Cuenta | api_key | String | Obligatorio |
| ID del Espacio de Trabajo | workspace_id | Integer | Obligatorio |
| ID del Enlace | id | Integer | Obligatorio si se actualiza un enlace existente |
| Destino | url | String | Obligatorio |
| Apodo | name | String | |
| Notas | note | String | |
| Etiquetas de retargeting (región head) | head_tags | String | Para píxeles de retargeting |
| Etiquetas de retargeting (región body) | body_tags | String | Para píxeles de retargeting |
| Reenviar Parámetros | forward_params | Boolean | |
| Ocultar Referer | hide_referrer | Boolean | Envía referrer-policy: no-referrer para que el destino no vea Linkly en el encabezado referer |
| Enmascaramiento | cloaking | Boolean | Oculta la URL de destino detrás de un marco |
| Bloquear Bots | block_bots | Boolean | Bloquea bots/crawlers conocidos |
| Omitir Rastreo de Social Crawler | skip_social_crawler_tracking | Boolean | Cuando block_bots está activado, permite que los social crawlers pasen para que funcionen las vistas previas de OG |
| Análisis Público | public_analytics | Boolean | Habilita la página pública /abc123.stats para este enlace |
| Contraseña | password | String | Los visitantes deben ingresar esta contraseña antes de la redirección |
| Estado de Publicación | enabled | Boolean | |
| Fuente UTM | utm_source | String | Para rastreo UTM |
| Medio UTM | utm_medium | String | Para rastreo UTM |
| Campaña UTM | utm_campaign | String | Para rastreo UTM |
| Término UTM | utm_term | String | Para rastreo UTM |
| Contenido UTM | utm_content | String | Para rastreo UTM |
| Dominio Personalizado | domain | String | Obligatorio si se proporciona slug. Consulta dominios personalizados |
| Sufijo de Dominio Personalizado | slug | String | Si se proporciona dominio y slug es nulo, se generará automáticamente |
| Título Open Graph | og_title | String | Para vistas previas en redes sociales |
| Descripción Open Graph | og_description | String | Para vistas previas en redes sociales |
| URL de Imagen Open Graph | og_image | String | Para vistas previas en redes sociales |
| ID de Píxel Meta | fb_pixel_id | String | Para Píxel de Meta |
| ID de Píxel TikTok | tiktok_pixel_id | String | |
| ID de Google Analytics 4 | ga4_tag_id | String | |
| Contenedor de Google Tag Manager | gtm_id | String | |
| Palabras Linkify | linkify_words | String | Frases separadas por saltos de línea que deben acortarse automáticamente en las páginas de destino |
| Reemplazos | replacements | String | Reglas de reemplazo de texto aplicadas a la página de destino |
| Fecha y Hora de Vencimiento | expiry_datetime | Cadena de Fecha y Hora ISO8601 | Para enlaces que vencen |
| Destino de Vencimiento | expiry_destination | String (URL) | Para enlaces que vencen. Debe comenzar con http. |
| Clics de Vencimiento | expiry_clicks | Integer | Vence el enlace después de este número de clics |
| Webhooks | webhooks | Array de strings | URLs de webhook por enlace. Consulta webhooks. |
| IDs de Usuario a Notificar | notify_user_ids | Array de integers | IDs de usuarios del espacio de trabajo a notificar en cada clic |
| Estilos de Código QR | qr_styles | Objeto JSON | Para estilos de código QR. Claves: fgColor, bgColor, qrStyle, eyeStyle, eyeColorInner, eyeColorOuter, logoImage, logoWidth, logoHeight, logoPadding, logoStyle, quietZone |
| Reglas | rules | Array JSON | Para rotadores, redirecciones por geo, y redirecciones por dispositivo |
Ejemplo de solicitud usando curl
El código a continuación ilustra cómo hacer una solicitud de API para crear un enlace.
curl -X POST https://app.linklyhq.com/api/v1/link
-H 'cache-control: no-cache'
-d 'api_key=your_secret_key&workspace_id=1&url=http%3A%2F%2Fwww.wikijob.co.uk&name=Test%20Link'
Una respuesta exitosa devolverá un objeto JSON que representa el enlace, junto con un id de enlace.
{
"id": 9512,
"url": "https://www.wikijob.co.uk",
"name": "Test Link",
"note": null,
"head_tags": null,
"body_tags": null,
"linkify_words": null,
"replacements": null,
"enabled": true,
"cloaking": false,
"forward_params": false,
"hide_referrer": false,
"block_bots": false,
"skip_social_crawler_tracking": false,
"public_analytics": false,
"password": null,
"domain": null,
"slug": null,
"utm_source": null,
"utm_medium": null,
"utm_campaign": null,
"utm_term": null,
"utm_content": null,
"og_title": null,
"og_description": null,
"og_image": null,
"fb_pixel_id": null,
"tiktok_pixel_id": null,
"ga4_tag_id": null,
"gtm_id": null,
"full_url": "https://l.linklyhq.com/l/2TQ",
"rules": [],
"expiry_datetime": null,
"expiry_destination": null,
"expiry_clicks": null,
"qr_styles": null,
"webhooks": [],
"notify_user_ids": [],
"workspace_id": 1448,
"deleted": false
}
Actualizar un enlace
Para actualizar un enlace, envía la misma solicitud que usarías para crear un enlace, pero incluye el campo id para el enlace que deseas actualizar, así como los cambios.
Crear rotadores mediante API
Para crear un rotador, envía un campo llamado rules como un array JSON, junto con la carga útil del enlace anterior. Debes usar application/json para enviar arrays JSON.
Por ejemplo:
[
{"what": "rotator", "url": "https://www.microsoft.com", "percentage": "50"},
{"what": "rotator", "url": "https://www.apple.com", "percentage": "50"}
]
Crear redirecciones geográficas mediante API
Para redirigir por país, envía un campo llamado rules como un array JSON, junto con la carga útil del enlace anterior. Debes usar codificación application/json para enviar arrays JSON.
Por ejemplo:
[
{"what": "country", "url": "https://www.microsoft.com", "matches": "UK"},
{"what": "country", "url": "https://www.apple.com", "matches": "US"}
]
El país es el código de país ISO 3166 alfa-2.
Crear redirecciones por dispositivo mediante API
Para redirigir por dispositivo, envía un campo llamado rules como un array JSON, junto con la carga útil del enlace anterior.
Por ejemplo:
[
{"what": "platform", "url": "https://www.google.com", "matches": "windows"},
{"what": "platform", "url": "https://www.apple.com", "matches": "ios"}
]
Donde el campo matches es uno de:
- ios
- android
- windows
- linux
- mac
Crear o actualizar múltiples enlaces en una solicitud
Linkly admite la creación/enmienda de hasta 1000 enlaces por solicitud.
Para hacerlo, envía tu clave de API como parte de la solicitud de la siguiente manera:
https://app.linklyhq.com/api/v1/link?api_key=XXXXXXXXXXX
Luego, usa el mismo esquema que arriba para los casos de enlaces individuales, pero envuelve las solicitudes de enlace en un array, de la forma:
[{link}, {link}]
Aquí hay una solicitud completa que actualizará dos enlaces:
wget --no-check-certificate \
--method POST \
--timeout=0 \
--header 'Content-Type: application/json' \
--body-data '[
{
"workspace_id": "WORKSPACE_ID",
"url": "https://nature.com",
"name": "Test",
"id": LINK_ID
},
{
"workspace_id": "WORKSPACE_ID",
"url": "https://science.com",
"id": LINK_ID
}
]' \
'https://app.linklyhq.com/api/v1/workspace/WORKSPACE_ID/links?api_key=API_KEY'
Esto funciona tanto para acciones de creación como de actualización.
Tenga en cuenta que puede tomar hasta 60 segundos para una solicitud grande. Si las solicitudes toman más tiempo que esto, fallarán, y debe considerar dividir su carga de trabajo en fragmentos más pequeños.
Límites de velocidad
La API de acortamiento de enlaces se limita a 20 solicitudes/segundo. Hasta 200 solicitudes por segundo están disponibles bajo solicitud. Puedes subir hasta 1000 enlaces en una sola solicitud.
Relacionado
- Analytics API - Exporta datos de clics e informes de tráfico
- Webhooks - Notificaciones de clics en tiempo real
- Integración de Zapier - Integraciones sin código
Disponibilidad del plan
Incluido en todos los planes
Rastrea 500 clics mensuales con todas las funciones incluidas.