DEV Community

Cover image for How to Update an Elasticsearch/Kibana License Using Kibana Dev Tools
Durrell  Gemuh
Durrell Gemuh

Posted on

How to Update an Elasticsearch/Kibana License Using Kibana Dev Tools

Overview

Licensing in the Elastic Stack (Elasticsearch + Kibana) controls access to advanced features such as security, alerting, machine learning, and enterprise capabilities. Licenses have expiration dates, and once expired, certain features may be limited or disabled.

Updating your license ensures:

  • Continued access to premium features
  • Compliance with your subscription level
  • Avoidance of service interruptions

One important detail: licenses are applied at the cluster level, not per space or namespace.
This means updating the license once applies it globally across all spaces/namespaces in Kibana.

Step 1: Log in to Kibana

  1. Open your Kibana URL in a browser
  2. Log in with a user that has sufficient privileges.

Step 2: Select the Space (if applicable)

If your Kibana instance uses multiple spaces:

  • Use the space selector (top-left corner)
  • Choose any space you want

Important:
Even though you select a specific space, the license update will apply to the entire cluster — all spaces will inherit the updated license.

Step 3: Open Dev Tools

  1. In the left-hand menu, go to: Management → Dev Tools (or simply “Dev Tools” depending on your version)
  2. This opens the Console where you can run Elasticsearch API requests

Step 4: Check Current License

Run the following request to view the current license:

GET _license
Enter fullscreen mode Exit fullscreen mode

Important Note About License Format

Sometimes the license you receive (for example from Elastic or a vendor) comes as a single-line JSON string.

Example (hard to read / error-prone):

{"license":{"uid":"xxx","type":"enterprise","issue_date_in_millis":1700000000000,"expiry_date_in_millis":1800000000000,"signature":"ABC..."}}
Enter fullscreen mode Exit fullscreen mode

Before pasting it into Kibana Dev Tools, you should:

  • Format (pretty-print) the JSON
  • Ensure proper indentation
  • Verify there are no missing brackets or quotes

Formatted example:

{
  "license": {
    "uid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "type": "enterprise",
    "issue_date_in_millis": 1700000000000,
    "expiry_date_in_millis": 1800000000000,
    "max_nodes": null,
    "max_resource_units": 6,
    "issued_to": "Your Company",
    "issuer": "API",
    "signature": "REPLACE_WITH_SIGNATURE",
    "start_date_in_millis": 1700000000000
  }
}
Enter fullscreen mode Exit fullscreen mode

This helps avoid syntax errors when running the request in Dev Tools.

Step 5: Update the License

Run the following request:

PUT _license
{
  "license": {
    "uid": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
    "type": "enterprise",
    "issue_date_in_millis": 1700000000000,
    "expiry_date_in_millis": 1800000000000,
    "max_nodes": null,
    "max_resource_units": 6,
    "issued_to": "Your Company",
    "issuer": "API",
    "signature": "REPLACE_WITH_SIGNATURE",
    "start_date_in_millis": 1700000000000
  }
}
Enter fullscreen mode Exit fullscreen mode

Expected result:
You should receive an acknowledgment response confirming the license update.

Step 6: Verify the Update

Run the check again:

GET _license
Enter fullscreen mode Exit fullscreen mode

Confirm that:

  • The license type is updated
  • The expiry date reflects the new license
  • The issued organization is correct

Key Notes

  • License updates apply cluster-wide, not per space
  • You must have sufficient privileges to update the license
  • Changes take effect immediately — no restart required
  • Always validate your license before applying it in production

Summary

Updating a license via Dev Tools in Kibana is a quick and reliable method:

  • Log in → Select space → Open Dev Tools
  • Check current license → Apply new license → Verify

Remember:
One update applies to all namespaces/spaces in the cluster.

Top comments (0)