メインコンテンツへスキップ
POST
/
crawl
オプション設定に基づいて複数のURLをクロールする
curl --request POST \
  --url https://api.firecrawl.dev/v2/crawl \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "url": "<string>",
  "prompt": "<string>",
  "excludePaths": [
    "<string>"
  ],
  "includePaths": [
    "<string>"
  ],
  "maxDiscoveryDepth": 123,
  "sitemap": "include",
  "ignoreQueryParameters": false,
  "limit": 10000,
  "crawlEntireDomain": false,
  "allowExternalLinks": false,
  "allowSubdomains": false,
  "delay": 123,
  "maxConcurrency": 123,
  "webhook": {
    "url": "<string>",
    "headers": {},
    "metadata": {},
    "events": [
      "completed"
    ]
  },
  "scrapeOptions": {
    "formats": [
      "markdown"
    ],
    "onlyMainContent": true,
    "includeTags": [
      "<string>"
    ],
    "excludeTags": [
      "<string>"
    ],
    "maxAge": 172800000,
    "headers": {},
    "waitFor": 0,
    "mobile": false,
    "skipTlsVerification": true,
    "timeout": 123,
    "parsers": [
      "pdf"
    ],
    "actions": [
      {
        "type": "wait",
        "milliseconds": 2,
        "selector": "#my-element"
      }
    ],
    "location": {
      "country": "US",
      "languages": [
        "en-US"
      ]
    },
    "removeBase64Images": true,
    "blockAds": true,
    "proxy": "auto",
    "storeInCache": true
  },
  "zeroDataRetention": false
}
'
{
  "success": true,
  "id": "<string>",
  "url": "<string>"
}

v2の新機能

クロール内容を指示する

クロールしてほしい内容を、わかりやすい英語で記述してください:
{
  "url": "https://example.com",
  "prompt": "ブログ記事とドキュメントのみをクロールし、マーケティングページは除外する"
}
これにより、プロンプトがクロール実行用のクローラー設定一式にマッピングされます。

サイトマップ制御の改善

v1 では、サイトマップの使用は真偽値で指定していました。v2 では、sitemap オプションで次のいずれかを選択できます:
  • "include"(デフォルト): サイトマップを利用しつつ、その他のページも自動的に発見します。
  • "skip": サイトマップを一切参照しません。

新しいクロールオプション

  • crawlEntireDomain - 子ページだけでなくドメイン全体をクロール
  • maxDiscoveryDepth - クロールの深さを制御(maxDepth を置き換え)
{
  "url": "https://example.com/features",
  "crawlEntireDomain": true,
  "maxDiscoveryDepth": 2,
  "sitemap": "include"
}

承認

Authorization
string
header
必須

Bearer authentication header of the form Bearer <token>, where <token> is your auth token.

ボディ

application/json
url
string<uri>
必須

クロールを開始するベースURL

prompt
string

自然言語からクローラーオプション(以下のすべてのパラメーター)を生成するために使用するプロンプトです。明示的に設定されたパラメーターは、生成された対応する値よりも優先されます。

excludePaths
string[]

クロールから除外する URL パス名の正規表現パターンです。たとえば、ベース URL が firecrawl.dev の場合に "excludePaths": ["blog/.*"] を設定すると、https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap のようにそのパターンにマッチする URL はすべて除外されます。

includePaths
string[]

クロールに含めるURLを指定するための、URLパスに対する正規表現パターンです。指定したパターンにマッチするパスのみがレスポンスに含まれます。たとえば、ベースURLが firecrawl.dev の場合に "includePaths": ["blog/.*"] を設定すると、https://www.firecrawl.dev/blog/firecrawl-launch-week-1-recap のように、そのパターンにマッチする結果のみが含まれます。

maxDiscoveryDepth
integer

検出順序に基づいてクロールする最大深度です。ルートサイトおよびサイトマップに含まれるページの検出深度は 0 です。例えば、これを 1 に設定し、かつ sitemap: 'skip' を指定した場合、入力した URL と、そのページからリンクされているすべての URL だけをクロールします。

sitemap
enum<string>
デフォルト:include

クロール時のサイトマップモードです。これを「skip」に設定すると、クローラーはサイトのサイトマップを無視し、指定したURLのみを起点として、そこから発見したページだけをクロールします。

利用可能なオプション:
skip,
include
ignoreQueryParameters
boolean
デフォルト:false

同じパスを、クエリパラメータの有無や値を変えて再スクレイプしないでください

limit
integer
デフォルト:10000

クロールするページ数の最大値。デフォルトの上限は 10,000 です。

crawlEntireDomain
boolean
デフォルト:false

クローラーが子パスだけでなく、同一階層(兄弟)や親の URL への内部リンクもたどれるようにします。

false: より深い(子)URL だけをクロールします。 → 例: /features/feature-1 → /features/feature-1/tips ✅ → /pricing や / には遷移しません ❌

true: 同一階層や親階層を含む、あらゆる内部リンクをクロールします。 → 例: /features/feature-1 → /pricing、/ など ✅

入れ子になったパスよりも広く内部ページ全体をカバーしたい場合は true を使用します。

クローラーが外部のウェブサイトへのリンクをたどれるようにします。

allowSubdomains
boolean
デフォルト:false

クローラーがメインドメイン配下のサブドメインへのリンクをたどれるようにします。

delay
number

スクレイプ実行間の待機時間(秒)。ウェブサイト側のレート制限を尊重するのに役立ちます。

maxConcurrency
integer

同時スクレイプ数の上限。このパラメータで、このクロールに対する同時実行数の上限を設定できます。指定しない場合、このクロールはチームに設定されている同時実行数の上限に従います。

webhook
object

Webhook 仕様オブジェクト。

scrapeOptions
object
zeroDataRetention
boolean
デフォルト:false

true の場合、このクロールではデータを一切保持しないゼロデータ保持モードが有効になります。この機能を有効化するには、[email protected] までご連絡ください。

レスポンス

成功時のレスポンス

success
boolean
id
string
url
string<uri>