Update a tool
Base URL
https://{kibana_url}
Auth
Stack
9.2+
The Elastic Stack includes Elastic's core products such as Elasticsearch, Kibana, Logstash, and Beats.
Availability
Generally available since 9.2
This functionality is generally available and ready for production usage.
Unless stated otherwise on the page, this functionality is available when your Elastic Stack is deployed on Elastic Cloud Hosted, Elastic Cloud Enterprise, Elastic Cloud on Kubernetes, and self-managed environments.
This documentation corresponds to the latest patch available for each minor version. If you're not using the latest patch, check the release notes for changes.
Update an existing tool. Use this endpoint to modify any aspect of the tool's configuration or metadata. To learn more about Agent Builder tools, refer to the tools documentation .
Privileges
agentBuilder:manageTools
Expand all
toolId
string
required
The unique identifier of the tool to update.
A required header to protect against CSRF attacks
{
}
configuration
map string to object
Updated tool-specific configuration parameters. See examples for details.
confirmation
object
Updated tool call policy to control tool call confirmation behavior
+
Show 1 property
askUser
enum
Values:
once
always
never
description
string
Updated description of what the tool does.
tags
string []
Updated tags for categorizing and organizing tools.
200
Indicates a successful response
application/json
Thank you for your feedback.
Base URL
https://{kibana_url}
Examples
Example
2 languages
Update ES|QL tool
2 languages
Update index search tool
2 languages
Request
Console
1 / 2 languages
‹
›
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
PUT kbn:/api/agent_builder/tools/{toolId}
{
"description": "Updated ES|QL query tool for analyzing financial trades with time filtering",
"tags": ["analytics", "finance", "updated"],
"configuration": {
"query": "FROM financial_trades | WHERE execution_timestamp >= ?startTime | STATS trade_count=COUNT(*), avg_price=AVG(execution_price) BY symbol | SORT trade_count DESC | LIMIT ?limit",
"params": {
"startTime": {
"type": "date",
"description": "Start time for the analysis in ISO format"
},
"limit": {
"type": "integer",
"description": "Maximum number of results to return"
}
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
curl \
-X PUT "https://${KIBANA_URL}/api/agent_builder/tools/{toolId}" \
-H "Authorization: ApiKey ${API_KEY}" \
-H "kbn-xsrf: true" \
-H "Content-Type: application/json" \
-d '{
"description": "Updated ES|QL query tool for analyzing financial trades with time filtering",
"tags": ["analytics", "finance", "updated"],
"configuration": {
"query": "FROM financial_trades | WHERE execution_timestamp >= ?startTime | STATS trade_count=COUNT(*), avg_price=AVG(execution_price) BY symbol | SORT trade_count DESC | LIMIT ?limit",
"params": {
"startTime": {
"type": "date",
"description": "Start time for the analysis in ISO format"
},
"limit": {
"type": "integer",
"description": "Maximum number of results to return"
}
}
}
}'
Request
Console
1 / 2 languages
‹
›
Example request to update the custom ESQL tool
Show more
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
PUT kbn:/api/agent_builder/tools/TOOL_ID
{
"configuration": {
"params": {
"limit": {
"description": "Maximum number of results to return",
"type": "integer"
},
"startTime": {
"description": "Start time for the analysis in ISO format",
"type": "date"
},
"symbolPattern": {
"description": "Pattern to filter symbols (e.g., \u0027US_*\u0027 for US instruments)",
"type": "keyword"
}
},
"query": "FROM financial_trades | WHERE execution_timestamp \u003E= ?startTime AND symbol LIKE ?symbolPattern | STATS trade_count=COUNT(*), avg_price=AVG(execution_price), total_volume=SUM(quantity) BY symbol | SORT trade_count DESC | LIMIT ?limit"
},
"description": "Updated ES|QL query tool for comprehensive financial analysis with enhanced filtering",
"tags": [
"analytics",
"finance",
"reporting"
]
}
Generated from the API spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
curl \
-X PUT "https://${KIBANA_URL}/api/agent_builder/tools/${TOOL_ID}" \
-H "Authorization: ApiKey ${API_KEY}" \
-H "kbn-xsrf: true" \
-H "Content-Type: application/json" \
-d '{
"configuration": {
"params": {
"limit": {
"description": "Maximum number of results to return",
"type": "integer"
},
"startTime": {
"description": "Start time for the analysis in ISO format",
"type": "date"
},
"symbolPattern": {
"description": "Pattern to filter symbols (e.g., \u0027US_*\u0027 for US instruments)",
"type": "keyword"
}
},
"query": "FROM financial_trades | WHERE execution_timestamp \u003E= ?startTime AND symbol LIKE ?symbolPattern | STATS trade_count=COUNT(*), avg_price=AVG(execution_price), total_volume=SUM(quantity) BY symbol | SORT trade_count DESC | LIMIT ?limit"
},
"description": "Updated ES|QL query tool for comprehensive financial analysis with enhanced filtering",
"tags": [
"analytics",
"finance",
"reporting"
]
}'
Generated from the API spec
Response
Example response showing the updated ESQL tool
Show more
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
{
"configuration": {
"params": {
"limit": {
"description": "Maximum number of results to return",
"type": "integer"
},
"startTime": {
"description": "Start time for the analysis in ISO format",
"type": "date"
},
"symbolPattern": {
"description": "Pattern to filter symbols (e.g., \u0027US_*\u0027 for US instruments)",
"type": "keyword"
}
},
"query": "FROM financial_trades | WHERE execution_timestamp \u003E= ?startTime AND symbol LIKE ?symbolPattern | STATS trade_count=COUNT(*), avg_price=AVG(execution_price), total_volume=SUM(quantity) BY symbol | SORT trade_count DESC | LIMIT ?limit"
},
"description": "Updated ES|QL query tool for comprehensive financial analysis with enhanced filtering",
"id": "example-esql-tool",
"readonly": false,
"schema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"description": "Parameters needed to execute the enhanced query",
"type": "object",
"properties": {
"limit": {
"description": "Maximum number of results to return",
"type": "integer"
},
"startTime": {
"description": "Start time for the analysis in ISO format",
"format": "date-time",
"type": "string"
},
"symbolPattern": {
"description": "Pattern to filter symbols (e.g., \u0027US_*\u0027 for US instruments)",
"type": "string"
}
},
"required": [
"startTime",
"symbolPattern",
"limit"
]
},
"tags": [
"analytics",
"finance",
"reporting"
],
"type": "esql"
}
Request
Console
1 / 2 languages
‹
›
Example request to update the custom Search tool
Show more
1
2
3
4
5
6
7
8
9
10
PUT kbn:/api/agent_builder/tools/TOOL_ID
{
"description": "Updated search tool for comprehensive financial data analysis, reporting, and compliance monitoring",
"tags": [
"search",
"finance",
"compliance",
"reporting"
]
}
Generated from the API spec
1
2
3
4
5
6
7
8
9
10
11
12
13
14
curl \
-X PUT "https://${KIBANA_URL}/api/agent_builder/tools/${TOOL_ID}" \
-H "Authorization: ApiKey ${API_KEY}" \
-H "kbn-xsrf: true" \
-H "Content-Type: application/json" \
-d '{
"description": "Updated search tool for comprehensive financial data analysis, reporting, and compliance monitoring",
"tags": [
"search",
"finance",
"compliance",
"reporting"
]
}'
Generated from the API spec
Response
Example response showing the updated Search tool
Show more
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
{
"configuration": {
"pattern": "financial_*"
},
"description": "Updated search tool for comprehensive financial data analysis, reporting, and compliance monitoring",
"id": "example-index-search-tool",
"readonly": false,
"schema": {
"$schema": "http://json-schema.org/draft-07/schema#",
"additionalProperties": false,
"type": "object",
"properties": {
"nlQuery": {
"description": "A natural language query expressing the search request",
"type": "string"
}
},
"required": [
"nlQuery"
]
},
"tags": [
"search",
"finance",
"compliance",
"reporting"
],
"type": "index_search"
}