Extract SAFE Terms
formation_extract_safe_termsReads a SAFE PDF and returns its terms WITHOUT saving anything. Always call this before ImportSAFE and show the result to the user for confirmation — never import a SAFE the user has not seen. Present one block per document, largest investment first, with exactly these fields in this order: investor name, investment amount, valuation cap, discount, post-money or pre-money, date, and which existing stakeholder it will be matched to (or that a new one will be created). Then state the effect on the cap table as three figures — stakeholders, SAFEs and SAFE capital now, what this import adds, and the totals after — and ask the user to confirm. Report the confidence score and every warning verbatim in plain language rather than as codes. Two things block the import until the user resolves them: a missing date (ask for it; a SAFE is never imported without one) and a company name on the document that differs from the company being imported into (say both names and ask the user to confirm it belongs here). This is the same review the web upload screen performs, so keep the wording and order identical.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| formationId | Yes | UUID value wrapper. | |
| sourceS3Uri | No |
Output Schema
| Name | Required | Description | Default |
|---|---|---|---|
| warnings | No | ||
| safeTerms | No | ||
| companyName | No | ||
| formationId | No | UUID value wrapper. | |
| sourceS3Uri | No | ||
| investorName | No | ||
| ocrConfidence | No |