Skip to main content

PDF Tools API

HTML para PDF API

Coloque converter HTML para PDF no backend, em lotes ou no seu produto sem manter infraestrutura própria de PDF.

Credits

1 Credit / call

1 Credit per successful API request. Failed processing attempts are refunded automatically.

Pricing

1,000 Credits = $1

Every signed-in user receives 100 free API Credits each month.

Endpoint

/api/external/html-to-pdf/pdf

Use your API Key in the x-api-key header.

Use case

Use para renderizar relatórios, recibos, extratos ou telas internas no servidor. A ferramenta web serve para revisão manual; a API serve para automação repetível no servidor.

cURL example

curl -X POST https://itextmaster.com/api/external/html-to-pdf/pdf \
  -H 'x-api-key: YOUR_API_KEY' \
  -F 'html=@index.html;type=text/html' \
  -F 'pageSize=A4' \
  -F 'printBackground=true' \
  --output html-to-pdf.pdf

Multipart example

curl -X POST https://itextmaster.com/api/external/html-to-pdf/pdf \
  -H 'x-api-key: YOUR_API_KEY' \
  -F 'html=@index.html;type=text/html' \
  -F 'pageSize=A4' \
  -F 'printBackground=true' \
  --output html-to-pdf.pdf

JSON base64 example

curl -X POST https://itextmaster.com/api/external/html-to-pdf/pdf \
  -H 'Content-Type: application/json' \
  -H 'x-api-key: YOUR_API_KEY' \
  -d '{
    "html": "<!doctype html><html><body><h1>Report</h1></body></html>",
    "pageSize": "A4",
    "printBackground": true
  }' \
  --output html-to-pdf.pdf

Node.js example

import { writeFile } from 'node:fs/promises';

const response = await fetch('https://itextmaster.com/api/external/html-to-pdf/pdf', {
  method: 'POST',
  headers: {
    'Content-Type': 'application/json',
    'x-api-key': process.env.ITEXTMASTER_API_KEY
  },
  body: JSON.stringify({
  html: '<!doctype html><html><body><h1>Report</h1></body></html>',
  pageSize: 'A4',
  printBackground: true
})
});

if (!response.ok) {
  throw new Error(await response.text());
}

await writeFile('html-to-pdf.pdf', Buffer.from(await response.arrayBuffer()));

Python example

import os
import requests

response = requests.post(
    'https://itextmaster.com/api/external/html-to-pdf/pdf',
    headers={
        'Content-Type': 'application/json',
        'x-api-key': os.environ['ITEXTMASTER_API_KEY'],
    },
    json={
        'html': '<!doctype html><html><body><h1>Report</h1></body></html>',
        'pageSize': 'A4',
        'printBackground': True,
    },
)
response.raise_for_status()

with open('html-to-pdf.pdf', 'wb') as f:
    f.write(response.content)

Error codes

400invalid_payload

O JSON ou multipart não contém HTML, URL ou arquivo obrigatório.

401invalid_api_key

O x-api-key está ausente, inválido ou foi rotacionado.

402insufficient_credits

A conta não tem API Credits suficientes.

502conversion_failed

A renderização no servidor não concluiu a conversão. Credits são devolvidos automaticamente quando falha.

Limits

  • Precisa de um PDF válido ou dados de entrada corretos.
  • Chame a API pelo servidor para não expor a API Key no navegador.
  • Teste arquivos representativos antes de processar grandes lotes.

Response headers

html-to-pdf.pdf com cabeçalhos de Credits consumidos e saldo restante.

Content-Type
Tipo MIME do arquivo gerado, normalmente application/pdf ou application/zip.
Content-Disposition
Nome de download do arquivo gerado.
X-Credits-Charged
Credits cobrados pela solicitação bem-sucedida.
X-Credit-Balance
Saldo de API Credits após a solicitação.

FAQ

Quanto custa HTML para PDF API?

Solicitações bem-sucedidas usam API Credits; falhas de processamento são devolvidas automaticamente. Usuários logados recebem 100 free API Credits por mês, e 1,000 Credits = $1.

As ferramentas web usam API Credits?

Não. Ferramentas que rodam no navegador não consomem API Credits. Só chamadas com API Key entram na cobrança.

Posso chamar a API pelo navegador?

Não é recomendado. Guarde a API Key no backend, fila ou automação do servidor.

Start with 100 free API Credits

Create an API Key, test HTML para PDF API, and buy more Credits only when automation volume grows.