Every list endpoint on this site uses the same page-number paginator. Two query
parameters control it, and both are optional.| Parameter | Type | Default | Range |
|---|
page | integer | 1 | 1 … last page |
page_size | integer | 25 | 1 … 50 |
page#
The page number, 1-based. page=1 and omitting page are the same request.Asking for a page past the end is not an error: you get HTTP 200 with the
true count and an empty results array.
page=last returns the final page, whatever its number is.
A zero, negative or non-numeric page is treated as out of range — same empty
page, no error.
page_size#
How many rows one page holds. Defaults to 25.Maximum page size#
Ask for more than 50 rows and the request is rejected — it does not silently
clamp to 50:{
"data": [],
"error": true,
"error_code": "invalid",
"attr_error": null,
"messages": "Page size is too big. Maximum allowed is 50"
}
error_code on this particular error is the string "invalid", not an integer.
It is the only place in the API where that happens, so do not parse error_code
as a number without a guard.
A page_size that is zero, negative or non-numeric is not rejected — it
falls back to the default of 25. Check count and the length of results
rather than assuming the page size you sent was honoured.Response envelope#
A paginated data object always carries the same four keys:{
"data": {
"count": 1284,
"next": "https://api.omisell.com/api/v2/public/order/list?page=3&page_size=25",
"previous": "https://api.omisell.com/api/v2/public/order/list?page=1&page_size=25",
"results": []
},
"error": false,
"error_code": 200,
"attr_error": null,
"messages": ""
}
| Key | Meaning |
|---|
count | Total rows matching the filters, across every page — not the number of rows on this page |
next | Absolute URL of the next page, null on the last page |
previous | Absolute URL of the previous page, null on the first page |
results | The rows of this page |
Walking next until it is null is the safest way to read a whole result set:
it survives the page size being clamped and needs no arithmetic on count.Endpoints that differ#
GET /customer/reviews/list is served from MongoDB. Its page_size defaults
to 10, the 50-row maximum is not enforced, and the envelope has only
count and results — no next / previous.GET /wms-pickup-map/list is not paginated at all: data is a flat array
and page / page_size are ignored.Every endpoint without a page parameter on its reference page returns its full
result set in one response.
Pagination and rate limits#
Pagination interacts with the rate limit: one page is one request, and the limit
is 100 requests per 60 seconds per seller account. Pulling 10,000 rows at
page_size=50 costs 200 requests, so it spans at least two windows. Use the
largest page size you can rather than more, smaller pages. See
Overview > API Rate Limits.