> ## 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 /color-converter

> Converta cores entre os formatos HEX, RGB e HSL em uma única chamada de API.

## Endpoint

```
POST https://api.bunny.build/api/v1/color-converter
```

## Autenticação

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

## Visão geral

Converta cores entre os formatos HEX, RGB e HSL instantaneamente. Envie uma cor em qualquer um dos três formatos suportados e receba os valores equivalentes nos três, eliminando cálculos manuais de conversão em ferramentas de design, sistemas de temas e geradores de CSS.

## Casos de uso

* Converter cores de marca entre formatos para sistemas de design multiplataforma
* Gerar propriedades CSS personalizadas em todos os formatos a partir de uma única fonte
* Validar entradas de cor em interfaces de design ou configuração
* Transformar exportações de paleta de ferramentas de design em formatos amigáveis para desenvolvedores

## Detalhes

Valores HEX devem incluir o prefixo `#` (ex.: `#ff5733`). Os componentes RGB são inteiros de 0 a 255. O matiz HSL vai de 0 a 360 graus; saturação e luminosidade são porcentagens de 0 a 100.

## Corpo da requisição

Forneça exatamente um de `hex`, `rgb` ou `hsl`.

| Campo | Tipo   | Obrigatório | Descrição                                                         |
| ----- | ------ | ----------- | ----------------------------------------------------------------- |
| `hex` | string | Não         | String de cor hexadecimal (ex.: `#ff5733`)                        |
| `rgb` | object | Não         | Objeto RGB com campos inteiros `r`, `g`, `b` (0 a 255)            |
| `hsl` | object | Não         | Objeto HSL com campos `h` (0 a 360), `s` (0 a 100), `l` (0 a 100) |

### Exemplo — a partir de HEX

```json theme={null}
{
  "hex": "#ff5733"
}
```

### Exemplo — a partir de RGB

```json theme={null}
{
  "rgb": { "r": 255, "g": 87, "b": 51 }
}
```

### Exemplo — a partir de HSL

```json theme={null}
{
  "hsl": { "h": 11, "s": 100, "l": 60 }
}
```

## Resposta

### 200 OK

| Campo | Tipo   | Descrição         |
| ----- | ------ | ----------------- |
| `hex` | string | Representação HEX |
| `rgb` | object | Representação RGB |
| `hsl` | object | Representação HSL |

**Exemplo**

```json theme={null}
{
  "hex": "#ff5733",
  "rgb": { "r": 255, "g": 87, "b": 51 },
  "hsl": { "h": 11, "s": 100, "l": 60 }
}
```

### 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": "Provide exactly one of: hex, rgb, hsl"
}
```

### 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/color-converter \
  -H "X-API-Key: bun_sua_chave_api" \
  -H "Content-Type: application/json" \
  -d '{"hex": "#ff5733"}'
```
