diff --git a/docs/sources/http_api/dashboard.md b/docs/sources/http_api/dashboard.md index b64d61f7e19..b16f105b643 100644 --- a/docs/sources/http_api/dashboard.md +++ b/docs/sources/http_api/dashboard.md @@ -541,3 +541,97 @@ Content-Length: 97 "status": "multiple-slugs-exists" } ``` + +## Trim input dashboard + +`POST /api/dashboards/trim` + +Will remove the default values from input dashboard JSON. + +**Example Request for trimming dashboard JSON**: + +```http +POST /api/dashboards/uid/trim HTTP/1.1 +Accept: application/json +Content-Type: application/json +Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk + +{ + "meta": { + "isStarred": false, + "url": "/d/cIBgcSjkk/production-overview", + "folderId": 2, + "folderUid": "l3KqBxCMz", + "slug": "production-overview" + }, + "dashboard": { + "id": 112, + "panels": [ + { + "datasource": null, + "description": "", + "gridPos": { + "h": 9, + "w": 12, + "x": 0, + "y": 0 + }, + "id": 2, + "options": { + "feedUrl": "https://grafana.com/blog/news.xml", + "showImage": true + }, + "pluginVersion": "8.1.0-pre", + "title": "Panel Title", + "type": "news" + } + ], + "title": "test dashboard", + "uid": "9lzdzI3Mz", + "version": 2 + } +} +``` + +**Example Response**: + +```http +HTTP/1.1 200 +Content-Type: application/json + +{ + "meta": { + "folderId": 2, + "folderUid": "l3KqBxCMz", + "isStarred": false, + "slug": "production-overview", + "url": "/d/cIBgcSjkk/production-overview" + }, + "dashboard": { + "id": 112, + "panels": [ + { + "gridPos": {}, + "id": 2, + "options": { + "feedUrl": "https://grafana.com/blog/news.xml", + "showImage": true + }, + "pluginVersion": "8.1.0-pre", + "title": "Panel Title", + "type": "news" + } + ], + "title": "test dashboard", + "uid": "9lzdzI3Mz", + "version": 2 + } +} +``` + +Status Codes: + +- **200** – Trimmed +- **400** – Errors (invalid json, missing or invalid fields, etc) +- **401** – Unauthorized +- **403** – Access denied \ No newline at end of file