Référence API
Créez et gérez des liens courts par programmation. Chaque requête nécessite un jeton Bearer de l'écran des clés API de votre tableau de bord.
Authentification
Envoyez la clé comme jeton bearer à chaque requête.
https://urlvis.comCréer un lien
Crée un nouveau lien court. La destination est analysée par le filtre anti-fraude au moment de la création — les écritures sont plus lentes qu'un raccourcisseur classique.
/api/linkslinks:writecurl -X POST https://urlvis.com/api/links \
-H "Authorization: Bearer urlvis_live_..." \
-H "Content-Type: application/json" \
-d '{
"destination": "https://example.com/campaign",
"domainId": "<domain-uuid>",
"slug": "spring",
"expiresAt": "2026-12-31T23:59:00.000Z"
}'destination, domainId — required · slug, expiresAt — optional
Lister les liens
Renvoie tous les liens de votre compte.
/api/linkslinks:readcurl https://urlvis.com/api/links \ -H "Authorization: Bearer urlvis_live_..."
Modifier la destination d'un lien
Met à jour où pointe un lien existant. Le lien court, son QR code et l'historique des clics restent identiques. La nouvelle destination passe par la même vérification de sécurité qu'un nouveau lien, donc peut renvoyer 422 blocked_by_filter.
/api/links/{id}links:writecurl -X PATCH https://urlvis.com/api/links/<link-id> \
-H "Authorization: Bearer urlvis_live_..." \
-H "Content-Type: application/json" \
-d '{"destination": "https://example.com/new-target"}'destination — required · utm — optional. The short link, its QR code and click history stay the same. The new destination runs through the same security scan as a new link, so this can return 422 blocked_by_filter.
Supprimer un lien
Supprime un lien de votre compte. Renvoie 204 en cas de succès, 404 si le lien n'existe pas.
/api/links/{id}links:writecurl -X DELETE https://urlvis.com/api/links/<link-id> \ -H "Authorization: Bearer urlvis_live_..."
204 on success, 404 if no such link exists on your account.
Exporter les statistiques
Exporte les statistiques de clics en CSV. Filtrage optionnel par linkId. La durée de rétention dépend de votre forfait.
/api/analytics/export?linkId=links:readcurl "https://urlvis.com/api/analytics/export?linkId=<link-uuid>" \ -H "Authorization: Bearer urlvis_live_..." \ -o analytics.csv
Limites de débit
Chaque réponse indique votre quota restant. Les limites sont par clé, pas par adresse IP.
X-RateLimit-Limit: 60 # links:write X-RateLimit-Limit: 600 # links:read X-RateLimit-Remaining: 59 X-RateLimit-Reset: 42 # seconds Retry-After: 42 # 429 only
Erreurs
Les erreurs sont renvoyées en JSON avec un champ error et le statut HTTP correspondant.
401 invalid_api_key key unknown, revoked, or plan no longer includes API 403 insufficient_scope key lacks the scope this endpoint needs 404 not_found no such link on this account 422 blocked_by_filter destination rejected by the fraud filter 402 link_quota monthly plan quota exhausted 429 rate_limited see Retry-After
Obtenir votre ID de domaine
L'endpoint POST /api/links nécessite un domainId. Il n'existe actuellement aucun endpoint API pour lister vos domaines — l'endpoint domains nécessite une session du tableau de bord. Pour obtenir votre ID de domaine :
- Ouvrez le tableau de bord et allez dans Domaines.
- Chaque carte de domaine affiche son ID avec un bouton de copie à côté — copiez-le depuis là.