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

# Pagination

By *default*, Fintoc paginates 30 elements on each response from a List endpoint, such as the endpoint to [List Movements](/reference/movements-api/movements/movements-list). The API also returns the pagination information using the [`Link` header](https://tools.ietf.org/html/rfc5988), following the [RFC standard](https://tools.ietf.org/html/rfc8288). **Beware**: the `Link` header has **nothing to do** with **Fintoc Links**. It is just an unfortunate name collision 😕.

For each paginated request, the API returns the pagination information using the `Link` header. This header contains one or more URLs that direct to different pages.

# Pagination v1

Endpoints in the `/v1` namespace, such as [List Payment Intents](/reference/payments-api/payment-intents/payment-intents-list), use offset pagination. The `Link` header in this namespace allows you to navigate to the next, previous, first and last page:

```text Link Header theme={null}
Link: <https://api.fintoc.com/v1/links?page=1>; rel="first",
  <https://api.fintoc.com/v1/links?page=2; rel="next"
```

The possible `rel` values are:

| Name    | Description                                              |
| :------ | :------------------------------------------------------- |
| `next`  | Link that leads to the **next page** of the resource     |
| `last`  | Link that leads to the **last page** of the resource     |
| `first` | Link that leads to the **first page** of the resource    |
| `prev`  | Link that leads to the **previous page** of the resource |

# Pagination in V2

Endpoints in the `/v2` namespace, such as [List Transfers](/reference/transfers-api/transfers/transfers-list), use cursor-based pagination. In this namespace, the `Link` header only allows navigation to the next page in the list:

```text Link Header theme={null}
Link: <https://api.fintoc.com/v2/transfers?starting_after=tr_12334567>; rel="next"
```

The possible `rel` values are:

| Name   | Description                                          |
| :----- | :--------------------------------------------------- |
| `next` | Link that leads to the **next page** of the resource |

If `Link` is empty, it means there are no more pages.

# Automatic pagination

Our [Python SDK](https://github.com/fintoc-com/fintoc-python) and [Node SDK](https://github.com/fintoc-com/fintoc-node)  supports automatic pagination. This feature allows you to easily iterate through large lists of resources without having to manually perform the requests to fetch subsequent pages:

```python python theme={null}
from fintoc import Fintoc

client = new Fintoc("your_api_key")

payment_intents = client.payment_intents.all()
for payment_intent in payment_intents:
    # Do something with the payment intent

```

```node Node theme={null}
import { Fintoc } from 'fintoc';

const client = new Fintoc('your_api_key');

const paymentIntents = await client.paymentIntents.list();
for await (const paymentIntent of paymentIntents) {
  // Do something with the paymentIntent
}
```

# Other libraries

If you use other languages or don't want to use our SDK, the following libraries parse the `Link` header so that you don't have to:

| Language   | Library                                                                             |
| :--------- | :---------------------------------------------------------------------------------- |
| Python     | [`requests`](https://requests.readthedocs.io/en/v3.0.0/user/advanced/#link-headers) |
| Ruby       | [`Nitlink`](https://github.com/alexpeattie/nitlink)                                 |
| JavaScript | [`parse-link-header`](https://github.com/thlorenz/parse-link-header)                |
