get_dilution_instruments
One instrument family's rows with per-field SEC citations (accession number, filing date and the verbatim sentence each figure was read from). Families: warrants, convertibles, preferred, shelfs, atms, elocs, s1_offerings, equity_plans, exchangeables, recent_offerings, rights; each call returns one family. `withheldRows` / `withheldRowCount`: rows that could not be verified were blanked, so every family total is a lower bound. An empty rows array on a covered company is a measured "none found in the filings read"; an unavailable response is not. `disputed` status (warrants / convertibles / preferred / exchangeables): the issuer's latest filing disputes the instrument; it is shown and excluded from totals (`summary.disputedInstrumentCount` / `disputedInstrumentShares`), and it is a disputed claim, neither outstanding nor retired. `contingencyTrigger: "event_of_default"`: the instrument is still outstanding and counted; it converts only on an event of default, which does not make it non-dilutive. Convertibles with `principalBasis` `aggregate_only` / `fair_value_only` / `conflict` / `undisclosed_since_issue`: the current balance is not measured (`principalOutstanding` null), and `principalOriginal` is the original principal, not the current balance. `conversionBasis: "formula_unanchored"`: no share count is computable, so the share count is unquantified, not zero. Convertibles / preferred `sharesIssuableBasis: "conflict_upper_bound"`: `sharesIssuableIfConverted` is an upper bound (up to that many shares) and `sharesIssuableIssuerStated` is the issuer's own count; the higher figure is not the issuer's count. Warrants with null `sharesUnderlying` beside `aggregateExerciseValueDollars` / `exercisePriceFloor` / `sharesCeilingAsFiled` are dollar-denominated or capped: `summary.warrantSharesCeiling` is a ceiling, not a count, and is not in `potentialNewShares`. `warrantCount` counts warrants, not shares. Shelfs: `babyShelfCurrentCapacityDollars` is a stored, dated figure, not today's headroom: it is as of `babyShelfCapacityAsOf` (null = undated, not current), `babyShelfCapacityBasis` names its float, and it is not the live raisable-now computation. Rights (SPAC unit rights): `rightsCount` counts rights, not shares; `sharesPerRight` is the printed fraction of a share per right; `sharesUnderlying` is the share count (null = unsized, not 0), delivered on the initial business combination and lapsing if none closes. A snapshot stored before this family existed returns `examined: false` for rights, meaning not analysed, not "no rights". Returns HTTP 200 for unavailable data; the `available` and `reason` fields say why. `not_covered` means this company has not been analysed yet, not that it has no dilution; an outage is a 5xx. A null, absent or withheld value means the figure was not measured; it does not mean "no dilution", "no warrants", "no shelf" or zero. A numeric 0 is a measured zero, so availability is carried by the availability, withheld and reason fields, not by the value. Figures are as of `meta.asOfDate`, from filings read through `meta.filingsThrough` (a stale date predates anything filed since). Share counts are on one split basis; a row that cannot be rebased is omitted and counted rather than published on a mixed basis. Included in Signal8 Pro: without it the call returns 403 FEATURE_NOT_AVAILABLE with `requiredTier: "pro"` (a tier upgrade; there is no add-on to buy).
get_dilution_risk
Dilution pressure score: 0-100 with a seven-component breakdown (shelf capacity, ATM/equity-line capacity, warrants in the money, convertible proximity, cash burn urgency, historical dilution, toxic financing), plus four risk levels: overall, offering ability, overhead supply, cash need. Score: components whose inputs could not be measured are dropped from the denominator, so `score` is out of `scoreMaxMeasured`, not out of 100 (58 may be 58 out of 85), and `scoreUnmeasuredComponents` names the excluded components. A low numerator over a reduced denominator is not a low-risk reading. `scoreDenominatorThin: true` (under 70 measured points) marks a partial reading (N of M measured). A non-null `scoreWithheldReason` (e.g. `no_dilution_snapshot`) means there is no score, not a score of zero. With no filed share count, the share-count and market-cap components rest on `details.sharesOutstandingEstimate` {shares, kind, asOf, source}, and `details.marketCapSource` is `"derived_price_x_estimated_os"`: those components rest on an estimate. Levels: when `levelsAreLowerBound` (always present) is true, the levels named in `levelsLowerBoundScope` are a lower bound (floors), not measurements: "medium" means at least medium. Levels outside that scope are measured. `levelsLowerBoundReason` determines which levels are floored: `unquantified_live_instruments` floors overall and overheadSupply; `offering_capacity_unknown` and `market_cap_unmeasured` floor overall and offeringAbility, not `overheadSupply`; `os_growth_span_short`, `os_growth_issuance_floor` and `os_growth_rebased_partial` floor historical and overall; `overhead_capacity_unquantified` floors overheadSupply and overall. `details.levelBounds` per level: `floor` (unsized instruments at zero), `ceiling` (at filed maximum; null when some instrument has none), `exact`, `bestEstimate`, `estimated`, `estimateBasis`. An estimated level is a best estimate between its floor and ceiling, not a measurement. A null `overall` with a non-null `levelsWithheldReason` is withheld, not low. `offeringAbility` is a capability profile, not pressure today: a live ATM or equity line with a measured $0 drawable (e.g. clamped by the I.B.6 cap) reads medium while the score prices the $0, and it does not mean the company cannot raise. `atmRemainingBasis` / `elocRemainingBasis` values `total_minus_reported_sales` and `total_no_sales_reported` mark "up to" figures. `overheadSupply` is potential dilution excluding shelf as a % of shares outstanding: warrants, convertibles and preferred at gross counts, plus live ATM remaining (baby-shelf clamped) and equity-line remaining at the current price, plus live S-1 shares, plus `details.registeredResaleOverhangShares`. Low up to 20%, Medium 20-50%, High over 50%. `details.overheadSupplyBasis` itemises the components (null = not measured) and `unquantified`; it is not the treasury-netted `inTheMoneySupplyPct` / `totalDilutiveShares`. When `details.osGrowthRate` is null, `details.osGrowthFacts` {fromShares, fromDate, toShares, toDate, splitsInWindow, basis} is a fact, not a rating; with `basis: "as_filed"` the two counts are on different split bases and are not a growth comparison. Returns HTTP 200 for unavailable data; the `available` and `reason` fields say why. `not_covered` means this company has not been analysed yet, not that it has no dilution; an outage is a 5xx. A null, absent or withheld value means the figure was not measured; it does not mean "no dilution", "no warrants", "no shelf" or zero. A numeric 0 is a measured zero, so availability is carried by the availability, withheld and reason fields, not by the value. Figures are as of `meta.asOfDate`, from filings read through `meta.filingsThrough` (a stale date predates anything filed since). Share counts are on one split basis; a row that cannot be rebased is omitted and counted rather than published on a mixed basis. Included in Signal8 Pro: without it the call returns 403 FEATURE_NOT_AVAILABLE with `requiredTier: "pro"` (a tier upgrade; there is no add-on to buy).
get_dilution_snapshot
Dilution snapshot header (the largest dilution payload): summary totals (potential new shares, their % of shares outstanding, per-family totals), the cash position (anchor cash, monthly burn, estimated current cash, runway months), the float block, and `meta` provenance. Instrument rows are not included. Cash is in the filer's reporting currency: `cashPosition.currency` is ISO 4217 (null = not determined), and `cashPosition.currencySource: "presumed_usd"` is a presumption, not a measurement. Runway months are currency-neutral. Float: a non-null `floatWithheldReason` means the tradeable float was not measured, and no float figure is stated. A declined float block (`available: false`) may carry `refusal.withheldReason`, the same value the standalone float data serves. `tradeableFloatCeiling` is an upper bound, not a float: the float is at most that figure, and the ceiling is not an input to a market capitalisation, percent-of-float, short-interest ratio or comparison. Bounded totals: a null total (`potentialNewShares`, `totalWarrantShares`, `totalConvertibleShares`, `totalEquityPlanShares`, `totalExchangeableShares`, `totalRightsShares`, `potentialDilutionPercent`) may sit beside `<key>Bound: "ceiling"`, `<key>Ceiling` and `<key>Floor`: the total is at most the ceiling, the floor is the measured part, and the ceiling is not the total. With `potentialDilutionPercentBoundReason: "stated_count_denominator"` there is no floor: the ceiling divides by the last stated share count (as of `potentialDilutionPercentCeilingShareCountAsOf`), so the figure is at most that percentage against the count stated as of that date. Approximate totals: `<total>Approximate: true` (e.g. `potentialNewSharesApproximate`, `potentialDilutionPercentApproximate`, `totalWarrantSharesApproximate`) means that total includes an issuer-stated approximate count ("approximately 16.1 million shares"): state it as approximately / ≈ that figure, never as exact. `statedCountSizedRows[]` lists every row sized from its own cited filing text (rule, shares, approximate, quote, accession). `notMeasuredReasons[]` ({field, code, text, detail, expected {form, dueDate, status}}) gives the reason a figure is null; it is an explanation, not a value. `expectedFilings[]` lists the next periodic report(s): `status: "late"` means due by `dueDate` with none on file as of `checkedOn` and carries no information about why; `dueDate: null` means not computed. A `kind: "annual_meeting"` row (Nasdaq 5620(a) / NYSE 302.00) with status "late" means no 8-K Item 5.07 vote results are on file, not that a meeting was missed. SPAC rights: `totalRightsShares` (present only when the snapshot examined rights) is the shares delivered to holders of SPAC unit rights on the initial business combination; it is included in `potentialNewShares`, and the rights lapse if no combination closes. `rightsOverlapWarrantRows` > 0 means a warrant row also names rights, so the rights total and the headline are withheld (null) rather than counted twice. A runway figure beside `goingConcern: true` is a contradiction the auditors flagged: the going-concern doubt qualifies the runway. Returns HTTP 200 for unavailable data; the `available` and `reason` fields say why. `not_covered` means this company has not been analysed yet, not that it has no dilution; an outage is a 5xx. A null, absent or withheld value means the figure was not measured; it does not mean "no dilution", "no warrants", "no shelf" or zero. A numeric 0 is a measured zero, so availability is carried by the availability, withheld and reason fields, not by the value. Figures are as of `meta.asOfDate`, from filings read through `meta.filingsThrough` (a stale date predates anything filed since). Share counts are on one split basis; a row that cannot be rebased is omitted and counted rather than published on a mixed basis. Included in Signal8 Pro: without it the call returns 403 FEATURE_NOT_AVAILABLE with `requiredTier: "pro"` (a tier upgrade; there is no add-on to buy).