Pagination
Only GET /api/integrations/reports/raw-responses is paged in the current Integration API. Metadata surveys, report surveys, response summaries, and usage return complete arrays or one object and accept no pagination parameters.
Request Parameters
Use these query parameters only on the raw-responses endpoint:
| Parameter | Type | Default | Maximum | Description |
|---|---|---|---|---|
page |
integer | 1 | — | The page number to retrieve (1-based) |
pageSize |
integer | 50 | 100 | The number of rows to return |
Values are normalized rather than rejected: page is raised to at least 1 and pageSize is clamped to the range 1 through 100.
Response Envelope
The raw-responses endpoint returns a bare JSON array. It does not return page metadata or a total count:
[
{ "id": 123, "surveyId": 45, "answerCount": 10, "files": [] }
]
| Response value | Type | Description |
|---|---|---|
| root | array | Raw response rows ordered by createdAt descending, then unique id descending as the deterministic tie-breaker |
No collection envelope is used by the current integration report service.
Iterating All Pages
Because no totalPages is returned, continue until a page contains fewer rows than the requested size:
page = 1
page_size = 100
all_items = []
while True:
response = call_api(page=page, page_size=page_size)
all_items.extend(response)
if len(response) < page_size:
break
page += 1
Empty Results
If there are no results, the endpoint returns HTTP 200 with [].
Notes
- Values below/above the accepted ranges are normalized, not returned as HTTP 400 by this action.
- There is no snapshot or total-count guarantee; concurrent inserts can shift offset pages. Equal timestamps remain deterministic because
idis the unique descending tie-breaker. - No
submittedAfter,submittedBefore, or survey filter is currently exposed.