Evergreen API - 使用ガイド
このページでは、Evergreen API(OpenAPI 3.0、バージョン 1.6.0)の呼び出し方法を説明します。ベース URL、認証、必須ヘッダー、一般的なエンドポイント、リクエスト例(curl、PowerShell、Node)、一般的なレスポンス、および使用上のヒントをまとめています。
💡 API を対話形式で調べるには、Swagger UI を使った完全な API ドキュメントを参照してください。
ベース URL
- プライマリ:
https://evergreen-api.stealthpuppy.com/
このドキュメントのすべてのエンドポイントは、このベース URL からの相対パスです。
認証とヘッダー
認証は不要です。すべてのリクエストに、呼び出し元のアプリケーションまたは組織を識別するカスタム User-Agent ヘッダーを含める必要があります。例: App-Pipeline/1.0.0 (Contoso; https://contoso.com)。
コンテンツ タイプ
- リクエスト: 該当する場合は
application/jsonを使用します。 - レスポンス: この API の対象エンドポイントは JSON を返します。
便利なエンドポイント(概要)
GET /apps- サポートされているすべてのアプリケーションを一覧表示しますGET /app/{appId}- 指定したアプリケーションの詳細を取得します({appId}はアプリケーション識別子に置き換えます)GET /endpoints/versions- Evergreen がバージョン番号とダウンロード情報を返す際に使用するホスト名を返しますGET /endpoints/downloads- アプリケーション インストーラーのダウンロードに使用するホスト名を返しますGET /health- API の正常性と診断情報を返します
これらは、最もよく使われるエンドポイントです。
例: サポートされているアプリケーションの一覧(GET /apps)
リクエスト(curl):
curl -sS -H "User-Agent: App-Pipeline/1.0.0 (Contoso; https://contoso.com)" "https://evergreen-api.stealthpuppy.com/apps"レスポンス例(200):
[
{
"Name": "MicrosoftEdge",
"Application": "Microsoft Edge",
"Link": "https://www.microsoft.com/edge"
},
{
"Name": "MozillaFirefox",
"Application": "Mozilla Firefox",
"Link": "https://www.mozilla.org/firefox"
}
]PowerShell(Invoke-RestMethod):
Invoke-RestMethod -Uri 'https://evergreen-api.stealthpuppy.com/apps' -Method Get -Headers @{'User-Agent' = 'App-Pipeline/1.0.0 (Contoso; https://contoso.com)'}Node(fetch):
const fetch = require('node-fetch');
async function listApps(){
const res = await fetch('https://evergreen-api.stealthpuppy.com/apps', {
headers: {
'User-Agent': 'App-Pipeline/1.0.0 (Contoso; https://contoso.com)'
}
});
const json = await res.json();
console.log(json);
}
listApps();Python(requests):
import requests
headers = {'User-Agent': 'App-Pipeline/1.0.0 (Contoso; https://contoso.com)'}
resp = requests.get('https://evergreen-api.stealthpuppy.com/apps', headers=headers)
resp.raise_for_status()
data = resp.json()
print(data)例: アプリケーションの詳細を取得(GET /app/{appId})
リクエスト(curl)- /apps の Name 値である MicrosoftEdge に置き換えます:
curl -sS -H "User-Agent: App-Pipeline/1.0.0 (Contoso; https://contoso.com)" "https://evergreen-api.stealthpuppy.com/app/MicrosoftEdge"レスポンス例(200):
{
"Version": "138.0.3351.109",
"URI": "https://msedge.sf.dl.delivery.mp.microsoft.com/filestreamingservice/files/.../MicrosoftEdgeEnterpriseX64.msi",
"Size": 157286400,
"Architecture": "x64",
"Type": "msi",
"Language": "en-US"
}注:
- レスポンスは必須の
VersionおよびURIフィールドを含むオブジェクトです。Size、Architecture、Type、Languageは利用可能な場合に含まれます。
例: エンドポイントの一覧
GET /endpoints/versions と GET /endpoints/downloads は、オブジェクトの配列を返します。各オブジェクトはアプリケーションを識別し、ホスト名の Endpoints 配列を含みます。Evergreen のホストへの通信を許可する必要がある場合(ファイアウォール ルールやプロキシなど)に、これらの一覧を使用します。
呼び出し例(curl):
curl -sS -H "User-Agent: App-Pipeline/1.0.0 (Contoso; https://contoso.com)" "https://evergreen-api.stealthpuppy.com/endpoints/versions"レスポンス例(200):
[
{
"Application": "Microsoft Edge",
"Endpoints": ["edgeupdates.microsoft.com", "www.microsoft.com"]
}
]例: 正常性チェック(GET /health)
正常性エンドポイントは全体的な状態、バインディングの利用可否、環境を報告します。キャッシュおよび KV の診断情報が含まれる場合もあります。
curl -sS -H "User-Agent: App-Pipeline/1.0.0 (Contoso; https://contoso.com)" "https://evergreen-api.stealthpuppy.com/health"レスポンス例(200):
{
"status": "ok",
"timestamp": "2025-10-12T10:30:00.000Z",
"bindings": {
"evergreen": true,
"logsBucket": true
},
"environment": "production",
"kvTest": {
"accessible": true,
"hasAllapps": true,
"allappsType": "object"
}
}エラー処理
- API は標準の HTTP ステータス コードに従います。2xx 以外のレスポンスはエラーを示します。
User-Agentヘッダーがない、または無効な場合は400、不明なアプリケーションの場合は404が返されます。- エラー レスポンスには人が読める
messageが含まれ、documentationURL が含まれる場合もあります。 - クライアント エラー(4xx)の場合はリクエスト(パラメーターや URL エンコード)を確認します。サーバー エラー(5xx)の場合は、後でもう一度試すか API の運用者に問い合わせてください。
ヒント
- スクリプトでは、一時的なネットワーク エラーに備えて短い再試行・バックオフ処理を含めてください。
- 対話型 API ドキュメントを使って、利用可能なすべてのエンドポイントを確認できます。
このドキュメントについて
この使用ガイドは OpenAPI 3.0 仕様(バージョン 1.6.0)に基づいています。エンドポイント、パラメーター、レスポンス スキーマの完全な仕様については、API ドキュメントを参照してください。
