rdurl API

Créez et gérez des liens courts avec du code

Informations générales sur l'API

  • Toutes les requêtes nécessitent un jeton API. Reportez-vous à la section Authentification.
  • Le point d'accès de base est : https://rdurl.link/api
  • Seul HTTPS est pris en charge.
  • Tous les points d'accès renvoient un objet JSON.
  • Les requêtes sont envoyées en JSON (Content-Type: application/json).
  • Tous les champs liés au temps et aux horodatages sont en millisecondes.
  • Tout l'encodage des caractères est en UTF-8.

Authentification

L'API utilise un jeton pour identifier à quel compte appartient une requête. Un jeton équivaut au mot de passe du compte : quiconque le possède peut créer et supprimer vos liens.

Étape 1. Générez un jeton

Connectez-vous au tableau de bord et générez un jeton depuis le menu « Jeton API ». Chaque génération crée un nouveau jeton, consultable une seule fois.

Étape 2. Ajoutez le jeton à votre requête

Choisissez l'une des deux méthodes ci-dessous.

1. Authorization: Bearer (recommandé)

La méthode d'authentification standard de la plupart des API publiques.

curl https://rdurl.link/api/link/create   -H "Authorization: Bearer rd_YOUR_TOKEN"   -H "Content-Type: application/json"   -d '{ "url": "https://example.com/very/long/url" }'

2. x-api-key en-tête

Pratique pour les outils qui ne gèrent pas facilement l'en-tête Authorization.

curl https://rdurl.link/api/link/create   -H "x-api-key: rd_YOUR_TOKEN"   -H "Content-Type: application/json"   -d '{ "url": "https://example.com/very/long/url" }'

Étape 3. Vérifiez votre jeton

Exécutez la commande ci-dessous. Si votre liste de liens est renvoyée, le jeton fonctionne.

curl https://rdurl.link/api/link/list \
  -H "Authorization: Bearer rd_YOUR_TOKEN"

Gestion des jetons

Un jeton est composé de rd_ suivi de 32 caractères hexadécimaux. Il ne peut être consulté qu'une seule fois à la génération : gardez-le en sécurité. En cas de fuite suspectée, révoquez-le immédiatement depuis le tableau de bord — il cesse de fonctionner aussitôt.

Points d'accès

POST /api/link/create

Créez un lien court. Envoyez une URL et recevez un slug et le lien court.

Paramètres

  • urlURL à raccourcir (requis)
  • titleTitre du lien (facultatif, 100 caractères max)
  • folderDossier du lien (facultatif, 100 caractères max — filtre la liste par dossier)
  • domainDomaine personnalisé (optionnel, ex. example.com)

Requête

{ "url": "https://example.com/very/long/url" }

Réponse

{
  "success": true,
  "message": {
    "slug": "abc123",
    "short": "https://rdurl.link/abc123",
    "domain_no": 0,
    "domain": ""
  }
}
GET /api/link/list

Liste vos liens avec pagination, 20 par page. Prend en charge la recherche et le filtre par domaine.

Paramètres

  • pageNuméro de page (par défaut 1)
  • domainDomaine personnalisé (optionnel, ex. example.com)
  • searchMot-clé (correspondance partielle slug/URL)
  • folderDossier du lien (facultatif, 100 caractères max — filtre la liste par dossier)

Requête

GET /api/link/list?page=1&domain=example.com&search=keyword

Réponse

{
  "success": true,
  "message": {
    "total": 42,
    "page": 1,
    "list": [
      {
        "slug": "abc123",
        "url": "https://example.com/very/long/url",
        "short": "https://rdurl.link/abc123",
        "clicks": 128,
        "tm": 1789379625000
      }
    ]
  }
}
GET /api/link/info

Récupère les détails et le nombre de clics d'un lien.

Paramètres

  • slugslug (requis)
  • domainDomaine personnalisé (optionnel, ex. example.com)

Requête

GET /api/link/info?slug=abc123

Réponse

{
  "success": true,
  "message": {
    "slug": "abc123",
    "url": "https://example.com/very/long/url",
    "short": "https://rdurl.link/abc123",
    "clicks": 128,
    "tm": 1789379625000
  }
}
GET /api/link/stats

Statistiques de clics par lien — total, aujourd'hui et top 10 des pays.

Paramètres

  • slugslug (requis)
  • domainDomaine personnalisé (optionnel, ex. example.com)

Requête

GET /api/link/stats?slug=abc123

Réponse

{
  "success": true,
  "message": {
    "clicks": 128,
    "clicksToday": 5,
    "countries": [
      { "country": "KR", "clicks": 80 },
      { "country": "US", "clicks": 30 }
    ]
  }
}
DELETE /api/link

Supprime un lien. Les liens globaux peuvent être restaurés pendant 30 jours ; les liens de domaine personnalisé sont supprimés immédiatement.

Paramètres

  • slugslug (requis)
  • domainDomaine personnalisé (optionnel, ex. example.com)

Requête

DELETE /api/link
{ "slug": "abc123" }

Réponse

{ "success": true }

Limites de débit

Jusqu'à 10 requêtes par minute par IP et 1 000 liens par jour par compte. Au-delà, une réponse 429 est renvoyée.

Codes d'erreur

En cas d'échec, la réponse contient success: false et un code d'erreur.

{ "success": false, "message": "api_invalid_token" }
codestatusSignification
api_invalid_token401Jeton manquant ou invalide
link_invalid_url400URL invalide (http/https uniquement)
link_invalid_slug400Format de slug invalide
link_not_found400Lien introuvable
domain_not_found400Domaine personnalisé introuvable
link_own_domain400Impossible de raccourcir votre propre domaine
link_create_failed400Échec de la création du lien
link_rate_limit429Limite de requêtes dépassée
koenjazh-TWzh-CNviesptfrru