

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 instantáneas
<a name="v12-Grafana-API-Snapshot"></a>

Use la API de instantáneas para trabajar con instantáneas en un espacio de trabajo de Amazon Managed Grafana. 

**nota**  
Para usar una API de Grafana con tu espacio de trabajo de Grafana gestionado por Amazon, debes tener un token de cuenta de servicio válido. Lo incluye en el campo `Authorization` de la solicitud de API.

## Creación de una instantánea nueva
<a name="v12-Grafana-API-Snapshot-create"></a>

```
POST /api/snapshots
```

**Ejemplo de solicitud**

```
POST /api/snapshots HTTP/1.1
    Accept: application/json
    Content-Type: application/json
    Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

    {
      "dashboard": {
        "editable":false,
        "hideControls":true,
        "nav":[
        {
          "enable":false,
        "type":"timepicker"
        }
        ],
        "rows": [
          {

          }
        ],
        "style":"dark",
        "tags":[],
        "templating":{
          "list":[
          ]
        },
        "time":{
        },
        "timezone":"browser",
        "title":"Home",
        "version":5
        },
      "expires": 3600
    }
```

Esquema de cuerpo JSON:
+ **dashboard**: (obligatorio) modelo de panel completo. 
+ **name**: (opcional) nombre para la instantánea.
+ **expires**: (opcional) cuándo debe caducar la instantánea, en segundos. El valor predeterminado es que no caduque nunca.
+ **external**: (opcional) guarde la instantánea en un servidor externo en lugar de guardarla localmente. La opción predeterminada es falso.
+ **key**: (obligatorio si `external` es `true`) defina una clave única.
+ **deletekey**: (obligatorio si `external` es `true`) clave única que se utilizará para eliminar la instantánea. Es diferente de `key`, ya que solo el creador puede eliminar la instantánea.

**nota**  
Al crear una instantánea mediante la API, debe proporcionar toda la carga útil del panel, incluidos los datos de la instantánea. Este punto de conexión está diseñado para la interfaz de usuario de Grafana.

**Ejemplo de respuesta**

```
HTTP/1.1 200
    Content-Type: application/json
    {
      "deleteKey":"XXXXXXX",
      "deleteUrl":"myurl/api/snapshots-delete/XXXXXXX",
      "key":"YYYYYYY",
      "url":"myurl/dashboard/snapshot/YYYYYYY",
      "id": 1,
    }
```

Claves:
+ **deleteKey**: clave generada para usarse para eliminar la instantánea.
+ **key**: clave generada para compartir el panel.

## Obtención de una lista de instantáneas
<a name="v12-Grafana-API-snapshot-list"></a>

```
GET /api/dashboard/snapshots
```

Parámetros de consulta:
+ **query**: consulta de búsqueda.
+ **limit**: limite el número de resultados devueltos.

**Ejemplo de solicitud**

```
GET /api/dashboard/snapshots HTTP/1.1
Accept: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Ejemplo de respuesta**

```
HTTP/1.1 200
Content-Type: application/json

[
  {
    "id":8,
    "name":"Home",
    "key":"YYYYYYY",
    "orgId":1,
    "userId":1,
    "external":false,
    "externalUrl":"",
    "expires":"2200-13-32T25:23:23+02:00",
    "created":"2200-13-32T28:24:23+02:00",
    "updated":"2200-13-32T28:24:23+02:00"
  }
]
```

## Obtención de una instantánea por clave
<a name="v12-Grafana-API-snapshot-get-bykey"></a>

```
GET /api/snapshots/:key
```

**Ejemplo de solicitud**

```
GET /api/snapshots/YYYYYYY HTTP/1.1
Accept: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Ejemplo de respuesta**

```
HTTP/1.1 200
Content-Type: application/json

{
  "meta":{
    "isSnapshot":true,
    "type":"snapshot",
    "canSave":false,
    "canEdit":false,
    "canStar":false,
    "slug":"",
    "expires":"2200-13-32T25:23:23+02:00",
    "created":"2200-13-32T28:24:23+02:00"
  },
  "dashboard": {
    "editable":false,
    "hideControls":true,
    "nav": [
      {
        "enable":false,
        "type":"timepicker"
      }
    ],
    "rows": [
      {

      }
    ],
    "style":"dark",
    "tags":[],
    "templating":{
      "list":[
      ]
    },
    "time":{
    },
    "timezone":"browser",
    "title":"Home",
    "version":5
  }
}
```

## Eliminación de una instantánea por clave
<a name="v12-Grafana-API-snapshot-delete-bykey"></a>

```
DELETE /api/snapshots/:key
```

**Ejemplo de solicitud**

```
DELETE /api/snapshots/YYYYYYY HTTP/1.1
Accept: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Ejemplo de respuesta**

```
HTTP/1.1 200
Content-Type: application/json

{"message":"Snapshot deleted. It might take an hour before it's cleared from any CDN caches.", "id": 1}
```

## Eliminación de una instantánea por deleteKey
<a name="v12-Grafana-API-snapshot-delete-deletekey"></a>

Esta llamada a la API se puede usar sin autenticación mediante la clave de eliminación de secretos de la instantánea.

```
GET /api/snapshots-delete/:deleteKey
```

**Ejemplo de solicitud**

```
GET /api/snapshots-delete/XXXXXXX HTTP/1.1
Accept: application/json
```

**Ejemplo de respuesta**

```
HTTP/1.1 200
Content-Type: application/json

{"message":"Snapshot deleted. It might take an hour before it's cleared from any CDN caches.", "id": 1}
```