Skip to content

Reference

Funds

Read and update a fund profile, and record a commitment. Capital calls stay in the product.

A fund on this API is the finance fund, not the catalog key Firm and not GET /api/v1/x/records/Fund. That record path is 400 unknown_entity.

MethodPathWhat it does
GET/api/v1/x/fundsA page of funds
GET/api/v1/x/funds/{id}One fund
POST/api/v1/x/fundsCreate a fund profile
PATCH/api/v1/x/funds/{id}Change profile fields
GET/api/v1/x/funds/{id}/commitmentsCommitments on that fund
POST/api/v1/x/funds/{id}/commitmentsRecord a commitment
GET/api/v1/x/commitments/{id}One commitment

Read needs finance.fund.view or finance.commitment.view, and the token scope finance:read. Create and update need finance.fund.manage or finance.commitment.manage, and finance:write.

cursor is a page number. starting_after=start walks by created time, the same way as records. q on the fund list matches the fund name.

Notices, capital calls, and transactions are not on this prefix.

companyId is the company that carries the fund. rateTier1Pct of 0.02 is 2 percent. Omitting managementFeePolicy stores 2 percent of committed capital, calculated quarterly at the beginning of the period.

{
"companyId": "00000000-0000-4000-8000-000000000010",
"name": "Harbor Lane Fund I",
"fundType": "ClosedEndFund",
"baseCurrencyCode": "USD",
"distributionMode": "European",
"vintageYear": 2026,
"targetSize": 250000000,
"managementFeePolicy": {
"feeBasis": "committed_capital",
"calculationFrequency": "quarterly",
"calculationBase": "beginning_of_period",
"rateTier1Pct": 0.02
}
}

fundType is ClosedEndFund, OpenEndFund, Spv, CoInvestmentVehicle, Evergreen, or SeparatelyManagedAccount. distributionMode is European or American.

A fund and a commitment include version. It starts at 1 and increases on each write. A get returns the full fund. These are the fields a caller uses to send If-Match:

A patch sends any of name, targetSize, hardCap, fundTermYears, investmentPeriodYears, administratorId, auditorId, and legalCounselId. Absent keys stay as they are. Without If-Match, the later patch wins. Send If-Match with the fund’s version when the patch must fail if the fund changed. A mismatch is 412 version_conflict.

{
"id": "00000000-0000-4000-8000-000000000030",
"name": "Harbor Lane Fund I",
"fundType": "ClosedEndFund",
"status": "Open",
"baseCurrencyCode": "USD",
"version": 1
}

POST /api/v1/x/funds/{id}/commitments stores the amount. It does not call capital.

{
"investorId": "00000000-0000-4000-8000-000000000020",
"commitmentAmount": 10000000,
"currencyCode": "USD",
"commitmentType": "Lp",
"subscriptionDate": "2026-03-01"
}

commitmentType is Lp or Gp. CarriedInterest is 400 invalid_field.