Update a tool
Base URL
https://{kibana_url}
Auth
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
space_id
string
optional
An identifier for the space. If space_id is not provided in the URL, the default space is used. Refer to Spaces for more information.
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"
}