Armazenamento S3
Configure armazenamento compatível com S3 para guardar arquivos de mídia do WhatsApp. Suporta AWS S3, MinIO, DigitalOcean Spaces e outros provedores compatíveis.
GET /s3/config
Obtém a configuração atual do S3.
Resposta:
{
"code": 200,
"data": {
"endpoint": "https://s3.amazonaws.com",
"bucket": "meu-bucket",
"region": "us-east-1",
"path_prefix": "uploads/whatsapp/",
"force_path_style": false
},
"success": true
}
PUT /s3/config
Configura o armazenamento S3 para esta instância.
Parâmetros do corpo:
| Parâmetro | Tipo | Descrição |
|---|---|---|
| endpoint | string | URL do endpoint S3 (padrão: https://s3.amazonaws.com) |
| access_key | string | Access key do S3 |
| secret_key | string | Secret key do S3 |
| bucket | string | Nome do bucket S3 |
| region | string | Região do S3 (obrigatória para AWS S3) |
| path_prefix | string | Prefixo de caminho para organizar arquivos |
| force_path_style | boolean | Forçar path style (obrigatório para MinIO) |
Exemplo de requisição:
{
"endpoint": "https://s3.amazonaws.com",
"access_key": "AKIAIOSFODNN7EXAMPLE",
"secret_key": "wJalrXUtnFEMI/K7MDENG/bPxRfiCYEXAMPLEKEY",
"bucket": "meu-bucket-whatsapp",
"region": "us-east-1",
"path_prefix": "uploads/",
"force_path_style": false
}
Resposta:
{
"code": 200,
"data": {
"message": "S3 configuration saved successfully"
},
"success": true
}
POST /s3/test
Testa a conexão com o S3 usando a configuração informada.
Parâmetros do corpo:
Os mesmos parâmetros do endpoint PUT /s3/config
Resposta:
{
"code": 200,
"data": {
"message": "S3 connection test successful"
},
"success": true
}
Exemplos de configuração:
- AWS S3: Use o endpoint padrão e informe a região
- MinIO: Use seu endpoint customizado (ex: http://localhost:9000) e habilite force_path_style
- DigitalOcean Spaces: Use https://nyc3.digitaloceanspaces.com como endpoint
Proxy
Configure um proxy HTTP/HTTPS ou SOCKS5 para as conexões do WhatsApp. Útil para restrições de rede ou para aumentar a privacidade.
GET /proxy/config
Obtém a configuração atual do proxy.
Resposta:
{
"code": 200,
"data": {
"proxy_url": "socks5://proxy.example.com:1080",
"username": "user",
"bypass_list": ["localhost", "127.0.0.1", "*.local"]
},
"success": true
}
PUT /proxy/config
Configura o proxy para esta instância.
Parâmetros do corpo:
| Parâmetro | Tipo | Descrição |
|---|---|---|
| proxy_url | string | URL completa do proxy, incluindo protocolo e porta |
| username | string | Usuário para autenticação no proxy |
| password | string | Senha para autenticação no proxy |
| bypass_list | Array[string] | Lista de domínios/IPs que devem ignorar o proxy |
Exemplo de requisição:
{
"proxy_url": "socks5://proxy.example.com:1080",
"username": "usuario",
"password": "senha123",
"bypass_list": ["localhost", "127.0.0.1", "*.local", "192.168.*"]
}
Resposta:
{
"code": 200,
"data": {
"message": "Proxy configuration saved successfully"
},
"success": true
}
POST /proxy/test
Testa a conexão através do proxy configurado.
Parâmetros do corpo:
Os mesmos parâmetros do endpoint PUT /proxy/config (exceto bypass_list)
Resposta:
{
"code": 200,
"data": {
"message": "Proxy connection test successful",
"response_time": "245ms"
},
"success": true
}
Formatos de URL suportados:
- HTTP/HTTPS:
http://proxy.example.com:8080 - SOCKS5:
socks5://proxy.example.com:1080 - Com autenticação:
socks5://user:pass@proxy.example.com:1080