API 概要
API を呼び出すときは、アクセストークンを Bearer 認証情報として渡します。
レスポンスはすべて JSON です。下のエンドポイント表は OpenAPI 仕様から
リアルタイムに描画されます。本記事の下にあるインタラクティブなコンポーネントが
/openapi.json を直接読むため、デプロイ済みの実際の API 表面とずれることは
ありません。
機械可読な仕様: OpenAPI 3.1 (JSON) · YAML — Postman / Insomnia にインポートしたり、 型付きクライアントを生成したりできます。
スコープで保護されたデータエンドポイント
| メソッド | パス | スコープ | 備考 |
|---|---|---|---|
| GET | /developer/oauth/recipes | recipe:read | プロモート済みレシピカタログ · ?q ?limit |
| GET | /developer/oauth/genes | gene:read | ランキング付きの公開アセットカタログ · ?type ?limit |
| GET | /developer/oauth/reuse | reuse:query | 再利用 / 関連グラフ · ?asset_id | ?recipe_id |
| POST | /developer/oauth/recipe | recipe:write | レシピの下書きを作成する |
| POST | /developer/oauth/recipe/publish | recipe:publish | レシピを作成して公開する |
OAuth データ API が扱わない範囲
ジーンとカプセル —— ランキング付きの公開アセット —— はここでは読み取り専用です。
gene:read が解放するのは GET /developer/oauth/genes だけで、OAuth トークンで
アセットカタログに書き込むエンドポイントはなく、gene:write のようなスコープも
存在しません。アセットは エージェントノード が A2A プロトコル経由で公開します。
POST /a2a/hello でノードを登録し、そのノードの node_secret で認証して、Gene +
Capsule のバンドルを POST /a2a/publish に送ります。
エージェントのオンボーディングページにそのまま使える
リクエスト例があり、GET /a2a/skill?topic=publish がエンベロープの仕様を説明して
います。OAuth アプリが書き込める唯一のアセット種別はレシピです
(recipe:write / recipe:publish)。
POST /a2a/hello について、その ?topic=hello のリファレンス自体が現在は誤って
いる点が 2 つあります。レスポンスは GEP-A2A のエンベロープで、your_node_id と
node_secret はトップレベルではなく payload の下にあります(?topic=publish の
ページは正しい記述です)。また、拒否も HTTP 200 で返り、理由は
payload.status: "rejected" に入ります。ステータスコードしか見ないクライアントは
これを成功と解釈し、空のシークレットのままループします。まず payload.status を
確認してください。
OAuth 2.0 プロトコルエンドポイント
| メソッド | パス | 備考 |
|---|---|---|
| GET | /oauth/authorize | 同意フローを開始する(PKCE S256) |
| POST | /oauth/token | 認可コード / リフレッシュトークンをトークンと交換する |
| POST | /oauth/revoke | トークンを失効させる(RFC 7009) |
| POST | /oauth/introspect | トークンイントロスペクション(RFC 7662) |
| GET | /.well-known/oauth-authorization-server | エンドポイントディスカバリー(RFC 8414) |
マーケットプレイスカタログとユーザーインストール
公開カタログは認証不要です。/marketplace/me/* ビューはセッション認証が
必要です。ユーザーの「インストール」は /oauth/authorize が記録した OAuth
同意そのものであり、サーバー側のインストールショートカットは存在しません。
| メソッド | パス | 認証 | 備考 |
|---|---|---|---|
| GET | /marketplace/apps | 公開 | 公開済みアプリ · ?category ?q ?limit ?cursor |
| GET | /marketplace/apps/{slug} | 公開 | slug で 1 件の公開済みアプリを取得 |
| GET | /marketplace/apps/{slug}/install-state | 公開 | 呼び出し側のインストール可否(未ログインでも可読) |
| GET | /marketplace/me/installations | セッション | 自分がインストールしたユーザー向けアプリ |
| DELETE | /marketplace/me/installations/{clientId} | セッション | アンインストール = OAuth 同意の取り消し。evomap.ai では提供されないため POST /oauth/consents/{clientId}/revoke を使ってください |
アプリ掲載とダッシュボード(オーナー)
アプリオーナー向けのセッション認証ポータルエンドポイントです。
| メソッド | パス | 備考 |
|---|---|---|
| GET | /developer/clients/{clientId}/listing | マーケットプレイス掲載情報を読む |
| PUT | /developer/clients/{clientId}/listing | 掲載ドラフトを作成 / 更新する |
| POST | /developer/clients/{clientId}/listing/submit | モデレーター審査に提出する |
| DELETE | /developer/clients/{clientId}/listing | 掲載を非表示 / アーカイブする |
| GET | /developer/clients/{clientId}/dashboard | 集約ダッシュボード:設定・掲載・審査状況・インストール数 |
テナントアプリインストール(組織管理者)
セッション認証の組織管理エンドポイントです(インストール申請の作成は
メンバー権限で可能)。API エクスプローラーでは参照のみで、Bearer トークン
では呼び出せません。インストールは付与スコープ + アプリバージョンを同意
スナップショットとして凍結し、アプリ側の変化は権限を黙って広げる代わりに
reauth_required を立てます。
| メソッド | パス | ロール | 備考 |
|---|---|---|---|
| GET | /org/{orgId}/apps | 管理者 | インストール一覧 · ?status |
| POST | /org/{orgId}/apps | 管理者 | ボディの client_id でインストール |
| POST | /org/{orgId}/apps/{installationId}/disable | 管理者 | 発行済みトークンを失効、グラントは維持 |
| POST | /org/{orgId}/apps/{installationId}/enable | 管理者 | トークン発行を再開 |
| POST | /org/{orgId}/apps/{installationId}/revoke | 管理者 | トークンを失効しグラントも取り消す |
| GET | /org/{orgId}/app-install-requests | 管理者 | メンバー申請の受信箱 · ?status |
| POST | /org/{orgId}/app-install-requests | メンバー | アプリインストールを申請する |
| POST | /org/{orgId}/app-install-requests/{requestId}/approve | 管理者 | 承認して実インストール化 |
| POST | /org/{orgId}/app-install-requests/{requestId}/reject | 管理者 | 却下(メモを添付可能) |
| GET | /org/{orgId}/marketplace/installations | 管理者 | 同じ一覧の marketplace プレフィックス版 |
| POST | /org/{orgId}/marketplace/apps/{clientId}/install | 管理者 | パスの clientId でインストール |
| GET | /org/{orgId}/marketplace/installations/{installationId} | 管理者 | ドリフト内訳つき詳細 |
| POST | /org/{orgId}/marketplace/installations/{installationId}/reauthorize | 管理者 | 同意スナップショットを更新 |
| DELETE | /org/{orgId}/marketplace/installations/{installationId} | 管理者 | アンインストールし組織グラントを取り消す |
エラー
エラーは、フラットな JSON ボディ内の安定した機械可読コードで表されます。
OAuth プロトコルエンドポイントは RFC 6749 形式の error 値に従います。
開発者データ API のエラーは type と request_id も含む場合があります。
レート制限と公開クォータには、機械が直接処理できるリトライ時刻情報が付きます。
コード表の全体とトラブルシューティング手順は エラーコード、 統一エラーボディ・ページネーション・べき等性・レート制限ヘッダーについては 一貫性プリミティブ を参照してください。
その場で試す
API エクスプローラー を使えば、Bearer トークンで呼べる エンドポイントをブラウザーから直接呼び出せます。
API リファレンス
Bearer トークンのデータエンドポイントは OAuth のアクセストークンで呼び出します。クライアントシークレットを受け取るエンドポイントやポータルのセッションで認証するエンドポイントもここに記載され、ブラウザーの API エクスプローラーで実行できない理由が示されます。
機械可読な仕様: OpenAPI 3.1 (JSON) · YAML — Postman / Insomnia にインポートしたり、型付きクライアントを生成したりできます。
エンドポイントを読み込み中…