クイックスタート
4行のcurlでAPI経由で最初のVPSをプロビジョニングします。
クライアントパネルでAPIキーを生成してください
開く /client/settings → APIキー → 生成。キーは一度だけ表示されます。安全に保管してください。
利用可能なプランを一覧表示
curl https://api.murmurhost.com/v1/plans \
-H "Authorization: Bearer sh_live_••••••••"アイスランドでVPS-2をプロビジョニング
curl -X POST https://api.murmurhost.com/v1/services \
-H "Authorization: Bearer sh_live_••••••••" \
-H "Content-Type: application/json" \
-d '{
"plan": "vps-2",
"location": "iceland",
"billing_cycle": "monthly",
"addons": ["ddos-premium", "backup"],
"payment_method": "crypto"
}'請求書を支払い、webhookで資格情報を受け取る
{
"id": "srv_3a8f2d6e",
"status": "pending_payment",
"invoice": "inv_91f7cb01",
"pay_url": "https://oxapay.com/pay/12345",
"webhook_event": "service.provisioned"
}認証
キーごとにスコープされたベアラートークン。OAuthもJWTのごまかしも署名のダンスもありません。
APIキーの形式
キーは48文字のランダム文字列で、接頭辞は sh_live_ 本番環境および sh_test_ サンドボックス用。経由で渡す 認証: Bearer ... ヘッダー。
スコープ
各キーには1つ以上のスコープが含まれます: services:read, services:write, billing:read, billing:write, tickets:writeCI / Terraform / スクリプト用の最小権限キーを生成します。
スケール時の挙動
デフォルト制限: 60リクエスト/分 読み取りエンドポイントのAPIキーごとに、 20/分 書き込みエンドポイントで。バースト容量は定常状態の2倍です。
すべてのレスポンスのヘッダー: X-RateLimit-Limit, X-RateLimit-Remaining, X-RateLimit-Reset。制限に達すると、APIは返します 429 Too Many Requests とともに Retry-After 待機秒数を示すヘッダー。
検証済みの本番ユースケース(リセラーダッシュボード、CIフリート、監視ツール)では、より高い制限が利用可能です。メールでお問い合わせください。 [email protected] 期待されるRPSとその根拠を。
エラーエンベロープ
すべての非2xx応答は同じ形状であるため、クライアントライブラリはきれいに分岐できます。
{ "error": { "code": "service_not_found", "message": "Service srv_3a8f2d6e does not exist or is not owned by this account.", "param": "id", "request_id": "req_8c9c11ef" } }一般的なコード: invalid_request, authentication_failed, forbidden, not_found, rate_limit_exceeded, insufficient_funds, plan_unavailable, location_unavailable, internal_error。常に含めてください request_id サポートに連絡する際 — 最速の方法です [email protected] 一致するログエントリを見つけるため。
サービスAPI
プロビジョニング、一覧表示、更新、キャンセル、再起動、スナップショット、移行。
services
/v1/services認証されたアカウントが所有するすべてのサービスを一覧表示。
/v1/services新しいVPS / RDP / 専用サーバーをプロビジョニングします。
/v1/services/{id}IDで単一のサービスを取得します。
/v1/services/{id}サービスを更新(名前変更、自動更新変更、アドオン添付)。
/v1/services/{id}サービスをキャンセルして破棄。7日以内なら返金が適用されます。
/v1/services/{id}/reboot実行中のサービスをハードまたはソフト再起動します。
/v1/services/{id}/snapshot手動スナップショットを作成。スナップショットIDを返します。
/v1/services/{id}/migrateサービスを別の管轄に移行。サポートされている場合はライブマイグレーション。
ロケーションAPI
読み取り専用 — 8つの管轄を一覧表示し、場所ごとの容量を取得します。
/v1/locations8つのデータセンター管轄とその現在の容量を一覧表示します。
/v1/locations/{slug}1つの管轄の詳細:法的姿勢、キャリア、認証、お客様のIPからのリアルタイムping。
Plans API
全35プランのカタログ。価格、仕様、アドオン互換性。
/v1/plans11の製品カテゴリにわたる全35プランをリストアップしてください。
/v1/plans/{slug}1つのプランの詳細:完全な仕様、サイクルごとの価格、場所ごとの可用性、推奨アドオン。
/v1/categories11の製品カテゴリを要約メタデータとともに一覧表示します。
請求・請求書API
請求書の一覧表示、PDF取得、Card2CryptoまたはOxaPayでの未払い請求書の支払い。
/v1/invoices認証済みアカウントのすべての請求書を一覧表示します。
/v1/invoices/{id}明細項目付きの単一の請求書を取得します。
/v1/invoices/{id}/pay未払いの請求書の支払いを開始します。支払いURL(Card2CryptoまたはOxaPay)を返します。
/v1/invoices/{id}/pdf会計用に請求書PDFをダウンロードしてください。
ライフサイクルイベントを購読する
Webhook URLを一度設定するだけで、関連するすべてのイベントに対してHMAC-SHA256署名付きのPOSTを受信します。
署名を検証中
各ウェブフックには X-MurmurHost-署名 ヘッダー—Webhookシークレットを使用した生のリクエストボディのHMAC-SHA256。処理前に検証します。
import crypto from "node:crypto"; function verify(rawBody, signature, secret) { const expected = crypto .createHmac("sha256", secret) .update(rawBody) .digest("hex"); return crypto.timingSafeEqual( Buffer.from(expected, "hex"), Buffer.from(signature, "hex"), ); }イベント
service.provisionedサービスがプロビジョニングを完了し、認証情報が送信されたときに発動します。
service.suspended停止時に発動(未払い、利用規約違反、顧客のリクエスト)。
service.cancelledハードキャンセル時に発動。サービスは60秒以内に破棄されます。
invoice.created新しい請求書が生成されたときに発生(通常は更新時)。
invoice.paid支払い成功時に発火します。payment_method(カード / 暗号通貨)とtxidを含みます。
invoice.failed支払い試行が失敗または期限切れになったときに発生します。
ticket.repliedサポートチームメンバーがチケットの1つに返信すると発火します。
incident.publishedステータスページでサービスに影響するインシデントが公開されたときに発動します。
SDKとCLI
APIはプレーンなHTTPです—任意のクライアントで動作します。Node SDK、Go SDK、hostctl CLIも公開しています。
@silenthosts/sdk (Node.js)
npm install @silenthosts/sdk · TypeScriptファースト、完全に型付けされたレスポンス、Zod検証済みペイロード。
murmurhost-go(Go)
go get github.com/murmurhost/go · コンテキスト認識、ジェネリクス型、追加依存関係なし。
hostctl(CLI)
brew install murmurhost/tap/hostctl · ターミナルからデプロイ、検査、再起動、移行。
Terraformプロバイダー — 2026年第3四半期に登場予定
公式 murmurhost/murmurhost Terraformプロバイダーはロードマップにあります。早期アクセスにサインアップしてください。
パブリックベータ
APIは2026年第2四半期時点でパブリックベータ版です
上記のエンドポイントは安定しており、v1名前空間内で壊れることはありません。破壊的な変更はv2として、最低6か月の非推奨期間を設けてリリースされます。バグを見つけましたか?チケットを開いてください。 /client/tickets/new 失敗したレスポンスのrequest_idを使用します。