

As traduções são geradas por tradução automática. Em caso de conflito entre o conteúdo da tradução e da versão original em inglês, a versão em inglês prevalecerá.

# API de autenticação
<a name="v10-Grafana-API-Authentication"></a>

Use a API de autenticação para trabalhar com chaves de autenticação em um espaço de trabalho do Amazon Managed Grafana.

**nota**  
Para usar uma API do Grafana com seu espaço de trabalho Amazon Managed Grafana, você deve ter um token de conta de serviço válido. Você inclui isso no campo `Authorization` na solicitação da API.

## Obter chaves de API
<a name="v10-Grafana-API-Authentication-GetApiKeys"></a>

```
GET /api/auth/keys
```

**Exemplo de solicitação**

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

**Parâmetro de consulta:**
+ **includeExpired**: (opcional) parâmetro booleano que especifica se as chaves expiradas devem ser incluídas nos resultados retornados. O padrão é `false`.

**Exemplo de resposta**

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

[
  {"id": 3,"name": "API","role": "Admin"},
  {"id": 1,"name": "TestAdmin","role": "Admin","expiration": "2019-06-26T10:52:03+03:00"}
]
```

## Criar uma chave de API
<a name="v10-Grafana-API-Authentication-CreateApiKey"></a>

```
POST /api/auth/keys
```

**Exemplo de solicitação**

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

{
  "name": "mykey",
  "role": "Admin",
  "secondsToLive": 86400
}
```

Esquema do corpo JSON:
+ **nome**: o nome da chave.
+ **perfil**: define o nível de acesso (perfil do Grafana) para a chave. Os valores válidos são `Admin`, `Editor` ou `Viewer`.
+ **segundos ToLive** — Define a quantidade de tempo antes que a chave expire. Deve ser 2592000 (30 dias) ou menos.

**Exemplo de resposta**

```
{"name":"mykey","key":"eyJrIjoiWHZiSWd3NzdCYUZnNUtibE9obUpESmE3bzJYNDRIc0UiLCJuIjoibXlrZXkiLCJpZCI6MX1=","id":1}
```

Status de erro:
+ **400**: `secondsToLive` é maior que 2592000
+ **500**: a chave não pôde ser armazenada no banco de dados.

## Excluir uma chave de API
<a name="v10-Grafana-API-Authentication-DeleteApiKey"></a>

```
DELETE /api/auth/keys/:id
```

**Exemplo de solicitação**

```
DELETE /api/auth/keys/3 HTTP/1.1
Accept: application/json
Content-Type: application/json
Authorization: Bearer eyJrIjoiT0tTcG1pUlY2RnVKZTFVaDFsNFZXdE9ZWmNrMkZYbk
```

**Exemplo de resposta**

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

{"message":"API key deleted"}
```