Pagination

clock 3-minute read calender Rel. 4.0.0 | updated Nov. 12, 2024

It's a real page-turner

Pagination keeps data manageable by breaking it into chunks, so systems handle large data requests without slowing down.

 

Common pagination controls

Row pagination

There are common pagination parameters like startRowIndex and endRowIndex that help retrieve and organize large data sets into separate, scrollable pages. This is commonly used with information reporting and transaction inquiry APIs. These are optional fields and not required for the request.

  • The startRowIndex query string parameter sets the first row of data of the response. The default value is 1.
  • The endRowIndex query string parameter sets the final row of data of the response. The default value is 1000 records and is also the maximum number of records allowed in a single transaction.
  • If the startRowIndex or endRowIndex parameters are blank, all the rows of data return up to the maximum limit of the endRowIndex value for transaction records.
  • In the response header of the API, an endpoint may return totalRows or retrievedRows. These parameters provide a summary of the total number of transactions that match the request criteria or were retrieved based on the request criteria.

Example

This is an example of a request with general pagination parameters applied in the query string for the Previous Day API:

POST /ddaReports/accounts/v1/transactions/list?startRowIndex=1&endRowIndex=20

In this example, the startRowIndex is 5 so the first row of data is the fifth row, skipping the first four rows of data. The endRowIndex is 20 so that there is only 20 records per page following the fifth row.

Offset pagination

The offset pagination parameters are limit and offset. These parameters tell the server how many records to search for at a time and what records to skip. This parameter is not reliant on the sort controls and is not a recommended parameter for very large sets of data. Offset pagination is available with the RTP Send Payment API and is required for the RTP list of participants endpoint.

  • The limit is a query string parameter field that tells the server what items to return during a search. The limit restricts how many rows are returned. There is no maximum limit to this parameter.
  • The offset is a query string parameter field that specifies which set of rows to return. You can use this field to set the starting row for the data that is returned, and control what rows of data to skip. The default value is zero (0).
  • Be cautious when you use these parameters because if the data set changes it can affect the result and may return an incorrect response.

Example

This is a request example with the offset pagination parameters applied in the query string for the RTP Send Payment API:

GET /rtp/v1/payment/rtp/participant?limit=15&offset=0

In this example, the offset is 0 so that no items are skipped, and the limit is 15 meaning the request will search 15 items at a time.

Page size

You can control how many pages and records are returned with page request parameters like pageSize and pageNumber

  • The pageNumber is a query string parameter the tells which page to start with the returned response set. Typically, this number is set to 1 at first until you get familiar with record sets based on common queries. 
  • The pageSize is a query string parameter defines the total number of pages to return. This number must 1 or greater and cannot exceed 1000.

Example

This is a request example with the page size parameters applied in the query string for the ACH Inquiry API:

POST /accounts/transactions/v1/ach/list?pageNumber=1&pageSize=50

In this example, the pageNumber is 1 returning the first page of the result set and the pageSize is 50 meaning that only 50 pages from page 1 are returned.  

APIMETHODENDPOINTPAGINATION PARAMETER
ACH OriginationPOST/ach/payments/v1/status/addendapageSize
ACH InquiryPOST/accounts/transactions/v1/ach/list

pageNumber

pageSize

Wire InquiryPOST/wireInquiry/v1/transactions/details

startRowIndex

endRowIndex

RTP Send PaymentGET/rtp/v1/payment/rtp/participant

limit

offset

RTP InquiryPOST/rtp/v1/transactions/list

pageNumber

pageSize

Previous DayPOST/ddaReports/accounts/v1/transactions/list

startRowIndex

endRowIndex

IntradayPOST/ddaReports/accounts/v1/transactions/intraday/list

startRowIndex

endRowIndex