Installation
The official Java SDK is maintained in the Firecrawl monorepo at apps/java-sdk. To install the Firecrawl Java SDK, add the dependency from Maven Central:- Gradle (Kotlin DSL)
- Gradle (Groovy)
- Maven
Requires Java 11 or later.
Usage
- Get an API key from firecrawl.dev
- Set the API key as an environment variable named
FIRECRAWL_API_KEY, or pass it withFirecrawlClient.builder().apiKey(...)
Scraping a URL
To scrape a single URL, use thescrape method.
Parsing uploaded files
The latest Java SDK package (com.firecrawl:firecrawl-java) supports direct file uploads to /v2/parse.
parse does not support changeTracking or browser-only options like screenshot, branding, actions, waitFor, location, and mobile.
Java
JSON Extraction
Extract structured JSON withJsonFormat via the scrape endpoint:
Crawling a Website
To crawl a website and wait for completion, usecrawl.
Start a Crawl
Start a job without waiting usingstartCrawl.
Checking Crawl Status
Check crawl progress withgetCrawlStatus.
Cancelling a Crawl
Cancel a running crawl withcancelCrawl.
Mapping a Website
Discover links on a site usingmap.
Searching the Web
Search with optional search settings usingsearch.
Batch Scraping
Scrape multiple URLs in parallel usingbatchScrape.
Agent
Run an AI-powered agent withagent.
Usage & Metrics
Check concurrency and remaining credits:Async Support
Async variants are built in and returnCompletableFuture.
Browser
The Java SDK includes Browser Sandbox helpers.Create a Session
Execute Code
Scrape-Bound Interactive Session
Use a scrape job ID to run follow-up browser code in the same replayed context:interact(...)runs code in the scrape-bound browser session (and initializes it on first use).stopInteraction(...)explicitly stops the interactive session when you are done.
List & Close Sessions
Configuration
FirecrawlClient.builder() supports the following options:
Custom HTTP Client
You can pass a pre-configuredOkHttpClient to control connection pooling, interceptors, SSL configuration, proxy settings, and any other OkHttp feature. When provided, the timeoutMs setting is ignored in favor of the client’s own configuration.
Error Handling
The SDK throws runtime exceptions undercom.firecrawl.errors.
Are you an AI agent that needs a Firecrawl API key? See firecrawl.dev/agent-onboarding/SKILL.md for automated onboarding instructions.

