Dashboards API - PUT a dashboard
Updates the specified dashboard.
The request consumes and produces an application/json
payload.
This request is an Early Adopter release and may be changed in non-compatible way.
PUT |
|
Authentication
To execute this request, you need the Write configuration (WriteConfig
) permission assigned to your API token. To learn how to obtain and use it, see Tokens and authentication.
Parameters
Refer to Tile JSON models to find JSON models for each tile type.
Parameter | Type | Description | In | Required |
---|---|---|---|---|
id | string |
The ID of the dashboard to be updated. The ID in the request body must match this ID. |
path | required |
body | Dashboard |
The JSON body of the request. Contains updated parameters of the dashboard. |
body | optional |
Body format
The Dashboard object
Configuration of a dashboard.
Element | Type | Description | Required |
---|---|---|---|
metadata | ConfigurationMetadata | optional | |
id | string |
The ID of the dashboard. |
optional |
dashboardMetadata | DashboardMetadata | required | |
tiles | Tile[] |
The list of tiles on the dashboard. |
required |
The Tile object
Configuration of a tile.
The actual set of fields depends on the type of the tile. See the description of the tileType field.
Element | Type | Description | Required |
---|---|---|---|
name | string |
The name of the tile. |
required |
tileType | string |
Defines the actual set of fields depending on the value. See one of the following objects:
|
required |
configured | boolean |
The tile is configured and ready to use ( |
optional |
bounds | TileBounds | required | |
tileFilter | TileFilter | optional |
The TileFilter object
A filter applied to a tile.
It overrides dashboard's filter.
Element | Type | Description | Required |
---|---|---|---|
timeframe | string |
The default timeframe of the tile. |
optional |
managementZone | EntityShortRepresentation | optional |
The TileBounds object
The position and size of a tile.
Element | Type | Description | Required |
---|---|---|---|
top | integer |
The vertical distance from the top left corner of the dashboard to the top left corner of the tile, in pixels. |
optional |
left | integer |
The horizontal distance from the top left corner of the dashboard to the top left corner of the tile, in pixels. |
optional |
width | integer |
The width of the tile, in pixels. |
optional |
height | integer |
The height of the tile, in pixels. |
optional |
The DashboardMetadata object
Parameters of a dashboard.
Element | Type | Description | Required |
---|---|---|---|
name | string |
The name of the dashboard. |
required |
shared | boolean |
The dashboard is shared ( |
optional |
owner | string |
The owner of the dashboard. |
required |
sharingDetails | SharingInfo | optional | |
dashboardFilter | DashboardFilter | optional | |
tags | string[] |
A set of tags assigned to the dashboard. |
optional |
preset | boolean |
The dashboard is a preset ( |
optional |
validFilterKeys | string[] |
A set of all possible global dashboard filters that can be applied to dashboard |
optional |
The DashboardFilter object
Filters, applied to a dashboard.
Element | Type | Description | Required |
---|---|---|---|
timeframe | string |
The default timeframe of the dashboard. |
optional |
managementZone | EntityShortRepresentation | optional |
The EntityShortRepresentation object
The short representation of a Dynatrace entity.
Element | Type | Description | Required |
---|---|---|---|
id | string |
The ID of the Dynatrace entity. |
required |
name | string |
The name of the Dynatrace entity. |
optional |
description | string |
A short description of the Dynatrace entity. |
optional |
The SharingInfo object
Sharing configuration of a dashboard.
Element | Type | Description | Required |
---|---|---|---|
linkShared | boolean |
If |
optional |
published | boolean |
If |
optional |
The ConfigurationMetadata object
Metadata useful for debugging
Element | Type | Description | Required |
---|---|---|---|
configurationVersions | integer[] |
A Sorted list of the version numbers of the configuration. |
optional |
currentConfigurationVersions | string[] |
A Sorted list of string version numbers of the configuration. |
optional |
clusterVersion | string |
Dynatrace server version. |
optional |
This is a model of the request body, showing the possible elements. It has to be adjusted for usage in an actual request. See the Example expandable section for working sample request.
{
"metadata": {
"configurationVersions": [
4,
2
],
"clusterVersion": "Mock version"
},
"dashboardMetadata": {
"name": "Example Dashboard",
"owner": "Example Owner",
"shared": true,
"sharingDetails": {
"linkShared": true,
"published": false
},
"dashboardFilter": {
"timeframe": "l_72_HOURS",
"managementZone": {
"id": "3438779970106539862",
"name": "Example Management Zone"
}
}
},
"tiles": [
{
"name": "Hosts",
"tileType": "HEADER",
"configured": true,
"bounds": {
"top": 0,
"left": 0,
"width": 304,
"height": 38
},
"tileFilter": {}
},
{
"name": "Applications",
"tileType": "HEADER",
"configured": true,
"bounds": {
"top": 0,
"left": 304,
"width": 304,
"height": 38
},
"tileFilter": {}
},
{
"name": "Host health",
"tileType": "HOSTS",
"configured": true,
"bounds": {
"top": 38,
"left": 0,
"width": 304,
"height": 304
},
"tileFilter": {
"managementZone": {
"id": "3438779970106539862",
"name": "Example Management Zone"
}
},
"chartVisible": true
},
{
"name": "Application health",
"tileType": "APPLICATIONS",
"configured": true,
"bounds": {
"top": 38,
"left": 304,
"width": 304,
"height": 304
},
"tileFilter": {
"managementZone": {
"id": "3438779970106539862",
"name": "Example Management Zone"
}
},
"chartVisible": true
}
]
}
Response
Response codes
Code | Description |
---|---|
201 | Success. The new dashboard has been created. Response doesn't have a body. |
204 | Success. The dashboard has been updated. Response doesn't have a body |
400 | Failed. The input is invalid |
Response body
The EntityShortRepresentation object
The short representation of a Dynatrace entity.
Element | Type | Description |
---|---|---|
id | string | The ID of the Dynatrace entity. |
name | string | The name of the Dynatrace entity. |
description | string | A short description of the Dynatrace entity. |
{
"id": "6a98d7bc-abb9-44f8-ae6a-73e68e71812a",
"name": "Dynatrace entity",
"description": "Dynatrace entity for the REST API example\n"
}
Validate payload
We recommend that you validate the payload before submitting it with an actual request. A response code of 204 indicates a valid payload.
The request consumes an application/json
payload.
This request is an Early Adopter release and may be changed in non-compatible way.
POST |
|
Authentication
To execute this request, you need the Write configuration (WriteConfig
) permission assigned to your API token. To learn how to obtain and use it, see Tokens and authentication.
Response
This request is an Early Adopter release and may be changed in non-compatible way.
POST |
|
Authentication
To execute this request, you need the Write configuration (WriteConfig
) permission assigned to your API token. To learn how to obtain and use it, see Tokens and authentication.
Example
In this example, the request adds the Service health tile to the Sample dashboard in the GET request example.
The tile shows the health of all services belonging to the Easytravel management zone. It is located next to the existing Host health tile and has the same size (304x304 pixels).
The API token is passed in the Authorization header.
Since the request body is lengthy, it is truncated in this example Curl section. See the full body in the Request body section. You can download or copy the example request body to try it out on your own. Be sure to change the ID and name of the Easytravel management zone to a management zone that exists in your environment or set this field to null
.
Curl
curl -X PUT \
https://mySampleEnv.live.dynatrace.com/api/config/v1/dashboards/2768e6ca-e199-4433-9e0d-2922aec2099b \
-H 'Authorization: Api-token abcdefjhij1234567890' \
-H 'Content-Type: application/json' \
-d '{<truncated - see the Request body section >}'
Request URL
https://mySampleEnv.live.dynatrace.com/api/config/v1/dashboards/2768e6ca-e199-4433-9e0d-2922aec2099b
Request body
{
"id": "2768e6ca-e199-4433-9e0d-2922aec2099b",
"dashboardMetadata": {
"name": "Sample dashboard",
"shared": true,
"owner": "john.smith",
"sharingDetails": {
"linkShared": true,
"published": true
},
"dashboardFilter": {
"timeframe": "l_2_HOURS",
"managementZone": null
}
},
"tiles": [
{
"name": "Host health",
"tileType": "HOSTS",
"configured": true,
"bounds": {
"top": 0,
"left": 304,
"width": 304,
"height": 304
},
"tileFilter": {
"managementZone": {
"id": "9130632296508575249",
"name": "Easytravel"
}
},
"filterConfig": null,
"chartVisible": true
},
{
"name": "User behavior",
"tileType": "SESSION_METRICS",
"configured": true,
"bounds": {
"top": 0,
"left": 0,
"width": 304,
"height": 304
},
"tileFilter": {
"managementZone": null
},
"assignedEntities": [
"APPLICATION-8E41C8C247910758"
]
},
{
"name": "Service health",
"tileType": "SERVICES",
"configured": true,
"bounds": {
"top": 0,
"left": 608,
"width": 304,
"height": 304
},
"tileFilter": {
"managementZone": {
"id": "9130632296508575249",
"name": "Easytravel"
}
},
"filterConfig": null,
"chartVisible": true
}
]
}
Response code
204