# Pagination

Pipeliner sends a maximum of **100** (Default: **30**) records per request. The limit can be changed by [**API parameter** ](https://developers.pipelinersales.com/api-docs/core-api-concepts/api-parameters)`first`

Pagination is available after the successful call of all `.list` Endpoints. Then API returns the following data

```json
{
	"success": true,
	"total": 107,
	"page_info": {
		"start_cursor": "WyIwMzU4NmNhMS1mMmJjLTQ2MDctYWE3Ni1jYWYyYTNlOWQ5ODciXQ==",
		"end_cursor": "WyI0MGUxMGE1MC00ZTYxLTQ0M2YtYmUzOC0xNmNjMzQ5NTM2NGUiXQ==",
		"has_previous_page": false,
		"has_next_page": true
	},
	"data": [...]
}
```

#### Using Cursor for pagination

To retrieve all data, it is recommended to use `end_cursor` with combination of [**API Parameter**](https://developers.pipelinersales.com/api-docs/core-api-concepts/api-parameters) `after.` Iterate through the list, until the `has_next_page` is `false`

```
{{baseUrl}}/entities/Opportunities?after=WyI0MGUxMGE1MC00ZTYxLTQ0M2YtYmUzOC0xNmNjMzQ5NTM2NGUiXQ==
```

**Pagination done programatically**

```python
while has_next_page, do get_records(after=end_cursor)
```
