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

# POST /barcode

> Gere códigos de barras e QR codes sob demanda. Suporta QR, Code 128, EAN-13, PDF417, Data Matrix e mais, retornados como PNG em base64.

## Endpoint

```
POST https://api.bunny.build/api/v1/barcode
```

## Autenticação

| Header         | Obrigatório | Valor                        |
| -------------- | ----------- | ---------------------------- |
| `X-API-Key`    | Sim         | Sua chave de API (`bun_...`) |
| `Content-Type` | Sim         | `application/json`           |

## Visão geral

Gere códigos de barras e QR codes sob demanda. A API de Barcode da Bunny converte qualquer texto ou URL em uma imagem pixel-perfect: QR codes, Code 128, EAN-13, PDF417, Data Matrix e muito mais. Retorna um PNG em base64 pronto para incorporar em páginas web, PDFs ou fluxos de impressão.

## Casos de uso

* Etiquetas de produtos e gestão de estoque
* Geração de QR codes para links e cartões de contato
* Impressão de códigos de barras para logística e envios
* Ingressos para eventos e passes de acesso

## Detalhes

Tipos suportados: `qrcode`, `code128`, `code39`, `ean13`, `ean8`, `upca`, `upce`, `pdf417`, `datamatrix`, `azteccode`, `interleaved2of5`. O parâmetro `scale` (1–10) controla o tamanho da imagem.

## Corpo da requisição

| Campo   | Tipo   | Obrigatório | Descrição                                                    |
| ------- | ------ | ----------- | ------------------------------------------------------------ |
| `type`  | string | Sim         | Tipo do código de barras (ex.: `qrcode`, `code128`, `ean13`) |
| `data`  | string | Sim         | Dados a codificar no código de barras                        |
| `scale` | number | Não         | Fator de escala da imagem gerada (padrão: 1)                 |

### Exemplo

```json theme={null}
{
  "type": "qrcode",
  "data": "https://example.com",
  "scale": 2
}
```

## Resposta

### 200 OK

| Campo    | Tipo   | Descrição                            |
| -------- | ------ | ------------------------------------ |
| `image`  | string | Imagem do código de barras em Base64 |
| `format` | string | Formato da imagem (ex.: `png`)       |
| `type`   | string | Tipo de código de barras utilizado   |
| `data`   | string | Dados codificados                    |

**Exemplo**

```json theme={null}
{
  "image": "iVBORw0KGgoAAAANSUhEUgAA...",
  "format": "png",
  "type": "qrcode",
  "data": "https://example.com"
}
```

### 401 Unauthorized

```json theme={null}
{
  "detail": "Missing API key. Include X-API-Key header."
}
```

### 402 Payment Required

```json theme={null}
{
  "detail": "Monthly quota exceeded. Upgrade your plan."
}
```

### 422 Unprocessable Entity

```json theme={null}
{
  "detail": "Invalid barcode type or data"
}
```

### 429 Too Many Requests

```json theme={null}
{
  "detail": "Rate limit exceeded. Try again in 60 seconds."
}
```

## Exemplo cURL

```bash theme={null}
curl -X POST https://api.bunny.build/api/v1/barcode \
  -H "X-API-Key: bun_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{"type": "qrcode", "data": "https://example.com", "scale": 2}'
```
