

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á.

# Usar uma chave de API do Amazon Bedrock
<a name="api-keys-use"></a>

É possível usar sua chave de API do Amazon Bedrock das seguintes maneiras:
+ **Defina-a como variável de ambiente**: o serviço Amazon Bedrock reconhece a variável de ambiente `AWS_BEARER_TOKEN_BEDROCK`. Você tem as seguintes opções para definir a chave:
  + Abra um terminal para configurá-la:
    + **MacOS/Linux**

      ```
      export AWS_BEARER_TOKEN_BEDROCK=${api-key}
      ```
    + **Windows**

      ```
      setx AWS_BEARER_TOKEN_BEDROCK "${api-key}"
      ```
  + Defina-a como uma variável de ambiente em seu código antes de fazer a solicitação de API. Por exemplo, você poderia incluir as seguintes linhas antes de fazer a solicitação:
    + **Python**

      ```
      import os                      
      os.environ['AWS_BEARER_TOKEN_BEDROCK'] = "${api-key}"
      ```
+ **Especifique-a em uma solicitação**: é possível incluir a chave de API do Amazon Bedrock no cabeçalho de autorização das seguintes formas (substitua *\$1AWS\$1BEARER\$1TOKEN\$1BEDROCK* pelo valor real):
  + **Em uma solicitação HTTP direta**: inclua o seguinte como cabeçalho de autorização:

    ```
    Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK
    ```
  + **Como parâmetro em um SDK compatível**: especifique o valor no parâmetro ao configurar o cliente. Por exemplo, você pode especificá-lo no campo `api_key` ao configurar um cliente com o [SDK Python da OpenAI](https://github.com/openai/openai-python?tab=readme-ov-file#usage).

**nota**  
As chaves de API do Amazon Bedrock estão restritas às ações do [Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Amazon_Bedrock.html) e do [Amazon Bedrock Runtime](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Amazon_Bedrock_Runtime.html). Não é possível usar as seguintes operações de API:  
[InvokeModelWithBidirectionalStream](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_InvokeModelWithBidirectionalStream.html).
Operações de API dos recursos [Agentes para Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Agents_for_Amazon_Bedrock.html) ou [Agentes para Amazon Bedrock Runtime](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Agents_for_Amazon_Bedrock.html).
Operações de API da [Automação de Dados para Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Data_Automation_for_Amazon_Bedrock.html) ou do [Runtime para Automação de Dados do Amazon Bedrock](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_Operations_Runtime_for_Amazon_Bedrock_Data_Automation).

Para ver um exemplo sobre como usar a chave de API para enviar uma solicitação [Converse](https://docs.aws.amazon.com/bedrock/latest/APIReference/API_runtime_Converse.html) para gerar uma resposta, escolha a guia correspondente ao método de sua preferência e siga as etapas:

------
#### [ Python ]

O exemplo a seguir mostra como enviar uma solicitação de API com o AWS SDK para Python (Boto3). Se você ainda não definiu a chave de API como a variável de ambiente`AWS_BEARER_TOKEN_BEDROCK`, especifique-a no lugar de *\$1\$1api-key\$1* no seguinte código:

```
import os
import boto3
                        
# If you already set the API key as an environment variable, you can comment this line out                        
os.environ['AWS_BEARER_TOKEN_BEDROCK'] = "${api-key}"

# Create an Amazon Bedrock client
client = boto3.client(
    service_name="bedrock-runtime",
    region_name="us-east-1" # If you've configured a default region, you can omit this line
)

# Define the model and message
model_id = "us.anthropic.claude-3-5-haiku-20241022-v1:0"
messages = [{"role": "user", "content": [{"text": "Hello"}]}]

response = client.converse(
    modelId=model_id,
    messages=messages,
)
```

------
#### [ HTTP Client (requests package in Python) ]

**Pré-requisito:** instale o pacote `requests` abrindo um terminal e executando o seguinte comando:

```
python3 -m pip install requests
```

O código de exemplo a seguir mostra como enviar diretamente uma solicitação de API com um cliente HTTP. Especifique a *\$1\$1api-key\$1* no cabeçalho.

```
import requests

url = "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-3-5-haiku-20241022-v1:0/converse"

payload = {
    "messages": [
        {
            "role": "user",
            "content": [{"text": "Hello"}]
        }
    ]
}

headers = {
    "Content-Type": "application/json",
    "Authorization": "Bearer ${api-key}"
}

response = requests.request("POST", url, json=payload, headers=headers)

print(response.text)
```

------
#### [ HTTP request using cURL ]

O código de exemplo a seguir mostra como enviar diretamente uma solicitação de API usando cURL. Se você não definiu a chave de API como a variável de ambiente AWS\$1BEARER\$1TOKEN\$1BEDROCK, precisará substituir `$AWS_BEARER_TOKEN_BEDROCK` no exemplo pelo valor literal da chave.

```
curl -X POST "https://bedrock-runtime.us-east-1.amazonaws.com/model/us.anthropic.claude-3-5-haiku-20241022-v1:0/converse" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer $AWS_BEARER_TOKEN_BEDROCK" \
  -d '{
    "messages": [
        {
            "role": "user",
            "content": [{"text": "Hello"}]
        }
    ]
  }'
```

------