curl --request PUT \
--url https://api.honeycomb.io/1/boards/{boardId} \
--header 'Content-Type: application/json' \
--header 'X-Honeycomb-Team: <api-key>' \
--data '
{
"id": "board456",
"name": "Updated Production Dashboard",
"description": "Production monitoring with additional SLO panel",
"type": "flexible",
"panels": [
{
"type": "query",
"query_panel": {
"query_id": "cdef7890",
"query_annotation_id": "h9i8j7k6"
},
"position": {
"x_coordinate": 0,
"y_coordinate": 0,
"height": 6,
"width": 6
}
},
{
"type": "slo",
"slo_panel": {
"slo_id": "BGfyxhFto"
},
"position": {
"x_coordinate": 6,
"y_coordinate": 0,
"height": 6,
"width": 6
}
},
{
"type": "text",
"text_panel": {
"content": "## Recent Changes\n\n- Added SLO monitoring\n- Updated query filters"
},
"position": {
"x_coordinate": 0,
"y_coordinate": 6,
"height": 3,
"width": 12
}
}
],
"layout_generation": "manual",
"tags": [
{
"key": "environment",
"value": "production"
},
{
"key": "updated_by",
"value": "api"
}
]
}
'{
"name": "My Board",
"type": "flexible",
"description": "A board created via the API",
"links": {
"board_url": "https://ui.honeycomb.io/myteam/environments/myenvironment/board/2NeeaE9bBLd"
},
"id": "2NeeaE9bBLd",
"panels": [
{
"type": "query",
"query_panel": {
"query_id": "abc1234e",
"query_annotation_id": "e4c24a35",
"query_style": "graph",
"dataset": "My Dataset",
"visualization_settings": {
"hide_compare": false,
"hide_hovers": false,
"hide_markers": false,
"utc_xaxis": false,
"overlaid_charts": false,
"charts": [
{
"chart_index": 0,
"chart_type": "default",
"hide_other": false,
"log_scale": false,
"omit_missing_values": false,
"thresholds": [
{
"value": 100,
"color": "red",
"operation": "gt",
"line_style": "filled-solid",
"label": "Critical"
}
]
}
]
}
},
"position": {
"x_coordinate": 1,
"y_coordinate": 1,
"height": 1,
"width": 1
}
}
],
"tags": [
{
"key": "team",
"value": "blue"
}
],
"preset_filters": [
{
"column": "app.Service",
"alias": "Service"
}
]
}{
"status": 400,
"type": "https://api.honeycomb.io/problems/unparseable",
"title": "The request body could not be parsed.",
"error": "invalid gzip data"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "something went wrong!",
"status": 422,
"type": "https://api.honeycomb.io/problems/validation-failed",
"title": "The provided input is invalid.",
"detail": "<string>",
"instance": "<string>",
"type_detail": [
{
"field": "<string>",
"code": "invalid",
"description": "<string>"
}
]
}{
"error": "Rate Limited"
}{
"error": "<string>"
}Update a Board
Update a Board by specifying its ID and full details. Note: Queries can be added to, removed from, and re-ordered by updating the board itself. It is not possible to reference individual queries via the API. Note: Each board is limited to a maximum of 5 preset filters. Attempting to update a board with more than 5 preset filters will result in an error.
curl --request PUT \
--url https://api.honeycomb.io/1/boards/{boardId} \
--header 'Content-Type: application/json' \
--header 'X-Honeycomb-Team: <api-key>' \
--data '
{
"id": "board456",
"name": "Updated Production Dashboard",
"description": "Production monitoring with additional SLO panel",
"type": "flexible",
"panels": [
{
"type": "query",
"query_panel": {
"query_id": "cdef7890",
"query_annotation_id": "h9i8j7k6"
},
"position": {
"x_coordinate": 0,
"y_coordinate": 0,
"height": 6,
"width": 6
}
},
{
"type": "slo",
"slo_panel": {
"slo_id": "BGfyxhFto"
},
"position": {
"x_coordinate": 6,
"y_coordinate": 0,
"height": 6,
"width": 6
}
},
{
"type": "text",
"text_panel": {
"content": "## Recent Changes\n\n- Added SLO monitoring\n- Updated query filters"
},
"position": {
"x_coordinate": 0,
"y_coordinate": 6,
"height": 3,
"width": 12
}
}
],
"layout_generation": "manual",
"tags": [
{
"key": "environment",
"value": "production"
},
{
"key": "updated_by",
"value": "api"
}
]
}
'{
"name": "My Board",
"type": "flexible",
"description": "A board created via the API",
"links": {
"board_url": "https://ui.honeycomb.io/myteam/environments/myenvironment/board/2NeeaE9bBLd"
},
"id": "2NeeaE9bBLd",
"panels": [
{
"type": "query",
"query_panel": {
"query_id": "abc1234e",
"query_annotation_id": "e4c24a35",
"query_style": "graph",
"dataset": "My Dataset",
"visualization_settings": {
"hide_compare": false,
"hide_hovers": false,
"hide_markers": false,
"utc_xaxis": false,
"overlaid_charts": false,
"charts": [
{
"chart_index": 0,
"chart_type": "default",
"hide_other": false,
"log_scale": false,
"omit_missing_values": false,
"thresholds": [
{
"value": 100,
"color": "red",
"operation": "gt",
"line_style": "filled-solid",
"label": "Critical"
}
]
}
]
}
},
"position": {
"x_coordinate": 1,
"y_coordinate": 1,
"height": 1,
"width": 1
}
}
],
"tags": [
{
"key": "team",
"value": "blue"
}
],
"preset_filters": [
{
"column": "app.Service",
"alias": "Service"
}
]
}{
"status": 400,
"type": "https://api.honeycomb.io/problems/unparseable",
"title": "The request body could not be parsed.",
"error": "invalid gzip data"
}{
"error": "<string>"
}{
"error": "<string>"
}{
"error": "something went wrong!",
"status": 422,
"type": "https://api.honeycomb.io/problems/validation-failed",
"title": "The provided input is invalid.",
"detail": "<string>",
"instance": "<string>",
"type_detail": [
{
"field": "<string>",
"code": "invalid",
"description": "<string>"
}
]
}{
"error": "Rate Limited"
}{
"error": "<string>"
}Authorizations
Authenticate using a Honeycomb Configuration Key.
Pass the Token in the X-Honeycomb-Team header:
X-Honeycomb-Team: 1234567890123456789012
If you created your key using the API, use data.attributes.secret; this is the same value as the Token in the UI.
To learn how to create a Configuration Key, visit Manage Environment API Keys. To learn more about authenticating requests, visit API Authentication.
Path Parameters
The unique identifier (ID) of a Board.
Body
The name of the Board.
1 - 255"My Board"
The type of the board. Only flexible boards are supported.
flexible A description of the Board.
1024"A board created via the API"
- Query Panel
- SLO Panel
- Text Panel
Show child attributes
Show child attributes
The layout generation mode for the board. When set to "auto", the board will be automatically laid out based on the panels. When set to "manual", the board will be laid out manually by the user.
auto, manual A list of key-value pairs to help identify the Trigger.
10Show child attributes
Show child attributes
[{ "key": "team", "value": "blue" }]
A list of preset filters to apply to the board. For backwards compatibility, if no preset filters are provided, the existing preset filters will be preserved. If an empty array is provided, all preset filters will be deleted. Note: Each board is limited to a maximum of 5 preset filters. Attempting to create or update a board with more than 5 preset filters will result in an error.
5Show child attributes
Show child attributes
[
{
"column": "app.Service",
"alias": "Service"
}
]
Response
Success
The name of the Board.
1 - 255"My Board"
The type of the board. Only flexible boards are supported.
flexible A description of the Board.
1024"A board created via the API"
Show child attributes
Show child attributes
Unique identifier (ID), returned in response bodies.
"2NeeaE9bBLd"
- Query Panel
- SLO Panel
- Text Panel
Show child attributes
Show child attributes
A list of key-value pairs to help identify the Trigger.
10Show child attributes
Show child attributes
[{ "key": "team", "value": "blue" }]
A list of preset filters to apply to the board. For backwards compatibility, if no preset filters are provided, the existing preset filters will be preserved. If an empty array is provided, all preset filters will be deleted. Note: Each board is limited to a maximum of 5 preset filters. Attempting to create or update a board with more than 5 preset filters will result in an error.
5Show child attributes
Show child attributes
[
{
"column": "app.Service",
"alias": "Service"
}
]