Skip to content

Crawl progress, credits used and pages by job id.

Get the status of a crawl job

Job web.crawl.status

Your AI asks

checks the price first
telipot run firecrawl.web.crawl.status \
  --input-json '{"id":"123e4567-e89b-12d3-a456-426614174000"}' \
  --quote

Price

Free
Priced· before it runs

firecrawl.web.crawl.status

FreeYour plan

Whose account it uses

1The person asking
not needed
2Your company’s Firecrawl plan
Selected identity for this example
3Our account
not used

What it sends

{
  "id": "123e4567-e89b-12d3-a456-426614174000"
}

Your Firecrawl login is added for you. Your AI never sees it.

What it costs

Free

no charge from the provider

Preview the price first. --quote runs nothing.

For developers · run it

Shell · runs the task on the named account

telipot run firecrawl.web.crawl.status \
  --input-json '{"id":"123e4567-e89b-12d3-a456-426614174000"}'

id

string · required · path

The ID of the crawl job (a UUID)

skip

integer · at least 0 · query

Offset into the pages, as in the next URL of a truncated response; the docs describe it, the OpenAPI document does not list it

status

string

total

integer

Pages completed or still in flight, failed pages excluded

completed

integer

Pages crawled so far

creditsUsed

integer

Credits the crawl has used so far

expiresAt

string

createdAt

string

completedAt

string

Present only once the crawl has ended

duration

number

Seconds

next

string | null

URL of the next 10MB of pages; absent or null at the end, but also set while the crawl runs

data

object[]

Full output schema · JSONNested fields and constraints

Output JSON Schema

{
  "type": "object",
  "required": [
    "status",
    "total",
    "completed",
    "creditsUsed"
  ],
  "properties": {
    "status": {
      "type": "string",
      "enum": [
        "scraping",
        "completed",
        "failed",
        "cancelled"
      ]
    },
    "total": {
      "type": "integer",
      "description": "Pages completed or still in flight, failed pages excluded"
    },
    "completed": {
      "type": "integer",
      "description": "Pages crawled so far"
    },
    "creditsUsed": {
      "type": "integer",
      "description": "Credits the crawl has used so far"
    },
    "expiresAt": {
      "type": "string"
    },
    "createdAt": {
      "type": "string"
    },
    "completedAt": {
      "type": "string",
      "description": "Present only once the crawl has ended"
    },
    "duration": {
      "type": "number",
      "description": "Seconds"
    },
    "next": {
      "type": [
        "string",
        "null"
      ],
      "description": "URL of the next 10MB of pages; absent or null at the end, but also set while the crawl runs"
    },
    "data": {
      "type": "array",
      "items": {
        "type": "object",
        "properties": {
          "markdown": {
            "type": "string"
          },
          "metadata": {
            "type": "object",
            "properties": {
              "title": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "description": {
                "anyOf": [
                  {
                    "type": "string"
                  },
                  {
                    "type": "array",
                    "items": {
                      "type": "string"
                    }
                  }
                ]
              },
              "sourceURL": {
                "type": "string"
              },
              "url": {
                "type": "string"
              },
              "statusCode": {
                "type": "integer"
              },
              "error": {
                "type": [
                  "string",
                  "null"
                ]
              }
            }
          }
        }
      }
    }
  }
}

A real answer

No example captured yet: one is recorded when telipot catalog verify passes.