Fundrise · Arazzo Workflow
Fundrise Connect — onboard a Client and place an Investment
Version 1.0.0
The primary Fundrise Connect flow, modelled from the sequence Fundrise publishes under the "Workflow Example" tag of its own OpenAPI: create a Client, exchange the issued refresh token for a Client access token, resolve an open Offering, fetch and present that Offering's documents and acknowledgments, then place the Investment. Every operationId below exists verbatim in openapi/fundrise-connect-openapi.yml. Run this against the sandbox host (https://sandbox.fundrise.com) — the only server the published spec declares. Fundrise publishes no sandbox test values, so offeringId must be discovered at runtime from GetOfferings rather than seeded from a fixture.
View Spec
View on GitHub
CompanyFinancial ServicesInvestingReal EstatePrivate CreditVenture CapitalAlternative AssetsWealth ManagementFintechEmbedded InvestingArazzoWorkflows
Provider
Workflows
onboard-client-and-place-investment
Onboard an end user as a Fundrise Client and place their first investment.
Six steps, two authentication subjects. Steps 1, 2, 3 and 4 use Partner HTTP Basic credentials; steps 5 and 6 use the Client bearer token minted in step 2.
1
create-client
$sourceDescriptions.fundriseConnect.CreateClient
Onboard the end user. Partner HTTP Basic auth. A 409 means this partnerReferenceId already maps to an existing Client — treat that as a successful no-op and resolve the existing Client rather than retrying with a new key.
2
get-access-token
$sourceDescriptions.fundriseConnect.GetAccessToken
Exchange the refresh token issued at Client creation for a Client-scoped access token. The refresh token does not expire and must be stored encrypted at rest — never expose it to the Client or a Client device.
3
get-offerings
$sourceDescriptions.fundriseConnect.GetOfferings
List offerings available through Connect. Select one whose status is OPEN — CLOSED offerings cannot be invested in. Partner HTTP Basic auth.
4
get-offering-documents
$sourceDescriptions.fundriseConnect.GetOfferingDocuments
Fetch the documents and disclosures for the selected offering. These must be presented to the Client. Collect every documentId — they are required as acknowledgedDocumentIds on the investment request.
5
get-investment-acknowledgments
$sourceDescriptions.fundriseConnect.GetInvestmentAcknowledgments
Fetch the acknowledgments the Client must digitally accept for this offering. Client bearer auth. Fundrise requires the Partner platform to display a checkbox per acknowledgment and require the user to check it to proceed — an automated pass through this step defeats a securities-law control.
6
place-investment
$sourceDescriptions.fundriseConnect.PlaceInvestment
Place the investment. Client bearer auth. acknowledgedDocumentIds must carry the documentIds the Client actually accepted in the preceding two steps. On a 500, retrying with the same partnerReferenceId is safe because it is the idempotency key for this investment.