same、new、changed、removed、error として記録されます。監視対象の各ページの処理完了時に webhook を受け取ることも、チェックが完了するたびに webhook を受け取ることも、変更やエラーが発生した際にメールで要約を受け取ることもでき、これらを自由に組み合わせることもできます。
モニターを作成する
nextRunAt、および estimatedCreditsPerMonth を含む新しいモニターが返されます。判定が有効な場合、estimatedCreditsPerMonth は上限見積もりになります。これは、判定クレジットが実際に判定された変更ページに対してのみ課金されるためです:
Response
CLI
ゴールと判定
goal を追加します。goal が指定されていて judgeEnabled が省略されている場合、Firecrawl は自動的に判定を有効にします。判定は変更のあったページで実行され、meaningful、confidence、reason、meaningfulChanges を含む judgment を返します。
変更の判定はまだ行わず、ゴールだけを保存したい場合は、judgeEnabled: false を使用します。判定が実行されるのは、モニター に judgeEnabled と空でない goal の両方が設定されている場合だけです。
各 チェック では、常に元となるスクレイピングまたはクロールの料金が発生します。判定が有効な場合、judge は検証した変更済みページごとに 1 クレジット を追加で消費します。変更されたページがない チェック では、judge クレジット は消費されません。
monitor.page webhook が生成されることがあります:
monitor.page
スケジュール
every 30 minutesevery 15 minutes starting at :07hourlyevery 2 hoursdailydaily at 9:00daily at 9amdaily at 5:30 PMweekly
timezone が daily at 9am のような表現の実行時刻を制御します。テキストによるスケジュールは、cron に変換される前にモニター ID ごとに分散されるため、多数のモニターがまったく同じタイミングで実行されることはありません。
ターゲット
scrape:urls内の各 URL に対して 1 回スクレイピングを実行します。crawl: 各チェックでurlに対して完全なクロールを実行し、検出されたすべてのページの差分を比較します。
retentionDays のデフォルトは 30 で、最大 365 まで設定できます。
ターゲットのスクレイピングのオプションは、そのまま基盤となるスクレイピング ジョブに渡されます。モニターによってトリガーされたスクレイピングでは、maxAge のデフォルトが 0 になるため、明示的に別の maxAge を設定しない限り、各チェックで毎回新しくスクレイピングが実行されます。
Scrape target
crawlOptions を、各ページのスクレイピングには scrapeOptions を使用します。
Crawl target
変更追跡
same、changed、new、removed、error のいずれかを返します。特定の構造化フィールド (価格、見出し、在庫フラグ、リスト内の項目など) の変更を検出したい場合は、対象の scrapeOptions に modes: ["json"] を指定した changeTracking フォーマットを追加して、JSON モードの変更追跡を有効にします。
Markdown モード (デフォルト)
scrapeOptions.formats が ["markdown"] のみの場合、チェック レスポンス内の変更された各ページには、unified 形式のテキスト差分と、parseDiff スタイルの AST が含まれます。
Markdown-mode diff
JSONモード
modes: ["json"] を指定した changeTracking フォーマットを、注目するフィールドを定義した JSON schema (または prompt) とあわせて渡します。Firecrawl はチェックのたびにその JSON を抽出し、フィールドパスをキーとするフィールド単位の差分を出力します。さらに、利用側で元のスクレイピング結果を再取得しなくて済むよう、現在の抽出結果全体を含む snapshot.json も出力します。
{previous, current} のペアです。
JSON-mode diff
追跡対象のフィールドに変更がなく、周囲の Markdown だけが変わった場合でも、git-diff も有効にしない限り (下記の mixed mode を参照) 、JSONモードのモニターは
same を返します。この差分は、schema 内のフィールドだけに焦点を当てています。Mixedモード (JSON + git-diff)
Mixed target (JSON + git-diff)
snapshot.json の抽出結果に加えて、diff.text (markdown のサイドカー) と diff.json (フィールド単位の差分) の両方が含まれます。
Mixed-mode diff (JSON + git-diff)
changed が報告されます。
通知
Webhooks
webhook が設定されている場合、Firecrawl は 2 つの モニター event を送信できます。
monitor.page: 監視対象の各ページのスクレイピングが scrape worker で完了するたびに送信されます。monitor.check.completed: チェック全体の整合処理が完了した後に送信されます。チェック の status と集計数が含まれます。ページ単位の結果を確認するには、monitor.pageevent または モニター check API を使用してください。
monitor.page には、変更されたページに対して意味のある変更の判定が実行された場合、isMeaningful と judgment が含まれます。
Webhook config
monitor.page の ペイロード:
monitor.page
monitor.check.completed の ペイロード:
monitor.check.completed
success は、ページエラーなしで チェック が完了した場合に true です。失敗した チェック または部分的な チェック の場合は false となり、利用可能であれば error に失敗理由が含まれます。
メール
Email config
recipients を省略すると、Firecrawl はシステムアラートメールの受信対象となるチームメンバーに送信します。
明示的な受信者は最大 25 件まで設定できます。
受信者の確認手順
チェック結果
GET /v2/monitor/{monitorId}/checks でチェックの一覧を取得し、GET /v2/monitor/{monitorId}/checks/{checkId} で個別のチェック詳細を確認できます。SDKs はデフォルトで自動的にページネーションに対応しています。
status で絞り込めます: queued、running、completed、failed、partial、skipped_overlap。
チェック詳細のレスポンスには、estimatedCredits、actualCredits、集計件数、およびページネーションされた pages 配列が含まれます。estimatedCredits はそのチェックに対して上限として予約されるクレジット数で、actualCredits は Firecrawl が変更されたページ数と判定が必要なページ数を把握した後に確定する最終的な請求量です。結果の次のページを取得するには、トップレベルの next URL を使用します。これはクロールのページネーションと同じです。ページは status で絞り込めます: same、new、changed、removed、error。変更された各ページにはインラインの diff データが含まれます。JSONモードのモニターによるページには、現在の抽出結果を含む snapshot も含まれます。
- Markdownモード
- JSONモード
- Mixedモード
Markdown-mode response

