Skip to main content
Use the Trassets Data API category endpoints to maintain a continuously updated local copy of your data without transferring every row on each run. Offset-based pagination provides predictable resumption points across scheduled syncs.
1

Fetch the first page

Start with limit=1000 and offset=0. The example uses the /property/properties endpoint, but the pattern works for any category endpoint.
2

Check the pagination headers

Inspect the response headers after each request:
  • X-Has-More: "true" if additional pages exist
  • X-Next-Offset: the offset to use for the next page (present only when X-Has-More is "true")
  • X-Total-Count: total rows available for the current query
If X-Has-More is "true", increment the offset by your limit and repeat until you reach the end.
3

Store the next offset for the next run

Persist the value of X-Next-Offset from the last successful request. On the next scheduled sync, start from this stored offset instead of zero to avoid re-fetching rows you already have.For example, if the previous run ended at offset 4000, your next run begins with:
4

Reset when the data changes significantly

If you detect a schema change, a full reload requirement, or a large gap between syncs, reset your stored offset to 0 and pull the full dataset again.
5

Full Python example

A complete script that fetches every page, resuming from a stored offset. Requires the requests package.
sync_properties.py
Before running a full incremental fetch, check the /changes endpoint to discover which tables have been updated since your last sync. Skip any tables that have not changed to save requests and stay within the 500 req/h rate limit.