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

# General settings

> Configure the Fuel data source: SQD Network gateway, GraphQL endpoint, block range, metrics.

<Warning>
  **This dataset has been retired.** As SQD consolidates onto Portal, the Fuel and Starknet gateways were discontinued on June 1, 2026, and Eclipse (gateway and Portal dataset) on May 21, 2026. The endpoints listed for this network no longer respond. See the [deprecation announcement](/announcements/gateway-deprecations-may-2026) for details.
</Warning>

<Tip>
  The method documentation is also available inline and can be accessed via suggestions in most IDEs.
</Tip>

The following setters configure the global settings of `DataSourceBuilder` for Fuel Procesor. They return the modified instance and can be chained.

The only required configuration method is [`setGateway()`](#set-gateway). If you need real-time data, please also use [`setGraphql()`](#set-graphql).

* If you add both a SQD Network gateway and an RPC endpoint, the processor will obtain as much data as is currently available from the gateway, then switch to ingesting recent data via RPC.
* If you only add a SQD Network gateway, your data will be being several thousands of blocks behind the chain head most of the time.

<h3 id="set-gateway">
  `setGateway(url: string | GatewaySettings)`
</h3>

Use a [SQD Network](/en/network/overview) gateway. The argument is either a string URL of the gateway or

```typescript theme={"system"}
{
  url: string // gateway URL
  requestTimeout?: number // in milliseconds
}
```

<h3 id="set-graphql">
  `setGraphql(settings?: GraphqlSettings)`
</h3>

We must use regular GraphQL endpoint to get through the last mile and stay on top of the chain. This is a limitation, and we promise to lift it in the future.

```typescript theme={"system"}
type GraphqlSettings = {
  url: string // e.g. https://mainnet.fuel.network/v1/graphql
  strideSize?: number; // `getBlock` batch call size, default 5
  strideConcurrency?: number; // num of concurrent connections, default 10
};
```

<h3 id="set-block-range">
  `setBlockRange(\{from: number, to?: number\})`
</h3>

Limits the range of blocks to be processed. When the upper bound is specified, processor will terminate with exit code 0 once it reaches it.

Note that block ranges can also be specified separately for each data request. This method sets global bounds for all block ranges in the configuration.

<h3 id="include-all-blocks">
  `includeAllBlocks(range?: \{from: number, to?: number\})`
</h3>

By default, processor will fetch only blocks which contain requested items. This method modifies such behavior to fetch all chain blocks. Optionally a range of blocks can be specified for which the setting should be effective.
