Skip to main content

API conventions

The API applies consistent conventions for pagination, sorting and field inclusion across list endpoints. This page describes them from a consumer's perspective. For the exact parameters supported by a specific endpoint, always check Swagger. Request volumes are covered separately in Rate limiting.

Pagination

List endpoints are paginated. Control pagination with these query parameters:

ParameterDefaultDescription
usePagingtrueSet to false to disable paging for the request.
pageNumber1The 1-based page to return.
pageSize100The number of items per page.

Pagination metadata is returned in response headers rather than the body:

HeaderDescription
X-Pagination-PageSizeItems per page used for the response.
X-Pagination-PageNumberThe page number returned.
X-Pagination-HasNextPageTrue if a further page is available.
X-Pagination-TotalCountTotal number of matching items (when available).
X-Pagination-PageCountTotal number of pages (when available).

Convenience link headers are also provided to help you navigate pages:

HeaderDescription
X-Pagination-Links-FirstPath + query for the first page.
X-Pagination-Links-PreviousPath + query for the previous page (empty on the first page).
X-Pagination-Links-NextPath + query for the next page (empty on the last page).
X-Pagination-Links-LastPath + query for the last page (when the total is known).
curl --request GET \
--url 'https://api.donorfy.npe.accessacloud.com/v1/constituents?pageNumber=2&pageSize=50' \
--header 'X-API-Key: <your-tenant-code>' \
--user '<your-permission-name>:<your-access-key>'

Sorting

Where an endpoint supports sorting, use:

ParameterDescription
sortByThe field to sort by. The set of allowed values is endpoint-specific — see Swagger for the enum each endpoint accepts.
sortDirectionAscending or Descending. Defaults to ascending when sortBy is supplied.
curl --request GET \
--url 'https://api.donorfy.npe.accessacloud.com/v1/constituents?sortBy=<field>&sortDirection=Descending' \
--header 'X-API-Key: <your-tenant-code>' \
--user '<your-permission-name>:<your-access-key>'

Field inclusion

Some endpoints let you request additional related data using the include query parameter. Provide one or more field names as a comma-separated list. The values accepted are endpoint-specific and listed in Swagger.

curl --request GET \
--url 'https://api.donorfy.npe.accessacloud.com/v1/constituents?include=<field-one>,<field-two>' \
--header 'X-API-Key: <your-tenant-code>' \
--user '<your-permission-name>:<your-access-key>'

Rate limiting

Requests are rate limited per credential — see Rate limiting.