consul/website/content/api-docs/operator/license.mdx

218 lines
6.2 KiB
Plaintext
Raw Normal View History

2018-05-22 16:07:13 +00:00
---
layout: api
page_title: License - Operator - HTTP API
description: |-
The /operator/license endpoint allows for retrieving the Consul
2018-05-22 16:07:13 +00:00
Enterprise License.
---
# License - Operator HTTP API
<EnterpriseAlert />
2018-05-22 16:07:13 +00:00
The licensing functionality described here is available only in
[Consul Enterprise](https://www.hashicorp.com/products/consul/) version 1.1.0 and later.
## Getting the Consul License
This endpoint gets information about the current license.
2020-04-06 20:27:35 +00:00
| Method | Path | Produces |
| ------ | ------------------- | ------------------ |
| `GET` | `/operator/license` | `application/json` |
2018-05-22 16:07:13 +00:00
The table below shows this endpoint's support for
2020-04-09 23:46:54 +00:00
[blocking queries](/api/features/blocking),
[consistency modes](/api/features/consistency),
[agent caching](/api/features/caching), and
2020-04-09 23:20:00 +00:00
[required ACLs](/api#authentication).
2018-05-22 16:07:13 +00:00
2020-04-06 20:27:35 +00:00
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
| ---------------- | ----------------- | ------------- | ------------ |
| `NO` | `all` | `none` | `none` |
2018-05-22 16:07:13 +00:00
The corresponding CLI command is [`consul license get`](/commands/license#get).
2022-01-10 19:21:32 +00:00
2018-05-22 16:07:13 +00:00
### Parameters
- `dc` `(string: "")` - Specifies the datacenter whose license should be retrieved.
This will default to the datacenter of the agent serving the HTTP request.
2018-05-22 16:07:13 +00:00
This is specified as a URL query parameter.
2018-05-22 16:07:13 +00:00
### Sample Request
2020-05-19 18:32:38 +00:00
```shell-session
2018-05-22 16:07:13 +00:00
$ curl \
http://127.0.0.1:8500/v1/operator/license
2018-05-22 16:07:13 +00:00
```
### Sample Response
```json
{
2020-04-06 20:27:35 +00:00
"Valid": true,
"License": {
"license_id": "2afbf681-0d1a-0649-cb6c-333ec9f0989c",
"customer_id": "0259271d-8ffc-e85e-0830-c0822c1f5f2b",
"installation_id": "*",
"issue_time": "2018-05-21T20:03:35.911567355Z",
"start_time": "2018-05-21T04:00:00Z",
"expiration_time": "2019-05-22T03:59:59.999Z",
"product": "consul",
"flags": {
"package": "premium"
2018-05-22 16:07:13 +00:00
},
2020-04-06 20:27:35 +00:00
"features": [
"Automated Backups",
"Automated Upgrades",
"Enhanced Read Scalability",
"Network Segments",
"Redundancy Zone",
"Advanced Network Federation"
],
"temporary": false
},
"Warnings": []
2018-05-22 16:07:13 +00:00
}
```
## Updating the Consul License
-> **Deprecated** This endpoint was removed in Consul v1.10.0 along with
the ability to manage the cluster's license via the API.
This endpoint updates the Consul license and returns some of the
2018-05-22 16:07:13 +00:00
license contents as well as any warning messages regarding its validity.
2020-04-06 20:27:35 +00:00
| Method | Path | Produces |
| ------ | ------------------- | ------------------ |
| `PUT` | `/operator/license` | `application/json` |
2018-05-22 16:07:13 +00:00
The table below shows this endpoint's support for
2020-04-09 23:46:54 +00:00
[blocking queries](/api/features/blocking),
[consistency modes](/api/features/consistency),
[agent caching](/api/features/caching), and
2020-04-09 23:20:00 +00:00
[required ACLs](/api#authentication).
2018-05-22 16:07:13 +00:00
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
| ---------------- | ----------------- | ------------- | ---------------- |
| `NO` | `none` | `none` | `operator:write` |
2018-05-22 16:07:13 +00:00
The corresponding CLI command is [`consul license put`](/commands/license#put).
2022-01-10 19:21:32 +00:00
2018-05-22 16:07:13 +00:00
### Parameters
- `dc` `(string: "")` - Specifies the datacenter whose license should be updated.
This will default to the datacenter of the agent serving the HTTP request.
2018-05-22 16:07:13 +00:00
This is specified as a URL query parameter.
2018-05-22 16:07:13 +00:00
### Sample Payload
The payload is the raw license blob.
### Sample Request
2018-05-22 16:07:13 +00:00
2020-05-19 18:32:38 +00:00
```shell-session
2018-05-22 16:07:13 +00:00
$ curl \
--request PUT \
--data @consul.license \
http://127.0.0.1:8500/v1/operator/license
2018-05-22 16:07:13 +00:00
```
### Sample Response
```json
{
2020-04-06 20:27:35 +00:00
"Valid": true,
"License": {
"license_id": "2afbf681-0d1a-0649-cb6c-333ec9f0989c",
"customer_id": "0259271d-8ffc-e85e-0830-c0822c1f5f2b",
"installation_id": "*",
"issue_time": "2018-05-21T20:03:35.911567355Z",
"start_time": "2018-05-21T04:00:00Z",
"expiration_time": "2019-05-22T03:59:59.999Z",
"product": "consul",
"flags": {
"package": "premium"
2018-05-22 16:07:13 +00:00
},
2020-04-06 20:27:35 +00:00
"features": [
"Automated Backups",
"Automated Upgrades",
"Enhanced Read Scalability",
"Network Segments",
"Redundancy Zone",
"Advanced Network Federation"
],
"temporary": false
},
"Warnings": []
2018-05-22 16:07:13 +00:00
}
```
## Resetting the Consul License
-> **Deprecated** This endpoint was removed in Consul v1.10.0 along with
the ability to manage the cluster's license via the API.
This endpoint resets the Consul license to the license included in the Enterprise binary. If the included license is not valid, the replace will fail.
2020-04-06 20:27:35 +00:00
| Method | Path | Produces |
| -------- | ------------------- | ------------------ |
| `DELETE` | `/operator/license` | `application/json` |
The table below shows this endpoint's support for
2020-04-09 23:46:54 +00:00
[blocking queries](/api/features/blocking),
[consistency modes](/api/features/consistency),
[agent caching](/api/features/caching), and
2020-04-09 23:20:00 +00:00
[required ACLs](/api#authentication).
| Blocking Queries | Consistency Modes | Agent Caching | ACL Required |
| ---------------- | ----------------- | ------------- | ---------------- |
| `NO` | `none` | `none` | `operator:write` |
2022-01-10 19:21:32 +00:00
The corresponding CLI command is [`consul license reset`](/commands/license#reset).
### Parameters
- `dc` `(string: "")` - Specifies the datacenter whose license should be updated.
This will default to the datacenter of the agent serving the HTTP request.
This is specified as a URL query parameter.
### Sample Request
2020-05-19 18:32:38 +00:00
```shell-session
$ curl \
--request DELETE \
http://127.0.0.1:8500/v1/operator/license
```
### Sample Response
```json
{
2020-04-06 20:27:35 +00:00
"Valid": true,
"License": {
"license_id": "2afbf681-0d1a-0649-cb6c-333ec9f0989c",
"customer_id": "0259271d-8ffc-e85e-0830-c0822c1f5f2b",
"installation_id": "*",
"issue_time": "2018-05-21T20:03:35.911567355Z",
"start_time": "2018-05-21T04:00:00Z",
"expiration_time": "2019-05-22T03:59:59.999Z",
"product": "consul",
"flags": {
"package": "premium"
},
2020-04-06 20:27:35 +00:00
"features": [
"Automated Backups",
"Automated Upgrades",
"Enhanced Read Scalability",
"Network Segments",
"Redundancy Zone",
"Advanced Network Federation"
],
"temporary": false
},
"Warnings": []
}
```