Documentação da API

A API REST ConvertConte MAX permite integrar conversão de arquivos diretamente no seu sistema. Disponível exclusivamente no Plano MAX Business com 10.000 chamadas mensais e throughput dedicado.

Base URL: https://api.convertconte.com

Autenticação

Todas as requisições devem incluir sua API Key no header Authorization:

Header de Autenticação
Authorization: Bearer cc_live_sk_SUA_API_KEY_AQUI
⚠️ Nunca exponha sua API Key no código frontend. Use variáveis de ambiente (process.env.CONVERT_API_KEY).

Rate Limits

PlanoChamadas/mêsTamanho máx.Concorrência
MAX Business10.0002 GB10 jobs paralelos
Outros PlanosAcesso à API não disponível

Headers retornados em cada resposta: X-RateLimit-Remaining, X-RateLimit-Reset

Endpoints

POST/v1/convert

Envia um arquivo para conversão e retorna um Job ID para polling.

Body (multipart/form-data)

{
  "file": "<multipart/form-data>",
  "target_format": "docx",   // formato de destino
  "quality": "high"           // opcional: low | medium | high | ultra
}

Response (200 OK)

{
  "success": true,
  "jobId": "job_a1b2c3d4e5f6",
  "estimatedSeconds": 12,
  "downloadUrl": null         // preenchido após conclusão
}
GET/v1/jobs/:jobId

Consulta o status de um job de conversão. Faça polling a cada 1,5s.

Response (200 OK)

{
  "jobId": "job_a1b2c3d4e5f6",
  "state": "completed",       // queued | active | completed | failed
  "progress": 100,
  "downloadUrl": "https://api.convertconte.com/v1/files/abc123.docx",
  "expiresAt": "2026-08-10T20:00:00Z"
}
GET/v1/files/:filename

Faz download do arquivo convertido. URL disponível por 1h (Free/Basic) ou 90 dias (Pro/MAX).

Response (200 OK)

// Retorna o arquivo como stream binário (application/octet-stream)
GET/v1/quota

Retorna a cota de uso da API Key atual.

Response (200 OK)

{
  "plan": "MAX",
  "monthlyQuota": 10000,
  "usedThisMonth": 3241,
  "remaining": 6759,
  "resetAt": "2026-09-01T00:00:00Z"
}
GET/v1/formats

Lista todos os formatos de conversão suportados pela sua API Key.

Response (200 OK)

{
  "supported": [
    { "from": "pdf",  "to": ["docx", "txt", "html"] },
    { "from": "mp4",  "to": ["avi", "mkv", "webm", "mov"] },
    { "from": "jpeg", "to": ["png", "webp", "bmp", "tiff"] },
    ...
  ]
}

SDKs & Exemplos

curl
curl -X POST https://api.convertconte.com/v1/convert \
  -H "Authorization: Bearer cc_live_sk_SUA_CHAVE" \
  -F "file=@documento.pdf" \
  -F "target_format=docx" \
  -F "quality=high"
node
import { ConvertConte } from 'convertconte-sdk';

const client = new ConvertConte({
  apiKey: process.env.CONVERT_API_KEY
});

// Converte e aguarda conclusão automaticamente
const result = await client.convert({
  file: './video.mp4',
  targetFormat: 'avi',
  quality: 'ultra'
});

console.log('Download URL:', result.downloadUrl);
python
from convertconte import ConvertConteClient

client = ConvertConteClient(api_key="cc_live_sk_SUA_CHAVE")

job = client.convert(
    file_path="imagem.webp",
    target_format="png",
    wait=True      # aguarda conversão concluir
)

print(f"URL: {job.download_url}")
php
<?php
require 'vendor/autoload.php';
use ConvertConte\Client;

$client = new Client(['apiKey' => 'cc_live_sk_SUA_CHAVE']);

$job = $client->convert([
    'file'          => fopen('./documento.pdf', 'r'),
    'target_format' => 'docx',
]);

echo $job->downloadUrl;

Códigos de Erro

CódigoSignificado
401Unauthorized — API Key inválida ou ausente
403Forbidden — Plano não autoriza este recurso
413Payload Too Large — Arquivo acima do limite do plano
422Unprocessable Entity — Formato de conversão não suportado
429Too Many Requests — Cota mensal esgotada
500Internal Server Error — Falha no worker de conversão

Pronto para integrar?

Assine o Plano MAX Business e obtenha sua API Key imediatamente.

Ativar Plano MAX Business