- 複雑な処理を管理します: プロキシ、キャッシュ、レート制限、JavaScript でブロックされたコンテンツ
- 動的コンテンツに対応します: 動的な Web サイト、JavaScript でレンダリングされるサイト、PDF、画像
- クリーンな Markdown、構造化データ、スクリーンショット、または HTML を出力します。
Playground で試す
インタラクティブな Playground でスクレイピングを試せます。コードは不要です。
リクエストが失敗した場合は、エラーコード、原因、対処法、再試行に関するガイダンスの一覧についてはErrorsを参照してください。
FirecrawlでURLをスクレイピングする
/scrape エンドポイント
インストール
使い方
各スクレイプで1クレジットを消費します。次のオプションには追加クレジットが必要です。JSONモードは1ページあたり追加で4クレジット、questionフォーマットとhighlightsフォーマットは各フォーマットごとに1ページあたり追加で4クレジット、強化プロキシは1ページあたり追加で4クレジット、PDF解析はPDFの1ページあたり1クレジットを消費し、音声または動画抽出は1ページあたり追加で4クレジットかかります。
レスポンス
SDK はデータオブジェクトを直接返します。cURL は以下のとおり、ペイロードをそのまま返します。スクレイピングのフォーマット
- Markdown (
markdown) - Summary (
summary) - HTML (
html) - ページの HTML をクリーンアップしたバージョン - Raw HTML (
rawHtml) - ページから取得した変更前の HTML - Screenshot (
screenshot、fullPage、quality、viewportなどのオプションあり) — スクリーンショットのURLは24時間後に期限切れになります - Links (
links) - JSON (
json) - 構造化された出力 - Images (
images) - ページ内のすべての画像URLを抽出 - Branding (
branding) - ブランドアイデンティティとデザインシステムを抽出 - Audio (
audio) - 対応している動画URL (例: YouTube) からMP3音声を抽出 (署名付きGCS URLを返します。1時間後に期限切れになります) - Video (
video) - 対応している動画URL (例: YouTube または TikTok) から最高品質の動画を抽出 (署名付きGCS URLを返します。1時間後に期限切れになります) - Query (
query、promptと任意のmodeを使用) - ページについて自然言語で質問できます。回答はanswerフィールドで返されます
構造化データの抽出
/scrape (json あり) エンドポイント
JSON
スキーマなしでの抽出
prompt を渡すだけで、スキーマなしで抽出できます。LLM がデータ構造を決定します。
JSON
JSON フォーマットのオプション
json フォーマットを使用する場合は、formats 内に以下のパラメータを含むオブジェクトを渡します:
schema: 構造化出力のための JSON Schema。prompt: スキーマがある場合や、軽い指示で十分な場合に抽出を補助する任意のプロンプト。
ブランドアイデンティティの抽出
/scrape (ブランディング付き) エンドポイント
レスポンス
ブランディングフォーマットは、以下の構造を持つ包括的なBrandingProfile オブジェクトを返します。
Output
ブランディングプロファイルの構造
branding オブジェクトには次のプロパティが含まれます:
colorScheme: 検出された配色 ("light"または"dark")logo: メインロゴの URLcolors: ブランドカラーを含むオブジェクト:primary,secondary,accent: 主要なブランドカラーbackground,textPrimary,textSecondary: UI カラーlink,success,warning,error: セマンティックカラー
fonts: ページで使用されているフォントファミリーの配列typography: タイポグラフィの詳細情報:fontFamilies: 基本、見出し、コード用のフォントファミリーfontSizes: 見出しと本文のサイズ定義fontWeights: ウェイトの定義 (light、regular、medium、bold)lineHeights: テキスト種別ごとの行の高さ
spacing: 余白とレイアウト情報:baseUnit: 基準となるスペーシング単位 (px)borderRadius: 既定の角丸半径padding,margins: スペーシング値
components: UI コンポーネントのスタイル:buttonPrimary,buttonSecondary: ボタンスタイルinput: 入力フィールドのスタイル
icons: アイコンのスタイル情報images: ブランド画像 (ロゴ、favicon、og:image)animations: アニメーションおよびトランジション設定layout: レイアウト構成 (グリッド、ヘッダー/フッターの高さ)personality: ブランドの特性 (トーン、エネルギー、対象ユーザー)
他のフォーマットとの併用
音声抽出
audio フォーマットでは、対応する Web サイト (YouTube など) から音声を MP3 ファイルとして抽出し、署名付きの Google Cloud Storage URL を返します。これは、音声処理パイプラインや文字起こしサービス、ポッドキャスト向けツールの構築に役立ちます。
音声抽出のコストは 1 ページあたり 5 クレジットです (基本 1 + 追加 4) 。
動画抽出
video フォーマットでは、対応している Web サイト (例: YouTube や TikTok) から最高画質の動画を抽出し、署名付きの Google Cloud Storage URL を返します。これは、動画処理パイプラインやモデレーションツール、メディアアーカイブ用ワークフローの構築に役立ちます。
動画抽出のコストは 1 ページあたり 5 クレジットです (基本 1 + 追加 4) 。
質問フォーマット
question フォーマットを使うと、ページについて自然言語で質問できます。Firecrawl は、レスポンスの answer フィールドに回答を返します。
question フォーマットのコストは、1 ページあたり 5 クレジットです (基本 1 + LLM 呼び出しの追加 4) 。question(type: "question"の場合は必須) : 回答する質問。最大 10,000 文字。
question は他のフォーマットと組み合わせることもできます。たとえば、markdown と question を一緒にリクエストすると、1 回の呼び出しでページの内容と回答を取得できます。
question フォーマットは、scrapeOptions を介して /search でも利用でき、各検索結果に対して同じ抽出を実行します。
Highlights フォーマット
highlights フォーマットを使用します。Firecrawl は、選択されたテキストをレスポンスの highlights フィールドに返します。
highlights フォーマットのコストは 1 ページあたり 5 クレジット です (基本 1 + LLM 呼び出しの追加 4) 。query(type: "highlights"の場合は必須) : ソーステキストを選択するためのリクエスト。最大 10,000 文字。
highlights は他のフォーマットと組み合わせることもできます。たとえば、markdown と highlights を一緒にリクエストすると、ページコンテンツとソーステキストを 1 回の呼び出しで取得できます。
highlights フォーマットは、scrapeOptions を介して /search でも利用でき、各 search result に対して同じ extraction を実行します。
アクションを使ってページとやり取りする
wait アクションを使用することが重要です。
例
出力
ロケーションと言語
仕組み
使い方
location オブジェクトを含め、次のプロパティを指定します:
country: ISO 3166-1 alpha-2 の国コード (例: ‘US’, ‘AU’, ‘DE’, ‘JP’) 。既定値は ‘US’。languages: 優先度順に並べた、リクエストで使用する希望言語およびロケールの配列。既定値は指定した location の言語。
キャッシュと maxAge
- デフォルトの鮮度ウィンドウ:
maxAge = 172800000ms (2日) 。キャッシュされたページがこの値より新しければ即時に返し、そうでなければスクレイプしてからキャッシュします。 - パフォーマンス: データが厳密な最新性を要さない場合、スクレイプを最大5倍高速化できます。
- 常に最新を取得:
maxAgeを0に設定します。この設定ではキャッシュを完全にバイパスするため、すべてのリクエストがスクレイピングパイプライン全体を通過し、リクエストが完了するまでの時間が長くなり、失敗する可能性も高くなります。すべてのリクエストで厳密な最新性が必須でない場合は、0以外のmaxAgeを使用してください。 - 保存しない: このリクエストの結果を Firecrawl にキャッシュ/保存させたくない場合は、
storeInCacheをfalseに設定します。 - キャッシュのみの参照: 新しいスクレイプを実行せず、キャッシュのみを参照するには
minAgeを設定します。値はミリ秒単位で、キャッシュデータが満たす必要のある最小経過時間を指定します。キャッシュデータが見つからない場合は、エラーコードSCRAPE_NO_CACHED_DATAを伴う404が返されます。経過時間に関係なく任意のキャッシュデータを受け入れるには、minAgeを1に設定します。 - 変更トラッキング:
changeTrackingを含むリクエストはキャッシュをバイパスするため、maxAgeは無視されます。 - クレジット: キャッシュされた結果でも、1ページあたり1クレジットがかかります。キャッシュによって改善されるのは速度であり、クレジット使用量ではありません。
複数のURLのバッチスクレイピング
仕組み
/crawl エンドポイントの動作に非常によく似ています。バッチスクレイプのジョブを送信し、進行状況を確認するためのジョブIDを返します。
SDK は同期型と非同期型の2つのメソッドを提供します。同期型はバッチスクレイプジョブの結果を返し、非同期型はバッチスクレイプのステータス確認に使えるジョブIDを返します。
使い方
Response
同期処理
完了
非同期
/batch/scrape/{id} エンドポイントを呼び出し、バッチスクレイプのステータスを確認できます。 このエンドポイントは、ジョブの実行中、または完了直後に使用することを想定しています。バッチスクレイプのジョブは24時間で有効期限が切れるためです。
強化モード
ゼロデータ保持 (ZDR)
zeroDataRetention: true を設定します。
cURL
ZDR モードではスクリーンショットは利用できません。スクリーンショットでは永続ストレージへのアップロードが必要になるため、ZDR の保証とは両立しません。
zeroDataRetention: true と screenshot 形式の両方を含むリクエストはエラーを返します。Firecrawl API キーが必要な AI エージェントですか?自動オンボーディング手順については、firecrawl.dev/agent-onboarding/SKILL.md を参照してください。

