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

# Backfill jobs

> Send historical blockchain data through a filter and transform to any Beam sink.

A backfill job reads historical rows for one chain and entity, optionally filters and transforms them, and delivers them to a sink. It takes the same sink types as a pipeline: Kafka, Amazon SNS, webhook, external Kafka, and NATS JetStream.

## Start a job

In Allium App, open **Build > Beam > Backfill Jobs** and choose **Start Job**.

<Frame>
  <img src="https://mintcdn.com/allium-e770e2b7/2Cik69FC65-mGWej/images/app/beam/backfill.webp?fit=max&auto=format&n=2Cik69FC65-mGWej&q=85&s=6e28280a459170fe6e038f7ce33a8146" width="672" alt="Start Job dialog on its first step, picking the chain and entity to backfill" data-path="images/app/beam/backfill.webp" />
</Frame>

<Steps>
  <Step title="Source">
    Pick the chain and entity to backfill.
  </Step>

  <Step title="Name and columns">
    Name the job and review the columns it will output.
  </Step>

  <Step title="Filter">
    Optional. Keep only rows where a column matches the values you enter.
  </Step>

  <Step title="Transform">
    Optional. Reshape each row with a JavaScript function, as in a pipeline's [JavaScript transform](/beam/configuration#javascript).
  </Step>

  <Step title="Window">
    Set the range of rows to backfill. Start defaults to 3 months ago and can't be earlier. End defaults to now.
  </Step>

  <Step title="Sink">
    Choose where the rows go. External sinks read their credentials from [organization secrets](/app/organization-management/secrets).
  </Step>
</Steps>

**Confirm** starts the job. Each job reports its progress while it runs, and can be cancelled.
