Parse
Envie um documento local ou não público e converta-o em dados limpos, prontos para LLM
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
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.
| Origem | Endpoint |
|---|---|
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 |
Usando o Firecrawl via MCP? Use firecrawl_parse para arquivos locais. O MCP local pode ler o arquivo diretamente quando configurado com FIRECRAWL_API_URL. O MCP remoto hospedado primeiro retorna um comando de upload de curta duração e depois processa o uploadRef retornado. URLs públicas de documentos ainda devem usar /scrape.
Tem uma URL pública para um PDF? Use /scrape em vez disso -- ele detecta automaticamente os tipos de documento e retorna markdown limpo. Não é necessário usar uma biblioteca de PDF separada.
doc = firecrawl.scrape("https://example.com/report.pdf", formats=["markdown"])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.
from firecrawl import Firecrawl
firecrawl = Firecrawl(api_key="fc-YOUR-API-KEY")
doc = firecrawl.parse("./report.pdf")
print(doc.markdown)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,
"totalPages": 42,
"sourceFile": "report.pdf"
}
}
}numPages é o número de páginas efetivamente analisadas; totalPages é a
contagem real de páginas do documento. Os valores coincidem, a menos que maxPages tenha truncado o resultado — por exemplo, analisar
um PDF de 100 páginas com maxPages: 10 retorna numPages: 10 e totalPages: 100, então
totalPages > numPages indica que o resultado foi truncado. totalPages é omitido
quando não é possível determinar a contagem de páginas.
/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,summaryejson(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).redactPII: Redige informações de identificação pessoal do markdown retornado.timeout: Tempo limite da requisição em milissegundos. O padrão é30000, máximo de300000.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.
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.
Passe um schema JSON ou um prompt para extrair dados estruturados diretamente do documento:
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'- O tamanho máximo do arquivo é de 50 MB por requisição.
- A análise de PDFs muito grandes ou digitalizados no modo
ocrpode demorar mais — aumente o valor detimeoutou usemaxPagespara limitar o processamento. - Para lotes de arquivos, chame
/parsepara 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.