直接回答

RedirHub API は https://api.redirhub.com/v1 にあり、Bearer トークンを使用します。POST /links と handler redirect でリダイレクトを作成します。PUT /bulk または DELETE /bulk とフィルターを使って多数のリンクを一括で変更または削除でき、変更前には POST /bulk/summary でプレビューします。API は Core、Pro、Enterprise に含まれています。

1. トークンを取得してテストする#

API トークンの作成と管理に記載されているとおりにトークンを作成します。各トークンは 1 つのワークスペースに属します。サーバーに保管し、ブラウザコードには絶対に含めないでください。

bashexport REDIRHUB_TOKEN="your-token"

curl "https://api.redirhub.com/v1/test" \
  -H "Authorization: Bearer $REDIRHUB_TOKEN"

2. 1 つのリダイレクトを作成する#

リダイレクトでは、url が元の URL(ドメイン、または https:// を含まないドメインとパス)で、destination が完全な遷移先 URL です。ドメインのみを指定すると、そのドメイン上のすべてのパスがリダイレクトされます。

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

レスポンスには、新しいリンクが id とともに data 配列内で返されます。website-migration のマッピングには handler migration を、ブランドリンクや QR コードには url の代わりに host と alias を使って short-url または qr を使用します。

3. ファイルから数百件を作成する#

ダッシュボードのインポートと同じ列(source_url、destination、type)を持つCSVをループ処理し、各行ごとに1件のリクエストを送信します。レート制限内に収め、429では再試行してください。1回限りのインポートなら、ダッシュボードのCSVインポートのほうが速く、先にレビューも表示されます。

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. リンクを検索する#

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"

結果はカーソルページネーションです。meta.cursor.next が空になるまでたどってください。その他のフィルターには tags、destination、search、created_after、created_before があります。フィルタリングと並べ替えを参照してください。

5. 1つのリンクを変更する#

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

リンクの元URLは、作成後に変更できません。元URLを移すには、新しいリンクを作成して古いリンクを削除してください。

6. 複数の宛先を一度に変更する#

まずプレビューします。POST /bulk/summary は、フィルターに一致するリンク数、過去4週間に訪問があったリンク数、そして最初の5件の変更内容を返します。

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

次に、同じボディを PUT /bulk に送って適用します。レスポンスで、影響を受けたリンク数がわかります。すべての宛先に UTM パラメータを追加する場合は、代わりに destination_params を送信します。たとえば {"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. 一括削除#

No undo

DELETE /bulk は、フィルターに一致するすべてのリンクを削除し、元に戻すことはできません。まず同じフィルターで POST /bulk/summary を実行し、コピーが必要なら GET /links でリンク一覧を取得してください。

bashcurl -X DELETE "https://api.redirhub.com/v1/bulk" \
  -H "Authorization: Bearer $REDIRHUB_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"filter": {"tags": "summer-sale"}}'

少なくとも 1 つのフィルターに値が必要なので、誤ってワークスペース全体に一致してしまうことはありません。レスポンスでは affected(削除されたリンク)と pending(バックグラウンドでまだ削除中のリンク)が返されます。

代わりに AI アシスタントから操作する#

RedirHub MCP サーバー を使えば、Claude、ChatGPT、Cursor からでも同じ作業を自然言語で実行できます。1 回の呼び出しで最大約 5,000 行のインポートも可能です。MCP 経由の一括変更は常に最初にドライランが返され、確認後にのみ適用されます。

完全なリファレンス: RedirHub API リファレンス。

よくある質問

Core、Pro、Enterpriseです。各APIトークンは1つのワークスペースにスコープされます。

POST https://api.redirhub.com/v1/links に、handler redirect、url(ソース。例: old-site.com/pricing)、destination(完全なターゲットURL)、必要に応じて type(例: 301)を送信します。

はい。POST /bulk/summary に同じフィルターと変更を指定すると、どれだけのリンクが一致するか、どれだけに最近の訪問があったか、そして最初の5件の変更前後の宛先が表示されます。

いいえ。POST /bulk/summary でプレビューし、DELETE /bulk を呼び出す前に GET /links からコピーを保持してください。