

Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.

# API delle cartelle
<a name="v12-Grafana-API-Folder"></a>

Usa l'API Folder per lavorare con le cartelle nell'area di lavoro Amazon Managed Grafana. 

L'identificatore (id) di una cartella è un valore numerico ad incremento automatico ed è unico solo per area di lavoro. L'identificatore univoco (uid) di una cartella può essere utilizzato per identificare in modo univoco una cartella tra più aree di lavoro. Viene generato automaticamente se non ne fornisci uno quando crei una cartella. L'uid consente di avere URL coerenti per l'accesso alle cartelle e per la sincronizzazione delle cartelle tra più aree di lavoro Amazon Managed Grafana. L'uso dell'uid significa che la modifica del titolo di una cartella non interrompe i collegamenti aggiunti ai segnalibri a quella cartella.

L'uid può avere una lunghezza massima di 40 caratteri.

Le cartelle non possono essere annidate.

**Nota**  
Per utilizzare un'API Grafana con il tuo spazio di lavoro Amazon Managed Grafana, devi disporre di un token di account di servizio valido. Lo includi nel `Authorization` campo della richiesta API.

La cartella **General**, con 0, non fa parte dell'API Folder. `id` Non è possibile utilizzare l'API Folder per recuperare informazioni sulla cartella generale. 

## Crea cartella
<a name="v12-Grafana-API-Folder-create"></a>

```
POST /api/folders
```

Crea una nuova cartella.

**Richiesta di esempio**

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

{
  "uid": "nErXDvCkzz",
  "title": "Department ABC"
}
```

Schema del corpo JSON:
+ **uid — Identificatore** univoco opzionale. Se null, viene generato un nuovo uid. 
+ **title** — Il titolo della cartella.

**Esempio di risposta**

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

{
  "id":1,
  "uid": "nErXDvCkzz",
  "title": "Department ABC",
  "url": "/dashboards/f/nErXDvCkzz/department-abc",
  "hasAcl": false,
  "canSave": true,
  "canEdit": true,
  "canAdmin": true,
  "createdBy": "admin",
  "created": "2018-01-31T17:43:12+01:00",
  "updatedBy": "admin",
  "updated": "2018-01-31T17:43:12+01:00",
  "version": 1
}
```

Codici di stato:
+ **200** — Creato
+ **400** — Errore come JSON non valido, campi non validi o mancanti
+ **401 — Non autorizzato**
+ **403 — Accesso** negato

## Aggiorna cartella
<a name="v12-Grafana-API-Folder-update"></a>

```
PUT /api/folders/:uid
```

Aggiorna la cartella esistente che corrisponde all'uid.

**Richiesta di esempio**

```
PUT /api/folders/nErXDvCkzz HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk

{
  "title":"Department DEF",
  "version": 1
}
```

Schema del corpo JSON:
+ **uid**: modifica l'identificatore univoco, se fornito. 
+ **title** — Il titolo della cartella.
+ **versione**: fornisce la versione corrente per poter sovrascrivere la cartella. Non necessario se`overwrite=true`.
+ **sovrascrivi**: imposta questa opzione `true` per sovrascrivere la cartella esistente con una versione più recente.

**Esempio di risposta**

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

{
  "id":1,
  "uid": "nErXDvCkzz",
  "title": "Department DEF",
  "url": "/dashboards/f/nErXDvCkzz/department-def",
  "hasAcl": false,
  "canSave": true,
  "canEdit": true,
  "canAdmin": true,
  "createdBy": "admin",
  "created": "2018-01-31T17:43:12+01:00",
  "updatedBy": "admin",
  "updated": "2018-01-31T17:43:12+01:00",
  "version": 1
}
```

Codici di stato:
+ **200** — Creato
+ **400** — Errore come JSON non valido, campi non validi o mancanti
+ **401 — Non autorizzato**
+ **403 — Accesso** negato
+ **404** — Cartella non trovata
+ **412** — Precondizione non riuscita

Il codice di stato **412** viene utilizzato per spiegare perché la cartella non può essere aggiornata.
+  La cartella è stata modificata da qualcun altro `status=version-mismatch` 

Il corpo della risposta ha le seguenti proprietà:

```
HTTP/1.1 412 Precondition Failed
Content-Type: application/json; charset=UTF-8
Content-Length: 97

{
  "message": "The folder has been changed by someone else",
  "status": "version-mismatch"
}
```

## Ottieni tutte le cartelle
<a name="v12-Grafana-API-Folder-get-all"></a>

```
GET /api/folders
```

Restituisce tutte le cartelle che hai il permesso di visualizzare. È possibile controllare il numero massimo di cartelle restituite utilizzando il parametro `limit` query. Il valore predefinito è 1000.

**Richiesta di esempio**

```
GET /api/folders?limit=10 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Esempio di risposta**

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

[
  {
    "id":1,
    "uid": "nErXDvCkzz",
    "title": "Department ABC"
  },
  {
    "id":2,
    "uid": "k3S1cklGk",
    "title": "Department RND"
  }
]
```

## Ottieni la cartella tramite uid
<a name="v12-Grafana-API-Folder-get-uid"></a>

```
GET /api/folders/:uid
```

Restituisce tutte le cartelle che corrispondono all'uid specificato.

**Richiesta di esempio**

```
GET /api/folders/nErXDvCkzzh HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Esempio di risposta**

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

{
  "id":1,
  "uid": "nErXDvCkzz",
  "title": "Department ABC",
  "url": "/dashboards/f/nErXDvCkzz/department-abc",
  "hasAcl": false,
  "canSave": true,
  "canEdit": true,
  "canAdmin": true,
  "createdBy": "admin",
  "created": "2018-01-31T17:43:12+01:00",
  "updatedBy": "admin",
  "updated": "2018-01-31T17:43:12+01:00",
  "version": 1
}
```

Codici di stato:
+ **200** — Trovato
+ **401** — Non autorizzato
+ **403 — Accesso** negato
+ **404** — Non trovato

## Ottieni cartella per id
<a name="v12-Grafana-API-Folder-get-id"></a>

```
GET /api/folders/id/:id
```

Restituisce la cartella che corrisponde all'ID specificato.

**Richiesta di esempio**

```
GET /api/folders/id/1 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Esempio di risposta**

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

{
  "id":1,
  "uid": "nErXDvCkzz",
  "title": "Department ABC",
  "url": "/dashboards/f/nErXDvCkzz/department-abc",
  "hasAcl": false,
  "canSave": true,
  "canEdit": true,
  "canAdmin": true,
  "createdBy": "admin",
  "created": "2018-01-31T17:43:12+01:00",
  "updatedBy": "admin",
  "updated": "2018-01-31T17:43:12+01:00",
  "version": 1
}
```

Codici di stato:
+ **200** — Trovato
+ **401** — Non autorizzato
+ **403 — Accesso** negato
+ **404** — Non trovato

## Elimina cartella tramite uid
<a name="v12-Grafana-API-Folder-delete"></a>

```
DELETE /api/folders/:uid
```

Elimina la cartella corrispondente all'uid ed elimina anche tutti i dashboard archiviati nella cartella. Questa operazione non può essere annullata.

**Richiesta di esempio**

```
DELETE /api/folders/nErXDvCkzz HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Esempio di risposta**

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

{
  "message":"Folder deleted",
  "id": 2
}
```

Codici di stato:
+ **200** — Eliminato
+ **401** — Non autorizzato
+ **403 — Accesso** negato
+ **404** — Non trovato