キーポータルでライセンスキーを生成した後、Ops Managerのインストール環境に署名付きライセンスキーファイルをインストールして、ライセンスの適用範囲を追加します。Ops Managerがライセンスキーを受け入れると、ライセンスキーの状態を再計算して返送し、 License installed監査イベントを記録します。
必須のロール
このリソースにアクセスするには、 APIキーにGlobal Ownerロールが付与されている必要があります。グローバルオーナーロールは、Ops Managerにおける最高位のロールです。このロールを持つユーザーのみがライセンスキーを表示および管理できます。
リクエスト
ライセンスキーファイルの内容を本文としてPUTリクエストを送信してください。
ベース URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
PUT /admin/licensesリクエスト パス パラメーター
このエンドポイントは、HTTP リクエスト パス パラメーターを使用しません。
リクエスト クエリ パラメータ
このエンドポイントは、以下のクエリパラメータを受け付けます。
名前 | タイプ | 必要性 | 説明 | default |
|---|---|---|---|---|
pretty | ブール値 | 任意 | レスポンス本体をpretty-print形式にするかどうかを示すフラグ。 |
|
envelope | ブール値 | 任意 | 応答をエンベロープでラップするかどうかを示すフラグ。 一部の API クライアントは、HTTP レスポンス ヘッダーまたはステータス コードにアクセスできません。これを修正するには、クエリで envelope=true を設定します。 1 つの結果を返すエンドポイントの場合、レスポンス本体には次のものが含まれます。
|
|
リクエスト ボディ パラメータ
ライセンスキーファイルの内容をリクエストボディとして送信してください。 Content-Typeヘッダーをapplication/jsonに設定してください。エンドポイントは名前付きボディパラメータを使用しません。
応答
Ops Managerがライセンスキーを受け入れると、応答には再計算されたライセンスキーの状態が含まれます。応答には次のフィールドが含まれます。
フィールド | タイプ | 説明 |
|---|---|---|
| オブジェクト | Ops Managerのインストールにおけるライセンスキーの集計ステータス。このフィールドは、Ops Managerが初めてステータスを計算するまで |
| string | インストール時のライセンスキーの状態。Ops Manager は |
| string |
|
| ブール値 | 状態が |
| オブジェクト | ライセンスキーの状態に対する次回の変更予定値。変更が予定されていない場合は、このフィールドは |
| string | 次の変革を推進する評価者。 |
| string | 現在の状態が終了する日時。 |
| string | 現在の状態に続く状態。 |
| オブジェクトの配列 | 未解決の警告。Ops Manager は、注文の終了日前に更新警告を表示します。詳細については、 「Ops Manager ライセンスキーの概要」を参照してください。 |
| string | 警告を発した評価者。 |
| string | 警告が発令された日時。 |
| オブジェクトの配列 | 警告の対象となる項目。各項目には、 |
| オブジェクトの配列 | 各評価者が |
| string | 判決を下した評価者。 |
| string | 評価者が計算したことを明記してください。 |
| string | 違反が発効する日時(注文終了日など)。この日付は、状態が |
| string | 更新警告ウィンドウが開いた日時。判定状態が |
| オブジェクト | 評価者固有の詳細情報。評価者が情報を提供しない場合は、このフィールドは |
| オブジェクト | 次に、判定状態を変更します。オブジェクトには |
| オブジェクトの配列 | Ops Managerのインストール時にインストールされるライセンスキー。 |
| string | ライセンスキーの一意の識別子。この値を使用してライセンスキーを解放します。Ops Managerインターフェースでは、この値がライセンスキーIDとして表示されます。 |
| ブール値 | Ops Managerがライセンスキーをカバレッジに使用できるかどうかを示します。 |
| string | MongoDBがライセンスキーを生成した日時。 |
| string | ライセンスキーがインストールされた日時。 |
| string | ライセンスキーの状態。Ops Manager は |
| string |
|
| string | ライセンスキーが |
| string | ライセンスキーの有効期間が終了する日時。ライセンスキーに有効期限が設定されていない場合は、このフィールドは |
| オブジェクトの配列 | ライセンスキーに含まれる権限。ライセンスキーが |
| string | 助成金の種類(例: |
| string | 助成金の識別子。発行者が設定しない場合、このフィールドは |
| string | 助成金の開始日時。 |
| string | 助成金が終了する日時。 |
| オブジェクトの配列 | 助成金に付随する権利。各オブジェクトは、 |
| オブジェクト | 現在有効な権限を、権限の種類ごとにグループ化して表示します。各キーは権限の種類(例: |
| string | 権利の種類。 |
| string | 権利が適用される製品名。権利に製品名が指定されていない場合、このフィールドは |
| ブール値 | 権利が有効かどうかを示します。 |
| オブジェクト | 権利の有効期間。オブジェクトには |
Errors
Ops Managerがライセンスキーを拒否した場合、レスポンスには次の表に示すHTTPステータスが含まれます。レスポンスボディのerrorCodeフィールドにはエラーコードが、 detailフィールドにはメッセージが含まれます。
メッセージでは、ライセンスキーを指すのにartifactという単語が使われています。
エラー コード | HTTP Status | メッセージ |
|---|---|---|
| 400 | このファイルは読み取れませんでした。ファイルが破損しているか、署名後に変更された可能性があります。代替ファイルを入手するには、MongoDBアカウントチームにお問い合わせください。 |
| 400 | このファイルは検証できません。署名後に変更された可能性があります。代替ファイルを入手するには、MongoDBアカウントチームにお問い合わせください。 |
| 400 | このファイルは、別のバージョンの Ops Manager 用に署名されているか、信頼できないキーで署名されています。互換性のあるファイルについては、MongoDB アカウントチームにお問い合わせください。 |
| 400 | このファイルの署名証明書は、このOps Managerでは無効です。代替の証明書を入手するには、MongoDBアカウントチームにお問い合わせください。 |
| 403 | このアーティファクトは特定のOps Managerインスタンスに紐づいているため、このインスタンスにはインストールできません。MongoDBアカウントチームにお問い合わせください。 |
| 409 | このアーティファクトは、既にこのOps Managerにインストールされているものよりも新しいものではありません。MongoDBアカウントチームから発行された最新のアーティファクトをインストールしてください。 |
リクエストの例
curlを使用してPUTリクエストを/admin/licensesエンドポイントに送信します。
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --header "Content-Type: application/json" \ --include \ --request PUT \ "https://<OpsManagerHost>:<Port>/api/public/v1.0/admin/licenses?pretty=true" \ --data @{LICENSE-KEY-FILE}応答例
以下の例は、リクエストが正常に処理された場合のレスポンスヘッダーとレスポンスボディを示しています。
応答ヘッダー
以下のヘッダーは、不正アクセス時の応答と正常な応答を示しています。
HTTP/1.1 401 UnauthorizedContent-Type: application/json;charset=ISO-8859-1Date: {dateInUnixFormat}WWW-Authenticate: Digest realm="MMS Public API", domain="", nonce="{nonce}", algorithm=MD5, op="auth", stale=falseContent-Length: {requestLengthInBytes}Connection: keep-aliveHTTP/1.1 200 OKVary: Accept-EncodingContent-Type: application/jsonStrict-Transport-Security: max-age=300Date: {dateInUnixFormat}Connection: keep-aliveContent-Length: {requestLengthInBytes}X-MongoDB-Service-Version: gitHash={gitHash}; versionString={ApplicationVersion}レスポンス本体
以下の例は、レスポンスボディを示しています。
{ "enforcement": { "effectiveState": "LICENSED", "cause": "term:LICENSED", "enforced": false, "transition": { "evaluatorId": "term", "inStateUntil": "2027-06-30T00:00:00Z", "nextState": "GRACE" }, "warnings": [], "verdicts": [ { "evaluatorId": "term", "state": "LICENSED", "breachAt": "2027-06-30T00:00:00Z", "warningStart": "2027-02-28T00:00:00Z", "metadata": null, "transition": { "inStateUntil": "2027-06-30T00:00:00Z", "nextState": "GRACE" } } ] }, "licenses": [ { "artifactId": "{ARTIFACT-ID}", "usable": true, "generatedAt": "2026-10-01T12:00:00Z", "installedAt": "2026-11-04T15:30:00Z", "status": "ACTIVE", "statusCause": null, "statusReason": null, "termEnd": "2027-06-30T00:00:00Z", "grants": [ { "grantType": "contract", "grantId": "{GRANT-ID}", "startDate": "2026-07-01T00:00:00Z", "endDate": "2027-06-30T00:00:00Z", "entitlements": [] } ] } ], "activeEntitlements": {}}エラー応答例
以下の例は、Ops Managerがライセンスキーを拒否した場合のレスポンスボディを示しています。
{ "error": 409, "reason": "Conflict", "detail": "This artifact is not newer than one already installed on this Ops Manager. Install the latest artifact issued by your MongoDB account team.", "errorCode": "ARTIFACT_OUTDATED", "parameters": []}