ライフサイクルレイヤー。1つのAPI。
api.hoody.comはコンテナが生まれる場所です。作成、一時停止、スナップショット、サーバー間コピー、レルム分離、請求 — すべてHTTPです。
100以上のエンドポイント。サービス別OpenAPI仕様。レルムスコープトークン。一時停止、スナップショット、コピー、同期 — すべて同一サーフェス上。
# create a container
$ curl -X POST https://api.hoody.com/api/v1/projects/ID/containers \
-H "Authorization: Bearer hdy_..." \
-H "Content-Type: application/json" \
-d '{"name":"dev-box","container_image":"debian/13","cpu":2,"memory":4}'
<< 201 Created
{ "id": "67e89abc…", "status": "creating", "urls": ["terminal-1…", "files…", "display-1…", …] }
6つの状態。明示的な遷移。
コンテナは定義されたステートマシンを通じて移行します。すべての遷移にはエンドポイントがあり、各遷移はコンテナの履歴に記録されます。
ファイルシステムとリソースのプロビジョニング中
ライブでURLを提供中
電源オフ · ストレージ課金中
RAM凍結 · 即時再開可能
操作中にエラー発生
非同期複製が進行中
POST/containers/ID/start
POST/containers/ID/stop
POST/containers/ID/force-stop
POST/containers/ID/restart
POST/containers/ID/pause
POST/containers/ID/resume
POST/containers/ID/network/start
POST/containers/ID/network/stop
実行中の作業を一時停止。マシン全体をスナップショット。
pause/resumeでRAMを凍結。ステートフルスナップショットでファイルシステム、プロセス、メモリをキャプチャ。何も再初期化せずにコンテナを過去の時点に戻せます。
シャットダウンではなくコンテナスリープ
- —RAMの状態がその場で凍結; オープンファイルとDBコネクションプールを維持
- —LLMの推論途中で一時停止 — コンテキストを再ウォームせずに再開
- —自動化ジョブを夜間一時停止 — 朝に再開
- —POST /containers/ID/pause · POST /containers/ID/resume
コンピューターのためのGit
- —実行中に作成 = ステートフル(ファイルシステム + プロセス + メモリ)
- —停止中に作成 = ステートレス(ファイルシステムのみ)
- —スナップショットエイリアス最大100文字、オプションの日単位自動有効期限
- —POST /containers/ID/snapshots · PATCH /containers/ID/snapshots/NAMEでリストア
コンテナをブランチ。同期を維持。
スナップショット履歴を含むコンテナの完全な状態を別のサーバーまたはリージョンにコピーします。同期はソースからコピーへの増分変更を伝播します。
container-67e89abc…
server: node-us-east-1
container-abc1234d…
server: node-eu-west-1
クロスプロジェクトコピーにはtarget_project_idを指定
特定の状態をコピーするにはsource_snapshotを使用
標準的な時間: 同一サーバー3〜5分(50GB)、クロスサーバー10〜15分(50GB)
同期はコピー側のローカル変更を上書きします。双方向ではありません — ソースの変更はコピーに流れますが、逆は流れません。
分離と請求はAPIプリミティブです
レルムはAPIホスト自体をスコープします。ウォレット分割により、侵害がインフラ予算を食いつぶすことを防ぎます。
APIレベルのマルチテナンシー
- —レルムA内のAIエージェントはレルムBのリソースを文字通り見ることができません
- —トークンはrealm_ids経由で特定のレルムにスコープされます
- —レルム分離はプロジェクトRBACの上に位置 — APIホストを変更します
一般残高とAI残高
- —侵害されたAIワークロードがインフラ予算を枯渇させることができません
- —Stripe(PCI準拠)、100以上の暗号通貨(NOWPayments)、銀行振込
- —自動生成PDFインボイス · ページング可能な取引履歴
完全なAPIサーフェス
リソースごとにグループ化。すべてのエンドポイントにOpenAPI仕様があります。
認証とトークン
25以上のエンドポイント
OAuth、サインアップ、JWTログイン/更新/ログアウト、バックアップコード付き2FA、CIDRIPホワイトリストとレルムスコープ付き長期hdy_トークン
コンテナとライフサイクル
20以上のエンドポイント
CRUD、統計、start/stop/pause/resume/restart、ファイアウォールルール、ネットワークstart/stop
スナップショット、コピーと同期
10以上のエンドポイント
エイリアスと有効期限付きスナップショットCRUD、非同期クロスサーバーコピー、増分一方向同期
ウォレットと請求
20以上のエンドポイント
残高、取引、支払方法(Stripe + 暗号通貨 + 銀行)、支払い、PDF付きインボイス、一般→AI振替
レルムとプロジェクト
5以上のエンドポイント
オプションの使用状況統計付きレルム一覧、プロジェクトCRUD、プロジェクトスコープのコンテナ一覧
プロキシエイリアス · 権限 · ログ
31エンドポイント
Control Planeで提供されますが/platform/proxyに記載 — エイリアス(6)、権限(17)、ログ(8)
各サービスが独自のOpenAPI仕様を公開します(例:Hoody SQLite、Hoody Terminal、Hoody Cron)— あらゆる言語で型付きクライアント生成可能。
従来のオーケストレーションが必要とする組み合わせ
Terraform、kubectl、AWS SDK、Dockerデーモンのそれぞれが、コントロールプレーンが1つのサーフェスでカバーすることの一部をカバーしています。正直な分類です。
| 機能 | コントロールプレーン | 従来のスタック |
|---|---|---|
| コンテナCRUD | POST /projects/ID/containers | Terraformプロバイダー + モジュール + apply |
| RAM状態の一時停止 | POST /containers/ID/pause · /resume | 直接的な対応なし(VMwareサスペンド) |
| 実行中 + RAMのスナップショット | POST /containers/ID/snapshots | カスタムスクリプト + VMスナップショット |
| クロスサーバーコピー | POST /containers/ID/copy + /sync | rsync + 手動ブートストラップ + 再登録 |
| マルチテナントAPI分離 | realm_ids[] · REALM.api.hoody.com | RBACレイヤー + 名前空間の規律 |
| 統合請求 + LLMクレジット | general → AI transfer (one-way) | Stripe + 別途LLMプロバイダーの請求 |
| 署名付きAPIレスポンス | X-Hoody-Signature (ED25519) | TLSのみ(コンテンツは未署名) |
| 仕様からの型付きクライアント | GET /api/v1/openapi.json | 独自のSDKを作成 |
Terraformのplan/applyモデル、kubectlのスケジューリング、AWSのマネージドサービスが必要な場合は、それらを使用してください。コントロールプレーンはコンテナがプリミティブであり、一時停止とスナップショットを含むライフサイクル全体を1つのAPIに望む場合にその価値を発揮します。
最初のコンテナはPOST1回で作成できます。
APIトークンを取得してイメージを選択すると、HTTP 201が返る前にすべてのKitサービスURLがコンテナに割り当てられます。
関連情報 — /platform/proxyでこれらのURLのルーティングと認証について。