Réponse directe
L’API RedirHub se trouve à https://api.redirhub.com/v1 et utilise un jeton Bearer. Créez une redirection avec POST /links et le gestionnaire redirect. Modifiez ou supprimez plusieurs liens à la fois avec PUT /bulk ou DELETE /bulk et un filtre, après avoir prévisualisé la modification avec POST /bulk/summary. L’API est incluse dans Core, Pro et Enterprise.
1. Obtenez un jeton et testez-le#
Créez un jeton comme décrit dans Créer et gérer des jetons API. Chaque jeton appartient à un seul espace de travail. Conservez-le sur votre serveur, jamais dans du code côté navigateur.
bashexport REDIRHUB_TOKEN="your-token"
curl "https://api.redirhub.com/v1/test" \
-H "Authorization: Bearer $REDIRHUB_TOKEN"2. Créez une redirection#
Pour une redirection, url est la source (un domaine, ou un domaine et un chemin, sans https://) et destination est l’URL cible complète. Un domaine seul redirige tous les chemins associés.
bashcurl -X POST "https://api.redirhub.com/v1/links" \
-H "Authorization: Bearer $REDIRHUB_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"handler": "redirect",
"url": "old-site.com/pricing",
"destination": "https://new-site.com/pricing",
"type": "301",
"forward_query": true,
"tags": ["migration"]
}'La réponse renvoie le nouveau lien dans un tableau data, avec son id. Utilisez le gestionnaire migration pour les mappages de migration de site web et short-url ou qr (avec host et alias au lieu de url) pour les liens de marque et les codes QR.
3. Créez-en des centaines à partir d’un fichier#
Parcourez un fichier CSV avec les mêmes colonnes que l’import du tableau de bord (source_url, destination, type) et envoyez une requête par ligne. Respectez les limites de débit et réessayez en cas de 429. Pour un import ponctuel, l’import CSV dans le tableau de bord est plus rapide et affiche d’abord une revue.
pythonimport csv, os, time, requests
API = "https://api.redirhub.com/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['REDIRHUB_TOKEN']}"}
with open("redirects.csv", newline="") as f:
for row in csv.DictReader(f):
body = {
"handler": "redirect",
"url": row["source_url"],
"destination": row["destination"],
"type": row.get("type") or "301",
}
while True:
r = requests.post(f"{API}/links", json=body, headers=HEADERS)
if r.status_code != 429:
break
time.sleep(int(r.headers.get("Retry-After", 5)))
print(row["source_url"], r.status_code, r.json().get("errors", ""))4. Rechercher des liens#
bashcurl -G "https://api.redirhub.com/v1/links" \
-H "Authorization: Bearer $REDIRHUB_TOKEN" \
--data-urlencode "filter[host]=old-site.com" \
--data-urlencode "filter[handler]=redirect"Les résultats sont paginés par curseur : suivez meta.cursor.next jusqu’à ce qu’il soit vide. Les autres filtres incluent tags, destination, search, created_after et created_before ; voir Filtrage et tri.
5. Modifier un lien#
bashcurl -X PUT "https://api.redirhub.com/v1/links/LINK_ID" \
-H "Authorization: Bearer $REDIRHUB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"destination": "https://new-site.com/plans"}'L’URL source d’un lien ne peut pas être modifiée après sa création. Pour déplacer une source, créez un nouveau lien et supprimez l’ancien.
6. Modifier plusieurs destinations à la fois#
Aperçu d’abord. POST /bulk/summary renvoie combien de liens correspondent au filtre, combien ont eu des visites au cours des quatre dernières semaines, et les cinq premiers changements :
bashcurl -X POST "https://api.redirhub.com/v1/bulk/summary" \
-H "Authorization: Bearer $REDIRHUB_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"filter": {"tags": "migration"},
"destination_find": "new-site.com",
"destination_replace": "new-brand.com"
}'Puis envoyez le même corps à PUT /bulk pour l'appliquer. La réponse indique combien de liens ont été affectés. Pour ajouter à la place des paramètres UTM à chaque destination, envoyez destination_params, par exemple {"utm_campaign": "fall-2026"}.
bashcurl -X PUT "https://api.redirhub.com/v1/bulk" \
-H "Authorization: Bearer $REDIRHUB_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"filter": {"tags": "migration"},
"destination_find": "new-site.com",
"destination_replace": "new-brand.com"
}'7. Supprimer en masse#
No undo
DELETE /bulk supprime tous les liens correspondant au filtre et ne peut pas être annulé. Exécutez d'abord POST /bulk/summary avec le même filtre, et सूची??
bashcurl -X DELETE "https://api.redirhub.com/v1/bulk" \
-H "Authorization: Bearer $REDIRHUB_TOKEN" \
-H "Content-Type: application/json" \
-d '{"filter": {"tags": "summer-sale"}}'Au moins un filtre doit avoir une valeur, afin qu'une requête ne puisse pas correspondre par accident à tout l'espace de travail. La réponse renvoie affected (liens supprimés) et pending (liens encore en cours de suppression en arrière-plan).
Vous travaillez plutôt depuis un assistant IA#
Le serveur MCP RedirHub permet à Claude, ChatGPT ou Cursor d'effectuer les mêmes tâches en langage naturel, y compris l'importation de jusqu'à environ 5 000 lignes en une seule requête. Les modifications en masse via MCP renvoient toujours d'abord un essai à blanc et ne s'appliquent qu'après votre confirmation.
Référence complète : référence de l'API RedirHub.
Questions fréquemment posées
Core, Pro et Enterprise. Chaque jeton API est limité à un espace de travail.
Envoyez POST https://api.redirhub.com/v1/links avec handler redirect, url (la source, comme old-site.com/pricing), destination (l'URL cible complète) et éventuellement type, comme 301.
Oui. POST /bulk/summary avec le même filtre et la même modification indique combien de liens correspondent, combien ont eu des visites récentes et les cinq premières destinations avant/après.
Non. Prévisualisez-la avec POST /bulk/summary et gardez une copie de GET /links avant d'appeler DELETE /bulk.
