Pular para o conteúdo principal

Apresentando o /parse

O endpoint /parse converte documentos locais ou não públicos em dados limpos, prontos para LLM. Envie o arquivo via multipart/form-data e receba Markdown, JSON, HTML, links, imagens ou um resumo — com a ordem de leitura e as tabelas preservadas.
  • Transforme PDFs, DOCX, XLSX, HTML e mais em Markdown ou JSON estruturado
  • Análise até 5x mais rápida com um mecanismo baseado em Rust
  • Arquivos de até 50 MB por solicitação
  • Suporte a Zero Data Retention

Quando usar /parse

Use /parse quando o documento de origem for um arquivo local ou não puder ser acessado publicamente por URL. Se você tiver uma URL pública que aponte para um documento, prefira /scrape — ele detecta automaticamente o tipo de arquivo pela extensão ou pelo tipo de conteúdo e o processa da mesma forma.
OrigemEndpoint
URL pública de um documento (por exemplo, https://example.com/report.pdf)POST /scrape
Arquivo local ou bytes não públicos (PDF, DOCX, XLSX, HTML, …)POST /parse

Análise

endpoint /parse

Usado para enviar um arquivo e receber o conteúdo analisado. A requisição é multipart/form-data, com um campo file obrigatório e um campo JSON options opcional. Extensões compatíveis: .html, .htm, .pdf, .docx, .doc, .odt, .rtf, .xlsx, .xls.

Uso

from firecrawl import Firecrawl

firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")

doc = firecrawl.parse("./report.pdf")

print(doc.markdown)

Resposta

Os SDKs retornam diretamente o objeto de documento. O cURL retorna o payload JSON.
{
  "success": true,
  "data": {
    "markdown": "# Annual Report\n\n...",
    "metadata": {
      "title": "Annual Report",
      "numPages": 42,
      "sourceFile": "report.pdf"
    }
  }
}

Opções

/parse aceita um subconjunto das opções de scraping no campo options. Configurações comuns:
  • formats: Array de formatos de resultado. O padrão é ["markdown"]. Compatíveis: markdown, html, rawHtml, links, images, summary e json (com um schema ou prompt).
  • onlyMainContent: Retorna apenas o conteúdo principal do documento. O padrão é true.
  • includeTags / excludeTags: Inclusão ou exclusão em nível de tag (entradas HTML).
  • timeout: Tempo limite da requisição em milissegundos. O padrão é 30000, máximo de 300000.
  • parsers: Controles do parser de arquivos. Para PDFs, defina { "type": "pdf", "mode": "fast" | "auto" | "ocr", "maxPages": <int> }.
/parse não oferece suporte a opções exclusivas do navegador, como actions, waitFor, location, mobile ou rastreamento de alterações.

Modos do parser de PDF

cURL
curl -X POST https://api.firecrawl.dev/v2/parse \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'file=@./scan.pdf' \
  -F 'options={"parsers":[{"type":"pdf","mode":"ocr","maxPages":50}]};type=application/json'
  • fast: extração somente de texto, opção mais rápida.
  • auto (padrão): prioriza texto, com fallback para OCR em páginas só com imagens.
  • ocr: OCR em todas as páginas — use em documentos digitalizados.

Resultado JSON estruturado

Passe um schema JSON ou um prompt para extrair dados estruturados diretamente do documento:
cURL
curl -X POST https://api.firecrawl.dev/v2/parse \
  -H 'Authorization: Bearer YOUR_API_KEY' \
  -F 'file=@./invoice.pdf' \
  -F 'options={"formats":[{"type":"json","schema":{"type":"object","properties":{"total":{"type":"number"},"vendor":{"type":"string"}}}}]};type=application/json'

Considerações

  • O tamanho máximo do arquivo é de 50 MB por requisição.
  • A análise de PDFs muito grandes ou digitalizados no modo ocr pode demorar mais — aumente o valor de timeout ou use maxPages para limitar o processamento.
  • Para lotes de arquivos, chame /parse para cada arquivo em paralelo; não há opção de upload em lote.
É um agente de IA que precisa de uma chave de API do Firecrawl? Consulte firecrawl.dev/agent-onboarding/SKILL.md para ver instruções de onboarding automatizado.