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

# Baixar Arquivo

> Baixar arquivo de uma mensagem de mídia

Realiza o download de arquivos associados a mensagens de mídia (imagem, vídeo, áudio ou documento).

## Casos de Uso

> **Download de Áudios**
>
> Permite baixar áudios em diferentes formatos:
>
> * **MP3** (padrão) - usando `generate_mp3: true`
> * **OGG** (formato original) - usando `generate_mp3: false`
>
> Ideal para armazenamento ou processamento posterior.

> **Transcrição de Áudio**
>
> Converte mensagens de voz em texto automaticamente.
>
> **Requisitos:**
>
> * Chave da API OpenAI configurada
> * Parâmetro `transcribe: true`
>
> A chave pode ser salva na instância para reutilização automática.

> **Download de Mídia Citada**
>
> Útil para baixar conteúdo original de status do WhatsApp.
>
> **Exemplo de uso:**
> Quando um cliente responde a uma promoção/status, você pode baixar a mídia original para entender sobre qual produto/oferta ele está perguntando.
>
> Use `download_quoted: true` para este cenário.

> **Formatos de Retorno**
>
> Escolha como receber o arquivo:
>
> * **URL pública** (padrão) - arquivo salvo e acessível via link
> * **Base64** - conteúdo codificado em string
> * **Ambos** - URL + Base64
> * **Nenhum** - apenas processa (ex: transcrição)

### Authorization

**api\_key** `string` *required*

Chave de autenticação da sua conexão, utilizada no header Authorization como
**Bearer** Token. \\

Você encontra sua API Key no botão **API** da sua conexão no painel ZapClass. \\

A chave sempre começa com o prefixo `zc_`. \\

Exemplo: `zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP`

### Body Parameters

**id** `string` *required*

ID da mensagem contendo o arquivo. \\

Exemplo: `7EB0F01D7244B421048F0706368376E0`

**base64** `boolean`

Se verdadeiro, retorna o conteúdo em base64. \\

Padrão: `false` \\

Exemplo: `true`

**mp3** `boolean`

Para áudios, define formato de retorno. \\

* `true`: Retorna MP3 \\

* `false`: Retorna OGG \\

  Padrão: `true` \\

  Exemplo: `true`

**link** `boolean`

Salva e retorna URL pública do arquivo. \\

Padrão: `true` \\

Exemplo: `true`

**quoted** `boolean`

Baixa mídia da mensagem citada ao invés da mensagem principal. \\

Útil para baixar conteúdo original de status do WhatsApp. \\

Padrão: `false` \\

Exemplo: `true`

**openai\_api\_key** `string`

Chave da API OpenAI para transcrição áudios para texto. \\

Exemplo: `sk-proj-...`

> [!NOTE]
>
> **Comportamento padrão:** - Áudios são retornados como MP3 - Downloads incluem
> URL pública do arquivo - Transcrição requer chave OpenAI configurada

```bash cURL theme={null}
curl -X POST https://zapclass.com.br/api/messages/download \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP" \
  -d '{
    "id": "7EB0F01D7244B421048F0706368376E0",
    "mp3": true,
    "base64": true,
    "link": true,
    "quoted": true,
    "openai_api_key": "sk-proj-..."
  }'
```

```javascript JavaScript theme={null}
const response = await fetch("https://zapclass.com.br/api/messages/download", {
  method: "POST",
  headers: {
    "Content-Type": "application/json",
    Authorization: "Bearer zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP",
  },
  body: JSON.stringify({
    id: "7EB0F01D7244B421048F0706368376E0",
    mp3: true,
    base64: true,
    link: true,
    quoted: true,
    openai_api_key: "sk-proj-...",
  }),
});
```

```php PHP theme={null}
<?php
$ch = curl_init('https://zapclass.com.br/api/messages/download');

$payload = [
    "id" => "7EB0F01D7244B421048F0706368376E0",
    "mp3" => true,
    "base64" => true,
    "link" => true,
    "quoted" => true,
    "openai_api_key" => "sk-proj-...",
];

curl_setopt($ch, CURLOPT_POST, 1);
curl_setopt($ch, CURLOPT_POSTFIELDS, json_encode($payload));
curl_setopt($ch, CURLOPT_HTTPHEADER, [
    'Content-Type: application/json',
    'Authorization: Bearer zc_6FrX2qjM4bHT9pR6cC0sD8wLkG3nE2tZfV5uN1aP'
]);
curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);

$response = curl_exec($ch);
$data = json_decode($response, true);

echo "URL do arquivo: " . $data['fileURL'];
curl_close($ch);
?>
```

```json 200 theme={null}
{
  "url": "https://api.exemplo.com/files/arquivo.mp3",
  "base64": "base64encodedstring",
  "mimetype": "audio/mpeg",
  "transcription": "Olá, gostaria de saber mais informações sobre o produto que você postou no status"
}
```

```json 400 theme={null}
{
  "success": false,
  "message": "Token de autenticação inválido"
}
```


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.