Files
grafana/docs/sources/http_api/folder_dashboard_search.md
Torkel Ödegaard 8b0dd4244b Search: Fixes search limits and adds a page parameter (#16458)
* Search: Fixes search limits and adds a page parameter

This adds a page parameter to search api without adding
any major breaking change.

It does at an api validation error when trying to use
a limit beyond 5000. This is a breaking change. We could
remove this and have it only in the docs and describe that this
is a limit that grafana will apply silently.

Fixes #16049

* Fix: Corrected wrong array slice change

* Docs: minor docs fix

* Search: fixed folder tests

* Fixed: Moved limit to correct inner query

* Search: moving limit check and page check

* Search: limit in handler is no longer needed
2019-04-17 13:07:50 +02:00

2.6 KiB
Raw Blame History

+++ title = "Folder/Dashboard Search HTTP API " description = "Grafana Folder/Dashboard Search HTTP API" keywords = ["grafana", "http", "documentation", "api", "search", "folder", "dashboard"] aliases = ["/http_api/folder_dashboard_search/"] type = "docs" [menu.docs] name = "Folder/dashboard search" parent = "http_api" +++

Folder/Dashboard Search API

Search folders and dashboards

GET /api/search/

Query parameters:

  • query Search Query
  • tag List of tags to search for
  • type Type to search for, dash-folder or dash-db
  • dashboardIds List of dashboard id's to search for
  • folderIds List of folder id's to search in for dashboards
  • starred Flag indicating if only starred Dashboards should be returned
  • limit Limit the number of returned results (max 5000)
  • page Use this parameter to access hits beyond limit. Numbering starts at 1. limit param acts as page size.

Example request for retrieving folders and dashboards of the general folder:

GET /api/search?folderIds=0&query=&starred=false HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Example response for retrieving folders and dashboards of the general folder:

HTTP/1.1 200
Content-Type: application/json

[
  {
    "id": 163,
    "uid": "000000163",
    "title": "Folder",
    "url": "/dashboards/f/000000163/folder",
    "type": "dash-folder",
    "tags": [],
    "isStarred": false,
    "uri":"db/folder" // deprecated in Grafana v5.0
  },
  {
    "id":1,
    "uid": "cIBgcSjkk",
    "title":"Production Overview",
    "url": "/d/cIBgcSjkk/production-overview",
    "type":"dash-db",
    "tags":[prod],
    "isStarred":true,
    "uri":"db/production-overview" // deprecated in Grafana v5.0
  }
]

Example request searching for dashboards:

GET /api/search?query=Production%20Overview&starred=true&tag=prod HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

Example response searching for dashboards:

HTTP/1.1 200
Content-Type: application/json

[
  {
    "id":1,
    "uid": "cIBgcSjkk",
    "title":"Production Overview",
    "url": "/d/cIBgcSjkk/production-overview",
    "type":"dash-db",
    "tags":[prod],
    "isStarred":true,
    "folderId": 2,
    "folderUid": "000000163",
    "folderTitle": "Folder",
    "folderUrl": "/dashboards/f/000000163/folder",
    "uri":"db/production-overview" // deprecated in Grafana v5.0
  }
]