Skip to main content
Glama

Compute fund economics

fund_economics_compute
Read-only

Use whenever the user asks how a venture fund's terms play out: fund size, management fees and step-downs, carry, investment period, recycling, reserves, deployment pace, and resulting net returns to LPs. Takes fund inputs (start from the defaults and change only what the user specifies) and returns lifetime capital, fees, investable capital and gross/net multiples (result), plus the fund over time by default (detail): capital calls, fees, investments, distributions and NAV by year, DPI/RVPI/TVPI by year, the LP J-curve, IRRs solved from those dated cash flows, and financial statements (statement of operations, balance sheet and cash flow, the same lines as the Excel Statements sheet, with check lines that are zero when they tie out). Pass granularity "quarter" for quarters or "none" for totals only. Optional features apply when their block is sent: preferred return, catch-up and tiered carry (features.waterfall; return of capital covers capital called so far, so carry can be paid on early exits, and a GP clawback, on by default and off with features.waterfall.clawback false, trues the GP back to its share on a fund-end view, reported as gpClawback by period and waterfall.clawback in total; the pref compounds annually or is simple, preferredReturnCompounding "annual" or "none", on unreturned or contributed capital, preferredReturnBase; catchupMeasure "preferred" catches the GP up to its share of the pref paid and "profit" to its share of all profit; a carry tier steps up at an LP multiple, moicThreshold, or an LP IRR, irrThreshold, and with catchup true it first brings the GP to the new rate on all profit; basis "deal-by-deal" runs American terms, returning only the capital in deals exited or written off before carry, with the clawback still on the whole fund; the Excel workbook carries every one of these terms, deal by deal on a Deals sheet), NAV/AUM/step-down fee bases (features.fees; features.fees.schedule states the fee as an LPA dates it: frequency, steps of {fromYear, rate, basis "committed", "invested" or "nav"}, and an optional organizationalExpenseCap above which org expenses come off the fee), recycling by quarter (features.recycling: defaultTreatment "retained", never distributed, or "deemed", distributed and recontributed, plus a schedule of {quarter, amount, treatment} to pin, skip with amount 0, or rebook a quarter; deemed recycling is in calledCapital and distributions and reported as recycledDeemed), LP classes (features.lpClasses, each called as the fund needs cash or on its own callSchedule; each class returns its calls, distributions and net IRR by period and a datedNetIRR), portfolio construction from specific deals (features.deals: a list of {name, investments: [{quarter, amount}], exit: {quarter, multiple or proceeds}}, quarters 1-based from first close, a multiple of 0 a write-off; it replaces stages and return tiers, the fund life runs to the last exit, and it wins over capTable; add dealsMix true to mix the methods, so the deals come first and the capital they leave goes through the stages and return tiers or capTable, and result.tiers lists the deals, flagged deal, then the tiers), cap-table portfolio construction, follow-on timing, and a management company budget. result.grossIRR and result.netIRR are geometric annualizations over weighted holding periods; quote detail.irr when the user asks for an IRR from cash flows. When the user wants the Excel model, pass format "xlsx_url" (and fundName to name the file): the response adds workbook.url, a download link to the live workbook that lasts 24 hours, with every number a formula back to the inputs. Give the user that link. Account required: lifetime free credits or paid access. Fund Economics, a separate $20/year product with 6,000 calculations. If the result contains action_required (not signed in, no purchase, allowance used), relay it to the user with its links and offer to retry. Never skip the calculation silently.

Input Schema

