インストール#
公式の Java SDK は、Firecrawl のモノレポジトリ内にある apps/java-sdk で管理されています。
Firecrawl Java SDK をインストールするには、Maven Central から依存関係を追加します。
使い方#
- firecrawl.dev でAPI keyを取得します
- API keyを
FIRECRAWL_API_KEYという名前の環境変数に設定するか、FirecrawlClient.builder().apiKey(...)で渡します
現在のSDK APIを使った簡単な例を以下に示します。
URL のスクレイピング#
単一の URL をスクレイピングするには、scrape メソッドを使用します。
アップロードしたファイルの解析#
最新の Java SDK パッケージ (com.firecrawl:firecrawl-java) では、/v2/parse へのファイルの直接アップロードをサポートしています。
parse では、changeTracking や screenshot、branding、actions、waitFor、location、mobile などのブラウザ専用オプションはサポートされていません。
JSONの抽出#
scrape エンドポイントで JsonFormat を使って構造化された JSON を抽出します:
Web サイトのクロール#
Web サイトをクロールし、完了するまで待機するには、crawl を使用します。
クロールを開始する#
startCrawl を使用すると、待機せずにジョブを開始できます。
クロールステータスの確認#
getCrawlStatus でクロールの進行状況を確認できます。
クロールのキャンセル#
実行中のクロールをキャンセルするには、cancelCrawl を使用します。
Web サイトのマッピング#
map を使用してサイト上のリンクを検出します。
Web検索#
search を使用すると、任意の検索設定で検索できます。
バッチスクレイピング#
batchScrape を使用して、複数のURLを並列にスクレイピングします。
エージェント#
agent でAIエージェントを実行します。
構造化出力用のJSONスキーマを使用する場合:
使用状況とメトリクス#
同時実行数と残りのクレジットを確認できます。
非同期サポート#
非同期版は標準で用意されており、CompletableFuture を返します。
Browser#
Java SDK には、Browser Sandbox 用のヘルパーが含まれています。
セッションを作成する#
コードの実行#
スクレイピングに紐づくインタラクティブセッション#
スクレイピングの job ID を使って、同じ再現コンテキスト内で後続のブラウザコードを実行できます。
interact(...)は、スクレイピングに紐づくブラウザセッションでコードを実行します (初回利用時に初期化されます) 。stopInteraction(...)は、作業完了後にインタラクティブセッションを明示的に停止します。
セッションの一覧表示 & 終了#
設定#
FirecrawlClient.builder() では、次のオプションを使用できます。
| Option | Type | Default | Description |
|---|---|---|---|
apiKey | String | FIRECRAWL_API_KEY 環境変数または firecrawl.apiKey システムプロパティ | Firecrawl の API キー |
apiUrl | String | https://api.firecrawl.dev (または FIRECRAWL_API_URL) | API のベース URL |
timeoutMs | long | 300000 | HTTP リクエストのタイムアウト (ミリ秒) |
maxRetries | int | 3 | 一時的な障害に対する自動リトライ回数 |
backoffFactor | double | 0.5 | 秒単位の指数バックオフ係数 |
asyncExecutor | Executor | ForkJoinPool.commonPool() | 非同期メソッド用のカスタム Executor |
httpClient | OkHttpClient | timeoutMs から構築 | 事前設定済みの OkHttpClient インスタンス |
カスタム HTTP クライアント#
事前設定済みの OkHttpClient を渡すことで、接続プーリング、インターセプター、SSL 設定、プロキシ設定、その他の OkHttp の機能を制御できます。これを指定した場合、timeoutMs 設定は無視され、代わりにクライアント自体の設定が使用されます。
エラーハンドリング#
SDK は com.firecrawl.errors 配下でランタイム例外をスローします。
Firecrawl API キーが必要な AI エージェントですか? 自動オンボーディングの手順については、firecrawl.dev/agent-onboarding/SKILL.md を参照してください。

