Skip to content

Tags: firecrawl/firecrawl-php

Tags

v1.15.0

Toggle v1.15.0's commit message
chore(sdks): bump versions for the agent list endpoint (#4470)

v1.14.0

Toggle v1.14.0's commit message
feat(sdks): add agent effort param and trace/snapshot endpoints (#4415)

v1.13.0

Toggle v1.13.0's commit message
feat(sdks): add parsers[].pageMarkers for PDF page attribution (#4379)

Expose the v2 PDF parser pageMarkers option across the JS, Python, Go,
Java, Ruby, PHP, Rust, and .NET SDKs so scrape/parse requests can join
PDF pages in document.markdown with <!-- page N --> separators. Bump
each package version so merge auto-publishes.

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

v1.12.0

Toggle v1.12.0's commit message
feat(sdks): add parsers[].pages for per-page PDF markdown (#4353)

* feat(sdks): add parsers[].pages for per-page PDF markdown

Expose the renamed v2 PDF parser pages option (formerly pageMarkdown)
and Document.pages across the JS, Python, Go, Java, Ruby, PHP, Rust,
and .NET SDKs. Bump each package version so merge auto-publishes.

Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

* fix(python-sdk): fold deprecated pageMarkdown into pages

Pydantic dropped page_markdown/pageMarkdown on PDFParser before
prepare_scrape_options could rewrite them. Accept both aliases on
the model so they serialize as pages.

Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

* fix(python-sdk): drop unreachable pageMarkdown folds on model dump

PDFParser already folds page_markdown/pageMarkdown into pages in a
before-validator, so model_dump cannot emit those keys. Keep the
alias rewrite only on the raw-dict parser branch.

Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

v1.11.0

Toggle v1.11.0's commit message
feat(sdks): add parsers[].blocks for typed PDF layout blocks (#4351)

* feat(sdks): add parsers[].blocks for typed PDF layout blocks

Expose the v2 PDF parser blocks option and Document.blocks across
the JS, Python, Go, Java, Ruby, PHP, Rust, and .NET SDKs, and bump
each package version so merge auto-publishes the new APIs.

Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

* test(rust-sdk): cover PDF parser blocks serialization and hydration

Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

* fix(java-sdk): type Document.blocks as List<PdfPageBlocks>

Replace the raw List<Map<String, Object>> with typed page/block models
so Java callers get compile-time access to pageNumber, items, bbox, and
confidence, matching Menu/Product and the other SDKs.

Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

---------

Co-authored-by: Cursor Agent <cursoragent@cursor.com>
Co-authored-by: Abimael Martell <abimaelmartell@users.noreply.github.com>

v1.10.1

Toggle v1.10.1's commit message
fix(siem): constrain audit metadata to username (#4144)

v1.10.0

Toggle v1.10.0's commit message
feat(api): add replica-safe SIEM Logging (#4122)

v1.9.1

Toggle v1.9.1's commit message
feat(sdks): add search highlights option (#4042)

v1.9.0

Toggle v1.9.0's commit message
docs(php-sdk): note why assertSuccess covers only synchronous endpoints

Review flagged the asymmetry: crawl start/status skip the success:false
envelope check. That is deliberate — a failed start yields a null job ID
that pollCrawl() and the crawl tool both guard, and crawl status is
surfaced explicitly on CrawlJob — but nothing said so.

Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>