Pagination

All top-level API resources have support for bulk fetches via "list" API methods. For example, you can list Actions, Partners, and Contracts, among others. As these requests typically generate large result sets, these results are paginated and share a common structure detailing how the pages are structured. By default, requests return page 1 (the first page) and 1,000 results per page (though this may differ by resource). You can override these defaults by using the parameters below:

Request Parameters


Name

Description

Page

The page you are requesting be returned. Page choice starts at 1. Page 1 will be returned if no Page is specified.

PageSize

Specify how many objects should be returned on each page. If not specified, the resource default amount will be returned.

To make the pages easy to traverse, impact.com list APIs also preconfigure URIs that point to other pages of interest within the result set. See the full set of pagination response parameters below.

Response Attributes


Name

Description

@page

Current page number. Pages start at 1.

@numpages

Total number of pages.

@pagesize

How many entities are in each page.

@total

Total number of entities in the list.

@start

Position in the overall list of the first item in this page. Zero indexed (first position is 0).

@end

Position in the overall list of the last item in this page. Zero indexed (first position is 0).

@uri

URI of the current page.

@firstpageuri

URI for the first page of this result set.

@nextpageuri

URI for the next page in this result set.

@previouspageuri

URI for the previous page in this result set.

@lastpageuri

URI for the last page of this result set.

Example Pagination Request


curl 'https://api.impact.com/Advertisers/<AccountSID>/Actions' \
  -X GET \
  -u '<AccountSID>:<AuthToken>' \
  -H 'Accept: application/json' \
  -d 'CampaignId=1017' \
  -d 'PageSize=2000' \
  -d 'Page=2' \
  -G

Example Pagination Response


{
  "@page": "1",
  "@numpages": "1",
  "@pagesize": "100",
  "@total": "62",
  "@start": "0",
  "@end": "61",
  "@uri": "/Advertisers/...",
  "@firstpageuri": "/Advertisers/...",
  "@previouspageuri": "/Advertisers/...",
  "@nextpageuri": "/Advertisers/...",
  "@lastpageuri": "/Advertisers/...",
  "Actions": [
    {...},
    {...}
  ]
}