デプロイメント管理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: リクエスト制限を超えました。
リクエスト例
curl -u key:secret -X GET {api}/deploymentsレスポンス例
[
{
"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"は専用版、"dedicatedFlex"は専用Flex版 |
| platform | String | デプロイメントのクラウドサービスプロバイダー |
| region | String | デプロイメントが配置されているリージョン |
| status | String | デプロイメントの現在のステータス:"running"、"starting"、"stopped"のいずれか |
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 404: デプロイメントが見つかりません。
- 429: リクエスト制限を超えました。
リクエスト例
curl -u key:secret -X GET {api}/deployments/w41b11c0レスポンス例
{
"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: リクエスト制限を超えました。
リクエスト例
curl -u key:secret -X POST {api}/deployments/w41b11c0/stopレスポンス例
{
"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: リクエスト制限を超えました。
リクエスト例
curl -u key:secret -X POST {api}/deployments/w41b11c0/startレスポンス例
{
"deploymentID": "w41b11c0",
"deploymentName": "deployment-w41b11c0",
"operation": "starting"
}デプロイメント作成
URI
POST /deployments
TIP
このメソッドは60分間に1回のみリクエスト可能です。デプロイメントはデフォルトプロジェクトに作成されます。現在、サポートされているのはEMQXのv5バージョンのみです。
リクエストメッセージ
| 名前 | 型 | 必須 | 説明 |
|---|---|---|---|
| platform | String | 必須 | デプロイメントをホストするクラウドプラットフォーム |
| region | String | 必須 | デプロイメントを作成するリージョン |
| connections | Number | 必須 | デプロイメントの接続数。サーバレスデプロイメントは1,000接続をサポートし、専用デプロイメントは1,000〜10,000接続をサポートします。 |
| tps | Number | 任意 | デプロイメントの1秒あたりのトランザクション数(TPS) |
| deploymentType | String | 必須 | デプロイメントプラン。"serverless"または"dedicated"のいずれかを指定します。 |
サーバレスデプロイメントのサポート状況
サーバレスデプロイメントは現在、以下のプラットフォームとリージョンのみでサポートされています。
- AWS: 北米(us-east-1)、ヨーロッパ(eu-central-1)
- Google Cloud: アジア太平洋(asia-southeast1)
サポートされているプラットフォームとリージョン
以下はサポートされているプラットフォーム、リージョン、および対応するデプロイメントタイプの一覧です。
| クラウドプラットフォーム | プラットフォームコード | リージョン名 | リージョンコード | サーバレス対応 | 専用対応 |
|---|---|---|---|---|---|
| AWS | aws | N. Virginia | us-east-1 | ✅ | ✅ |
| Ohio | us-east-2 | ✅ | |||
| N. California | us-west-1 | ✅ | |||
| Oregon | us-west-2 | ✅ | |||
| Ireland | eu-west-1 | ✅ | |||
| London | eu-west-2 | ✅ | |||
| Frankfurt | eu-central-1 | ✅ | ✅ | ||
| Singapore | ap-southeast-1 | ✅ | |||
| Mumbai | ap-south-1 | ✅ | |||
| Hong Kong | ap-east-1 | ✅ | |||
| Tokyo | ap-northeast-1 | ✅ | |||
| Sydney | ap-southeast-2 | ✅ | |||
| Azure | azure | East US | eastus | ✅ | |
| West US 2 | westus2 | ✅ | |||
| West US 3 | westus3 | ✅ | |||
| West Europe | westeurope | ✅ | |||
| Germany West Central | germanywestcentral | ✅ | |||
| North Europe | northeurope | ✅ | |||
| Southeast Asia | southeastasia | ✅ | |||
| Japan East | japaneast | ✅ | |||
| Google Cloud | gcp | South Carolina | us-east1 | ✅ | |
| Oregon | us-west1 | ✅ | |||
| Iowa | us-central1 | ✅ | |||
| Frankfurt | europe-west3 | ✅ | |||
| Finland | europe-north1 | ✅ | |||
| Mumbai | asia-south1 | ✅ | |||
| Singapore | asia-southeast1 | ✅ | ✅ | ||
| Taiwan | asia-east1 | ✅ | |||
| Tokyo | asia-northeast1 | ✅ |
デプロイメントのエディションによって、接続数およびTPSの仕様が異なります。
レスポンスメッセージ
- 201:
| 名前 | 型 | 説明 |
|---|---|---|
| createAt | String | デプロイメントの作成日時 |
| deploymentID | String | 一意のデプロイメントID |
| deploymentName | String | デプロイメント名 |
| deploymentType | String | デプロイメントの種類("dedicated"または"serverless") |
| freeTrial | Boolean | デプロイメントが無料トライアルかどうか |
| platform | String | クラウドプラットフォームの識別子 |
| ports | Object | 各プロトコル(MQTT、WebSocketなど)のポート設定 |
| projectID | String | このデプロイメントが属するプロジェクトのID(デフォルトプロジェクトの場合はnull) |
| region | String | クラウドリージョンの識別子 |
| regionLabel | String | リージョンの人間が読みやすい名称 |
| spec | Object | デプロイメントの仕様(接続数、バージョンなど) |
| status | String | デプロイメントの現在のステータス(running、stopped、pending) |
| subscription | Boolean | このデプロイメントがサブスクリプションベースかどうか |
| userID | String | このデプロイメントの所有者であるユーザーのID |
- 400: 不正なリクエスト
- 401: APIキーの認証に失敗しました。
- 403: APIキーにリクエストされたリソースへのアクセス権限がありません。
- 422: リクエストパラメータが不正です。
リクエスト例
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": "dedicated"
}'レスポンス例
{
"createAt": "2025-04-17 15:30",
"deploymentID": "i9d0961f",
"deploymentName": "deployment-i9d0961f",
"deploymentType": "dedicated",
"freeTrial": false,
"platform": "aws",
"ports": {
"1883": {
"status": "running",
"protocol": "mqtt"
},
"8083": {
"status": "running",
"protocol": "ws"
},
"8084": {
"status": "running",
"protocol": "wss"
},
"8883": {
"status": "running",
"protocol": "mqtts"
}
},
"projectID": null,
"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"
}