Investments

List or sync investments

Changed on

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 (visible: false, only id) included. Apply in cursor order; always store meta.next_cursor.
  • 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).

get/investments

Request

  • Base URL: https://api.wefunder.com
  • URL: https://api.wefunder.com/investments
  • Auth: OAuth 2 (authorization code, authorization URL https://wefunder.com/oauth/authorize, token URL https://api.wefunder.com/oauth/token; client credentials, token URL https://api.wefunder.com/oauth/token, scopes: read:investments)

Query parameters

company_idstring

Company external id (co_…).

offering_idstring

Offering external id (ofr_…). In sync mode an investment that moved to another offering is delivered once more as a tombstone under this filter.

investor_idstring

Investor external id (usr_…).

status'reserved' | 'active' | 'executed' | 'canceled' | 'converted'

List mode only.

updated_sincestring date-time

ISO 8601 timestamp; switches to sync mode. Mutually exclusive with cursor (cursor wins).

cursorstring

Opaque cursor from a previous response's meta.next_cursor.

per_pageinteger

Records per page, 1–100 (default 25). Sync pages count distinct investments.

Response

A page of records.

Example response

{
  "data": [
    {
      "amounts": {
        "currency": "usd"
      },
      "shares": "295",
      "average_share_price": "3.38"
    }
  ]
}

Changes

    • breaking

      the // response's property type changed from integer to string for status

    • breaking

      the / response's property type changed from integer to string for status

    • warning

      removed the optional property // from the response with the status

    • warning

      removed the optional property // from the response with the status

    • warning

      removed the optional property / from the response with the status

    • info

      added the new optional query request parameter company_id

    • info

      added the new optional query request parameter investor_id

    • info

      added the new optional query request parameter offering_id

    • info

      added the new optional query request parameter per_page

    • info

      added the new optional query request parameter status

    • info

      added the new optional query request parameter updated_since

    • info

      for the query request parameter cursor, the type was generalized from integer to string

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the non-success response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property // to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      the response property // became required for the status

    • info

      added the required property // to the response with the status

    • info

      added the required property // to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status

    • info

      added the optional property / to the response with the status