POST/api/v6/urlshortener/links

Crear un enlace corto

Publica un enlace corto en uno de tus dominios, con código generado o alias propio.

Alcance y límites

Alcance

API key con el servicio urlshortener habilitado

Límite de uso

35 solicitudes por segundo

Idempotencia

Admite Idempotency-Key

  • La URL de destino admite hasta 2048 caracteres.
  • Se rechazan destinos que apunten a hosts privados o reservados.

Crea un enlace corto en uno de tus dominios. El código se genera automáticamente (base36, 7 caracteres) salvo que envíes un alias propio. Los códigos son únicos por dominio: el mismo alias puede existir en dos dominios distintos.

Cabeceras

Idempotency-Key
stringopcional
Llave de idempotencia opcional (1 a 255 caracteres de A-Za-z0-9_-). Repetir la misma operación con la misma llave devuelve la respuesta original sin volver a ejecutarla. Ver la guía de idempotencia.

Cuerpo de la petición

application/json
url
stringobligatorio
URL de destino. Absoluta http o https, máximo 2048 caracteres. Se rechazan hosts privados o reservados.
domain
stringopcional
Dominio donde publicar. Debe estar disponible para tu cuenta (ver GET /api/v6/urlshortener/domains). Por defecto, tu dominio predeterminado.
alias
stringopcional
Código personalizado opcional (3 a 32 caracteres: minúsculas, dígitos, - y _). Debe estar libre en el dominio y no ser una palabra reservada.
expiresAt
stringopcional
Expiración opcional en ISO-8601, siempre futura. Después de esa fecha el enlace responde 410.
{
  "url": "https://example.com/landing?utm_source=sms",
  "domain": "go.acme.co",
  "alias": "spring-sale"
}

Respuestas

201

Enlace creado. En el caso extremo de que la relectura inmediata falle, data trae solo code y domain.

{
  "success": true,
  "data": {
    "id": 1024,
    "code": "a1b2c3d",
    "domain": "go.acme.co",
    "shortUrl": "https://go.acme.co/a1b2c3d",
    "longUrl": "https://example.com/landing?utm_source=sms",
    "alias": false,
    "active": true,
    "expiresAt": null,
    "createdAt": "2026-06-01T15:04:05Z",
    "clicks": 0,
    "uniqueClicks": 0,
    "lastClickAt": null
  },
  "meta": {
    "requestId": "8f0c0e2a4b1d4c8fae2b7a91e0c5d3f6",
    "timestamp": "2026-06-01T15:04:05+00:00",
    "responseTimeMs": 7.2
  }
}
400

Entrada inválida (URL de destino, alias, expiración o dominio), o llave de idempotencia con formato incorrecto.

401

Credenciales inválidas o faltantes.

403

La organización está en modo solo lectura, o no puede crear el enlace.

409

El alias ya está en uso en este dominio, o una petición con la misma llave de idempotencia sigue en proceso.

422

La llave de idempotencia se reusó con un cuerpo distinto.

429

Se excedió el límite de solicitudes.

Errores posibles

Códigos que este endpoint puede devolver en error.code. El detalle completo está en el catálogo.

Ver el catálogo completo
POST /api/v6/urlshortener/links
curl -X POST 'https://developers.hablame.co/api/v6/urlshortener/links' \
  -H 'Accept: application/json' \
  -H 'Authorization: Bearer hk_TU_API_KEY' \
  -H 'Content-Type: application/json' \
  --data '{"url":"https://example.com/landing?utm_source=sms","domain":"go.acme.co","alias":"spring-sale"}'

Try-It

Ejecuta la petición contra la API real con tu propia API key.

La key se usa solo en tu navegador para esta petición. No se guarda ni se envía a ningún otro lado.

Parámetros

Llave de idempotencia opcional (1 a 255 caracteres de A-Za-z0-9_-). Repetir la misma operación con la misma llave devuelve la respuesta original sin volver a ejecutarla. Ver la guía de idempotencia.

Cuerpo de la petición

URL de destino. Absoluta http o https, máximo 2048 caracteres. Se rechazan hosts privados o reservados.

Dominio donde publicar. Debe estar disponible para tu cuenta (ver GET /api/v6/urlshortener/domains). Por defecto, tu dominio predeterminado.

Código personalizado opcional (3 a 32 caracteres: minúsculas, dígitos, - y _). Debe estar libre en el dominio y no ser una palabra reservada.

Expiración opcional en ISO-8601, siempre futura. Después de esa fecha el enlace responde 410.

POST https://developers.hablame.co/api/v6/urlshortener/links

Respuesta

Todavía no has enviado ninguna petición.