API de conversão

Envie um arquivo, receba o resultado. Disponível no plano Empresas.

Autenticação

Gere sua chave na página Conta e envie no cabeçalho Authorization. O cabeçalho X-API-Key também funciona.

Authorization: Bearer cvk_sua_chave

Converter um arquivo

POST /api/v1/convert/{ferramenta} com multipart/form-data. O arquivo vai no campo file e as opções, se houver, em campos de texto.

curl -X POST https://seu-app.onrender.com/api/v1/convert/svg-para-pdf \
  -H "Authorization: Bearer cvk_sua_chave" \
  -F "file=@logo.svg" \
  -o logo.pdf

Com opções:

curl -X POST https://seu-app.onrender.com/api/v1/convert/svg-para-png \
  -H "Authorization: Bearer cvk_sua_chave" \
  -F "file=@logo.svg" -F "width=1200" \
  -o logo.png

A resposta é o arquivo convertido. Quando o resultado tem vários arquivos (PDF com várias páginas para imagens, planilha com várias abas para CSV, ou um lote), a resposta é um ZIP. O nome sugerido vem em Content-Disposition.

Lote e vários arquivos

Repita o campo file para enviar até 50 arquivos de uma vez. Cada arquivo conta como uma conversão e o retorno é um ZIP. Em juntar-pdf e jpg-para-pdf, os arquivos são combinados na ordem enviada e contam como uma conversão.

curl -X POST https://seu-app.onrender.com/api/v1/convert/juntar-pdf \
  -H "Authorization: Bearer cvk_sua_chave" \
  -F "file=@parte1.pdf" -F "file=@parte2.pdf" \
  -o completo.pdf

Cabeçalhos de resposta

CabeçalhoSignificado
X-Quota-LimitConversões permitidas por dia
X-Quota-UsedConversões usadas hoje
X-Quota-RemainingConversões restantes hoje
X-FailedEm lote, quantos arquivos falharam. Eles são listados em _erros.txt dentro do ZIP e não são cobrados da cota.

Erros

Erros voltam como JSON: { "error": "mensagem", "code": "codigo" }.

StatuscodeQuando acontece
400no_file, too_many_filesNenhum arquivo enviado ou arquivos demais
401unauthorizedChave ausente ou inválida
403planO plano não inclui API
404not_foundFerramenta inexistente
413too_largeArquivo maior que 200 MB
415, 422convert_failedTipo de arquivo errado, arquivo corrompido ou PDF protegido
429quotaLimite diário atingido (20.000 por dia)

Ferramentas e opções

A lista também está em GET /api/v1/tools, sem autenticação.

FerramentaAceitaOpções
svg-para-pngSVGwidth
svg-para-jpgSVGwidth, quality
svg-para-webpSVGwidth, quality
svg-para-pdfSVGnenhuma
pdf-para-svgPDFnenhuma
png-para-svgPNGmode, colors
jpg-para-svgJPGmode, colors
webp-para-svgWebPmode, colors
otimizar-svgSVGnenhuma
jpg-para-pngJPGnenhuma
png-para-jpgPNGquality
webp-para-pngWebPnenhuma
png-para-webpPNGquality
jpg-para-webpJPGquality
webp-para-jpgWebPquality
heic-para-jpgHEICquality
comprimir-imagemJPG, PNG, WebPquality
redimensionar-imagemJPG, PNG, WebPwidth, height
remover-metadadosJPG, PNG, WebPnenhuma
word-para-pdfDOCX, DOC, ODT, RTFnenhuma
txt-para-wordTXTnenhuma
word-para-txtDOCX, DOC, ODT, RTFnenhuma
txt-para-pdfTXTfont
doc-para-docxDOCnenhuma
excel-para-pdfXLSX, XLS, ODSnenhuma
xls-para-xlsxXLSnenhuma
xlsx-para-xlsXLSXnenhuma
excel-para-csvXLSX, XLS, ODSdelimiter
csv-para-xlsxCSVdelimiter
csv-para-pdfCSVdelimiter
pdf-para-txtPDFnenhuma
pdf-para-jpgPDFdpi, quality
pdf-para-pngPDFdpi
pdf-para-wordPDFnenhuma
jpg-para-pdfJPG, PNG, WebP (vários)pageSize
juntar-pdfPDF (vários)nenhuma
separar-pdfPDFpages
comprimir-pdfPDFnenhuma
OpçãoValores
quality1 a 100. Padrão varia por ferramenta.
width, heightPixels, de 1 a 12000. A proporção é mantida.
dpi50 a 300. Padrão 150.
pagesTexto como 1-3,5,8-. Vazio separa cada página.
pageSizeoriginal ou a4
delimiterSeparador de CSV: ,, ; ou tab. Em excel-para-csv o padrão da API é ,. Em csv-para-xlsx o padrão é auto (detecta sozinho).
fontEm txt-para-pdf: normal ou mono