コンテンツにスキップ

公開 API

Nyan Streaming は、サーバーの稼働状況組織の配信状況・視聴者数を取得できる読み取り専用の公開 API を提供しています。自作サイトへのライブ表示、視聴者数の外部集計、監視ツールとの連携などにご利用いただけます。

  • ベース URL: https://api.nyst.live/api/v1
  • レスポンスはすべて JSON です。
  • 現在の公開 API は読み取り専用です(配信状態・視聴者数の取得)。

/status/viewersAPI キーが必要です。ダッシュボードの 設定 › API キー で発行し、Authorization ヘッダーに Bearer トークンとして送ります。

Authorization: Bearer <YOUR_API_KEY>
  • API キーは nyst_live_ から始まる文字列です。
  • 発行時のみキーが表示されます。その場でコピーしてください(再表示されません)。
  • キーには任意で有効期限を設定できます。不要になったキーはダッシュボードから失効できます。
  • /health/openapi.json認証不要です。

/status/viewers は、組織全体で 1 時間あたり既定 100 リクエストまでです(管理者が緩和可能)。

  • 各レスポンスに X-RateLimit-Limit / X-RateLimit-Remaining / X-RateLimit-Reset ヘッダーが付き、残量を確認できます。
  • 上限を超えると 429Retry-After ヘッダー付き)を返します。
  • /health はレート制限の対象外です。

機械可読な OpenAPI 3.1 仕様を配布しています。Swagger / Postman などに読み込めます。

https://api.nyst.live/api/v1/openapi.json

成功時:

{
"success": true,
"data": { ... },
"request_id": "req_…"
}

失敗時:

{
"success": false,
"error": { "code": "", "message": "" },
"request_id": "req_…"
}

GET /health — サーバー稼働状況(認証不要)

Section titled “GET /health — サーバー稼働状況(認証不要)”

全配信ノードのオンライン状況を返します。

Terminal window
curl https://api.nyst.live/api/v1/health
{
"success": true,
"data": {
"all_servers_online": true,
"online_servers": 1,
"offline_servers": 0,
"total_servers": 1,
"servers": [
{
"id": "node-1",
"label": "tokyo-1",
"region": "ap-northeast-1",
"status": "active",
"online": true
}
]
}
}

GET /status — 組織の全ストリーム視聴者数(要 API キー)

Section titled “GET /status — 組織の全ストリーム視聴者数(要 API キー)”

API キーが属する組織の、全ストリームキーと現在の視聴者数を返します。

Terminal window
curl https://api.nyst.live/api/v1/status \
-H "Authorization: Bearer $NYST_API_KEY"
{
"success": true,
"data": {
"organization_id": "org_…",
"total_streams": 2,
"total_viewers": 134,
"streams": [
{
"stream_key_id": "",
"stream_id": "",
"name": "Main",
"status": "active",
"viewer_count": 120
}
]
}
}

GET /viewers/{streamkey} — 指定ストリームの視聴者数(要 API キー)

Section titled “GET /viewers/{streamkey} — 指定ストリームの視聴者数(要 API キー)”

指定したストリーム(stream_id または stream key の id)の視聴者数を、ノード別の内訳付きで返します。

Terminal window
curl https://api.nyst.live/api/v1/viewers/STREAM_ID \
-H "Authorization: Bearer $NYST_API_KEY"
{
"success": true,
"data": {
"organization_id": "org_…",
"stream": {
"stream_key_id": "",
"stream_id": "",
"name": "Main",
"status": "active"
},
"viewer_count": 120,
"node_viewers": [
{
"node_id": "node-1",
"label": "tokyo-1",
"region": "ap-northeast-1",
"viewer_count": 120
}
],
"total_node_viewers": 120
}
}
HTTPcode内容
401UNAUTHORIZEDAPI キーが指定されていない
401API_KEY_INVALIDAPI キーが無効または失効している
401API_KEY_EXPIREDAPI キーの有効期限切れ
404NOT_FOUND指定したストリームが組織内に見つからない
429RATE_LIMIT_EXCEEDEDレート上限の超過(Retry-After を参照)