Skip to main content

List or sync investments

GET 

/investments

The investment records the token may see, served from published state (docs: Investments: list, sync, retrieve). The audience is the union of the companies the token's user edits (their founder-visible records) and the user's own investments (every applied record of theirs, whatever its status). Filters narrow within that audience; they never widen it.

Three ways to call it:

  • List (no cursor, no updated_since): the current records, tombstones excluded, ordered by investment. Page with meta.next_cursor while meta.has_more; the final page's cursor is a sync cursor positioned at the moment the listing started.
  • Sync by cursor: only the records whose published state changed since the cursor, one record per investment, tombstones included (visible: false with id, observed_at, cursor and reason, and no payload fields). Apply in cursor order; always store meta.next_cursor. Filters are not encoded in the cursor: repeat the same company_id, offering_id or investor_id on every sync request, or the sync widens to the whole audience.
  • Sync by time: updated_since=<ISO 8601> is sugar for a cursor at the ledger position just before that time (with a 60 s safety margin). The response is a normal sync page, so continue with its meta.next_cursor.

Records are eventually consistent (about ten minutes on the common paths); each carries observed_at. GET /investments/{id} returns the same shape derived now. Investor identity fields on other investors' records require read:investors:pii; a user always sees their own. Money is integer minor units plus amounts.currency.

410 Gone means the cursor or updated_since predates the 90-day retention window: list again and replace your dataset. status cannot be combined with sync (a record leaving the status would never be delivered).

Request​

Responses​

A page of records.