Las traducciones son generadas a través de traducción automática. En caso de conflicto entre la traducción y la version original de inglés, prevalecerá la version en inglés.
API de versiones del panel
Usa la API de versiones del panel para recuperar las versiones del panel y restaurar un panel a una versión específica.
nota
Para usar una API de Grafana con tu espacio de trabajo de Grafana gestionado por Amazon, debes tener un token de API de Grafana válido. Lo incluyes en el Authorization
campo de la solicitud de API. Para obtener información sobre cómo crear un token para autenticar tus llamadas a la API, consultaAutenticarse con fichas.
Obtenga todas las versiones del panel
GET /api/dashboards/id/:dashboardId/versions
Obtiene todas las versiones del tablero existentes para el tablero con lo indicadodashboardId
.
Parámetros de consulta:
-
límite: número máximo de resultados que se van a devolver.
-
start: versión desde la que empezar cuando se devuelven consultas.
Ejemplo de solicitud
GET /api/dashboards/id/1/versions?limit=2?start=0 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 428 [ { "id": 2, "dashboardId": 1, "parentVersion": 1, "restoredFrom": 0, "version": 2, "created": "2017-06-08T17:24:33-04:00", "createdBy": "admin", "message": "Updated panel title" }, { "id": 1, "dashboardId": 1, "parentVersion": 0, "restoredFrom": 0, "version": 1, "created": "2017-06-08T17:23:33-04:00", "createdBy": "admin", "message": "Initial save" } ]
Códigos de estado:
-
200 — OK
-
400 — Errores
-
401 — No autorizado
-
404 — No se encontró la versión del panel de control
Obtenga la versión del panel de control
GET /api/dashboards/id/:dashboardId/versions/:id
Obtenga la versión del panel de control con el identificador indicado, para el cuadro de mando con el identificador indicadodashboardId
.
Ejemplo de solicitud
GET /api/dashboards/id/1/versions/1 HTTP/1.1 Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
Ejemplo de respuesta
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 1300 { "id": 1, "dashboardId": 1, "parentVersion": 0, "restoredFrom": 0, "version": 1, "created": "2017-04-26T17:18:38-04:00", "message": "Initial save", "data": { "annotations": { "list": [ ] }, "editable": true, "gnetId": null, "graphTooltip": 0, "hideControls": false, "id": 1, "links": [ ], "rows": [ { "collapse": false, "height": "250px", "panels": [ ], "repeat": null, "repeatIteration": null, "repeatRowId": null, "showTitle": false, "title": "Dashboard Row", "titleSize": "h6" } ], "schemaVersion": 14, "style": "dark", "tags": [ ], "templating": { "list": [ ] }, "time": { "from": "now-6h", "to": "now" }, "timepicker": { "refresh_intervals": [ "5s", "10s", "30s", "1m", "5m", "15m", "30m", "1h", "2h", "1d" ], "time_options": [ "5m", "15m", "1h", "6h", "12h", "24h", "2d", "7d", "30d" ] }, "timezone": "browser", "title": "test", "version": 1 }, "createdBy": "admin" }
Códigos de estado:
-
200 — OK
-
401 — No autorizado
-
404 — No se encontró la versión del panel de control
Restaurar el panel
POST /api/dashboards/id/:dashboardId/restore
Restaura un panel de control a la versión de panel que especifique.
Ejemplo de solicitud
POST /api/dashboards/id/1/restore Accept: application/json Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "version": 1 }
Esquema de cuerpo de JSON:
-
versión: la versión del panel de control a la que se va a restaurar.
Ejemplo de respuesta
HTTP/1.1 200 OK Content-Type: application/json; charset=UTF-8 Content-Length: 67 { "slug": "my-dashboard", "status": "success", "version": 3 }
Esquema del cuerpo de la respuesta en JSON:
-
slug: el slug del título del panel, apto para URL.
-
estado: si la restauración se ha realizado correctamente o no.
-
versión: la nueva versión del panel de control tras la restauración.
Códigos de estado:
-
200 — Creado
-
401 — No autorizado
-
404 — No se encontró el panel de control o la versión del panel
-
500: error interno del servidor (indica un problema al recuperar las etiquetas del panel de control de la base de datos)
Ejemplo de respuesta de error:
HTTP/1.1 404 Not Found Content-Type: application/json; charset=UTF-8 Content-Length: 46 { "message": "Dashboard version not found" }
Esquema de cuerpo de respuesta de JSON:
-
mensaje: mensaje que explica el motivo del error.
Compare las versiones del panel
POST /api/dashboards/calculate-diff
Compara dos versiones del panel calculando su diferencia en JSON.
Ejemplo de solicitud
POST /api/dashboards/calculate-diff HTTP/1.1 Accept: text/html Content-Type: application/json Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk { "base": { "dashboardId": 1, "version": 1 }, "new": { "dashboardId": 1, "version": 2 }, "diffType": "json" }
Esquema de cuerpo de JSON:
-
base: un objeto que representa la versión base del panel de control.
-
nuevo: un objeto que representa la nueva versión del panel de mandos.
-
difftype: el tipo de diferencia que se va a devolver. Los valores válidos son
json
ybasic
.
Ejemplo de respuesta (JSON diff)
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 <p id="l1" class="diff-line diff-json-same"> <!-- Diff omitted --> </p>
La respuesta es una representación textual de la diferencia, con los valores del panel en JSON, de forma similar a las diferencias que se ven en sitios como GitHub o. GitLab
Códigos de estado:
-
200 — OK
-
200 — Solicitud incorrecta, se envió un JSON no válido
-
401 — No autorizado
-
404 — No se ha encontrado
Ejemplo de respuesta (diferencia básica)
HTTP/1.1 200 OK Content-Type: text/html; charset=UTF-8 <div class="diff-group"> <!-- Diff omitted --> </div>
La respuesta es un resumen de los cambios, derivado de la diferencia entre los dos objetos JSON.
Códigos de estado:
-
200 — OK
-
200 — Solicitud incorrecta, se envió un JSON no válido
-
401 — No autorizado
-
404 — No se ha encontrado