デプロイメント管理API
このページでは、デプロイメント一覧の取得、デプロイメントのステータス照会、デプロイメントの開始・停止、新規デプロイメントの作成方法について説明します。
デプロイメント一覧取得
URI
GET /deployments
TIP
このメソッドは60分間に60回までしかリクエストできません。
リクエストメッセージ
なし
レスポンスメッセージ
- 200:
| 名前 | 型 | 説明 |
|---|---|---|
| connections | Number | デプロイメントの接続数 |
| tps | Number | デプロイメントの1秒あたりのトランザクション数(TPS) |
| createAt | String | デプロイメントの作成日時 |
| deploymentID | String | 一意のデプロイメントID |
| deploymentName | String | デプロイメント名 |
| deploymentType | String | デプロイメントの種類:"serverless"はサーバレス版、"dedicated"は専用版、"dedicatedFlex"は専用Flex版 |
| platform | String | デプロイメントのクラウドサービスプロバイダー |
| projectName | String | デプロイメントに関連付けられたプロジェクト名 |
| region | String | デプロイメントの所在リージョン |
| status | String | デプロイメントの現在の状態:"running"、"starting"、"stopped"のいずれか |
| version | String | デプロイメントのバージョン |
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 429: リクエスト制限を超えました。
リクエスト例
bash
curl -u key:secret -X GET {api}/deploymentsレスポンス例
json
[
{
"connections": 1000,
"tps": 1000,
"createAt": "2024-11-21 02:51",
"deploymentID": "mdfba81f",
"deploymentName": "deployment-mdfba81f",
"deploymentType": "serverless",
"platform": "AWS",
"projectName": "default",
"region": "N. Virginia (us-east-1)",
"status": "stopped",
"version": "v5"
},
{
"connections": 1000,
"tps": 1000,
"createAt": "2025-04-17 08:36",
"deploymentID": "b1f77113",
"deploymentName": "deployment-b1f77113",
"deploymentType": "dedicatedFlex",
"platform": "AWS",
"projectName": "test",
"region": "N. Virginia (us-east-1)",
"status": "running",
"version": "v5"
}
]特定デプロイメントのステータス確認
URI
GET /deployments/{deployment_id}
TIP
このメソッドは60分間に60回までしかリクエストできません。{deployment_id}はデプロイメント名ではなく、デプロイメントIDを指します。
リクエストメッセージ
なし
レスポンスメッセージ
- 200:
| 名前 | 型 | 説明 |
|---|---|---|
| connections | Number | デプロイメントの接続数 |
| tps | Number | デプロイメントの1秒あたりのトランザクション数(TPS) |
| createAt | String | デプロイメントの作成日時 |
| deploymentID | String | 一意のデプロイメントID |
| deploymentName | String | デプロイメント名 |
| deploymentType | String | デプロイメントの種類、専用版は"dedicated"、専用Flex版は"dedicatedFlex" |
| platform | String | デプロイメントのクラウドサービスプロバイダー |
| region | String | デプロイメントの所在リージョン |
| status | String | デプロイメントの現在の状態:"running"、"starting"、"stopped"のいずれか |
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 404: デプロイメントが見つかりません。
- 429: リクエスト制限を超えました。
リクエスト例
bash
curl -u key:secret -X GET {api}/deployments/w41b11c0レスポンス例
json
{
"connections": 1000,
"tps": 1000,
"createAt": "2024-07-22 05:32",
"deploymentID": "w41b11c0",
"deploymentName": "deployment-w41b11c0",
"deploymentType": "dedicated",
"platform": "AWS",
"region": "N. Virginia (us-east-1)",
"status": "running"
}デプロイメント停止
URI
POST /deployments/{deployment_id}/stop
TIP
このメソッドは60分間に5回までしかリクエストできません。{deployment_id}はデプロイメント名ではなくデプロイメントIDを指します。この操作は専用デプロイメントのみ利用可能です。
リクエストメッセージ
なし
レスポンスメッセージ
- 201:
| 名前 | 型 | 説明 |
|---|---|---|
| deploymentID | String | 一意のデプロイメントID |
| deploymentName | String | デプロイメント名 |
| operation | String | 操作の種類:"stopping"は停止操作を示します |
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 404: デプロイメントが見つかりません。
- 422: リクエストパラメータが無効です。
- 429: リクエスト制限を超えました。
リクエスト例
bash
curl -u key:secret -X POST {api}/deployments/w41b11c0/stopレスポンス例
json
{
"deploymentID": "w41b11c0",
"deploymentName": "deployment-w41b11c0",
"operation": "stopping"
}デプロイメント開始
URI
POST /deployments/{deployment_id}/start
TIP
このメソッドは60分間に5回までしかリクエストできません。{deployment_id}はデプロイメント名ではなくデプロイメントIDを指します。この操作は専用デプロイメントのみ利用可能です。
リクエストメッセージ
なし
レスポンスメッセージ
- 201:
| 名前 | 型 | 説明 |
|---|---|---|
| deploymentID | String | 一意のデプロイメントID |
| deploymentName | String | デプロイメント名 |
| operation | String | 操作の種類:"starting"は開始操作を示します |
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 404: デプロイメントが見つかりません。
- 422: リクエストパラメータが無効です。
- 429: リクエスト制限を超えました。
リクエスト例
bash
curl -u key:secret -X POST {api}/deployments/w41b11c0/startレスポンス例
json
{
"deploymentID": "w41b11c0",
"deploymentName": "deployment-w41b11c0",
"operation": "starting"
}デプロイメント作成
URI
POST /deployments
TIP
このメソッドは60分間に1回までしかリクエストできません。デプロイメントはデフォルトプロジェクトに作成され、時間単位で課金されます。現在、EMQX v5およびv6のデプロイメントがサポートされています。
リクエストメッセージ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
| platform | String | はい | デプロイメントをホストするクラウドプラットフォーム |
| region | String | はい | デプロイメントを作成するリージョン |
| connections | Number | はい | デプロイメントの接続数。サーバレスデプロイメントは1,000接続をサポートし、専用デプロイメントは1,000〜10,000接続をサポートします。 |
| tps | Number | はい | デプロイメントの1秒あたりのトランザクション数(TPS) |
| deploymentType | String | はい | デプロイメントプラン。"serverless"または"dedicatedFlex"のいずれかである必要があります。 |
| deploymentName | String | いいえ | デプロイメント名。省略した場合はシステムがデフォルト名を生成します。 |
| deploymentVersion | String | はい | デプロイメントのバージョン。サポートされている値は"v5"と"v6"です。 |
| projectID | String | はい | プロジェクトID。プロジェクト一覧から取得可能です。 |
| freeTrial | Boolean | はい | デプロイメントが無料トライアルかどうか。falseに設定する必要があります。 |
対応プランのクラウドプロバイダーおよびリージョンについては、Cloud Providers and Regionsを参照してください。
異なるデプロイメントエディションは、異なる接続数およびTPS仕様をサポートします。
レスポンスメッセージ
- 201:
| 名前 | 型 | 説明 |
|---|---|---|
| createAt | String | デプロイメントの作成日時 |
| deploymentID | String | 一意のデプロイメントID |
| deploymentName | String | デプロイメント名 |
| deploymentType | String | デプロイメントの種類("dedicatedFlex"または"serverless") |
| platform | String | クラウドプラットフォーム識別子 |
| ports | Object | 各プロトコル(MQTT、WebSocketなど)のポート設定 |
| projectID | String | このデプロイメントが属するプロジェクトのID |
| region | String | クラウドリージョン識別子 |
| regionLabel | String | リージョンの人間が読みやすい名称 |
| spec | Object | デプロイメント仕様(接続数、バージョンなど) |
| status | String | デプロイメントの現在の状態(running、stopped、pending) |
| subscription | Boolean | このデプロイメントがサブスクリプションベースかどうか |
| userID | String | このデプロイメントの所有ユーザーID |
- 400: 不正なリクエスト
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 422: リクエストパラメータが無効です。
リクエスト例
bash
curl -u key:secret -X POST {api}/deployments \
-H "Content-Type: application/json" \
-d '{
"platform": "aws",
"region": "us-east-1",
"connections": 1000,
"tps": 1000,
"deploymentType": "dedicatedFlex",
"deploymentVersion": "v5",
"projectID": "00000001",
"freeTrial": false
}'レスポンス例
json
{
"createAt": "2025-04-17 15:30",
"deploymentID": "i9d0961f",
"deploymentName": "deployment-i9d0961f",
"deploymentType": "dedicatedFlex",
"platform": "aws",
"ports": {
"1883": {
"status": "running",
"protocol": "mqtt"
},
"8083": {
"status": "running",
"protocol": "ws"
},
"8084": {
"status": "running",
"protocol": "wss"
},
"8883": {
"status": "running",
"protocol": "mqtts"
}
},
"projectID": "00000001",
"region": "us-east-1",
"regionLabel": "N. Virginia (us-east-1)",
"spec": {
"connections": 1000,
"deploymentVersion": "v5",
"freeTraffic": 100,
"node": 2,
"protection": false,
"tps": 1000,
"version": 5.2
},
"status": "pending",
"subscription": false,
"tls": null,
"userID": "00000001"
}