> For the complete documentation index, see [llms.txt](https://docs.vomevolunteer.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.vomevolunteer.com/getting-started/pagination.md).

# Pagination

The Vome API supports navigating through large datasets by implementing cursor-based pagination. This feature allows clients to efficiently browse through lists of resources such as profiles or shift reservations, ensuring that applications can handle large amounts of data smoothly.

**How Pagination Works**

Pagination in the Vome API relies on two parameters to navigate through data: `page` and `limit`. These parameters help control the part of the dataset that the API returns on each request.

**Parameters**

* **page** (`integer`): Specifies the page number of the results to retrieve.
* **limit** (`integer`, optional, default is 10): Determines the number of records to return in one page. This number can range between 1 and 100, allowing flexibility depending on the needs of the client application.

**Example**&#x20;

Fetch the first page of profiles with 25 records:

```http
GET /api/profiles/?page=1&limit=25
```

#### Response Structure

Paginated responses include navigation metadata:

```json
{
  "count": 150,
  "next": "https://api.vomevolunteer.com/api/profiles/search/?first_name=Aaron&is_offline=False&page=3&limit=15",
  "previous": "https://api.vomevolunteer.com/api/profiles/search/?first_name=Aaron&is_offline=False&page=1&limit=15",
  "results": [
     {
            "id": "ab687438-bf10-4569-b023-818a8e512936",
            "logged_hours": 0,
            "is_offline": true,
            "is_following": false,
            "emergency_contact": {
                "name": "Jon Smiths",
                "phone_number": "5555555555",
                "relationship": "Father"
            },
            "medical_information": {
                "description": "Allergies to peanuts",
                "has_medical_info": true
            },
            "profile_details": {
                "first_name": "Name",
                "last_name": "Unit Price",
                "full_name": "",
                "email": "sampleuser+677@malinator.com",
                "profile_image": "",
                "phone_number": "",
                "date_of_birth": null,
                "gender": 2,
                "gender_text": "",
                "occupation": null,
                "occupation_institution_name": "",
                "skills": [],
                "languages": [],
                "address": "",
                "created_at": "2026-04-01T11:06:26.396971Z",
                "age": null,
                "address_coordinates": []
            },
            "opportunities": [],
            "most_recent_shift": null,
            "completed_shifts": 0,
            "profile_tags": [],
            "custom_fields": [
                {
                    "id": "851ca2f9-41b5-42c8-be84-d715ae6a2339",
                    "custom_field": {
                        "id": "009eb956-f8ba-45da-8654-d2d0ace71336",
                        "name": "Where are you from?",
                        "field_type": 0,
                        "is_active": true
                    },
                    "custom_field_value": {
                        "id": "10109097-f78e-4f09-86a3-4ac2a9517c9d",
                        "value": "CA",
                        "value_info": "CA"
                    }
                }
            ]
        },
  ]
}
```

#### Navigating Between Pages

* `next`: URL for the next page, if available.
* `previous`: URL for the previous page, if available.

####


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.vomevolunteer.com/getting-started/pagination.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
