API & SDK. 好きな言語でElido上に構築しましょう。
フルREST API、TypeScript、Go、Python SDKに加え、AIエージェントのワークフロー用MCPサーバーを提供。レート制限はプランに応じてスケールし、APIキーはきめ細かな権限セットを備えたワークスペーススコープです。
- TypeScript、Go、PythonのSDK - すべてオープンソース
- 対話的ドキュメント付きのOpenAPI 3.1仕様
- ClaudeおよびAIエージェントワークフロー向けMCPサーバー
- プランに応じたレートリミット付きスコープ別APIキー
公式SDK
4つのSDK、1つのAPI。
各SDKは同じOpenAPI 3.1仕様から生成されます - APIがリリースされたその日にSDKも更新されます。TypeScriptの型、Goのインターフェース、Pythonのデータクラスは自動的に同期します。
型付きのリクエスト/レスポンスオブジェクト。Node.js、Cloudflare Workers、Vercel Edge、Denoで動作します。
npm install @elido/sdkコンテキスト伝播とゼロアロケーションのホットパスを備えた、慣用的な高スループット向けGo。
go get github.com/elidoapp/elido-go同期および非同期(asyncio)クライアント。Pydantic v2モデルで型付け。PyPIで配布。
pip install elido-sdkModel Context ProtocolサーバーでElidoのリンク管理をClaude、ChatGPT、Cursor、その他MCP対応のAIエージェントと接続します。
npx @elido/mcp-serverAPIリファレンス
OpenAPI 3.1。対話的で、常に最新。
OpenAPI仕様は /openapi.json にあり、すべてのエンドポイント、パラメーター、レスポンス形式の信頼できる情報源です。SDKの型はここから生成されます - ずれも手書きのスタブもありません。
- ダウンロード可能な仕様/openapi.json - 機械可読なJSON
- 対話的リファレンスブラウザから認証付き呼び出しを実行
- PostmanコレクションOpenAPI仕様から自動生成
- SDK生成リリースごとに仕様から型を生成
- 90日間の非推奨期間破壊的変更は十分な余裕をもって告知されます
- POST
/v1/links短縮リンクを作成します - GET
/v1/links/{id}IDからリンクを取得します - PATCH
/v1/links/{id}リンクの遷移先またはメタデータを更新します - DELETE
/v1/links/{id}リンクをアーカイブまたは削除します - GET
/v1/linksリンクを一覧表示します(カーソルページング) - POST
/v1/bulk/links最大500件のリンクをまとめて作成します
X-RateLimit-Remaining
X-RateLimit-Reset
レートリミット
プランに合わせてスケールするリミット。
ワークスペースおよびAPIキーごとにトークンバケット方式のレートリミットを適用します。バーストリザーブにより最大5秒間10倍まで急増できるため、キャンペーン開始時の一括リンク作成ジョブも壁にぶつかりません。
- すべてのレスポンスにX-RateLimit-Limit / Remaining / Resetヘッダーを付与
- 429時にSDKが指数バックオフで自動リトライ
- バルクエンドポイントは別の、より高いリミット
- スコープ別キー - 分析の読み取り専用キーは書き込みクォータを消費しません
- 高ボリュームのエンタープライズ向けカスタムリミット - 営業までお問い合わせください
できること
- OpenAPI 3.1仕様のREST API
- TypeScript、Go、Python SDK
- Claude、ChatGPT、Cursor向けMCPサーバー
- スコープごとの権限を備えたワークスペーススコープのAPIキー
- 非同期イベント配信用のWebhooks
- gRPC内部API (エッジ → コア)
ElidoのAPIスタックが開発者に提供するもの
OpenAPI仕様とSDKはあくまで基本に過ぎません。以下の機能は、本番環境での統合を構築する際に重要となる詳細を網羅しています。
OpenAPI 3.1仕様、Postmanコレクション、インタラクティブなリファレンス - すべてのエンドポイントが例付きでドキュメント化されています
ElidoのすべてのAPIエンドポイントは、/docs/api-reference で公開されている OpenAPI 3.1仕様、および /openapi.json からダウンロード可能なJSONファイルにドキュメント化されています。この仕様が唯一の真実(Source of Truth)であり、SDKの型はこの仕様から生成されるため、リファレンスとSDKの間で乖離が生じることはありません。インタラクティブなAPIリファレンスを使用すると、ブラウザから直接ワークスペースに対して認証済みコールを実行できます(APIキーを貼り付け、ワークスペースを選択し、エンドポイントを呼び出すだけです)。各エンドポイントのドキュメントページからは、OpenAPI仕様から自動生成された Postman コレクションにリンクされています。APIの変更履歴はメインの変更履歴と共にバージョン管理されており、破壊的変更については削除の90日前に移行ガイドと共に非推奨通知が行われます。
TypeScript、Go、Python SDK - OpenAPI仕様から生成され、APIリリースごとに更新されます
TypeScript SDK (@elido/sdk) は npm で公開されており、型定義されたリクエストおよびレスポンスオブジェクトでAPIの全領域をカバーしています。Node.js とエッジランタイム (Cloudflare Workers, Vercel Edge, Deno) の両方をサポートしています。Go SDK (github.com/elidoapp/elido-go) は、コンテキストの伝播と、高スループット用途向けにゼロアロケーションのホットパスを備えた慣用的な Go です。Python SDK (elido-python, PyPIで利用可能) には、同期と非同期 (asyncio) の両方のクライアントが含まれています。3つのSDKはすべて同じ OpenAPI 仕様からカスタムジェネレーターを使用して生成されており、APIリリースと同日にアップデートが提供されます。Ruby と PHP のコミュニティメンテナンスによるSDKも存在しますが、ドキュメントには記載されているものの公式にはサポートされていません。お使いの言語がカバーされていない場合は、OpenAPI 仕様がクライアント構築への最短ルートです。
スコープごとの権限を備えたワークスペースAPIキー - 分析専用、リンク管理用、管理者用などでキーを分離可能
APIキーはワークスペーススコープ(ユーザースコープではない)であり、キー作成時に定義された権限セットが含まれます。スコープ:links:read, links:write, links:delete, analytics:read, campaigns:read, campaigns:write, webhooks:manage, domains:manage, workspace:admin。閲覧専用の分析統合には analytics:read のみのキーを使用してください。リンクを作成するCI/CDパイプラインには links:write を使用します。管理者操作には workspace:admin が必要です。各キーは他のキーを無効にすることなく個別にローテーションでき、ローテーションにより新しいキー値が生成されると、古い値は即座に無効化されます。キーは作成時に一度だけ表示されます。Elidoはキーの平文ではなく、キーの HMAC を保存します。SCIMでプロビジョニングされたチームには、本番環境の統合用に個人用APIキーではなくサービスアカウントキーの使用を推奨します。
Elido MCPサーバー: リンク管理をClaude、ChatGPT、Cursor、およびあらゆるMCP互換のAIエージェントに接続
Elido MCPサーバー (@elido/mcp-server, npmで公開) は Model Context Protocol を実装しており、Elidoのリンク管理をAIエージェントから呼び出し可能なツールとして公開します。サポートされているツール:create_link, get_link, update_link, list_links, get_analytics, create_campaign, list_campaigns。MCPサーバーはワークスペースAPIキーで認証し、ツールのアクセス範囲をキーの権限に制限します。Claudeのツール使用ループ、ChatGPTプラグイン(関数呼び出し)、CursorのAIコンテキスト、またはあらゆるMCP互換のランタイムに組み込んでください。ユースケース例:自然言語の指示(「この製品発表用に、チャネルごとに5つのリンクを作成し、Q2発表キャンペーンテンプレートからUTMを設定して」)を受け取り、指示から導き出された適切なパラメータで create_link を5回呼び出すAIアシスタント。MCPサーバーはセルフホスト可能で、ローカル開発用に npx バイナリとしても実行できます。
プラン別のレート制限 - Free 60回/分、Pro 300回/分、Business 1,000回/分 - さらにバースト許容量も
APIレート制限は、ワークスペースごと、APIキーごとに適用されます:Freeは毎分60リクエスト、Proは毎分300リクエスト、Businessは毎分1,000リクエスト。バースト許容量により、ハードリミットがかかる前に最大5秒間、レート制限の10倍まで超過することができます。すべてのレスポンスにはレート制限ヘッダーが含まれます:X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset (Unixタイムスタンプ)。SDKには 429 レスポンスに対する指数バックオフ付きの自動リトライ機能が含まれているため、ご自身で実装する必要はありません。一括操作(リンク作成、分析エクスポート)については、アイテムごとのAPIコールではなく、一括エンドポイント(POST /bulk、スケジュールされたエクスポート)を優先してください。一括エンドポイントには個別のより高い制限が設定されています。Businessプランの制限を超える持続的なスループットが必要なユースケース(例:キャッシュ投入のためにElidoのAPIを呼び出すセルフホスト型の高ボリュームリダイレクター)については、カスタム制限について営業までお問い合わせください。
Elido APIで構築を行う開発チーム
名称はプレースホルダーです。実際のカスタマーケーススタディは、公開され次第ここに掲載されます。
“TypeScript SDKの型は OpenAPI 仕様から生成されています。Elidoが新しいAPIバージョンをリリースした際にパッケージを更新すると、統合で非推奨のフィールドを使用しているかどうかが TypeScript によって即座に判明します。ランタイムエラーに驚かされることはありません。”
“Elido MCPサーバーを Claude に接続し、コンテンツチームがチャットインターフェースからキャンペーンリンクの作成とタグ付けを行えるようにしました。セットアップは20分でした。現在、コンテンツチームからエンジニアリングへのリンク管理に関するサポートチケットは40%減少しています。”
“コンテキスト伝播を備えた Go SDK は、当社のサービスメッシュに直接適合します。出荷作成の時点でサーバー側で配送追跡ページ用の短縮リンクを作成していますが、SDKがリトライとレート制限のバックオフを透過的に処理してくれます。”
Elido API & SDK vs Bitly API vs Rebrandly API
3社ともREST APIを提供していますが、SDKの品質、レート制限、OpenAPI仕様の有無、MCP/AIエージェント対応に違いがあります。
| Feature | Elido | Bitly API | Rebrandly API |
|---|---|---|---|
| OpenAPI / Swagger 仕様 | OpenAPI 3.1 - ダウンロード可能、SDKの唯一の真実 | Swagger 仕様が利用可能 | OpenAPI 仕様が利用可能 |
| 公式SDK | TypeScript, Go, Python - 仕様から生成 | JavaScript および Python の公式SDK | JavaScript SDK のみ |
| レート制限 (Business) | 毎分 1,000 リクエスト(バーストあり) | Enterpriseプラン:契約により異なる | 毎分 500 リクエスト (Business) |
| AIエージェント向けMCPサーバー | あり - npm の @elido/mcp-server | なし | なし |
| スコープごとのAPIキー権限 | あり - 9つのスコープ、キーごとの割り当て | 閲覧専用 vs 読み書き専用のみ | 限定的なスコープ制御 |
| Webhook 配信 | HMAC-SHA256 署名、自動リトライ、SIEM モード | なし | なし |
| gRPC 内部 API | あり - エッジからコアへの低遅延内部コール | REST のみ | REST のみ |
API & SDK に関する質問
APIはバージョン管理されていますか?破壊的変更はどのように扱われますか?
はい。現在のバージョンは v1 で、/v1/... からアクセスできます。破壊的変更は、古い動作が削除される90日前に移行ガイドと共に変更履歴で発表されます。非破壊的な追加(新しいフィールド、新しいオプションパラメータなど)は、バージョンの更新なしでリリースされます。APIバージョンは安定しており、将来 v2 が導入された場合でも、v1 は少なくとも12か月間並行して稼働します。/openapi.json の OpenAPI 仕様は常に現在の安定バージョンを反映しています。
APIではどのような認証方法が使用されますか?
Bearerトークン認証を使用します。Authorization ヘッダーに 'Bearer elido_sk_...' としてAPIキーを含めてください。キーの値は作成時に一度だけ表示されます。Elidoからお客様のシステムへのサーバー間 Webhook コールの場合は、Elidoが共有シークレットを使用して HMAC-SHA256 でリクエストボディに署名します。Webhook ハンドラーで X-Elido-Signature ヘッダーを検証してください。ワークスペースAPIキーの配布が実用的でないパートナー統合向けには、OAuth2 クライアント資格情報も利用可能です。OAuth2 パートナーのオンボーディングについてはお問い合わせください。
TypeScript SDKは Cloudflare Workers やエッジランタイムで動作しますか?
はい。TypeScript SDK は、最新のすべてのエッジランタイムで使用可能な fetch API を使用しており、Node.js 専用の API(fs, http, Buffer など)を避けています。Cloudflare Workers, Vercel Edge Functions, Deno Deploy でテスト済みです。制限のあるエッジ環境でSDKを実行する場合は、バンドルからCLIユーティリティや Node.js 専用モジュールを除外した軽量なインポートパス (@elido/sdk/edge) を使用してください。
MCPサーバーを Claude や ChatGPT で使用するにはどうすればよいですか?
Claude の場合:APIキーを環境変数として設定し、claude_desktop_config.json に MCPサーバーを追加します。Elido MCPドキュメントにコピー&ペースト可能な設定ブロックがあります。ChatGPT(関数呼び出し)の場合:MCPサーバーは /.well-known/mcp.json で JSON Schema ツールマニフェストを公開しており、これを GPT のアクション設定にインポートできます。Cursor の場合:npx @elido/mcp-server を使用して、Cursor の設定で MCPサーバーをローカルツールとして追加します。すべての設定には、関連するスコープを持つ有効な Elido APIキーが必要です。
リストエンドポイントのページネーションモデルはどうなっていますか?
すべてのリストエンドポイントはカーソルベースのページネーションを使用します。レスポンスには next_cursor フィールドが含まれます(これ以上のページがない場合は null)。次回のリクエスト時に cursor クエリパラメータとしてその値を渡してください。デフォルトのページサイズは50で、最大は200です。カーソルベースのページネーションは安定しており、オフセットベースのページネーションとは異なり、ページ間でレコードの追加や削除が発生してもアイテムがスキップされたり重複したりすることはありません。SDKには、ページの境界を意識せずにアイテムを1つずつ取得できる自動ページネーションヘルパーが含まれています。
1つのクライアントから複数のワークスペースをAPIで管理できますか?
はい。APIキーはワークスペーススコープですが、複数のワークスペースのキーを保持することができます。APIエンドポイントのプレフィックスは /v1/workspaces/{workspace_id}/... となっており、対象のワークスペースIDを渡します。クライアントのワークスペースを管理する代理店ポータルのようなマルチワークスペース管理ツールを構築する場合は、ワークスペースごとに1つのAPIキーを保持することになります。クロスワークスペーススコープを持つ OAuth2 パートナー資格情報については、プラットフォーム統合向けに提供可能です。営業までお問い合わせください。
Freeプランのレート制限はどうなっていますか?また、どのように適用されますか?
Freeプランは、ワークスペースごとに毎分60リクエストです。レート制限は、APIゲートウェイでトークンバケットアルゴリズムを使用して適用されます。バケットが空になると、APIは HTTP 429 を返し、次のトークンが利用可能になるタイミングを示す Retry-After ヘッダーを含めます。SDKは 429 レスポンス時の Retry-After を自動的に尊重します。なお、一括エンドポイントには個別の制限があります。例えばリンクの一括作成エンドポイントは、ペイロードに含まれるリンクの数に関わらず、1リクエストとしてカウントされます。
サンドボックスやテスト環境はありますか?
はい。任意のAPIリクエストに X-Elido-Sandbox: true ヘッダーを渡すと、サンドボックス環境に対して実行されます。サンドボックスリクエストは、サンドボックス化されたワークスペースパーティション内に実際のオブジェクト(リンク、キャンペーンなど)を作成しますが、リダイレクトトラフィックは本番エッジからは提供されません。統合テストやCI/CDパイプラインにはサンドボックスを使用してください。サンドボックスのオブジェクトは、プランのリンク数やクリック数のクォータにはカウントされません。サンドボックスは24時間ごとにリセットされるため、本番用データをサンドボックスに依存させないでください。