Logo Zagl

Documentation API

Raccourcissez vos liens directement depuis votre code. Un endpoint, un jeton Bearer.

Endpoint

POSThttps://za.gl/api/shorten
RESTCorps JSONAuth Bearer

Authentification

Passez votre jeton API dans l'en-tête Authorization sous forme de jeton Bearer. Récupérez-le dans le tableau de bord de votre compte, après avoir créé votre premier lien.

En-tête
Authorization: Bearer YOUR_API_TOKEN

Pas encore de jeton ? Vous pouvez appeler l'endpoint sans. Za.gl crée un compte anonyme à la volée et renvoie un nouveau jeton dans data.newAuthToken. Conservez-le pour gérer vos liens plus tard.

Corps de la requête

originalUrlobligatoire

string

L'URL longue à raccourcir. Si vous omettez le protocole, https:// est ajouté pour vous.

customAlias

string

Votre propre terminaison, ex. za.gl/mon-lien. Elle doit être unique, sinon vous recevez une erreur 409.

password

string

Protège le lien : le visiteur doit saisir un mot de passe pour continuer.

expiresAt

string (ISO date)

Le moment où le lien cesse de fonctionner. Doit être dans le futur.

expiresInMinutes / expiresInHours / expiresInDays

number

Alternative à expiresAt, expiration après une durée relative.

waitTimer

number (0-300)

Secondes d'attente du visiteur sur la page d'aperçu avant la redirection.

customGtmId

string

Votre propre identifiant Google Tag Manager (GTM-XXXXXXX) déclenché sur la page d'aperçu.

title / description

string

Métadonnées facultatives stockées avec le lien.

generateQR

boolean

Renvoie aussi un QR code pour le lien court.

Exemple de requête

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
  }'

Exemple de réponse

Un appel réussi renvoie 200 OK avec le lien court dans 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"
  }
}

Limites de débit et erreurs

10 req/minJusqu'à 10 requêtes par minute et par client.
409Cet alias personnalisé est déjà pris.
400URL invalide ou date d'expiration déjà passée.
429Vous avez atteint la limite de débit ou votre quota mensuel.