NameRequiredDescriptionDefault
formatNo
inputsYes
featuresNo
fundNameNo
granularityNo
firstCloseDateNo
idempotency_keyNoOptional retry key; reuse only with identical input.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed6 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / deals
      Added value: +{
      +  "description": "Build the portfolio from specific deals instead of entry stages and return tiers (and instead of capTable when both are sent). Each deal has its checks, each in a quarter from first close (1-based), and one exit in a quarter, at a multiple of everything invested in the deal (0 is a write-off) or for proceeds in money. Invested capital is the sum of the checks and called capital is solved from it; the fund life runs to the last exit, capped by maxFundLifeYears; each deal comes back as a row of result.tiers. Recycling keeps back the earliest proceeds, up to recycledCapitalPct of committed, only while later checks can use them. Send dealsMix true to mix the methods instead.",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "exit": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "multiple": {
      +            "description": "Of everything invested in the deal. 0 is a write-off.",
      +            "maximum": 10000,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "proceeds": {
      +            "description": "Exit proceeds in money, instead of a multiple.",
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "quarter": {
      +            "maximum": 400,
      +            "minimum": 1,
      +            "type": "integer"
      +          }
      +        },
      +        "required": [
      +          "quarter"
      +        ],
      +        "type": "object"
      +      },
      +      "investments": {
      +        "description": "The checks the fund writes into the deal: the initial check, then any follow-ons.",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "amount": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "quarter": {
      +              "description": "Quarter from first close, 1-based.",
      +              "maximum": 400,
      +              "minimum": 1,
      +              "type": "integer"
      +            }
      +          },
      +          "required": [
      +            "quarter",
      +            "amount"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 40,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "name": {
      +        "maxLength": 200,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "name",
      +      "investments",
      +      "exit"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 500,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / dealsMix
      Added value: +{
      +  "description": "With deals: the deals come first, and the capital they leave (committed less fees and expenses, plus recycling, less the checks) is invested through the entry stages and return tiers, or capTable when sent, as it would be without deals. Recycling then goes to the stages, the fund life is the later of the deals' and the stages', and result.tiers lists the deals and then the tiers.",
      +  "type": "boolean"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / properties / navMarkupYears
      Added value: +{
      +  "maximum": 100,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / properties / features / properties / deals
      Added value: +{
      +  "description": "Build the portfolio from specific deals instead of entry stages and return tiers (and instead of capTable when both are sent). Each deal has its checks, each in a quarter from first close (1-based), and one exit in a quarter, at a multiple of everything invested in the deal (0 is a write-off) or for proceeds in money. Invested capital is the sum of the checks and called capital is solved from it; the fund life runs to the last exit, capped by maxFundLifeYears; each deal comes back as a row of result.tiers. Recycling keeps back the earliest proceeds, up to recycledCapitalPct of committed, only while later checks can use them. Send dealsMix true to mix the methods instead.",
      +  "items": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "exit": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "multiple": {
      +            "description": "Of everything invested in the deal. 0 is a write-off.",
      +            "maximum": 10000,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "proceeds": {
      +            "description": "Exit proceeds in money, instead of a multiple.",
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "quarter": {
      +            "maximum": 400,
      +            "minimum": 1,
      +            "type": "integer"
      +          }
      +        },
      +        "required": [
      +          "quarter"
      +        ],
      +        "type": "object"
      +      },
      +      "investments": {
      +        "description": "The checks the fund writes into the deal: the initial check, then any follow-ons.",
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "amount": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "quarter": {
      +              "description": "Quarter from first close, 1-based.",
      +              "maximum": 400,
      +              "minimum": 1,
      +              "type": "integer"
      +            }
      +          },
      +          "required": [
      +            "quarter",
      +            "amount"
      +          ],
      +          "type": "object"
      +        },
      +        "maxItems": 40,
      +        "minItems": 1,
      +        "type": "array"
      +      },
      +      "name": {
      +        "maxLength": 200,
      +        "minLength": 1,
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "name",
      +      "investments",
      +      "exit"
      +    ],
      +    "type": "object"
      +  },
      +  "maxItems": 500,
      +  "minItems": 1,
      +  "type": "array"
      +}
    • addedInput schema / properties / features / properties / dealsMix
      Added value: +{
      +  "description": "With deals: the deals come first, and the capital they leave (committed less fees and expenses, plus recycling, less the checks) is invested through the entry stages and return tiers, or capTable when sent, as it would be without deals. Recycling then goes to the stages, the fund life is the later of the deals' and the stages', and result.tiers lists the deals and then the tiers.",
      +  "type": "boolean"
      +}
    • addedInput schema / properties / inputs / properties / navMarkupYears
      Added value: +{
      +  "maximum": 100,
      +  "minimum": 0,
      +  "type": "number"
      +}
  2. Changed2 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / properties / gpCommitBearsCarry
      Added value: +{
      +  "type": "boolean"
      +}
    • addedInput schema / properties / inputs / properties / gpCommitBearsCarry
      Added value: +{
      +  "type": "boolean"
      +}
  3. Changed22 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / fees / properties / schedule
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "The fee as an LPA states it, on the dated schedule: each rate from a point in fund years (0 = first close; 5.5 starts halfway through year 6 and cuts the period it lands in), charged on committed capital, invested cost not yet realized, or NAV, with organizational expenses above organizationalExpenseCap offsetting the fee. Runs for feeYears; base, ratePct, yearlyRateSchedule and basesByYear are ignored when it is set.",
      +  "properties": {
      +    "frequency": {
      +      "enum": [
      +        "quarterly",
      +        "semiannual",
      +        "annual"
      +      ],
      +      "type": "string"
      +    },
      +    "organizationalExpenseCap": {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    "steps": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "basis": {
      +            "enum": [
      +              "committed",
      +              "invested",
      +              "nav"
      +            ],
      +            "type": "string"
      +          },
      +          "fromYear": {
      +            "maximum": 100,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "rate": {
      +            "maximum": 1,
      +            "minimum": 0,
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "fromYear",
      +          "rate",
      +          "basis"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 20,
      +      "minItems": 1,
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "steps"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / lpClasses / items / properties / overrides / properties / carryTiers / items / properties / irrThreshold
      Added value: +{
      +  "description": "Instead of moicThreshold: the band below this tier ends when the LP IRR reaches this rate. With one of these, tiers run in the order given.",
      +  "maximum": 1,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / recycling
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "defaultTreatment": {
      +      "enum": [
      +        "retained",
      +        "deemed"
      +      ],
      +      "type": "string"
      +    },
      +    "schedule": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "amount": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "quarter": {
      +            "maximum": 400,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "treatment": {
      +            "enum": [
      +              "retained",
      +              "deemed"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "quarter"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 400,
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / waterfall / properties / basis
      Added value: +{
      +  "description": "Whole fund (the default, European) or deal by deal (American): return of capital owes only the capital in deals exited or written off so far, so carry can be paid before the fund returns all capital. The clawback settles on the whole fund.",
      +  "enum": [
      +    "whole-fund",
      +    "deal-by-deal"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / waterfall / properties / carryTiers / items / properties / irrThreshold
      Added value: +{
      +  "description": "Instead of moicThreshold: the band below this tier ends when the LP IRR reaches this rate. With one of these, tiers run in the order given.",
      +  "maximum": 1,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / waterfall / properties / catchupMeasure
      Added value: +{
      +  "description": "GP catchup: to the carry share of the pref paid (the default), or until the GP holds the carry share of all profit paid. They differ when the GP shares the catchup with LPs.",
      +  "enum": [
      +    "preferred",
      +    "profit"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / waterfall / properties / clawback
      Added value: +{
      +  "type": "boolean"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / waterfall / properties / preferredReturnBase
      Added value: +{
      +  "description": "IRR pref: accrue on capital not yet returned plus unpaid pref (the default), or on each contribution from its date whatever comes back.",
      +  "enum": [
      +    "unreturned",
      +    "contributed"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / waterfall / properties / preferredReturnCompounding
      Added value: +{
      +  "description": "IRR pref: compound annually (the default) or simple interest.",
      +  "enum": [
      +    "annual",
      +    "none"
      +  ],
      +  "type": "string"
      +}
    • changedInput schema / definitions / FundDetail / properties / lpClasses / description
      Previous value: -"LP economics split by class. Each class carries its lifetime totals, datedNetIRR (solved from its own dated calls and distributions) and periods: calledCapital, unscheduledCalls and distributions, one entry per label. A class with a callSchedule is called on it; the others are called as the fund needs cash."New value: +"LP economics split by class. Each class carries its lifetime totals, datedNetIRR (solved from its own dated calls and distributions) and periods: calledCapital, unscheduledCalls, distributions and netIRR (the class's IRR through each period, with its share of LP NAV as the terminal value), one entry per label. A class with a callSchedule is called on it; the others are called as the fund needs cash."
    • changedInput schema / definitions / FundDetail / properties / periods / properties / carriedInterest / description
      Previous value: -"GP carry paid each period, catchups included."New value: +"GP carry paid each period, catchups included, net of the clawback."
    • addedInput schema / definitions / FundDetail / properties / periods / properties / gpClawback
      Added value: +{
      +  "description": "Carry the GP returns to the LPs, in the quarter the fund ends (or its year). Return of capital covers only capital called so far, so early carry is possible; the clawback brings the GP back to its whole-fund share. Off with features.waterfall.clawback: false.",
      +  "items": {
      +    "type": "number"
      +  },
      +  "type": "array"
      +}
    • addedInput schema / definitions / FundDetail / properties / periods / properties / recycledDeemed
      Added value: +{
      +  "$ref": "#/definitions/FundSeries",
      +  "description": "The part of recycledCapital booked as distributed and recontributed (features.recycling treatment \"deemed\"). It is also in calledCapital and distributions; recycling that is never distributed is in neither."
      +}
    • addedInput schema / properties / features / properties / fees / properties / schedule
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "The fee as an LPA states it, on the dated schedule: each rate from a point in fund years (0 = first close; 5.5 starts halfway through year 6 and cuts the period it lands in), charged on committed capital, invested cost not yet realized, or NAV, with organizational expenses above organizationalExpenseCap offsetting the fee. Runs for feeYears; base, ratePct, yearlyRateSchedule and basesByYear are ignored when it is set.",
      +  "properties": {
      +    "frequency": {
      +      "enum": [
      +        "quarterly",
      +        "semiannual",
      +        "annual"
      +      ],
      +      "type": "string"
      +    },
      +    "organizationalExpenseCap": {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    "steps": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "basis": {
      +            "enum": [
      +              "committed",
      +              "invested",
      +              "nav"
      +            ],
      +            "type": "string"
      +          },
      +          "fromYear": {
      +            "maximum": 100,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "rate": {
      +            "maximum": 1,
      +            "minimum": 0,
      +            "type": "number"
      +          }
      +        },
      +        "required": [
      +          "fromYear",
      +          "rate",
      +          "basis"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 20,
      +      "minItems": 1,
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "steps"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / features / properties / lpClasses / items / properties / overrides / properties / carryTiers / items / properties / irrThreshold
      Added value: +{
      +  "description": "Instead of moicThreshold: the band below this tier ends when the LP IRR reaches this rate. With one of these, tiers run in the order given.",
      +  "maximum": 1,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / properties / features / properties / recycling
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "defaultTreatment": {
      +      "enum": [
      +        "retained",
      +        "deemed"
      +      ],
      +      "type": "string"
      +    },
      +    "schedule": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "amount": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "quarter": {
      +            "maximum": 400,
      +            "minimum": 1,
      +            "type": "integer"
      +          },
      +          "treatment": {
      +            "enum": [
      +              "retained",
      +              "deemed"
      +            ],
      +            "type": "string"
      +          }
      +        },
      +        "required": [
      +          "quarter"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 400,
      +      "type": "array"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / features / properties / waterfall / properties / basis
      Added value: +{
      +  "description": "Whole fund (the default, European) or deal by deal (American): return of capital owes only the capital in deals exited or written off so far, so carry can be paid before the fund returns all capital. The clawback settles on the whole fund.",
      +  "enum": [
      +    "whole-fund",
      +    "deal-by-deal"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / features / properties / waterfall / properties / carryTiers / items / properties / irrThreshold
      Added value: +{
      +  "description": "Instead of moicThreshold: the band below this tier ends when the LP IRR reaches this rate. With one of these, tiers run in the order given.",
      +  "maximum": 1,
      +  "minimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / properties / features / properties / waterfall / properties / catchupMeasure
      Added value: +{
      +  "description": "GP catchup: to the carry share of the pref paid (the default), or until the GP holds the carry share of all profit paid. They differ when the GP shares the catchup with LPs.",
      +  "enum": [
      +    "preferred",
      +    "profit"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / features / properties / waterfall / properties / clawback
      Added value: +{
      +  "type": "boolean"
      +}
    • addedInput schema / properties / features / properties / waterfall / properties / preferredReturnBase
      Added value: +{
      +  "description": "IRR pref: accrue on capital not yet returned plus unpaid pref (the default), or on each contribution from its date whatever comes back.",
      +  "enum": [
      +    "unreturned",
      +    "contributed"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / features / properties / waterfall / properties / preferredReturnCompounding
      Added value: +{
      +  "description": "IRR pref: compound annually (the default) or simple interest.",
      +  "enum": [
      +    "annual",
      +    "none"
      +  ],
      +  "type": "string"
      +}
  4. Changed3 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / features / properties / lpClasses / items / properties / callSchedule
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Call this class on its own schedule instead of as the fund needs cash. pct is a share of the class commitment per fund year (called in the year's first quarter) or per quarter. Whatever the entries leave is called when the fund needs it.",
      +  "properties": {
      +    "frequency": {
      +      "enum": [
      +        "year",
      +        "quarter"
      +      ],
      +      "type": "string"
      +    },
      +    "pct": {
      +      "items": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "maxItems": 80,
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "frequency",
      +    "pct"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / FundDetail / properties / lpClasses / description
      Added value: +"LP economics split by class. Each class carries its lifetime totals, datedNetIRR (solved from its own dated calls and distributions) and periods: calledCapital, unscheduledCalls and distributions, one entry per label. A class with a callSchedule is called on it; the others are called as the fund needs cash."
    • addedInput schema / properties / features / properties / lpClasses / items / properties / callSchedule
      Added value: +{
      +  "additionalProperties": false,
      +  "description": "Call this class on its own schedule instead of as the fund needs cash. pct is a share of the class commitment per fund year (called in the year's first quarter) or per quarter. Whatever the entries leave is called when the fund needs it.",
      +  "properties": {
      +    "frequency": {
      +      "enum": [
      +        "year",
      +        "quarter"
      +      ],
      +      "type": "string"
      +    },
      +    "pct": {
      +      "items": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "maxItems": 80,
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "frequency",
      +    "pct"
      +  ],
      +  "type": "object"
      +}
  5. Changed10 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / properties / maxFundLifeYears
      Added value: +{
      +  "exclusiveMinimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / properties / operationalExpenseLines / items / properties / quarterly
      Added value: +{
      +  "items": [
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    }
      +  ],
      +  "maxItems": 4,
      +  "minItems": 4,
      +  "type": "array"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / properties / partnershipExpenseLines / items / properties / quarterly
      Added value: +{
      +  "items": [
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    }
      +  ],
      +  "maxItems": 4,
      +  "minItems": 4,
      +  "type": "array"
      +}
    • addedInput schema / definitions / FundDetail / properties / statements / properties / periods / items / properties / balanceSheet / properties
      Added value: +{
      +  "carriedInterestDistributed": {
      +    "description": "Carried interest distributed",
      +    "type": "number"
      +  },
      +  "cash": {
      +    "description": "Cash",
      +    "type": "number"
      +  },
      +  "checkBalances": {
      +    "description": "Check: assets less liabilities and capital. Zero when the balance sheet balances.",
      +    "type": "number"
      +  },
      +  "contributedCapitalGp": {
      +    "description": "Contributed capital, GP",
      +    "type": "number"
      +  },
      +  "contributedCapitalLp": {
      +    "description": "Contributed capital, LPs",
      +    "type": "number"
      +  },
      +  "cumulativeNetInvestmentIncome": {
      +    "description": "Cumulative net investment income (loss)",
      +    "type": "number"
      +  },
      +  "cumulativeNetRealizedGain": {
      +    "description": "Cumulative net realized gain (loss)",
      +    "type": "number"
      +  },
      +  "cumulativeNetUnrealized": {
      +    "description": "Cumulative net unrealized appreciation (depreciation)",
      +    "type": "number"
      +  },
      +  "distributionsGpCommit": {
      +    "description": "Distributions to the GP commit",
      +    "type": "number"
      +  },
      +  "distributionsLp": {
      +    "description": "Distributions to LPs",
      +    "type": "number"
      +  },
      +  "investmentsAtCost": {
      +    "description": "Investments, at cost. AUM.",
      +    "type": "number"
      +  },
      +  "investmentsAtFairValue": {
      +    "description": "Investments, at fair value. NAV.",
      +    "type": "number"
      +  },
      +  "totalAssets": {
      +    "description": "Total assets",
      +    "type": "number"
      +  },
      +  "totalLiabilities": {
      +    "description": "Total liabilities. Expenses are paid when incurred, so nothing is accrued.",
      +    "type": "number"
      +  },
      +  "totalLiabilitiesAndCapital": {
      +    "description": "Total liabilities and partners' capital",
      +    "type": "number"
      +  },
      +  "totalPartnersCapital": {
      +    "description": "Total partners' capital",
      +    "type": "number"
      +  },
      +  "unfundedCommitments": {
      +    "description": "Memo: unfunded commitments",
      +    "type": "number"
      +  },
      +  "unrealizedAppreciation": {
      +    "description": "Unrealized appreciation (depreciation)",
      +    "type": "number"
      +  }
      +}
    • addedInput schema / definitions / FundDetail / properties / statements / properties / periods / items / properties / cashFlow / properties
      Added value: +{
      +  "carriedInterestPaid": {
      +    "description": "Carried interest paid",
      +    "type": "number"
      +  },
      +  "cashBeginning": {
      +    "description": "Cash, beginning of period",
      +    "type": "number"
      +  },
      +  "cashEnd": {
      +    "description": "Cash, end of period",
      +    "type": "number"
      +  },
      +  "checkTiesToBalanceSheet": {
      +    "description": "Check: cash less balance sheet cash. Zero when the cash flow ties to the balance sheet.",
      +    "type": "number"
      +  },
      +  "contributionsGp": {
      +    "description": "Capital contributions, GP",
      +    "type": "number"
      +  },
      +  "contributionsLp": {
      +    "description": "Capital contributions, LPs",
      +    "type": "number"
      +  },
      +  "distributionsGpCommit": {
      +    "description": "Distributions to the GP commit",
      +    "type": "number"
      +  },
      +  "distributionsLp": {
      +    "description": "Distributions to LPs",
      +    "type": "number"
      +  },
      +  "lessNetChangeInUnrealized": {
      +    "description": "Net change in unrealized (appreciation) depreciation",
      +    "type": "number"
      +  },
      +  "lessNetRealizedGain": {
      +    "description": "Net realized (gain) loss on investments",
      +    "type": "number"
      +  },
      +  "netCashFromFinancing": {
      +    "description": "Net cash from financing activities",
      +    "type": "number"
      +  },
      +  "netCashFromOperating": {
      +    "description": "Net cash from operating activities",
      +    "type": "number"
      +  },
      +  "netChangeInCash": {
      +    "description": "Net change in cash",
      +    "type": "number"
      +  },
      +  "netIncreaseFromOperations": {
      +    "description": "Net increase (decrease) in partners' capital from operations",
      +    "type": "number"
      +  },
      +  "proceedsFromExits": {
      +    "description": "Proceeds from exits",
      +    "type": "number"
      +  },
      +  "purchasesOfInvestments": {
      +    "description": "Purchases of investments. Includes recycled proceeds.",
      +    "type": "number"
      +  }
      +}
    • removedInput schema / definitions / FundDetail / properties / statements / properties / periods / items / properties / incomeStatement
      Removed value: -{
      -  "type": "object"
      -}
    • addedInput schema / definitions / FundDetail / properties / statements / properties / periods / items / properties / operations
      Added value: +{
      +  "properties": {
      +    "managementFees": {
      +      "description": "Management fees",
      +      "type": "number"
      +    },
      +    "netChangeInUnrealized": {
      +      "description": "Net change in unrealized appreciation (depreciation). Change in NAV less change in cost held.",
      +      "type": "number"
      +    },
      +    "netGainOnInvestments": {
      +      "description": "Net gain (loss) on investments",
      +      "type": "number"
      +    },
      +    "netIncreaseFromOperations": {
      +      "description": "Net increase (decrease) in partners' capital from operations",
      +      "type": "number"
      +    },
      +    "netInvestmentIncome": {
      +      "description": "Net investment income (loss). No interest or dividend income is modeled.",
      +      "type": "number"
      +    },
      +    "netRealizedGain": {
      +      "description": "Net realized gain (loss)",
      +      "type": "number"
      +    },
      +    "operationalExpenseLines": {
      +      "description": "The operational expense lines, when the model itemizes them.",
      +      "items": {
      +        "properties": {
      +          "amount": {
      +            "type": "number"
      +          },
      +          "label": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "operationalExpenses": {
      +      "description": "Operational expenses. Run through Q1 of the fund year after the fund life ends.",
      +      "type": "number"
      +    },
      +    "organizationalExpenses": {
      +      "description": "Organizational expenses",
      +      "type": "number"
      +    },
      +    "partnershipExpenseLines": {
      +      "description": "The partnership expense lines, when the model itemizes them.",
      +      "items": {
      +        "properties": {
      +          "amount": {
      +            "type": "number"
      +          },
      +          "label": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "partnershipExpenses": {
      +      "description": "Partnership expenses",
      +      "type": "number"
      +    },
      +    "realizedGainOnExits": {
      +      "description": "Realized gain on exits. Proceeds less the cost they release.",
      +      "type": "number"
      +    },
      +    "realizedLossOnWriteoffs": {
      +      "description": "Realized loss on writeoffs",
      +      "type": "number"
      +    },
      +    "totalExpenses": {
      +      "description": "Total expenses",
      +      "type": "number"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / inputs / properties / maxFundLifeYears
      Added value: +{
      +  "exclusiveMinimum": 0,
      +  "type": "number"
      +}
    • addedInput schema / properties / inputs / properties / operationalExpenseLines / items / properties / quarterly
      Added value: +{
      +  "items": [
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    }
      +  ],
      +  "maxItems": 4,
      +  "minItems": 4,
      +  "type": "array"
      +}
    • addedInput schema / properties / inputs / properties / partnershipExpenseLines / items / properties / quarterly
      Added value: +{
      +  "items": [
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    {
      +      "minimum": 0,
      +      "type": "number"
      +    }
      +  ],
      +  "maxItems": 4,
      +  "minItems": 4,
      +  "type": "array"
      +}
  6. Changed5 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / format
      Added value: +{
      +  "enum": [
      +    "json",
      +    "xlsx",
      +    "xlsx_url"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / fundName
      Added value: +{
      +  "maxLength": 200,
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundResultResponse / properties / data / properties / workbook
      Added value: +{
      +  "description": "Returned when the request sets format to \"xlsx\" or \"xlsx_url\": the live Excel workbook the web tool exports, with every number a formula back to its Get Started inputs. For \"xlsx\", decode data from base64 and save it as filename. For \"xlsx_url\", download it from url before expiresAt (24 hours).",
      +  "properties": {
      +    "contentType": {
      +      "type": "string"
      +    },
      +    "data": {
      +      "type": "string"
      +    },
      +    "encoding": {
      +      "enum": [
      +        "base64"
      +      ],
      +      "type": "string"
      +    },
      +    "expiresAt": {
      +      "format": "date-time",
      +      "type": "string"
      +    },
      +    "filename": {
      +      "type": "string"
      +    },
      +    "url": {
      +      "format": "uri",
      +      "type": "string"
      +    }
      +  },
      +  "required": [
      +    "filename",
      +    "contentType"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / format
      Added value: +{
      +  "enum": [
      +    "json",
      +    "xlsx",
      +    "xlsx_url"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / properties / fundName
      Added value: +{
      +  "maxLength": 200,
      +  "type": "string"
      +}
  7. Changed9 schema fields changed
    • addedInput schema / definitions / FundComputeRequest / properties / features
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "capTable": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "bridge": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "expectedAgeAtRound": {
      +              "items": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            },
      +            "numInvestmentsTarget": {
      +              "maximum": 10000,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "stageName": {
      +              "maxLength": 200,
      +              "type": "string"
      +            },
      +            "writeoffHoldYears": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "yearsBetweenRounds": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "numInvestmentsTarget"
      +          ],
      +          "type": "object"
      +        },
      +        "inputs": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "defaultExitMultiple": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "defaultGraduationRate": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "defaultValuationIncrease": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "defaultWriteoffRate": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "dilutionFromOptionPoolsPerRound": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "dilutionPerRound": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "exitMultipleOnLastRound": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "followOnRounds": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "dilutionFromRound": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "newOptionPoolInRound": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "pctCompaniesFollowOn": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "valuationIncrease": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "type": "object"
      +              },
      +              "maxItems": 20,
      +              "type": "array"
      +            },
      +            "newInvestmentCheckSize": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "numFollowOnRounds": {
      +              "maximum": 20,
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            "numRoundsFollowOn": {
      +              "maximum": 20,
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            "ownershipOutsideInvestment": {
      +              "items": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            },
      +            "pctCompaniesFollowOn": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "postmoneyValuation": {
      +              "exclusiveMinimum": 0,
      +              "type": "number"
      +            },
      +            "roundLabels": {
      +              "items": {
      +                "maxLength": 200,
      +                "type": "string"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            },
      +            "roundOutcomes": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "exitMultiple": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "graduationRate": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "writeoffRate": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "type": "object"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "newInvestmentCheckSize",
      +            "postmoneyValuation",
      +            "numFollowOnRounds",
      +            "numRoundsFollowOn",
      +            "defaultValuationIncrease",
      +            "dilutionPerRound",
      +            "dilutionFromOptionPoolsPerRound",
      +            "pctCompaniesFollowOn",
      +            "defaultGraduationRate",
      +            "defaultWriteoffRate",
      +            "defaultExitMultiple"
      +          ],
      +          "type": "object"
      +        }
      +      },
      +      "required": [
      +        "inputs",
      +        "bridge"
      +      ],
      +      "type": "object"
      +    },
      +    "fees": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "base": {
      +          "enum": [
      +            "committed",
      +            "nav",
      +            "aum",
      +            "step-down"
      +          ],
      +          "type": "string"
      +        },
      +        "basesByYear": {
      +          "items": {
      +            "enum": [
      +              "committed",
      +              "nav",
      +              "aum",
      +              "step-down"
      +            ],
      +            "type": "string"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        },
      +        "feeYears": {
      +          "maximum": 100,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "ratePct": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "stepDownAfterYears": {
      +          "maximum": 100,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "yearlyRateSchedule": {
      +          "items": {
      +            "maximum": 1,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "base"
      +      ],
      +      "type": "object"
      +    },
      +    "followOn": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "offsetQuarters": {
      +          "maximum": 40,
      +          "minimum": 0,
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "offsetQuarters"
      +      ],
      +      "type": "object"
      +    },
      +    "lpClasses": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "commitment": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "feeOverrides": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "basesByYear": {
      +                "items": {
      +                  "enum": [
      +                    "committed",
      +                    "nav",
      +                    "aum",
      +                    "step-down"
      +                  ],
      +                  "type": "string"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              },
      +              "ratePct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "yearlyRateSchedule": {
      +                "items": {
      +                  "maximum": 1,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "isFirstLoss": {
      +            "type": "boolean"
      +          },
      +          "isRemainder": {
      +            "type": "boolean"
      +          },
      +          "name": {
      +            "maxLength": 200,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "overrides": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "carryPct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "carryTiers": {
      +                "items": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "carryPct": {
      +                      "maximum": 1,
      +                      "minimum": 0,
      +                      "type": "number"
      +                    },
      +                    "catchup": {
      +                      "type": "boolean"
      +                    },
      +                    "moicThreshold": {
      +                      "minimum": 0,
      +                      "type": "number"
      +                    }
      +                  },
      +                  "required": [
      +                    "moicThreshold",
      +                    "carryPct"
      +                  ],
      +                  "type": "object"
      +                },
      +                "maxItems": 20,
      +                "type": "array"
      +              },
      +              "catchupGpShare": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "catchupPct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "preferredReturnMode": {
      +                "enum": [
      +                  "none",
      +                  "irr",
      +                  "multiple"
      +                ],
      +                "type": "string"
      +              },
      +              "preferredReturnMultiple": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "preferredReturnRate": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              }
      +            },
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "name",
      +          "commitment"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 50,
      +      "minItems": 1,
      +      "type": "array"
      +    },
      +    "mgmtCo": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "expenses": {
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "annualCost": {
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "growthRatePerYear": {
      +                "maximum": 10,
      +                "minimum": -1,
      +                "type": "number"
      +              },
      +              "label": {
      +                "maxLength": 200,
      +                "type": "string"
      +              },
      +              "yearsActive": {
      +                "items": {
      +                  "maximum": 100,
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "label",
      +              "annualCost"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        },
      +        "oneTimeFormationCost": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "startingCash": {
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "expenses"
      +      ],
      +      "type": "object"
      +    },
      +    "waterfall": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "carryTiers": {
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "carryPct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "catchup": {
      +                "type": "boolean"
      +              },
      +              "moicThreshold": {
      +                "minimum": 0,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "moicThreshold",
      +              "carryPct"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 20,
      +          "type": "array"
      +        },
      +        "catchupGpShare": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "catchupPct": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "preferredReturnMode": {
      +          "enum": [
      +            "none",
      +            "irr",
      +            "multiple"
      +          ],
      +          "type": "string"
      +        },
      +        "preferredReturnMultiple": {
      +          "maximum": 100,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "preferredReturnRate": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / firstCloseDate
      Added value: +{
      +  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / granularity
      Added value: +{
      +  "enum": [
      +    "year",
      +    "quarter",
      +    "none"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / definitions / FundDetail
      Added value: +{
      +  "description": "The fund over time. Returned unless the request sets granularity to \"none\". Every array in periods has one entry per label. waterfall, lpClasses and mgmtCo appear only when the request sent that feature block.",
      +  "properties": {
      +    "granularity": {
      +      "enum": [
      +        "year",
      +        "quarter"
      +      ],
      +      "type": "string"
      +    },
      +    "irr": {
      +      "description": "IRRs solved from the dated quarterly cash flows, with terminal NAV.",
      +      "properties": {
      +        "grossIRR": {
      +          "type": "number"
      +        },
      +        "netIRR": {
      +          "properties": {
      +            "lp": {
      +              "type": "number"
      +            },
      +            "total": {
      +              "type": "number"
      +            }
      +          },
      +          "type": "object"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "lpClasses": {
      +      "type": "object"
      +    },
      +    "mgmtCo": {
      +      "type": "object"
      +    },
      +    "periods": {
      +      "properties": {
      +        "calledCapital": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "carriedInterest": {
      +          "description": "GP carry paid each period, catchups included.",
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "distributions": {
      +          "$ref": "#/definitions/FundSeries",
      +          "description": "Distributions after carry. The LP line runs through the waterfall period by period."
      +        },
      +        "dpi": {
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "gpCatchup": {
      +          "description": "GP catchup paid each period. Only with a waterfall block.",
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "investedCapital": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "jCurveLp": {
      +          "description": "Cumulative LP net cash flow at the end of each period.",
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "labels": {
      +          "items": {
      +            "type": "string"
      +          },
      +          "type": "array"
      +        },
      +        "managementFees": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "nav": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "partnershipExpenses": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "preferredReturn": {
      +          "description": "Preferred return paid to LPs each period. Only with a waterfall block.",
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "proceeds": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "recycledCapital": {
      +          "$ref": "#/definitions/FundSeries"
      +        },
      +        "rvpi": {
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        },
      +        "tvpi": {
      +          "items": {
      +            "type": "number"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "labels"
      +      ],
      +      "type": "object"
      +    },
      +    "statements": {
      +      "properties": {
      +        "currency": {
      +          "type": "string"
      +        },
      +        "periods": {
      +          "items": {
      +            "properties": {
      +              "balanceSheet": {
      +                "type": "object"
      +              },
      +              "cashFlow": {
      +                "type": "object"
      +              },
      +              "incomeStatement": {
      +                "type": "object"
      +              },
      +              "label": {
      +                "type": [
      +                  "string",
      +                  "null"
      +                ]
      +              },
      +              "periodEnd": {
      +                "type": "string"
      +              },
      +              "periodStart": {
      +                "type": "string"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "type": "object"
      +    },
      +    "waterfall": {
      +      "description": "Lifetime totals of the waterfall as run through the periods: return of capital, preferred return (accrued on the dates capital was called), catchup, carry by tier.",
      +      "type": "object"
      +    }
      +  },
      +  "required": [
      +    "granularity",
      +    "irr",
      +    "periods",
      +    "statements"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / FundResultResponse
      Added value: +{
      +  "properties": {
      +    "data": {
      +      "properties": {
      +        "detail": {
      +          "$ref": "#/definitions/FundDetail"
      +        },
      +        "result": {
      +          "$ref": "#/definitions/FundResult"
      +        }
      +      },
      +      "required": [
      +        "result"
      +      ],
      +      "type": "object"
      +    },
      +    "meta": {
      +      "properties": {
      +        "keyName": {
      +          "type": "string"
      +        }
      +      },
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / definitions / FundSeries
      Added value: +{
      +  "properties": {
      +    "gp": {
      +      "items": {
      +        "type": "number"
      +      },
      +      "type": "array"
      +    },
      +    "lp": {
      +      "items": {
      +        "type": "number"
      +      },
      +      "type": "array"
      +    },
      +    "total": {
      +      "items": {
      +        "type": "number"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "total",
      +    "lp",
      +    "gp"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / properties / features
      Added value: +{
      +  "additionalProperties": false,
      +  "properties": {
      +    "capTable": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "bridge": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "expectedAgeAtRound": {
      +              "items": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            },
      +            "numInvestmentsTarget": {
      +              "maximum": 10000,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "stageName": {
      +              "maxLength": 200,
      +              "type": "string"
      +            },
      +            "writeoffHoldYears": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "yearsBetweenRounds": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "numInvestmentsTarget"
      +          ],
      +          "type": "object"
      +        },
      +        "inputs": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "defaultExitMultiple": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "defaultGraduationRate": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "defaultValuationIncrease": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "defaultWriteoffRate": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "dilutionFromOptionPoolsPerRound": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "dilutionPerRound": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "exitMultipleOnLastRound": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "followOnRounds": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "dilutionFromRound": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "newOptionPoolInRound": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "pctCompaniesFollowOn": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "valuationIncrease": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "type": "object"
      +              },
      +              "maxItems": 20,
      +              "type": "array"
      +            },
      +            "newInvestmentCheckSize": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "numFollowOnRounds": {
      +              "maximum": 20,
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            "numRoundsFollowOn": {
      +              "maximum": 20,
      +              "minimum": 0,
      +              "type": "integer"
      +            },
      +            "ownershipOutsideInvestment": {
      +              "items": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            },
      +            "pctCompaniesFollowOn": {
      +              "maximum": 100,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "postmoneyValuation": {
      +              "exclusiveMinimum": 0,
      +              "type": "number"
      +            },
      +            "roundLabels": {
      +              "items": {
      +                "maxLength": 200,
      +                "type": "string"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            },
      +            "roundOutcomes": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "exitMultiple": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "graduationRate": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "writeoffRate": {
      +                    "maximum": 100,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "type": "object"
      +              },
      +              "maxItems": 21,
      +              "type": "array"
      +            }
      +          },
      +          "required": [
      +            "newInvestmentCheckSize",
      +            "postmoneyValuation",
      +            "numFollowOnRounds",
      +            "numRoundsFollowOn",
      +            "defaultValuationIncrease",
      +            "dilutionPerRound",
      +            "dilutionFromOptionPoolsPerRound",
      +            "pctCompaniesFollowOn",
      +            "defaultGraduationRate",
      +            "defaultWriteoffRate",
      +            "defaultExitMultiple"
      +          ],
      +          "type": "object"
      +        }
      +      },
      +      "required": [
      +        "inputs",
      +        "bridge"
      +      ],
      +      "type": "object"
      +    },
      +    "fees": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "base": {
      +          "enum": [
      +            "committed",
      +            "nav",
      +            "aum",
      +            "step-down"
      +          ],
      +          "type": "string"
      +        },
      +        "basesByYear": {
      +          "items": {
      +            "enum": [
      +              "committed",
      +              "nav",
      +              "aum",
      +              "step-down"
      +            ],
      +            "type": "string"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        },
      +        "feeYears": {
      +          "maximum": 100,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "ratePct": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "stepDownAfterYears": {
      +          "maximum": 100,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "yearlyRateSchedule": {
      +          "items": {
      +            "maximum": 1,
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "base"
      +      ],
      +      "type": "object"
      +    },
      +    "followOn": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "offsetQuarters": {
      +          "maximum": 40,
      +          "minimum": 0,
      +          "type": "integer"
      +        }
      +      },
      +      "required": [
      +        "offsetQuarters"
      +      ],
      +      "type": "object"
      +    },
      +    "lpClasses": {
      +      "items": {
      +        "additionalProperties": false,
      +        "properties": {
      +          "commitment": {
      +            "minimum": 0,
      +            "type": "number"
      +          },
      +          "feeOverrides": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "basesByYear": {
      +                "items": {
      +                  "enum": [
      +                    "committed",
      +                    "nav",
      +                    "aum",
      +                    "step-down"
      +                  ],
      +                  "type": "string"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              },
      +              "ratePct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "yearlyRateSchedule": {
      +                "items": {
      +                  "maximum": 1,
      +                  "minimum": 0,
      +                  "type": "number"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              }
      +            },
      +            "type": "object"
      +          },
      +          "isFirstLoss": {
      +            "type": "boolean"
      +          },
      +          "isRemainder": {
      +            "type": "boolean"
      +          },
      +          "name": {
      +            "maxLength": 200,
      +            "minLength": 1,
      +            "type": "string"
      +          },
      +          "overrides": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "carryPct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "carryTiers": {
      +                "items": {
      +                  "additionalProperties": false,
      +                  "properties": {
      +                    "carryPct": {
      +                      "maximum": 1,
      +                      "minimum": 0,
      +                      "type": "number"
      +                    },
      +                    "catchup": {
      +                      "type": "boolean"
      +                    },
      +                    "moicThreshold": {
      +                      "minimum": 0,
      +                      "type": "number"
      +                    }
      +                  },
      +                  "required": [
      +                    "moicThreshold",
      +                    "carryPct"
      +                  ],
      +                  "type": "object"
      +                },
      +                "maxItems": 20,
      +                "type": "array"
      +              },
      +              "catchupGpShare": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "catchupPct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "preferredReturnMode": {
      +                "enum": [
      +                  "none",
      +                  "irr",
      +                  "multiple"
      +                ],
      +                "type": "string"
      +              },
      +              "preferredReturnMultiple": {
      +                "maximum": 100,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "preferredReturnRate": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              }
      +            },
      +            "type": "object"
      +          }
      +        },
      +        "required": [
      +          "name",
      +          "commitment"
      +        ],
      +        "type": "object"
      +      },
      +      "maxItems": 50,
      +      "minItems": 1,
      +      "type": "array"
      +    },
      +    "mgmtCo": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "expenses": {
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "annualCost": {
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "growthRatePerYear": {
      +                "maximum": 10,
      +                "minimum": -1,
      +                "type": "number"
      +              },
      +              "label": {
      +                "maxLength": 200,
      +                "type": "string"
      +              },
      +              "yearsActive": {
      +                "items": {
      +                  "maximum": 100,
      +                  "minimum": 1,
      +                  "type": "integer"
      +                },
      +                "maxItems": 100,
      +                "type": "array"
      +              }
      +            },
      +            "required": [
      +              "label",
      +              "annualCost"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 100,
      +          "type": "array"
      +        },
      +        "oneTimeFormationCost": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "startingCash": {
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "expenses"
      +      ],
      +      "type": "object"
      +    },
      +    "waterfall": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "carryTiers": {
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "carryPct": {
      +                "maximum": 1,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "catchup": {
      +                "type": "boolean"
      +              },
      +              "moicThreshold": {
      +                "minimum": 0,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "moicThreshold",
      +              "carryPct"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 20,
      +          "type": "array"
      +        },
      +        "catchupGpShare": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "catchupPct": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "preferredReturnMode": {
      +          "enum": [
      +            "none",
      +            "irr",
      +            "multiple"
      +          ],
      +          "type": "string"
      +        },
      +        "preferredReturnMultiple": {
      +          "maximum": 100,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "preferredReturnRate": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
    • addedInput schema / properties / firstCloseDate
      Added value: +{
      +  "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +  "type": "string"
      +}
    • addedInput schema / properties / granularity
      Added value: +{
      +  "enum": [
      +    "year",
      +    "quarter",
      +    "none"
      +  ],
      +  "type": "string"
      +}
  8. Changed1 schema field changed
    • addedInput schema / definitions / ProductAccess / properties / remaining / description
      Added value: +"Calculations this account can run now: the paid balance while a paid period is active, otherwise the lifetime free balance."
  9. Changed7 schema fields changed
    • addedInput schema / definitions / ProductAccess / properties / active / description
      Added value: +"Active paid term; use state/freeRemaining for trial access."
    • addedInput schema / definitions / ProductAccess / properties / freeRemaining
      Added value: +{
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • addedInput schema / definitions / ProductAccess / properties / nextAction
      Added value: +{
      +  "type": "string"
      +}
    • addedInput schema / definitions / ProductAccess / properties / paidExpiration
      Added value: +{
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedInput schema / definitions / ProductAccess / properties / paidRemaining
      Added value: +{
      +  "minimum": 0,
      +  "type": "integer"
      +}
    • addedInput schema / definitions / ProductAccess / properties / source
      Added value: +{
      +  "enum": [
      +    "free",
      +    "paid"
      +  ],
      +  "type": "string"
      +}
    • addedInput schema / definitions / ProductAccess / properties / state
      Added value: +{
      +  "enum": [
      +    "free_available",
      +    "free_exhausted",
      +    "paid_active",
      +    "paid_expired",
      +    "paid_quota_exhausted"
      +  ],
      +  "type": "string"
      +}
  10. Changed49 schema fields changed
    • addedInput schema / $schema
      Added value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / additionalProperties
      Added value: +false
    • addedInput schema / definitions / AccessResponse
      Added value: +{
      +  "properties": {
      +    "data": {
      +      "properties": {
      +        "daily": {
      +          "items": {
      +            "$ref": "#/definitions/DailyUsage"
      +          },
      +          "type": "array"
      +        },
      +        "monthly": {
      +          "items": {
      +            "$ref": "#/definitions/MonthlyUsage"
      +          },
      +          "type": "array"
      +        },
      +        "periods": {
      +          "items": {
      +            "allOf": [
      +              {
      +                "$ref": "#/definitions/UsagePeriod"
      +              },
      +              {
      +                "properties": {
      +                  "product": {
      +                    "enum": [
      +                      "cap-table",
      +                      "fund-economics"
      +                    ],
      +                    "type": "string"
      +                  }
      +                },
      +                "required": [
      +                  "product"
      +                ],
      +                "type": "object"
      +              }
      +            ]
      +          },
      +          "type": "array"
      +        },
      +        "products": {
      +          "items": {
      +            "$ref": "#/definitions/ProductAccess"
      +          },
      +          "type": "array"
      +        }
      +      },
      +      "required": [
      +        "products",
      +        "daily"
      +      ],
      +      "type": "object"
      +    }
      +  },
      +  "type": "object"
      +}
    • removedInput schema / definitions / ApiKey
      Removed value: -{
      -  "properties": {
      -    "created_at": {
      -      "type": "string"
      -    },
      -    "id": {
      -      "type": "string"
      -    },
      -    "key_prefix": {
      -      "description": "First chars of the token, for display.",
      -      "type": "string"
      -    },
      -    "last_used_at": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    },
      -    "name": {
      -      "type": "string"
      -    },
      -    "revoked_at": {
      -      "type": [
      -        "string",
      -        "null"
      -      ]
      -    }
      -  },
      -  "type": "object"
      -}
    • removedInput schema / definitions / CapTableEvent
      Removed value: -{
      -  "description": "One cap-table event, discriminated by `type`. Pass events in chronological order.",
      -  "discriminator": {
      -    "mapping": {
      -      "common_issuance": "#/components/schemas/CommonIssuanceEvent",
      -      "convertible_round": "#/components/schemas/ConvertibleRoundEvent",
      -      "manual_issuance": "#/components/schemas/ManualIssuanceEvent",
      -      "option_grant": "#/components/schemas/OptionGrantEvent",
      -      "option_pool": "#/components/schemas/OptionPoolEvent",
      -      "priced_round": "#/components/schemas/PricedRoundEvent",
      -      "secondary_sale": "#/components/schemas/SecondarySaleEvent",
      -      "warrant_round": "#/components/schemas/WarrantRoundEvent"
      -    },
      -    "propertyName": "type"
      -  },
      -  "oneOf": [
      -    {
      -      "$ref": "#/definitions/CommonIssuanceEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/OptionPoolEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/SecondarySaleEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/OptionGrantEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/ManualIssuanceEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/ConvertibleRoundEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/WarrantRoundEvent"
      -    },
      -    {
      -      "$ref": "#/definitions/PricedRoundEvent"
      -    }
      -  ]
      -}
    • addedInput schema / definitions / CapTableSnapshot
      Added value: +{
      +  "properties": {
      +    "holdings": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "label": {
      +      "type": "string"
      +    },
      +    "outstandingConvertibles": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "ownership": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "pricePerShare": {
      +      "type": "number"
      +    },
      +    "roundDetail": {
      +      "type": "object"
      +    },
      +    "totalShares": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "label",
      +    "holdings",
      +    "totalShares",
      +    "ownership",
      +    "outstandingConvertibles"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / ComputeRequest / additionalProperties
      Added value: +false
    • removedInput schema / definitions / ComputeRequest / properties / events / description
      Removed value: -"Ordered list of cap-table events to fold."
    • removedInput schema / definitions / ComputeRequest / properties / events / items / $ref
      Removed value: -"#/definitions/CapTableEvent"
    • addedInput schema / definitions / ComputeRequest / properties / events / items / description
      Added value: +"One cap-table event, discriminated by `type`. Pass events in chronological order."
    • addedInput schema / definitions / ComputeRequest / properties / events / items / discriminator
      Added value: +{
      +  "mapping": {
      +    "common_issuance": "#/components/schemas/CommonIssuanceEvent",
      +    "convertible_round": "#/components/schemas/ConvertibleRoundEvent",
      +    "manual_issuance": "#/components/schemas/ManualIssuanceEvent",
      +    "option_grant": "#/components/schemas/OptionGrantEvent",
      +    "option_pool": "#/components/schemas/OptionPoolEvent",
      +    "priced_round": "#/components/schemas/PricedRoundEvent",
      +    "secondary_sale": "#/components/schemas/SecondarySaleEvent",
      +    "warrant_round": "#/components/schemas/WarrantRoundEvent"
      +  },
      +  "propertyName": "type"
      +}
    • addedInput schema / definitions / ComputeRequest / properties / events / items / oneOf
      Added value: +[
      +  {
      +    "$ref": "#/definitions/CommonIssuanceEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/OptionPoolEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/SecondarySaleEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/OptionGrantEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/ManualIssuanceEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/ConvertibleRoundEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/WarrantRoundEvent"
      +  },
      +  {
      +    "$ref": "#/definitions/PricedRoundEvent"
      +  }
      +]
    • addedInput schema / definitions / ComputeRequest / properties / events / maxItems
      Added value: +200
    • addedInput schema / definitions / ComputeResponse / properties / data / properties / final / $ref
      Added value: +"#/definitions/CapTableSnapshot"
    • removedInput schema / definitions / ComputeResponse / properties / data / properties / final / description
      Removed value: -"The final cap-table state."
    • removedInput schema / definitions / ComputeResponse / properties / data / properties / final / type
      Removed value: -"object"
    • addedInput schema / definitions / ComputeResponse / properties / data / properties / snapshots / items / $ref
      Added value: +"#/definitions/CapTableSnapshot"
    • removedInput schema / definitions / ComputeResponse / properties / data / properties / snapshots / items / type
      Removed value: -"object"
    • removedInput schema / definitions / CreateKeyRequest
      Removed value: -{
      -  "properties": {
      -    "name": {
      -      "description": "Label for the key, written into the audit trail.",
      -      "type": "string"
      -    }
      -  },
      -  "type": "object"
      -}
    • addedInput schema / definitions / DailyUsage
      Added value: +{
      +  "properties": {
      +    "day": {
      +      "format": "date",
      +      "type": "string"
      +    },
      +    "endpoint": {
      +      "type": "string"
      +    },
      +    "failed": {
      +      "type": "integer"
      +    },
      +    "product": {
      +      "enum": [
      +        "cap-table",
      +        "fund-economics"
      +      ],
      +      "type": "string"
      +    },
      +    "source": {
      +      "type": "string"
      +    },
      +    "succeeded": {
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "day",
      +    "product",
      +    "endpoint",
      +    "source",
      +    "succeeded",
      +    "failed"
      +  ],
      +  "type": "object"
      +}
    • changedInput schema / definitions / Error / properties / error / properties / code / enum
      Previous value: -[
      -  "unauthorized",
      -  "payment_required",
      -  "validation_failed",
      -  "engine_error",
      -  "method_not_allowed",
      -  "internal_error"
      -]New value: +[
      +  "unauthorized",
      +  "payment_required",
      +  "validation_failed",
      +  "engine_error",
      +  "quota_exhausted",
      +  "rate_limited",
      +  "idempotency_conflict",
      +  "service_unavailable",
      +  "method_not_allowed",
      +  "internal_error"
      +]
    • addedInput schema / definitions / FundComputeRequest / $schema
      Added value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / definitions / FundComputeRequest / additionalProperties
      Added value: +false
    • changedInput schema / definitions / FundComputeRequest / properties / inputs / additionalProperties
      Previous value: -trueNew value: +false
    • removedInput schema / definitions / FundComputeRequest / properties / inputs / description
      Removed value: -"Fund Economics inputs: committed capital, fees, portfolio construction, carry tiers."
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / properties
      Added value: +{
      +  "carryPct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "committedCapital": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "fundOperationsYears": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "gpCommitCountedTowardInvested": {
      +    "type": "boolean"
      +  },
      +  "gpCommitPct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "mgmtFeePct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "mgmtFeeSchedule": {
      +    "items": {
      +      "maximum": 1,
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    "type": "array"
      +  },
      +  "mgmtFeesPeriodYears": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "newInvestmentPeriodYears": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "operationalExpenseLines": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amount": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "label": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "label",
      +        "amount"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "operationalExpensesAnnual": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "operationalExpensesBreakout": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "audit": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "fundAdmin": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "other": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "tax": {
      +        "minimum": 0,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "fundAdmin",
      +      "tax",
      +      "audit",
      +      "other"
      +    ],
      +    "type": "object"
      +  },
      +  "organizationalExpenseLines": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amount": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "label": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "label",
      +        "amount"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "organizationalExpenses": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "partnershipExpenseLines": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amount": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "label": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "label",
      +        "amount"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "partnershipExpensesAnnual": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "portfolio": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "avgCheckSizeFollow": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "avgCheckSizeNew": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "entryStages": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "avgCheckSize": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "followOnChecks": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "avgCheckSize": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "label": {
      +                    "type": "string"
      +                  },
      +                  "pctOfReserve": {
      +                    "maximum": 1,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "required": [
      +                  "avgCheckSize"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "initialCheckLabel": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "numInvestments": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "pctAllocation": {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "reserveRatio": {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "name",
      +            "numInvestments",
      +            "avgCheckSize"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "followPct": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "newPct": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "newPct",
      +      "followPct",
      +      "avgCheckSizeNew",
      +      "avgCheckSizeFollow"
      +    ],
      +    "type": "object"
      +  },
      +  "recycledCapitalPct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "returnTiers": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "holdingPeriodYears": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "multiple": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "name": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "numCompanies": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "pctOfCapital": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "name",
      +        "pctOfCapital",
      +        "multiple",
      +        "holdingPeriodYears"
      +      ],
      +      "type": "object"
      +    },
      +    "minItems": 1,
      +    "type": "array"
      +  },
      +  "solveCalledFromDeployment": {
      +    "type": "boolean"
      +  },
      +  "stageInputMode": {
      +    "enum": [
      +      "pct-capital",
      +      "num-companies"
      +    ],
      +    "type": "string"
      +  },
      +  "targetTotalInvestments": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "tierFractional": {
      +    "type": "boolean"
      +  },
      +  "tierInputMode": {
      +    "enum": [
      +      "pct-capital",
      +      "num-companies"
      +    ],
      +    "type": "string"
      +  }
      +}
    • addedInput schema / definitions / FundComputeRequest / properties / inputs / required
      Added value: +[
      +  "committedCapital",
      +  "gpCommitPct",
      +  "gpCommitCountedTowardInvested",
      +  "organizationalExpenses",
      +  "operationalExpensesAnnual",
      +  "mgmtFeePct",
      +  "recycledCapitalPct",
      +  "carryPct",
      +  "newInvestmentPeriodYears",
      +  "mgmtFeesPeriodYears",
      +  "portfolio",
      +  "returnTiers"
      +]
    • addedInput schema / definitions / FundResult
      Added value: +{
      +  "properties": {
      +    "calledCapital": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "committedCapital": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "distributions": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "dpi": {
      +      "type": "number"
      +    },
      +    "grossIRR": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "grossMultiple": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "investedCapital": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "managementFees": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "netIRR": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "netMultiple": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "partnershipExpenses": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "pic": {
      +      "type": "number"
      +    },
      +    "proceeds": {
      +      "$ref": "#/definitions/LineTotals"
      +    },
      +    "rvpi": {
      +      "type": "number"
      +    },
      +    "tiers": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "tvpi": {
      +      "type": "number"
      +    },
      +    "weightedHoldPeriodYears": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "committedCapital",
      +    "calledCapital",
      +    "managementFees",
      +    "partnershipExpenses",
      +    "investedCapital",
      +    "proceeds",
      +    "distributions",
      +    "grossMultiple",
      +    "netMultiple",
      +    "grossIRR",
      +    "netIRR",
      +    "pic",
      +    "dpi",
      +    "rvpi",
      +    "tvpi",
      +    "weightedHoldPeriodYears"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / LineTotals
      Added value: +{
      +  "properties": {
      +    "gp": {
      +      "type": "number"
      +    },
      +    "lp": {
      +      "type": "number"
      +    },
      +    "total": {
      +      "type": "number"
      +    }
      +  },
      +  "required": [
      +    "total",
      +    "lp",
      +    "gp"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / MonthlyUsage
      Added value: +{
      +  "properties": {
      +    "failed": {
      +      "type": "integer"
      +    },
      +    "month": {
      +      "pattern": "^[0-9]{4}-[0-9]{2}$",
      +      "type": "string"
      +    },
      +    "product": {
      +      "enum": [
      +        "cap-table",
      +        "fund-economics"
      +      ],
      +      "type": "string"
      +    },
      +    "succeeded": {
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "month",
      +    "product",
      +    "succeeded",
      +    "failed"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / ProductAccess
      Added value: +{
      +  "properties": {
      +    "active": {
      +      "type": "boolean"
      +    },
      +    "allowance": {
      +      "const": 6000,
      +      "type": "integer"
      +    },
      +    "name": {
      +      "type": "string"
      +    },
      +    "period": {
      +      "anyOf": [
      +        {
      +          "type": "null"
      +        },
      +        {
      +          "$ref": "#/definitions/UsagePeriod"
      +        }
      +      ]
      +    },
      +    "priceUsd": {
      +      "const": 20,
      +      "type": "number"
      +    },
      +    "product": {
      +      "enum": [
      +        "cap-table",
      +        "fund-economics"
      +      ],
      +      "type": "string"
      +    },
      +    "remaining": {
      +      "minimum": 0,
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "product",
      +    "name",
      +    "priceUsd",
      +    "allowance",
      +    "period",
      +    "remaining",
      +    "active"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / ResultResponse / properties / data / properties / result / oneOf
      Added value: +[
      +  {
      +    "$ref": "#/definitions/WaterfallResult"
      +  },
      +  {
      +    "$ref": "#/definitions/FundResult"
      +  }
      +]
    • removedInput schema / definitions / ResultResponse / properties / data / properties / result / type
      Removed value: -"object"
    • addedInput schema / definitions / UsagePeriod
      Added value: +{
      +  "properties": {
      +    "allowance": {
      +      "type": "integer"
      +    },
      +    "consumed": {
      +      "type": "integer"
      +    },
      +    "enabled": {
      +      "type": "boolean"
      +    },
      +    "id": {
      +      "type": "string"
      +    },
      +    "period_end": {
      +      "format": "date-time",
      +      "type": "string"
      +    },
      +    "period_start": {
      +      "format": "date-time",
      +      "type": "string"
      +    },
      +    "reserved": {
      +      "type": "integer"
      +    }
      +  },
      +  "required": [
      +    "id",
      +    "period_start",
      +    "period_end",
      +    "allowance",
      +    "consumed",
      +    "reserved",
      +    "enabled"
      +  ],
      +  "type": "object"
      +}
    • addedInput schema / definitions / WaterfallComputeRequest / $schema
      Added value: +"http://json-schema.org/draft-07/schema#"
    • addedInput schema / definitions / WaterfallComputeRequest / additionalProperties
      Added value: +false
    • removedInput schema / definitions / WaterfallComputeRequest / properties / exitValuation / description
      Removed value: -"Total exit proceeds to distribute."
    • addedInput schema / definitions / WaterfallComputeRequest / properties / exitValuation / maximum
      Added value: +1000000000000000
    • addedInput schema / definitions / WaterfallComputeRequest / properties / exitValuation / minimum
      Added value: +0
    • changedInput schema / definitions / WaterfallComputeRequest / properties / model / additionalProperties
      Previous value: -trueNew value: +false
    • removedInput schema / definitions / WaterfallComputeRequest / properties / model / description
      Removed value: -"Exit-waterfall model: preferred series, common holders, options, warrants, convertibles."
    • addedInput schema / definitions / WaterfallComputeRequest / properties / model / properties
      Added value: +{
      +  "common": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "id": {
      +          "maxLength": 200,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "invested": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "name": {
      +          "maxLength": 200,
      +          "type": "string"
      +        },
      +        "shares": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "id",
      +        "name",
      +        "shares"
      +      ],
      +      "type": "object"
      +    },
      +    "maxItems": 500,
      +    "type": "array"
      +  },
      +  "convertibles": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "accruedInterest": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "cap": {
      +          "exclusiveMinimum": 0,
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "cashOutAs": {
      +          "enum": [
      +            "debt",
      +            "equity"
      +          ],
      +          "type": "string"
      +        },
      +        "cashOutSeniority": {
      +          "enum": [
      +            "senior",
      +            "pari-passu"
      +          ],
      +          "type": "string"
      +        },
      +        "discount": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "id": {
      +          "maxLength": 200,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "kind": {
      +          "enum": [
      +            "pre-safe",
      +            "post-safe",
      +            "note"
      +          ],
      +          "type": "string"
      +        },
      +        "name": {
      +          "maxLength": 200,
      +          "type": "string"
      +        },
      +        "premiumMultiple": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "principal": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "seniority": {
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "id",
      +        "name",
      +        "kind",
      +        "principal"
      +      ],
      +      "type": "object"
      +    },
      +    "maxItems": 100,
      +    "type": "array"
      +  },
      +  "debt": {
      +    "maximum": 1000000000000000,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "options": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "id": {
      +          "maxLength": 200,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "name": {
      +          "maxLength": 200,
      +          "type": "string"
      +        },
      +        "shares": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "strike": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "vestedFraction": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "id",
      +        "name",
      +        "shares",
      +        "strike"
      +      ],
      +      "type": "object"
      +    },
      +    "maxItems": 500,
      +    "type": "array"
      +  },
      +  "preferred": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "conversionRatio": {
      +          "exclusiveMinimum": 0,
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "dividendCumulative": {
      +          "type": "boolean"
      +        },
      +        "dividendRate": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "dividendStart": {
      +          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +          "type": "string"
      +        },
      +        "holders": {
      +          "items": {
      +            "additionalProperties": false,
      +            "properties": {
      +              "id": {
      +                "maxLength": 200,
      +                "minLength": 1,
      +                "type": "string"
      +              },
      +              "invested": {
      +                "maximum": 1000000000000000,
      +                "minimum": 0,
      +                "type": "number"
      +              },
      +              "name": {
      +                "maxLength": 200,
      +                "type": "string"
      +              },
      +              "shares": {
      +                "maximum": 1000000000000000,
      +                "minimum": 0,
      +                "type": "number"
      +              }
      +            },
      +            "required": [
      +              "id",
      +              "name",
      +              "shares",
      +              "invested"
      +            ],
      +            "type": "object"
      +          },
      +          "maxItems": 500,
      +          "type": "array"
      +        },
      +        "id": {
      +          "maxLength": 200,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "investmentDate": {
      +          "pattern": "^\\d{4}-\\d{2}-\\d{2}$",
      +          "type": "string"
      +        },
      +        "multiple": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "name": {
      +          "maxLength": 200,
      +          "type": "string"
      +        },
      +        "participation": {
      +          "enum": [
      +            "none",
      +            "full",
      +            "capped"
      +          ],
      +          "type": "string"
      +        },
      +        "participationCap": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "seniority": {
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "id",
      +        "name",
      +        "holders",
      +        "seniority"
      +      ],
      +      "type": "object"
      +    },
      +    "maxItems": 20,
      +    "type": "array"
      +  },
      +  "transactionExpenses": {
      +    "maximum": 1000000000000000,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "unissuedPool": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "shares": {
      +        "maximum": 1000000000000000,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "treatment": {
      +        "const": "cancel",
      +        "type": "string"
      +      }
      +    },
      +    "required": [
      +      "shares"
      +    ],
      +    "type": "object"
      +  },
      +  "warrants": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "id": {
      +          "maxLength": 200,
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "name": {
      +          "maxLength": 200,
      +          "type": "string"
      +        },
      +        "shares": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "strike": {
      +          "maximum": 1000000000000000,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "id",
      +        "name",
      +        "shares",
      +        "strike"
      +      ],
      +      "type": "object"
      +    },
      +    "maxItems": 500,
      +    "type": "array"
      +  }
      +}
    • addedInput schema / definitions / WaterfallComputeRequest / properties / model / required
      Added value: +[
      +  "common",
      +  "preferred"
      +]
    • changedInput schema / definitions / WaterfallComputeRequest / required
      Previous value: -[
      -  "model",
      -  "exitValuation"
      -]New value: +[
      +  "exitValuation",
      +  "model"
      +]
    • addedInput schema / definitions / WaterfallResult
      Added value: +{
      +  "properties": {
      +    "classes": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "converged": {
      +      "type": "boolean"
      +    },
      +    "convertibles": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "distributable": {
      +      "type": "number"
      +    },
      +    "exitValuation": {
      +      "type": "number"
      +    },
      +    "holders": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "iterations": {
      +      "type": "integer"
      +    },
      +    "perShare": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    },
      +    "series": {
      +      "items": {
      +        "type": "object"
      +      },
      +      "type": "array"
      +    }
      +  },
      +  "required": [
      +    "exitValuation",
      +    "distributable",
      +    "classes",
      +    "series",
      +    "convertibles",
      +    "holders",
      +    "perShare",
      +    "iterations",
      +    "converged"
      +  ],
      +  "type": "object"
      +}
    • changedInput schema / properties / inputs / additionalProperties
      Previous value: -trueNew value: +false
    • removedInput schema / properties / inputs / description
      Removed value: -"Fund Economics inputs: committed capital, fees, portfolio construction, carry tiers."
    • addedInput schema / properties / inputs / properties
      Added value: +{
      +  "carryPct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "committedCapital": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "fundOperationsYears": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "gpCommitCountedTowardInvested": {
      +    "type": "boolean"
      +  },
      +  "gpCommitPct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "mgmtFeePct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "mgmtFeeSchedule": {
      +    "items": {
      +      "maximum": 1,
      +      "minimum": 0,
      +      "type": "number"
      +    },
      +    "type": "array"
      +  },
      +  "mgmtFeesPeriodYears": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "newInvestmentPeriodYears": {
      +    "exclusiveMinimum": 0,
      +    "type": "number"
      +  },
      +  "operationalExpenseLines": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amount": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "label": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "label",
      +        "amount"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "operationalExpensesAnnual": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "operationalExpensesBreakout": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "audit": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "fundAdmin": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "other": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "tax": {
      +        "minimum": 0,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "fundAdmin",
      +      "tax",
      +      "audit",
      +      "other"
      +    ],
      +    "type": "object"
      +  },
      +  "organizationalExpenseLines": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amount": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "label": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "label",
      +        "amount"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "organizationalExpenses": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "partnershipExpenseLines": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "amount": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "label": {
      +          "type": "string"
      +        }
      +      },
      +      "required": [
      +        "label",
      +        "amount"
      +      ],
      +      "type": "object"
      +    },
      +    "type": "array"
      +  },
      +  "partnershipExpensesAnnual": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "portfolio": {
      +    "additionalProperties": false,
      +    "properties": {
      +      "avgCheckSizeFollow": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "avgCheckSizeNew": {
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "entryStages": {
      +        "items": {
      +          "additionalProperties": false,
      +          "properties": {
      +            "avgCheckSize": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "followOnChecks": {
      +              "items": {
      +                "additionalProperties": false,
      +                "properties": {
      +                  "avgCheckSize": {
      +                    "minimum": 0,
      +                    "type": "number"
      +                  },
      +                  "label": {
      +                    "type": "string"
      +                  },
      +                  "pctOfReserve": {
      +                    "maximum": 1,
      +                    "minimum": 0,
      +                    "type": "number"
      +                  }
      +                },
      +                "required": [
      +                  "avgCheckSize"
      +                ],
      +                "type": "object"
      +              },
      +              "type": "array"
      +            },
      +            "initialCheckLabel": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "numInvestments": {
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "pctAllocation": {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            },
      +            "reserveRatio": {
      +              "maximum": 1,
      +              "minimum": 0,
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "name",
      +            "numInvestments",
      +            "avgCheckSize"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "followPct": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      },
      +      "newPct": {
      +        "maximum": 1,
      +        "minimum": 0,
      +        "type": "number"
      +      }
      +    },
      +    "required": [
      +      "newPct",
      +      "followPct",
      +      "avgCheckSizeNew",
      +      "avgCheckSizeFollow"
      +    ],
      +    "type": "object"
      +  },
      +  "recycledCapitalPct": {
      +    "maximum": 1,
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "returnTiers": {
      +    "items": {
      +      "additionalProperties": false,
      +      "properties": {
      +        "holdingPeriodYears": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "multiple": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "name": {
      +          "minLength": 1,
      +          "type": "string"
      +        },
      +        "numCompanies": {
      +          "minimum": 0,
      +          "type": "number"
      +        },
      +        "pctOfCapital": {
      +          "maximum": 1,
      +          "minimum": 0,
      +          "type": "number"
      +        }
      +      },
      +      "required": [
      +        "name",
      +        "pctOfCapital",
      +        "multiple",
      +        "holdingPeriodYears"
      +      ],
      +      "type": "object"
      +    },
      +    "minItems": 1,
      +    "type": "array"
      +  },
      +  "solveCalledFromDeployment": {
      +    "type": "boolean"
      +  },
      +  "stageInputMode": {
      +    "enum": [
      +      "pct-capital",
      +      "num-companies"
      +    ],
      +    "type": "string"
      +  },
      +  "targetTotalInvestments": {
      +    "minimum": 0,
      +    "type": "number"
      +  },
      +  "tierFractional": {
      +    "type": "boolean"
      +  },
      +  "tierInputMode": {
      +    "enum": [
      +      "pct-capital",
      +      "num-companies"
      +    ],
      +    "type": "string"
      +  }
      +}
    • addedInput schema / properties / inputs / required
      Added value: +[
      +  "committedCapital",
      +  "gpCommitPct",
      +  "gpCommitCountedTowardInvested",
      +  "organizationalExpenses",
      +  "operationalExpensesAnnual",
      +  "mgmtFeePct",
      +  "recycledCapitalPct",
      +  "carryPct",
      +  "newInvestmentPeriodYears",
      +  "mgmtFeesPeriodYears",
      +  "portfolio",
      +  "returnTiers"
      +]
  11. Changed4 schema fields changed
    • addedInput schema / definitions
      Added value: +{
      +  "ApiKey": {
      +    "properties": {
      +      "created_at": {
      +        "type": "string"
      +      },
      +      "id": {
      +        "type": "string"
      +      },
      +      "key_prefix": {
      +        "description": "First chars of the token, for display.",
      +        "type": "string"
      +      },
      +      "last_used_at": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      },
      +      "name": {
      +        "type": "string"
      +      },
      +      "revoked_at": {
      +        "type": [
      +          "string",
      +          "null"
      +        ]
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "CapTableEvent": {
      +    "description": "One cap-table event, discriminated by `type`. Pass events in chronological order.",
      +    "discriminator": {
      +      "mapping": {
      +        "common_issuance": "#/components/schemas/CommonIssuanceEvent",
      +        "convertible_round": "#/components/schemas/ConvertibleRoundEvent",
      +        "manual_issuance": "#/components/schemas/ManualIssuanceEvent",
      +        "option_grant": "#/components/schemas/OptionGrantEvent",
      +        "option_pool": "#/components/schemas/OptionPoolEvent",
      +        "priced_round": "#/components/schemas/PricedRoundEvent",
      +        "secondary_sale": "#/components/schemas/SecondarySaleEvent",
      +        "warrant_round": "#/components/schemas/WarrantRoundEvent"
      +      },
      +      "propertyName": "type"
      +    },
      +    "oneOf": [
      +      {
      +        "$ref": "#/definitions/CommonIssuanceEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/OptionPoolEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/SecondarySaleEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/OptionGrantEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/ManualIssuanceEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/ConvertibleRoundEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/WarrantRoundEvent"
      +      },
      +      {
      +        "$ref": "#/definitions/PricedRoundEvent"
      +      }
      +    ]
      +  },
      +  "CommonIssuanceEvent": {
      +    "description": "Issue common stock (founders, employees).",
      +    "properties": {
      +      "grants": {
      +        "items": {
      +          "properties": {
      +            "id": {
      +              "type": "string"
      +            },
      +            "kind": {
      +              "enum": [
      +                "founder",
      +                "employee"
      +              ]
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "shares": {
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "name",
      +            "kind",
      +            "shares"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "type": {
      +        "const": "common_issuance"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "grants"
      +    ],
      +    "type": "object"
      +  },
      +  "ComputeRequest": {
      +    "properties": {
      +      "events": {
      +        "description": "Ordered list of cap-table events to fold.",
      +        "items": {
      +          "$ref": "#/definitions/CapTableEvent"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "events"
      +    ],
      +    "type": "object"
      +  },
      +  "ComputeResponse": {
      +    "properties": {
      +      "data": {
      +        "properties": {
      +          "final": {
      +            "description": "The final cap-table state.",
      +            "type": "object"
      +          },
      +          "snapshots": {
      +            "description": "One snapshot per event, in order.",
      +            "items": {
      +              "type": "object"
      +            },
      +            "type": "array"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "meta": {
      +        "properties": {
      +          "keyName": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "ConvertibleRoundEvent": {
      +    "description": "Issue SAFEs or notes; they convert to preferred at the next priced round.",
      +    "properties": {
      +      "convertibles": {
      +        "items": {
      +          "properties": {
      +            "accruedInterest": {
      +              "type": "number"
      +            },
      +            "capType": {
      +              "enum": [
      +                "pre-money",
      +                "post-money",
      +                "post-money-fixed",
      +                "post-money-fixed-after"
      +              ]
      +            },
      +            "conversionDate": {
      +              "description": "ISO date. Notes only.",
      +              "type": "string"
      +            },
      +            "dilutionMode": {
      +              "description": "Defaults to \"existing-only\".",
      +              "enum": [
      +                "existing-only",
      +                "all"
      +              ]
      +            },
      +            "discount": {
      +              "description": "0..1.",
      +              "type": "number"
      +            },
      +            "id": {
      +              "type": "string"
      +            },
      +            "interestRate": {
      +              "description": "Annual fraction (0.05 = 5%). Notes only.",
      +              "type": "number"
      +            },
      +            "investmentDate": {
      +              "description": "ISO date. Notes only.",
      +              "type": "string"
      +            },
      +            "kind": {
      +              "enum": [
      +                "safe",
      +                "note"
      +              ]
      +            },
      +            "mfn": {
      +              "type": "boolean"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "principal": {
      +              "type": "number"
      +            },
      +            "valuationCap": {
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "name",
      +            "kind",
      +            "principal"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "type": {
      +        "const": "convertible_round"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "convertibles"
      +    ],
      +    "type": "object"
      +  },
      +  "CreateKeyRequest": {
      +    "properties": {
      +      "name": {
      +        "description": "Label for the key, written into the audit trail.",
      +        "type": "string"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "Error": {
      +    "properties": {
      +      "error": {
      +        "properties": {
      +          "code": {
      +            "enum": [
      +              "unauthorized",
      +              "payment_required",
      +              "validation_failed",
      +              "engine_error",
      +              "method_not_allowed",
      +              "internal_error"
      +            ],
      +            "type": "string"
      +          },
      +          "details": {},
      +          "message": {
      +            "type": "string"
      +          },
      +          "retryable": {
      +            "type": "boolean"
      +          }
      +        },
      +        "required": [
      +          "code",
      +          "message",
      +          "retryable"
      +        ],
      +        "type": "object"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "FundComputeRequest": {
      +    "properties": {
      +      "inputs": {
      +        "additionalProperties": true,
      +        "description": "Fund Economics inputs: committed capital, fees, portfolio construction, carry tiers.",
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "inputs"
      +    ],
      +    "type": "object"
      +  },
      +  "ManualIssuanceEvent": {
      +    "description": "Escape hatch: issue exact shares for custom arrangements.",
      +    "properties": {
      +      "issuances": {
      +        "items": {
      +          "properties": {
      +            "class": {
      +              "enum": [
      +                "common",
      +                "preferred",
      +                "option-pool",
      +                "warrant"
      +              ]
      +            },
      +            "countMode": {
      +              "description": "Defaults to \"shares\".",
      +              "enum": [
      +                "shares",
      +                "percent"
      +              ]
      +            },
      +            "id": {
      +              "type": "string"
      +            },
      +            "issuePrice": {
      +              "type": "number"
      +            },
      +            "kind": {
      +              "enum": [
      +                "founder",
      +                "employee",
      +                "investor",
      +                "pool"
      +              ]
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "pctBasis": {
      +              "description": "Defaults to \"fully-diluted\".",
      +              "enum": [
      +                "fully-diluted",
      +                "issued"
      +              ]
      +            },
      +            "shares": {
      +              "type": "number"
      +            },
      +            "targetPct": {
      +              "description": "0..1, used when countMode=\"percent\".",
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "name",
      +            "kind",
      +            "class",
      +            "shares"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "type": {
      +        "const": "manual_issuance"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "issuances"
      +    ],
      +    "type": "object"
      +  },
      +  "OptionGrantEvent": {
      +    "description": "Grant options to people from one pool (fully-diluted-neutral).",
      +    "properties": {
      +      "grants": {
      +        "items": {
      +          "properties": {
      +            "id": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "shares": {
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "name",
      +            "shares"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "poolId": {
      +        "description": "Pool id to grant from; omit to draw the common pool.",
      +        "type": "string"
      +      },
      +      "type": {
      +        "const": "option_grant"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "grants"
      +    ],
      +    "type": "object"
      +  },
      +  "OptionPoolEvent": {
      +    "description": "Create or expand an option pool (shares authorized, not granted).",
      +    "properties": {
      +      "countMode": {
      +        "description": "Defaults to \"shares\".",
      +        "enum": [
      +          "shares",
      +          "percent"
      +        ]
      +      },
      +      "id": {
      +        "description": "Pool id, so an option_grant can name which pool it draws from.",
      +        "type": "string"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "shares": {
      +        "type": "number"
      +      },
      +      "strikePrice": {
      +        "type": "number"
      +      },
      +      "targetPct": {
      +        "description": "0..1 of post-event fully diluted, used when countMode=\"percent\".",
      +        "type": "number"
      +      },
      +      "type": {
      +        "const": "option_pool"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "shares"
      +    ],
      +    "type": "object"
      +  },
      +  "PricedRoundEvent": {
      +    "description": "A priced equity round: new money buys newly issued preferred.",
      +    "properties": {
      +      "investments": {
      +        "items": {
      +          "properties": {
      +            "amount": {
      +              "type": "number"
      +            },
      +            "antiDilution": {
      +              "enum": [
      +                "weighted-average",
      +                "full-ratchet"
      +              ]
      +            },
      +            "antiDilutionMethod": {
      +              "description": "Defaults to \"conversion-ratio\".",
      +              "enum": [
      +                "conversion-ratio",
      +                "new-shares"
      +              ]
      +            },
      +            "id": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "proRata": {
      +              "description": "If true, amount is back-solved to hold pre-round ownership; match by id.",
      +              "type": "boolean"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "name",
      +            "amount"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "poolMode": {
      +        "description": "Legacy. Prefer pools[].",
      +        "enum": [
      +          "pre",
      +          "post",
      +          "custom"
      +        ]
      +      },
      +      "poolPostPct": {
      +        "description": "Legacy. Prefer pools[].",
      +        "type": "number"
      +      },
      +      "pools": {
      +        "description": "Option pool top-ups for the round (preferred over the legacy targetPoolPct trio).",
      +        "items": {
      +          "properties": {
      +            "countMode": {
      +              "description": "Defaults to \"percent\".",
      +              "enum": [
      +                "shares",
      +                "percent"
      +              ]
      +            },
      +            "label": {
      +              "type": "string"
      +            },
      +            "mode": {
      +              "description": "\"pre\" dilutes existing only; \"post\" dilutes new money too.",
      +              "enum": [
      +                "pre",
      +                "post"
      +              ]
      +            },
      +            "pct": {
      +              "description": "0..1 of post-money fully diluted, when countMode=\"percent\".",
      +              "type": "number"
      +            },
      +            "poolId": {
      +              "description": "Set to track this pool separately (its own cap-table row).",
      +              "type": "string"
      +            },
      +            "shares": {
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "mode"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      },
      +      "preMoneyValuation": {
      +        "type": "number"
      +      },
      +      "targetPoolPct": {
      +        "description": "Legacy. Prefer pools[].",
      +        "type": "number"
      +      },
      +      "type": {
      +        "const": "priced_round"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "preMoneyValuation",
      +      "investments"
      +    ],
      +    "type": "object"
      +  },
      +  "ResultResponse": {
      +    "properties": {
      +      "data": {
      +        "properties": {
      +          "result": {
      +            "type": "object"
      +          }
      +        },
      +        "type": "object"
      +      },
      +      "meta": {
      +        "properties": {
      +          "keyName": {
      +            "type": "string"
      +          }
      +        },
      +        "type": "object"
      +      }
      +    },
      +    "type": "object"
      +  },
      +  "SecondarySaleEvent": {
      +    "description": "Transfer existing shares from one holder to another.",
      +    "properties": {
      +      "class": {
      +        "description": "Defaults to \"common\".",
      +        "enum": [
      +          "common",
      +          "preferred",
      +          "option-pool",
      +          "warrant"
      +        ]
      +      },
      +      "fromId": {
      +        "type": "string"
      +      },
      +      "label": {
      +        "type": "string"
      +      },
      +      "round": {
      +        "description": "Which series the shares come from (e.g. \"Series A\").",
      +        "type": "string"
      +      },
      +      "shares": {
      +        "type": "number"
      +      },
      +      "toId": {
      +        "type": "string"
      +      },
      +      "toName": {
      +        "type": "string"
      +      },
      +      "type": {
      +        "const": "secondary_sale"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "fromId",
      +      "toId",
      +      "toName",
      +      "shares"
      +    ],
      +    "type": "object"
      +  },
      +  "WarrantRoundEvent": {
      +    "description": "Issue warrants (right to buy shares at a set price); counts toward fully diluted now.",
      +    "properties": {
      +      "label": {
      +        "type": "string"
      +      },
      +      "type": {
      +        "const": "warrant_round"
      +      },
      +      "warrants": {
      +        "items": {
      +          "properties": {
      +            "countMode": {
      +              "enum": [
      +                "shares",
      +                "value"
      +              ]
      +            },
      +            "id": {
      +              "type": "string"
      +            },
      +            "name": {
      +              "type": "string"
      +            },
      +            "parValue": {
      +              "type": "number"
      +            },
      +            "priceDiscount": {
      +              "description": "0..1 discount on the source round price.",
      +              "type": "number"
      +            },
      +            "priceFromRound": {
      +              "description": "Source round label to price off, when variable.",
      +              "type": "string"
      +            },
      +            "purchaseClass": {
      +              "enum": [
      +                "common",
      +                "preferred"
      +              ]
      +            },
      +            "purchasePrice": {
      +              "type": "number"
      +            },
      +            "purchaseRound": {
      +              "description": "For a preferred warrant, the series it targets.",
      +              "type": "string"
      +            },
      +            "shares": {
      +              "description": "When countMode=\"shares\".",
      +              "type": "number"
      +            },
      +            "totalValue": {
      +              "description": "When countMode=\"value\": shares = totalValue / purchasePrice.",
      +              "type": "number"
      +            }
      +          },
      +          "required": [
      +            "id",
      +            "name",
      +            "purchaseClass",
      +            "countMode"
      +          ],
      +          "type": "object"
      +        },
      +        "type": "array"
      +      }
      +    },
      +    "required": [
      +      "type",
      +      "label",
      +      "warrants"
      +    ],
      +    "type": "object"
      +  },
      +  "WaterfallComputeRequest": {
      +    "properties": {
      +      "exitValuation": {
      +        "description": "Total exit proceeds to distribute.",
      +        "type": "number"
      +      },
      +      "model": {
      +        "additionalProperties": true,
      +        "description": "Exit-waterfall model: preferred series, common holders, options, warrants, convertibles.",
      +        "type": "object"
      +      }
      +    },
      +    "required": [
      +      "model",
      +      "exitValuation"
      +    ],
      +    "type": "object"
      +  }
      +}
    • addedInput schema / properties / idempotency_key
      Added value: +{
      +  "description": "Optional retry key; reuse only with identical input.",
      +  "type": "string"
      +}
    • addedInput schema / properties / inputs / additionalProperties
      Added value: +true
    • changedInput schema / properties / inputs / description
      Previous value: -"Fund inputs: committed capital, fees, portfolio construction, carry tiers. See list_concepts and the Fund Economics template for fields."New value: +"Fund Economics inputs: committed capital, fees, portfolio construction, carry tiers."
  12. Added

TDQS

Score is being calculated.

Try in Browser

Glama MCP Gateway

Add one secure layer between your agents and this server.

Resources