コンテンツにスキップ

★ Fork独自拡張APIリファレンス

本ページでは、オリジナルNetBirdに対して追加された AegisMesh 専用の拡張REST APIエンドポイント の仕様を解説します。


1. テナント作成 API

新規組織・顧客テナントを作成し、ホストOS上に専用の特権TUNクライアントコンテナを自動デプロイします。

  • Endpoint: POST /api/v1/admin/tenants
  • 認証: 管理者パーソナルアクセストークン(Bearer)

Request Body

{
"name": "株式会社草クラウド",
"slug": "kusa-cloud-tenant",
"disable_masquerade": true,
"max_peers": 100,
"enforce_exit_node": true,
"primary_reseller_id": "reseller-1234"
}

Response (201 Created)

{
"id": "tenant-abcd-5678",
"name": "株式会社草クラウド",
"slug": "kusa-cloud-tenant",
"container_id": "nb-client-tenant-kusa-cloud-tenant",
"container_status": "running",
"initial_setup_key": "9A8B7C6D-5E4F-3A2B-1C0D-...",
"created_at": "2026-09-29T11:30:00Z"
}

2. テナント削除 API

指定したテナントのアカウントデータと、ホスト上の特権コンテナを完全に停止・破棄します。

  • Endpoint: DELETE /api/v1/admin/tenants/{id}
  • Response: 204 No Content

3. エッジ負荷ハートビート API

各分散エッジ拠点(Signal / Relay / coturn)から1分周期で負荷情報を収集し、クライアントへの最適ルーティングに反映します。

  • Endpoint: POST /api/internal/edges/heartbeat
  • 認証: エッジ共有内部シークレット(Header: X-Edge-Secret)

Request Body

{
"edge_id": "edge-tokyo-01",
"region": "ap-northeast-1",
"public_ip": "203.0.113.50",
"cpu_usage_pct": 14.2,
"active_tunnels": 128,
"network_egress_mbps": 45.8,
"timestamp": 1790685600
}

Response (200 OK)

{
"status": "healthy",
"registered_peers_count": 128,
"next_heartbeat_seconds": 60
}

直近3分間(180秒)ハートビートが届かないエッジは、データベース上で自動的にフェイルオーバー(Soft Inactive)され、クライアントへの配信対象から除外されます。