API: full sync in a handful of requests, cursor paging, custom fields
ImprovementWeek of September 23, 2026
A round of improvements to the Stoked API, shaped by the first customer’s feedback after their first full sync.
- Messages come with the list —
GET /conversationsnow includes every listed conversation’s messages inincluded, so a nightly sync is a few pages instead of one request per conversation. - Cursor paging —
links.nextnow carries apage[after]cursor. A record that changes while you are paging is delivered later in the same run instead of slipping between pages, so followinglinks.nextis a complete read.page[number]still works for jumping to a page. - Custom field definitions — new
GET /custom_fieldsendpoint, and every advocate response carries the field ids, labels, types, and options inmeta.custom_fields, so values can be rendered without another request. - Close reasons by id — a conversation’s
resolutionnow hasclose_reason_idalongside the name, and the list’smeta.close_reasonsmaps ids to your community’s current names. - More advocate fields —
bio_link_title,bio_link_url,custom_pin_color, andfull_address_visible, matching the CSV export. - Country codes — advocate addresses always report a three-letter ISO code (
USA,CAN). Older records that stored a country name or two-letter code have been corrected. - Docs — ID casing (API lower case, CSV upper case), a CSV-to-API column mapping, and a note on erased prospects.
Related: API overview, Conversations API, Custom Fields API