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

# getTransfers

> Get paginated transfer history for a Spark address.

Gets paginated transfer history for a Spark address with optional date filters.

## Method Signature

```typescript theme={null}
async getTransfers(params: QueryTransfersParams): Promise<{
  transfers: Transfer[];
  offset: number;
}>

interface QueryTransfersParams {
  sparkAddress: string;
  limit?: number;         // default: 20
  offset?: number;        // default: 0
  types?: TransferType[];
  createdAfter?: Date;
  createdBefore?: Date;
}
```

## Parameters

<ResponseField name="sparkAddress" type="string" required>
  The Spark address to query transfers for.
</ResponseField>

<ResponseField name="limit" type="number">
  Maximum number of transfers to return (default: `20`).
</ResponseField>

<ResponseField name="offset" type="number">
  Offset for pagination (default: `0`).
</ResponseField>

<ResponseField name="types" type="TransferType[]">
  Filter by transfer types. Defaults to `TRANSFER`, `PREIMAGE_SWAP`, `COOPERATIVE_EXIT`, `UTXO_SWAP`.
</ResponseField>

<ResponseField name="createdAfter" type="Date">
  Only return transfers created after this date.
</ResponseField>

<ResponseField name="createdBefore" type="Date">
  Only return transfers created before this date.
</ResponseField>

<Warning>
  `createdAfter` and `createdBefore` are mutually exclusive. Providing both will throw an error.
</Warning>

## Returns

<ResponseField name="transfers" type="Transfer[]" required>
  Array of transfer objects.
</ResponseField>

<ResponseField name="offset" type="number" required>
  The offset used for this request.
</ResponseField>

## Example

```typescript theme={null}
// Basic pagination
const { transfers, offset } = await client.getTransfers({
  sparkAddress: "sp1...",
  limit: 25,
  offset: 0,
});

// Transfers from the last 24 hours
const recent = await client.getTransfers({
  sparkAddress: "sp1...",
  createdAfter: new Date(Date.now() - 86_400_000),
});
```
