Releases a license key from an Ops Manager installation. Use this endpoint when the installation no longer needs the license key. Ops Manager recalculates the license key status and returns it. Ops Manager records a License released audit event.
重要
After you release a license key, you can't use it again. If you release the only usable license key, your installation has no coverage. The state changes to GRACE, and then to UNLICENSED after 90 days. To generate a new license key, see Get and Install a License Key.
所需角色
To access this resource, your API key must have the Global Owner role. The Global Owner role is the highest role in Ops Manager. Only users with this role can view and manage license keys.
请求
Send a DELETE request with the license key ID in the path.
基本 URL: https://{OPSMANAGER-HOST}:{PORT}/api/public/v1.0
DELETE /admin/licenses/{artifactId}请求路径参数
请求路径包含以下参数:
Parameter | 类型 | 必要性 | 说明 |
|---|---|---|---|
| 字符串 | 必需 | Unique identifier of the license key to release. Retrieve this value from the |
请求查询参数
此端点接受以下查询参数:
名称 | 类型 | 必要性 | 说明 | 默认 |
|---|---|---|---|---|
pretty | 布尔 | Optional | 指示响应正文是否采用 pretty-print 格式的标志。 |
|
envelope | 布尔 | Optional | 指示是否将响应包装在信封中的标志。 某些 API 客户端无法访问 HTTP 响应标头或状态代码。要解决这个问题,可在查询中设置 envelope=true。 对于返回一个结果的端点,响应体包括:
|
|
请求正文参数
此端点不使用 HTTP 请求正文参数。
响应
如果运维管理器释放了许可证密钥,则响应将包含重新计算的许可证密钥状态。响应包含以下字段:
字段 | 类型 | 说明 |
|---|---|---|
| 对象 | Aggregated license key status of the Ops Manager installation. This field is |
| 字符串 | License key state of the installation. Ops Manager returns one of |
| 字符串 | Identifies what produced the |
| 布尔 | Indicates whether the state is |
| 对象 | Next scheduled change to the license key state. This field is |
| 字符串 | 推动下一步变革的评估者。 |
| 字符串 | 当前状态结束的日期和时间。 |
| 字符串 | 遵循当前状态的状态。 |
| 对象数组 | 存在未解决的警告。Ops Manager 会在您的订单到期日之前发出续订警告。要了解更多信息,请参阅Ops Manager 许可证密钥概述。 |
| 字符串 | 提出警告的评估人员。 |
| 字符串 | 警告开启的日期和时间。 |
| 对象数组 | Subjects that the warning covers. Each object contains an |
| 对象数组 | Contribution of each evaluator to the |
| 字符串 | 做出判决的评估员。 |
| 字符串 | 说明评估者进行了计算。 |
| 字符串 | Date and time when the breach takes effect, such as the order end date. This date is in the future while the state is |
| 字符串 | Date and time when the renewal warning window opens. This field is |
| 对象 | Details that are specific to the evaluator. This field is |
| 对象 | Next change to the verdict state. The object contains |
| 对象数组 | 安装在 Ops Manager 安装程序上的许可证密钥。 |
| 字符串 | 许可证密钥的唯一标识符。使用此值释放许可证密钥。Ops Manager 界面会将此值显示为许可证密钥 ID。 |
| 布尔 | 指示运维经理是否可以使用许可证密钥进行覆盖。 |
| 字符串 | MongoDB 生成许可证密钥的日期和时间。 |
| 字符串 | 许可证密钥的安装日期和时间。 |
| 字符串 | Status of the license key. Ops Manager returns one of |
| 字符串 | Reason code for a |
| 字符串 | Sentence that describes why the license key is |
| 字符串 | Date and time when the coverage of the license key ends. This field is |
| 对象数组 | Grants that the license key contains. For a |
| 字符串 | Type of the grant, such as |
| 字符串 | Identifier of the grant. This field is |
| 字符串 | 拨款开始的日期和时间。 |
| 字符串 | 资助终止的日期和时间。 |
| 对象数组 | Entitlements that the grant carries. Each object uses the fields described for |
| 对象 | Entitlements that are active now, grouped by entitlement type. Each key is an entitlement type, such as |
| 字符串 | 权利类型。 |
| 字符串 | Product name that the entitlement applies to. This field is |
| 布尔 | 表明该项权利是否生效。 |
| 对象 | Validity window of the entitlement. The object contains |
Errors
If you specify an artifactId that doesn't match an installed license key, the endpoint returns the HTTP status 404. The errorCode field of the response body contains ARTIFACT_NOT_FOUND, and the detail field contains No installed artifact with that id.
请求示例
Use curl to send a DELETE request to the /admin/licenses/{artifactId} endpoint:
curl --user "{PUBLIC-KEY}:{PRIVATE-KEY}" --digest \ --header "Accept: application/json" \ --include \ --request DELETE \ "https://<OpsManagerHost>:<Port>/api/public/v1.0/admin/licenses/{ARTIFACT-ID}?pretty=true"响应示例
以下示例显示了成功请求的响应头和响应正文。
响应标头
以下标头分别显示了未经授权的响应和成功的响应:
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": {}}