Kibana deprecations
Over time, certain Elastic functionality becomes outdated and is replaced or removed. To help with the transition, Elastic deprecates functionality for a period before removal, giving you time to update your applications.
Review the deprecated functionality for Kibana. While deprecations have no immediate impact, we strongly encourage you update your implementation after you upgrade. To learn how to upgrade, check out Upgrade.
Migrate to the renamed Managed integrations API
Details
The agentless policies API is renamed to the Managed integrations API. The /api/fleet/agentless_policies paths are now served at /api/fleet/managed_integrations, and the response model is renamed from AgentlessPolicy to ManagedIntegration. The original agentless_policies paths remain available as deprecated aliases that forward to the same handlers.
Impact
Clients that call the agentless_policies paths keep working: The paths are retained as deprecated aliases, forward to the same handlers, and are marked deprecated in the API reference. Clients that reference the AgentlessPolicy schema (for example, code generated from the OpenAPI spec) no longer find it.
Action
Update integrations to call /api/fleet/managed_integrations and consume the ManagedIntegration response model, and migrate off the deprecated agentless_policies paths.
View #276925.
Migrate from deprecated elastic.apm settings
Details
Elastic APM instrumentation settings under elastic.apm are deprecated in favor of OpenTelemetry. Settings continue to work in 9.5 but trigger deprecation warnings. Removal is planned for 10.0.0. Real User Monitoring still relies on Elastic APM until OpenTelemetry browser monitoring is production-ready.
Impact
Deployments that configure elastic.apm receive startup deprecation warnings. The settings remain functional until removal in a future major version.
Action
Plan migration to OpenTelemetry instrumentation. Remove elastic.apm configuration and use telemetry.tracing and telemetry.metrics instead. Refer to Instrumenting with OTel traces.
View #272414.
Migrate from deprecated LLM connector types
Details
The OpenAI (.gen-ai), Amazon Bedrock (.bedrock), Google Gemini (.gemini), and Inference (.inference) connector types are deprecated. Existing connectors remain usable and show deprecation badges and warnings on the Connectors page and in rule action selectors.
Impact
Existing LLM connectors and rule actions that use them continue to work but display deprecation indicators.
Action
For new AI integrations, use Elasticsearch inference endpoints instead of LLM connectors. Plan migration of existing LLM connectors and any rule actions that reference them before future removal.
View #261591.
Replace the deprecated include_comments parameter in cases.getCase
Details
The include_comments parameter on the cases.getCase workflow step is deprecated. It cannot represent all unified case attachment types. Existing workflows that set include_comments continue to work unchanged.
Impact
Workflows that set include_comments: true on cases.getCase might receive an incomplete attachment array when unified attachments are present. YAML expressions that read legacy comment fields can return undefined.
Action
Use the cases.getAllAttachments step to retrieve case attachments instead of include_comments on cases.getCase.
View #277542.
Direct AI connector step types deprecated in favor of ai.prompt
Details
All direct AI connector workflow step types (inference.*, bedrock.*, gen-ai.*, gemini.*) are now deprecated. These steps are hidden from autocomplete suggestions and the Add Action menu in the workflow editor. Existing workflows using these step types continue to work but display a deprecation warning.
Impact
New workflows cannot easily discover or add direct AI connector steps. Existing workflows remain functional but show deprecation warnings in the editor.
Action
Migrate workflows to use the purpose-built ai.prompt step instead of direct AI connector steps. The ai.prompt step provides a consistent interface for AI operations regardless of the underlying connector type.
View #263694.
Deprecated state:storeInSessionStorage advanced setting
Details
The artificial URL length limit has been removed from Kibana, and the state:storeInSessionStorage advanced setting is now deprecated. This setting was originally provided as a workaround for URL length limits in older browsers. Modern browsers no longer have these limits, and using this setting can prevent copying and pasting URLs directly between tabs.
Impact
The state:storeInSessionStorage setting will be removed in a future version. Enabling this setting may cause issues with URL sharing in Discover and Dashboards.
Action
Disable the state:storeInSessionStorage setting if it is currently enabled. Go to Stack Management > Advanced Settings and set state:storeInSessionStorage to false.
View #242972.
There are no deprecations in this version.
There are no deprecations in this version.
There are no deprecations in this version.
HTTP/2 becomes the default protocol when TLS is enabled
Details
Starting from version 9.0.0, HTTP/2 is the default protocol when TLS is enabled. This ensures improved performance and security. However, if HTTP/2 is not enabled or TLS is not configured, a deprecation warning will be added.
Impact
Systems that have TLS enabled but don’t specify a protocol will start using HTTP/2 in 9.0.0. Systems that use HTTP/1 or don’t have TLS configured will get a deprecation warning.
Action
Verify that TLS is properly configured by enabling it and providing valid certificates in the settings. Test your system to ensure that connections are established securely over HTTP/2.
If your Kibana server is hosted behind a load balancer or reverse proxy we recommend testing your deployment configuration before upgrading to 9.0.
View #204384.
Scripted field creation has been disabled in the Data Views management page
The ability to create new scripted fields has been removed from the Data Views management page in 9.0. Existing scripted fields can still be edited or deleted, and the creation UI can be accessed by navigating directly to /app/management/kibana/dataViews/dataView/{{dataViewId}}/create-field, but we recommend migrating to runtime fields or ES|QL queries instead to prepare for removal.
Impact
It will no longer be possible to create new scripted fields directly from the Data Views management page.
Action
Migrate to runtime fields or ES|QL instead of creating new scripted fields. Existing scripted fields can still be edited or deleted.
View #202250.