Skip to content

FIRE-1: Scrape & Extract Integration

New

FIRE-1 is an AI agent that enhances Firecrawl's scraping and extraction capabilities through intelligent web navigation and interaction. It handles pagination, dynamic content, and complex multi-page structures automatically — enabling data extraction that traditional scraping methods cannot reach.

Overview

What FIRE-1 Can Do

  • Navigate through paginated content automatically
  • Interact with buttons, links, inputs, and dynamic elements
  • Perform extraction tasks across multiple pages
  • Load content gated behind "Load More" buttons or lazy loading

Enabling FIRE-1

Include an agent object in your scrape or extract API request:

FieldRequiredDescription
modelNoAI model to use. Defaults to FIRE-1 (currently the only available model).
promptYes (scrape) / No (extract)Instructions for the agent — how to navigate, what to look for. In /extract, it inherits the top-level prompt.

Using FIRE-1 with /scrape

The agent navigates before the final scrape occurs. Provide a clear prompt describing the navigation task:

bash
curl -X POST https://api.firecrawl.dev/v1/scrape \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer fc-YOUR-API-KEY' \
  -d '{
    "url": "https://example.com/products?page=1",
    "formats": ["markdown"],
    "agent": {
      "model": "FIRE-1",
      "prompt": "Navigate through product listings by clicking the Next Page button until it is disabled. Scrape the content of each page visited."
    }
  }'
python
from firecrawl import Firecrawl

app = Firecrawl(api_key="fc-YOUR-API-KEY")

result = app.scrape(
    "https://example.com/products?page=1",
    formats=["markdown"],
    agent={
        "model": "FIRE-1",
        "prompt": "Navigate through product listings by clicking Next Page until disabled. Collect all products."
    }
)
print(result['markdown'])

Using FIRE-1 with /extract

FIRE-1 handles navigation so the extraction covers all content, including pages behind interactions like "Load More":

bash
curl -X POST https://api.firecrawl.dev/v1/extract \
  -H 'Content-Type: application/json' \
  -H 'Authorization: Bearer fc-YOUR-API-KEY' \
  -d '{
    "urls": ["https://example-forum.com/topic/123"],
    "prompt": "Extract all user comments from this forum thread.",
    "schema": {
      "type": "object",
      "properties": {
        "comments": {
          "type": "array",
          "items": {
            "type": "object",
            "properties": {
              "author": {"type": "string"},
              "comment_text": {"type": "string"}
            },
            "required": ["author", "comment_text"]
          }
        }
      },
      "required": ["comments"]
    },
    "agent": {
      "model": "FIRE-1"
    }
  }'

In this example, FIRE-1 automatically clicks "Load More Comments" before extraction begins.

Writing Effective Prompts

DoAvoid
"Click Next Page until the button is grayed out""Get all the data"
"Click Load More up to 10 times"Open-ended navigation without limits
"Find and click the tab labeled 'Reviews'"Ambiguous element descriptions

Considerations

  • FIRE-1 consumes more credits based on task complexity and number of pages interacted with
  • Clear, specific prompts produce better results and lower credit usage
  • For simple single-page scraping, standard scrape without FIRE-1 is faster and cheaper
  • FIRE-1 on /extract inherits the top-level prompt — no separate agent prompt needed

Comparison: FIRE-1 vs Interact

FeatureFIRE-1 (agent param)Interact endpoint
Use caseNavigate then extractOpen-ended session
Session controlAutomaticManual (you control lifecycle)
Best forPagination, load-more, tabsLogin flows, multi-step workflows
Code executionNoYes (Playwright)
Live viewNoYes

Use FIRE-1 when you want Firecrawl to handle navigation automatically. Use Interact when you need manual session control or code-level browser access.


See also: FIRE-1 Agent Overview → | Interact →