> ## Documentation Index
> Fetch the complete documentation index at: https://docs.beehivehub.io/llms.txt
> Use this file to discover all available pages before exploring further.

# Autenticação

## 🔐Como funciona o campo authorization na nossa API.

A nossa API usa **Basic Access Authentication**.

Traduzindo: você autentica enviando sua **chave secreta** codificada em **Base64**, dentro do header HTTP chamado **authorization**.

### **🤔 O que isso significa na prática?**

```
Basic <base64(username:password)>
```

No nosso caso:

* **username** → é a **sua chave secreta** (SECRET\_KEY)
* **password** → é sempre "x"
  * Não é usado para nada, mas precisa existir por padrão do Basic Auth.

Ou seja, você precisa montar a string:

`SECRET_KEY:x`

E depois converter isso para Base64.

### **🧠 Exemplo real explicado passo a passo**

**Configurações → Credenciais de API → Chave secreta**

1. Monte a string assim:

```json theme={null}
minha_chave_secreta_aqui:x
```

1. Converta para base64:

```json theme={null}
bWluaGFfY2hhdmVfc2VjcmV0YV9hcXVpOng=
```

1. Envie no header:

```json theme={null}
authorization: Basic bWluaGFfY2hhdmVfc2VjcmV0YV9hcXVpOng=
```

### **🟧 Exemplo em Node.js atualizado**

```bash theme={null}
const options = {
  method: "POST",
  url: "https://api.conta.paybeehive.com.br/v1/transactions",
  headers: {
    authorization: "Basic " + Buffer.from(`${SECRET_KEY}:x`).toString("base64"),
    "Content-Type": "application/json"
  },
  body: JSON.stringify({
    /* payload da transação */
  })
};
```

## **Onde pegar sua chave secreta 🧭**

No painel da Beehive:

 **Configurações → Credenciais de API**

Ali você verá:

* 🔑 **Chave secreta**
* 🔓 **Chave pública** (para uso client-side, não serve para autenticar na API)
* ⏳ Prazo de expiração da chave

A **chave secreta** é a que você deve usar no Basic Auth.
