> ## Documentation Index
> Fetch the complete documentation index at: https://docs.scrape.st/llms.txt
> Use this file to discover all available pages before exploring further.

# Trigger Backfill

> Manually trigger a historical backfill operation

Manually trigger a background job to backfill historical data for a specific account. This endpoint enqueues a job on the BullMQ backfill queue.

<Note>This endpoint is rate-limited to **5 requests per 60 seconds**.</Note>

## Body Parameters

<ParamField body="id" type="string" required>
  The internal ID of the tracked source (e.g., a cuid).
</ParamField>

## Response

Returns `202 Accepted` if the backfill has been queued successfully, or `409 Conflict` if a backfill is already in progress for this account.

<ResponseField name="status" type="string">
  The status of the operation, usually `queued` or `conflict`.
</ResponseField>

<ResponseField name="id" type="string">
  The requested internal ID.
</ResponseField>

<ResponseField name="externalId" type="string">
  The resolved external ID from the source account.
</ResponseField>

<ResponseField name="source" type="string">
  The resolved source platform (e.g. `x`).
</ResponseField>

<ResponseField name="progress" type="object">
  Returned only when a `409 Conflict` happens. Details about the current
  progress of the ongoing backfill.
</ResponseField>

<RequestExample>
  ```bash Trigger Backfill theme={null}
  curl -X PUT "https://scrape.st/backfill" \
    -H "x-api-key: YOUR_API_KEY" \
    -H "Content-Type: application/json" \
    -d '{"id": "clxyz123abc"}'
  ```
</RequestExample>

<ResponseExample>
  ```json 202 Accepted theme={null}
  {
    "status": "queued",
    "id": "clxyz123abc",
    "externalId": "12",
    "source": "x"
  }
  ```

  ```json 409 Conflict theme={null}
  {
    "status": "conflict",
    "error": "A backfill is already in progress for this account.",
    "progress": {
      "cursor": "cm9abc123def456",
      "last_id": "1886493083207827456",
      "updated_at": "2026-04-22T01:00:00.000Z"
    }
  }
  ```
</ResponseExample>
