Logo de Zagl

Documentación de la API

Acorta enlaces desde tu propio código. Un endpoint, un token bearer.

Endpoint

POSThttps://za.gl/api/shorten
RESTCuerpo JSONAuth bearer

Autenticación

Envía tu token de API en la cabecera Authorization como token bearer. Lo tienes en el panel de tu cuenta en cuanto creas tu primer enlace.

Cabecera
Authorization: Bearer YOUR_API_TOKEN

¿Aún no tienes token? Puedes llamar al endpoint sin él. Za.gl crea una cuenta anónima al vuelo y devuelve un token nuevo en data.newAuthToken. Guárdalo para gestionar tus enlaces más adelante.

Cuerpo de la petición

originalUrlobligatorio

string

La URL larga que quieres acortar. Si omites el protocolo, se añade https:// por ti.

customAlias

string

Tu propio final, p. ej. za.gl/mi-enlace. Debe ser único o recibes un 409.

password

string

Protege el enlace para que las visitas necesiten una contraseña para continuar.

expiresAt

string (ISO date)

Cuándo deja de funcionar el enlace. Tiene que ser una fecha futura.

expiresInMinutes / expiresInHours / expiresInDays

number

Alternativa a expiresAt, caduca tras un tiempo relativo.

waitTimer

number (0-300)

Segundos que la visita espera en la página previa antes de la redirección.

customGtmId

string

Tu propio ID de Google Tag Manager (GTM-XXXXXXX), se dispara en la página previa.

title / description

string

Metadatos opcionales guardados junto al enlace.

generateQR

boolean

Devuelve también un código QR de la URL corta.

Petición de ejemplo

POSTcURL
curl -X POST https://za.gl/api/shorten \
  -H "Authorization: Bearer YOUR_API_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "originalUrl": "https://example.com/a-very-long-link",
    "customAlias": "my-link",
    "password": "optional-secret",
    "expiresAt": "2026-12-31T23:59:59.000Z",
    "waitTimer": 5
  }'

Respuesta de ejemplo

Una llamada correcta devuelve 200 OK con la URL corta en data.shortUrl.

200 OKJSON
{
  "success": true,
  "message": "URL shortened successfully",
  "data": {
    "id": "123",
    "alias": "my-link",
    "shortUrl": "https://za.gl/my-link",
    "originalUrl": "https://example.com/a-very-long-link",
    "customAlias": "my-link",
    "domain": "za.gl",
    "title": "",
    "description": null,
    "hasPassword": true,
    "isActive": true,
    "expiresAt": "2026-12-31T23:59:59.000Z",
    "hits": 0,
    "waitTimer": 5,
    "created": "2026-06-25T10:00:00.000Z",
    "modified": "2026-06-25T10:00:00.000Z",
    "authToken": "your-account-token"
  }
}

Límites de uso y errores

10 req/minHasta 10 peticiones por minuto y cliente.
409El alias personalizado ya está ocupado.
400URL no válida o fecha de caducidad ya pasada.
429Has superado el límite de peticiones o tu cuota mensual.