
unchanged) か、変更あり (modified) かを検出するために changeTracking を formats 配列に追加し、必要に応じて「何が変わったか」の構造化された差分を取得できます。
/scrape、/crawl、/batch/scrapeで動作- 2 つの diff モード: 行単位の変更用
git-diff、フィールド単位の比較用json - チームごとにスコープされ、必要に応じて渡したタグごとにもスコープ可能
仕組み
changeTracking が有効なすべてのスクレイプ実行時にスナップショットが保存され、その URL に対する前回のスナップショットと比較されます。スナップショットは永続的に保存され、有効期限がないため、スクレイプ間でどれだけ時間が空いても比較結果の精度が維持されます。
レスポンスには、
changeTracking オブジェクト内に次のフィールドが含まれます。
基本的な使い方
formats 配列には markdown と changeTracking の両方を指定します。変更追跡ではページの markdown コンテンツを比較するため、markdown フォーマットは必須です。
レスポンス
changeStatus は "new"、previousScrapeAt は null になります。
changeStatus にコンテンツが変更されたかどうかが反映されます。
Git-diff モード
git-diff モードは、git diff に似た形式で行単位の変更差分を返します。formats 配列内に modes: ["git-diff"] を含むオブジェクトを指定します。
レスポンス
diff オブジェクトには、プレーンテキスト形式の diff と構造化された JSON 表現の両方が含まれます。
diff.json オブジェクトには次の要素が含まれます:
files: 変更されたファイルの配列 (通常はウェブページごとに1つ)chunks: ファイル内の変更箇所を表すセクションchanges: 個々の行ごとの変更。type("add"、"del"、または"normal") 、行番号 (ln) 、およびcontentを含む
JSONモード
json モードは、定義したスキーマを使って、ページの現在のバージョンと前回のバージョンの両方から特定のフィールドを抽出します。これは、ページ全体の差分を解析することなく、価格、在庫レベル、メタデータなどの構造化データの変更を追跡するのに便利です。
抽出するフィールドを定義する schema とともに modes: ["json"] を渡します:
レスポンス
previous と current の値を含めて返されます。
prompt を渡して、スキーマとあわせて LLM による抽出をガイドすることもできます。
JSONモードは LLM 抽出を使用し、1ページあたり5クレジットかかります。基本的な変更追跡と
git-diff モードには追加コストは発生しません。change tracking を利用したクロール
scrapeOptions 内で changeTracking フォーマットを指定します。
changeTracking を使ったバッチスクレイプ
変更追跡のスケジュール設定
Cronジョブ
check-pricing.sh
crontab -e でスケジュールを設定します:
クラウドおよびサーバーレスのスケジューラー
- AWS: EventBridge ルールによる Lambda 関数のトリガー
- GCP: Cloud Scheduler による Cloud Function のトリガー
- Vercel / Netlify: Cron によってトリガーされるサーバーレス関数
- GitHub Actions:
scheduleおよびcronトリガーによるスケジュールされたワークフロー
ワークフロー自動化
Webhooks
crawl.page イベントのペイロードには、各ページごとに changeTracking オブジェクトが含まれています。
設定リファレンス
changeTracking フォーマットオブジェクトを渡すときに利用できるオプション一覧:
データモデル
重要な詳細
- スナップショットの保持: スナップショットは永続的に保存され、有効期限はありません。前回のスクレイプから数か月後に再度スクレイプを実行しても、以前のスナップショットと正しく比較されます。
- スコープ: 比較はチーム内に限定されます。任意の URL をチームとして初めてスクレイプした場合は、他のユーザーが同じ URL をスクレイプしていても
"new"が返されます。 - URL のマッチング: 過去のスクレイプは、ソース URL、チーム ID、
markdownフォーマット、tagが完全一致したものと照合されます。スクレイプ間で URL を一貫させてください。 - パラメータの一貫性: 同じ URL に対して異なる
includeTags、excludeTags、onlyMainContent設定を使うと、比較結果が信頼できなくなります。 - 比較アルゴリズム: このアルゴリズムは、空白やコンテンツ順序の変化に強く設計されています。CAPTCHA やボット対策によるランダム化に対応するため、iframe のソース URL は無視されます。
- キャッシュ:
changeTrackingを指定したリクエストは、インデックス キャッシュをバイパスします。maxAgeパラメータは無視されます。 - エラー処理: レスポンス内の
warningフィールドを監視し、changeTrackingオブジェクトが存在しない可能性を考慮して処理してください (これは、前回スクレイプのデータベース検索がタイムアウトした場合に発生することがあります) 。
料金
Firecrawl API キーが必要な AI エージェントですか?自動オンボーディング手順については、firecrawl.dev/agent-onboarding/SKILL.md を参照してください。

