openapi: 3.2.0 info: title: Elasticsearch License API description: 'Elasticsearch provides REST APIs that are used by the UI components and can be called directly to configure and access Elasticsearch features. ## Documentation source and versions This documentation is derived from the main branch of the elasticsearch-specification repository. It is provided under license Attribution-NonCommercial-NoDerivatives 4.0 International. This documentation contains work-in-progress information for future Elastic Stack releases.' license: name: Apache 2.0 url: https://github.com/elastic/elasticsearch-specification/blob/main/LICENSE version: '' security: - apiKeyAuth: [] - basicAuth: [] - bearerAuth: [] tags: - name: License description: Licensing APIs enable you to manage your licenses. externalDocs: description: Learn more. url: https://www.elastic.co/subscriptions x-displayName: Licensing paths: /_license: get: tags: - License summary: Get license information description: 'Get information about your Elastic license including its type, its status, when it was issued, and when it expires. >info > If the master node is generating a new cluster state, the get license API may return a `404 Not Found` response. > If you receive an unexpected 404 response after cluster startup, wait a short period and retry the request.' operationId: license-get parameters: - in: query name: accept_enterprise description: 'If `true`, this parameter returns enterprise for Enterprise license types. If `false`, this parameter returns platinum for both platinum and enterprise license types. This behavior is maintained for backwards compatibility. This parameter is deprecated and will always be set to true in 8.x.' deprecated: true schema: type: boolean style: form - in: query name: local description: 'Specifies whether to retrieve local information. From 9.2 onwards the default value is `true`, which means the information is retrieved from the responding node. In earlier versions the default is `false`, which means the information is retrieved from the elected master node.' deprecated: false schema: type: boolean style: form responses: '200': description: '' content: application/json: schema: type: object properties: license: allOf: - $ref: '#/components/schemas/license.get.LicenseInformation' required: - license examples: GetLicenseResponseExample1: description: A successful response from `GET /_license`. value: "{\n \"license\" : {\n \"status\" : \"active\",\n \"uid\" : \"cbff45e7-c553-41f7-ae4f-9205eabd80xx\",\n \"type\" : \"trial\",\n \"issue_date\" : \"2018-10-20T22:05:12.332Z\",\n \"issue_date_in_millis\" : 1540073112332,\n \"expiry_date\" : \"2018-11-19T22:05:12.332Z\",\n \"expiry_date_in_millis\" : 1542665112332,\n \"max_nodes\" : 1000,\n \"max_resource_units\" : null,\n \"issued_to\" : \"test\",\n \"issuer\" : \"elasticsearch\",\n \"start_date_in_millis\" : -1\n }\n}" x-state: Generally available x-variations: - "
\n GET\n /_license\n
\n " x-api: get.license x-category: info x-codeSamples: - lang: Console source: 'GET /_license ' - lang: Python source: resp = client.license.get() - lang: JavaScript source: const response = await client.license.get(); - lang: Ruby source: response = client.license.get - lang: PHP source: $resp = $client->license()->get(); - lang: curl source: 'curl -X GET -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_license"' - lang: Java source: 'client.license().get(g -> g); ' x-metaTags: - content: Elasticsearch name: product_name put: tags: - License summary: Update the license description: 'You can update your license at runtime without shutting down your nodes. License updates take effect immediately. If the license you are installing does not support all of the features that were available with your previous license, however, you are notified in the response. You must then re-submit the API request with the acknowledge parameter set to true. NOTE: If Elasticsearch security features are enabled and you are installing a gold or higher license, you must enable TLS on the transport networking layer before you install the license. If the operator privileges feature is enabled, only operator users can use this API.' operationId: license-post parameters: - in: query name: acknowledge description: Specifies whether you acknowledge the license changes. deprecated: false schema: type: boolean style: form - in: query name: master_timeout description: The period to wait for a connection to the master node. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form - in: query name: timeout description: The period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form requestBody: content: application/json: schema: type: object properties: license: allOf: - $ref: '#/components/schemas/license._types.License' licenses: description: A sequence of one or more JSON documents containing the license information. type: array items: $ref: '#/components/schemas/license._types.License' examples: PostLicenseRequestExample1: description: 'Run `PUT _license` to update to a basic license. NOTE: These values are invalid; you must substitute the appropriate contents from your license file. ' value: "{\n \"licenses\": [\n {\n \"uid\":\"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\":\"basic\",\n \"issue_date_in_millis\":1411948800000,\n \"expiry_date_in_millis\":1914278399999,\n \"max_nodes\":1,\n \"issued_to\":\"issuedTo\",\n \"issuer\":\"issuer\",\n \"signature\":\"xx\"\n }\n ]\n}" responses: '200': description: '' content: application/json: schema: type: object properties: acknowledge: allOf: - $ref: '#/components/schemas/license.post.Acknowledgement' acknowledged: type: boolean license_status: allOf: - $ref: '#/components/schemas/license._types.LicenseStatus' required: - acknowledged - license_status examples: PostLicenseResponseExample1: description: If you update to a basic license and you previously had a license with more features, you receive this type of response. You must re-submit the API request and set the `acknowledge` parameter to `true`. value: "{\n \"acknowledged\": false,\n \"license_status\": \"valid\",\n \"acknowledge\": {\n \"message\": \"\\\"\\\"\\\"This license update requires acknowledgement. To acknowledge the license, please read the following messages and update the license again, this time with the \\\"acknowledge=true\\\" parameter:\\\"\\\"\\\"\",\n \"watcher\": [\n \"Watcher will be disabled\"\n ],\n \"logstash\": [\n \"Logstash will no longer poll for centrally-managed pipelines\"\n ],\n \"security\": [\n \"The following X-Pack security functionality will be disabled ...\"\n ]\n }\n}" x-state: Generally available x-variations: - "
\n PUT\n /_license\n
\n " - "
\n POST\n /_license\n
\n " x-req-auth: - 'Cluster privileges: `manage` ' x-api: post.license x-category: info x-codeSamples: - lang: Console source: "PUT _license\n{\n \"licenses\": [\n {\n \"uid\":\"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\":\"basic\",\n \"issue_date_in_millis\":1411948800000,\n \"expiry_date_in_millis\":1914278399999,\n \"max_nodes\":1,\n \"issued_to\":\"issuedTo\",\n \"issuer\":\"issuer\",\n \"signature\":\"xx\"\n }\n ]\n}" - lang: Python source: "resp = client.license.post(\n licenses=[\n {\n \"uid\": \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\": \"basic\",\n \"issue_date_in_millis\": 1411948800000,\n \"expiry_date_in_millis\": 1914278399999,\n \"max_nodes\": 1,\n \"issued_to\": \"issuedTo\",\n \"issuer\": \"issuer\",\n \"signature\": \"xx\"\n }\n ],\n)" - lang: JavaScript source: "const response = await client.license.post({\n licenses: [\n {\n uid: \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n type: \"basic\",\n issue_date_in_millis: 1411948800000,\n expiry_date_in_millis: 1914278399999,\n max_nodes: 1,\n issued_to: \"issuedTo\",\n issuer: \"issuer\",\n signature: \"xx\",\n },\n ],\n});" - lang: Ruby source: "response = client.license.post(\n body: {\n \"licenses\": [\n {\n \"uid\": \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\": \"basic\",\n \"issue_date_in_millis\": 1411948800000,\n \"expiry_date_in_millis\": 1914278399999,\n \"max_nodes\": 1,\n \"issued_to\": \"issuedTo\",\n \"issuer\": \"issuer\",\n \"signature\": \"xx\"\n }\n ]\n }\n)" - lang: PHP source: "$resp = $client->license()->post([\n \"body\" => [\n \"licenses\" => array(\n [\n \"uid\" => \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\" => \"basic\",\n \"issue_date_in_millis\" => 1411948800000,\n \"expiry_date_in_millis\" => 1914278399999,\n \"max_nodes\" => 1,\n \"issued_to\" => \"issuedTo\",\n \"issuer\" => \"issuer\",\n \"signature\" => \"xx\",\n ],\n ),\n ],\n]);" - lang: curl source: 'curl -X PUT -H "Authorization: ApiKey $ELASTIC_API_KEY" -H "Content-Type: application/json" -d ''{"licenses":[{"uid":"893361dc-9749-4997-93cb-802e3d7fa4xx","type":"basic","issue_date_in_millis":1411948800000,"expiry_date_in_millis":1914278399999,"max_nodes":1,"issued_to":"issuedTo","issuer":"issuer","signature":"xx"}]}'' "$ELASTICSEARCH_URL/_license"' - lang: Java source: "client.license().post(p -> p\n .licenses(l -> l\n .expiryDateInMillis(1914278399999L)\n .issueDateInMillis(1411948800000L)\n .issuedTo(\"issuedTo\")\n .issuer(\"issuer\")\n .maxNodes(1L)\n .signature(\"xx\")\n .type(LicenseType.Basic)\n .uid(\"893361dc-9749-4997-93cb-802e3d7fa4xx\")\n )\n);\n" x-metaTags: - content: Elasticsearch name: product_name post: tags: - License summary: Update the license description: 'You can update your license at runtime without shutting down your nodes. License updates take effect immediately. If the license you are installing does not support all of the features that were available with your previous license, however, you are notified in the response. You must then re-submit the API request with the acknowledge parameter set to true. NOTE: If Elasticsearch security features are enabled and you are installing a gold or higher license, you must enable TLS on the transport networking layer before you install the license. If the operator privileges feature is enabled, only operator users can use this API.' operationId: license-post-1 parameters: - in: query name: acknowledge description: Specifies whether you acknowledge the license changes. deprecated: false schema: type: boolean style: form - in: query name: master_timeout description: The period to wait for a connection to the master node. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form - in: query name: timeout description: The period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form requestBody: content: application/json: schema: type: object properties: license: allOf: - $ref: '#/components/schemas/license._types.License' licenses: description: A sequence of one or more JSON documents containing the license information. type: array items: $ref: '#/components/schemas/license._types.License' examples: PostLicenseRequestExample1: description: 'Run `PUT _license` to update to a basic license. NOTE: These values are invalid; you must substitute the appropriate contents from your license file. ' value: "{\n \"licenses\": [\n {\n \"uid\":\"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\":\"basic\",\n \"issue_date_in_millis\":1411948800000,\n \"expiry_date_in_millis\":1914278399999,\n \"max_nodes\":1,\n \"issued_to\":\"issuedTo\",\n \"issuer\":\"issuer\",\n \"signature\":\"xx\"\n }\n ]\n}" responses: '200': description: '' content: application/json: schema: type: object properties: acknowledge: allOf: - $ref: '#/components/schemas/license.post.Acknowledgement' acknowledged: type: boolean license_status: allOf: - $ref: '#/components/schemas/license._types.LicenseStatus' required: - acknowledged - license_status examples: PostLicenseResponseExample1: description: If you update to a basic license and you previously had a license with more features, you receive this type of response. You must re-submit the API request and set the `acknowledge` parameter to `true`. value: "{\n \"acknowledged\": false,\n \"license_status\": \"valid\",\n \"acknowledge\": {\n \"message\": \"\\\"\\\"\\\"This license update requires acknowledgement. To acknowledge the license, please read the following messages and update the license again, this time with the \\\"acknowledge=true\\\" parameter:\\\"\\\"\\\"\",\n \"watcher\": [\n \"Watcher will be disabled\"\n ],\n \"logstash\": [\n \"Logstash will no longer poll for centrally-managed pipelines\"\n ],\n \"security\": [\n \"The following X-Pack security functionality will be disabled ...\"\n ]\n }\n}" x-state: Generally available x-variations: - "
\n PUT\n /_license\n
\n " - "
\n POST\n /_license\n
\n " x-req-auth: - 'Cluster privileges: `manage` ' x-api: post.license x-category: info x-codeSamples: - lang: Console source: "PUT _license\n{\n \"licenses\": [\n {\n \"uid\":\"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\":\"basic\",\n \"issue_date_in_millis\":1411948800000,\n \"expiry_date_in_millis\":1914278399999,\n \"max_nodes\":1,\n \"issued_to\":\"issuedTo\",\n \"issuer\":\"issuer\",\n \"signature\":\"xx\"\n }\n ]\n}" - lang: Python source: "resp = client.license.post(\n licenses=[\n {\n \"uid\": \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\": \"basic\",\n \"issue_date_in_millis\": 1411948800000,\n \"expiry_date_in_millis\": 1914278399999,\n \"max_nodes\": 1,\n \"issued_to\": \"issuedTo\",\n \"issuer\": \"issuer\",\n \"signature\": \"xx\"\n }\n ],\n)" - lang: JavaScript source: "const response = await client.license.post({\n licenses: [\n {\n uid: \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n type: \"basic\",\n issue_date_in_millis: 1411948800000,\n expiry_date_in_millis: 1914278399999,\n max_nodes: 1,\n issued_to: \"issuedTo\",\n issuer: \"issuer\",\n signature: \"xx\",\n },\n ],\n});" - lang: Ruby source: "response = client.license.post(\n body: {\n \"licenses\": [\n {\n \"uid\": \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\": \"basic\",\n \"issue_date_in_millis\": 1411948800000,\n \"expiry_date_in_millis\": 1914278399999,\n \"max_nodes\": 1,\n \"issued_to\": \"issuedTo\",\n \"issuer\": \"issuer\",\n \"signature\": \"xx\"\n }\n ]\n }\n)" - lang: PHP source: "$resp = $client->license()->post([\n \"body\" => [\n \"licenses\" => array(\n [\n \"uid\" => \"893361dc-9749-4997-93cb-802e3d7fa4xx\",\n \"type\" => \"basic\",\n \"issue_date_in_millis\" => 1411948800000,\n \"expiry_date_in_millis\" => 1914278399999,\n \"max_nodes\" => 1,\n \"issued_to\" => \"issuedTo\",\n \"issuer\" => \"issuer\",\n \"signature\" => \"xx\",\n ],\n ),\n ],\n]);" - lang: curl source: 'curl -X PUT -H "Authorization: ApiKey $ELASTIC_API_KEY" -H "Content-Type: application/json" -d ''{"licenses":[{"uid":"893361dc-9749-4997-93cb-802e3d7fa4xx","type":"basic","issue_date_in_millis":1411948800000,"expiry_date_in_millis":1914278399999,"max_nodes":1,"issued_to":"issuedTo","issuer":"issuer","signature":"xx"}]}'' "$ELASTICSEARCH_URL/_license"' - lang: Java source: "client.license().post(p -> p\n .licenses(l -> l\n .expiryDateInMillis(1914278399999L)\n .issueDateInMillis(1411948800000L)\n .issuedTo(\"issuedTo\")\n .issuer(\"issuer\")\n .maxNodes(1L)\n .signature(\"xx\")\n .type(LicenseType.Basic)\n .uid(\"893361dc-9749-4997-93cb-802e3d7fa4xx\")\n )\n);\n" x-metaTags: - content: Elasticsearch name: product_name delete: tags: - License summary: Delete the license description: 'When the license expires, your subscription level reverts to Basic. If the operator privileges feature is enabled, only operator users can use this API.' externalDocs: url: https://www.elastic.co/docs/deploy-manage/license/manage-your-license-in-self-managed-cluster x-previousVersionUrl: https://www.elastic.co/guide/en/elasticsearch/reference/8.19/delete-license.html operationId: license-delete parameters: - in: query name: master_timeout description: The period to wait for a connection to the master node. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form - in: query name: timeout description: The period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form responses: '200': description: '' content: application/json: schema: $ref: '#/components/schemas/_types.AcknowledgedResponseBase' x-state: Generally available x-variations: - "
\n DELETE\n /_license\n
\n " x-req-auth: - 'Cluster privileges: `manage` ' x-api: delete.license x-category: info x-codeSamples: - lang: Console source: 'DELETE /_license ' - lang: Python source: resp = client.license.delete() - lang: JavaScript source: const response = await client.license.delete(); - lang: Ruby source: response = client.license.delete - lang: PHP source: $resp = $client->license()->delete(); - lang: curl source: 'curl -X DELETE -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_license"' - lang: Java source: 'client.license().delete(d -> d); ' x-metaTags: - content: Elasticsearch name: product_name /_license/basic_status: get: tags: - License summary: Get the basic license status operationId: license-get-basic-status responses: '200': description: '' content: application/json: schema: type: object properties: eligible_to_start_basic: type: boolean required: - eligible_to_start_basic examples: GetBasicLicenseStatusResponseExample1: description: A successful response from `GET /_license/basic_status`. value: "{\n \"eligible_to_start_basic\": true\n}" x-state: Generally available; Added in 6.3.0 x-variations: - "
\n GET\n /_license/basic_status\n
\n " x-req-auth: - 'Cluster privileges: `monitor` ' x-api: get_basic_status.license x-category: info x-codeSamples: - lang: Console source: 'GET /_license/basic_status ' - lang: Python source: resp = client.license.get_basic_status() - lang: JavaScript source: const response = await client.license.getBasicStatus(); - lang: Ruby source: response = client.license.get_basic_status - lang: PHP source: $resp = $client->license()->getBasicStatus(); - lang: curl source: 'curl -X GET -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_license/basic_status"' - lang: Java source: 'client.license().getBasicStatus(); ' x-metaTags: - content: Elasticsearch name: product_name /_license/trial_status: get: tags: - License summary: Get the trial status operationId: license-get-trial-status responses: '200': description: '' content: application/json: schema: type: object properties: eligible_to_start_trial: type: boolean required: - eligible_to_start_trial examples: GetTrialLicenseStatusResponseExample1: description: A successful response from `GET /_license/trial_status`. value: "{\n \"eligible_to_start_trial\": true\n}" x-state: Generally available; Added in 6.1.0 x-variations: - "
\n GET\n /_license/trial_status\n
\n " x-req-auth: - 'Cluster privileges: `monitor` ' x-api: get_trial_status.license x-category: info x-codeSamples: - lang: Console source: 'GET /_license/trial_status ' - lang: Python source: resp = client.license.get_trial_status() - lang: JavaScript source: const response = await client.license.getTrialStatus(); - lang: Ruby source: response = client.license.get_trial_status - lang: PHP source: $resp = $client->license()->getTrialStatus(); - lang: curl source: 'curl -X GET -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_license/trial_status"' - lang: Java source: 'client.license().getTrialStatus(); ' x-metaTags: - content: Elasticsearch name: product_name /_license/start_basic: post: tags: - License summary: Start a basic license description: 'Start an indefinite basic license, which gives access to all the basic features. NOTE: In order to start a basic license, you must not currently have a basic license. If the basic license does not support all of the features that are available with your current license, however, you are notified in the response. You must then re-submit the API request with the `acknowledge` parameter set to `true`. To check the status of your basic license, use the get basic license API.' operationId: license-post-start-basic parameters: - in: query name: acknowledge description: Whether the user has acknowledged acknowledge messages deprecated: false schema: type: boolean style: form - in: query name: master_timeout description: Period to wait for a connection to the master node. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form - in: query name: timeout description: Period to wait for a response. If no response is received before the timeout expires, the request fails and returns an error. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form responses: '200': description: '' content: application/json: schema: type: object properties: acknowledged: type: boolean basic_was_started: type: boolean error_message: type: string type: allOf: - $ref: '#/components/schemas/license._types.LicenseType' acknowledge: type: object additionalProperties: oneOf: - type: string - type: array items: type: string required: - acknowledged - basic_was_started examples: StartBasicLicenseResponseExample1: description: A successful response from `POST /_license/start_basic?acknowledge=true`. If you currently have a license with more features than a basic license and you start a basic license, you must pass the acknowledge parameter. value: "{\n \"basic_was_started\": true,\n \"acknowledged\": true\n}" x-state: Generally available; Added in 6.3.0 x-variations: - "
\n POST\n /_license/start_basic\n
\n " x-req-auth: - 'Cluster privileges: `manage` ' x-api: post_start_basic.license x-category: info x-codeSamples: - lang: Console source: 'POST /_license/start_basic?acknowledge=true ' - lang: Python source: "resp = client.license.post_start_basic(\n acknowledge=True,\n)" - lang: JavaScript source: "const response = await client.license.postStartBasic({\n acknowledge: \"true\",\n});" - lang: Ruby source: "response = client.license.post_start_basic(\n acknowledge: \"true\"\n)" - lang: PHP source: "$resp = $client->license()->postStartBasic([\n \"acknowledge\" => \"true\",\n]);" - lang: curl source: 'curl -X POST -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_license/start_basic?acknowledge=true"' - lang: Java source: "client.license().postStartBasic(p -> p\n .acknowledge(true)\n);\n" x-metaTags: - content: Elasticsearch name: product_name /_license/start_trial: post: tags: - License summary: Start a trial description: 'Start a 30-day trial, which gives access to all subscription features. NOTE: You are allowed to start a trial only if your cluster has not already activated a trial for the current major product version. For example, if you have already activated a trial for v8.0, you cannot start a new trial until v9.0. You can, however, request an extended trial at https://www.elastic.co/trialextension. To check the status of your trial, use the get trial status API.' operationId: license-post-start-trial parameters: - in: query name: acknowledge description: Whether the user has acknowledged acknowledge messages deprecated: false schema: type: boolean style: form - in: query name: type description: The type of trial license to generate deprecated: false schema: type: string style: form - in: query name: master_timeout description: Period to wait for a connection to the master node. deprecated: false schema: $ref: '#/components/schemas/_types.Duration' style: form responses: '200': description: '' content: application/json: schema: type: object properties: acknowledged: type: boolean error_message: type: string trial_was_started: type: boolean type: allOf: - $ref: '#/components/schemas/license._types.LicenseType' required: - acknowledged - trial_was_started examples: StartTrialLicenseResponseExample1: description: A successful response from `POST /_license/start_trial?acknowledge=true`. value: "{\n \"trial_was_started\": true,\n \"acknowledged\": true\n}" x-state: Generally available; Added in 6.1.0 x-variations: - "
\n POST\n /_license/start_trial\n
\n " x-req-auth: - 'Cluster privileges: `manage` ' x-api: post_start_trial.license x-category: info x-codeSamples: - lang: Console source: 'POST /_license/start_trial?acknowledge=true ' - lang: Python source: "resp = client.license.post_start_trial(\n acknowledge=True,\n)" - lang: JavaScript source: "const response = await client.license.postStartTrial({\n acknowledge: \"true\",\n});" - lang: Ruby source: "response = client.license.post_start_trial(\n acknowledge: \"true\"\n)" - lang: PHP source: "$resp = $client->license()->postStartTrial([\n \"acknowledge\" => \"true\",\n]);" - lang: curl source: 'curl -X POST -H "Authorization: ApiKey $ELASTIC_API_KEY" "$ELASTICSEARCH_URL/_license/start_trial?acknowledge=true"' - lang: Java source: "client.license().postStartTrial(p -> p\n .acknowledge(true)\n);\n" x-metaTags: - content: Elasticsearch name: product_name components: schemas: _types.DateTime: description: 'A date and time, either as a string whose format can depend on the context (defaulting to ISO 8601), or a number of milliseconds since the Epoch. Elasticsearch accepts both as input, but will generally output a string representation.' oneOf: - type: string - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' _types.UnitMillis: description: Time unit for milliseconds type: number _types.Uuid: type: string license._types.LicenseStatus: type: string enum: - active - valid - invalid - expired _types.AcknowledgedResponseBase: type: object properties: acknowledged: description: For a successful response, this value is always true. On failure, an exception is returned instead. type: boolean required: - acknowledged _types.Duration: externalDocs: url: https://www.elastic.co/docs/reference/elasticsearch/rest-apis/api-conventions#time-units description: 'A duration. Units can be `nanos`, `micros`, `ms` (milliseconds), `s` (seconds), `m` (minutes), `h` (hours) and `d` (days). Also accepts "0" without a unit and "-1" to indicate an unspecified value.' oneOf: - type: string - type: string enum: - '-1' - type: string enum: - '0' license.post.Acknowledgement: type: object properties: license: type: array items: type: string message: type: string required: - license - message license._types.License: type: object properties: expiry_date_in_millis: allOf: - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' issue_date_in_millis: allOf: - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' start_date_in_millis: allOf: - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' issued_to: type: string issuer: type: string max_nodes: oneOf: - type: number - type: - string - 'null' max_resource_units: type: number signature: type: string type: allOf: - $ref: '#/components/schemas/license._types.LicenseType' uid: type: string required: - expiry_date_in_millis - issue_date_in_millis - issued_to - issuer - signature - type - uid license.get.LicenseInformation: type: object properties: expiry_date: allOf: - $ref: '#/components/schemas/_types.DateTime' expiry_date_in_millis: allOf: - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' issue_date: allOf: - $ref: '#/components/schemas/_types.DateTime' issue_date_in_millis: allOf: - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' issued_to: type: string issuer: type: string max_nodes: oneOf: - type: number - type: - string - 'null' max_resource_units: oneOf: - type: number - type: - string - 'null' status: allOf: - $ref: '#/components/schemas/license._types.LicenseStatus' type: allOf: - $ref: '#/components/schemas/license._types.LicenseType' uid: allOf: - $ref: '#/components/schemas/_types.Uuid' start_date_in_millis: allOf: - $ref: '#/components/schemas/_types.EpochTimeUnitMillis' required: - issue_date - issue_date_in_millis - issued_to - issuer - max_nodes - status - type - uid - start_date_in_millis license._types.LicenseType: type: string enum: - missing - trial - basic - standard - dev - silver - gold - platinum - enterprise _types.EpochTimeUnitMillis: allOf: - $ref: '#/components/schemas/_types.UnitMillis' securitySchemes: apiKeyAuth: type: apiKey in: header name: Authorization description: "Elasticsearch APIs support key-based authentication.\nYou must create an API key and use the encoded value in the request header.\nFor example:\n\n```\ncurl -X GET \"${ES_URL}/_cat/indices?v=true\" \\\n -H \"Authorization: ApiKey ${API_KEY}\"\n```\n\nTo get API keys, use the `/_security/api_key` APIs." basicAuth: type: http scheme: basic bearerAuth: type: http scheme: bearer description: 'Elasticsearch APIs support the use of bearer tokens in the `Authorization` HTTP header to authenticate with the API. For examples, refer to [Token-based authentication services](https://www.elastic.co/docs/deploy-manage/users-roles/cluster-or-deployment-auth/token-based-authentication-services)' x-tagGroups: - name: AI & Machine Learning tags: - analytics - graph - inference - ml - ml anomaly - ml data frame - ml trained model - query_rules - text_structure - name: Cluster Management tags: - ccr - cluster - connector - data stream - ilm - indices - rollup - script - search_application - searchable_snapshots - slm - snapshot - name: Data Processing tags: - enrich - fleet - ingest - logstash - synonyms - transform - name: Information & Monitoring tags: - cat - features - health_report - info - license - migration - tasks - watcher - xpack - name: Search & Document APIs tags: - document - eql - esql - search - sql - name: Security tags: - security