PIPE / Private Placement Deals
get_private_placementsPIPE / private-placement deal feed: US-listed issuers raising money through unregistered placements (PIPEs, registered directs with warrants, convertible notes and preferreds, equity lines / ELOCs, SEPA pre-paid advances), each deal graded 0-3 for how toxic -- how price-dependent and dilutive -- its terms are.
One row per 8-K private-placement deal event: an announcement (the securities purchase agreement is signed and disclosed), a closing (funds received), an amendment or price reset, or a termination; event_kind says which. announce_date is the 8-K filing date and is the feed's clock; event_date and closing_date are the dates the filing states. A deal announced and later closed is two rows sharing ticker and cik under different accession_no values. Deal economics served per row: gross_proceeds_usd (or committed_capacity_usd for an equity line), shares_sold, price_per_share_usd, discount_to_prior_close_pct, price_basis (fixed / variable_discount_to_market / lesser_of / unstated) with the variable discount, lookback window and floor, reset_provision, warrant_coverage_pct with exercise price and term, has_prefunded_warrants, original_issue_discount_pct, the stated investors / investor type / placement agent / exemption, the resale registration deadline and (once filed) the resale S-1 / S-3 form and dates, and market_cap_at_announce_usd with proceeds_pct_of_market_cap.
toxicity_score, the 0-3 scale, derived from the stated terms: 3 = variable-price conversion (priced off a discount to future VWAP / lowest close, or the lesser of a fixed price and market) or a VWAP-priced equity line -- dilution grows as the price falls; 2 = a ratchet / price-reset provision, or >= 100% warrant coverage at >= 15% discount to the prior close, or original issue discount >= 10%; 1 = any common warrants, or a >= 10% discount, or any OID, or an equity line without a stated pricing formula; 0 = fixed price at or above market with at most pre-funded warrants; NULL = the terms live in an exhibit v1 did not read. The grade summarizes structure, not the issuer's prospects: a 0 can still be a large raise by a struggling company, which is what proceeds_pct_of_market_cap is there to show.
Requires an Alphanume Pro API key. There is no date clamp on this route: a Pro key sees the full history.
Honest limits, stated plainly. v1 reads the 8-K body, not its exhibits, so a deal whose economics live only in the attached purchase agreement carries price_basis='unstated', terms_in_exhibit_flag=1 and a NULL toxicity_score -- filter min_toxicity to keep only graded rows, or read terms_in_exhibit_flag before treating a NULL as benign. Investor names are frequently undisclosed ("certain institutional investors"); investor_names_stated is what the filing says, nothing more. discount_to_prior_close_pct needs a Polygon daily bar for the prior session and is NULL for unlisted or brand-new tickers and for variable-priced deals. market_cap_at_announce_usd and proceeds_pct_of_market_cap are NULL when the cap history does not cover the ticker; resale_* columns are NULL until a resale registration is filed / effective. SPAC-related placements (a PIPE into a de-SPAC, trust-extension financing) are flagged with is_spac_related=1, not removed. Rows are never dropped for missing enrichment. confidence (0-1) is a per-row quality signal for the extracted terms. first_seen_at is when our pull first observed the 8-K (synthetic = filing time for rows backfilled before launch).
Default order: newest announce_date first, then ticker, so the first page is the most recent deals.
Pagination: results are capped at 50,000 rows per request; when the response has has_more=true, pass next_cursor's cursor_date, cursor_ticker and cursor_id back to fetch the next page.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| date | No | Exact date, YYYY-MM-DD. Cannot be combined with the date range parameters. | |
| spac | No | 'true' = only SPAC-related placements (PIPE into a de-SPAC, trust-extension financing); 'false' = operating-company deals only. Omit for both. | |
| ticker | No | Ticker symbol filter, e.g. 'AAPL'. Case-insensitive. | |
| date_gt | No | Start of date range, exclusive (YYYY-MM-DD). | |
| date_lt | No | End of date range, exclusive (YYYY-MM-DD). | |
| date_gte | No | Start of date range, inclusive (YYYY-MM-DD). | |
| date_lte | No | End of date range, inclusive (YYYY-MM-DD). | |
| max_rows | No | Maximum data rows to return to the client (applied after the API responds). Default 500. Use 0 for no cap. Prefer narrowing with date/ticker filters over raising this. | |
| cursor_id | No | Pagination: the 'cursor_id' value from the previous response's next_cursor. | |
| structure | No | Deal structure: 'common' = registered-direct-style common stock; 'units_with_warrants' = common (or pre-funded warrants) sold with common warrants; 'convertible_note' / 'convertible_preferred' = convertible instruments; 'equity_line' = an at-the-issuer's-option purchase facility (ELOC); 'sepa_prepaid_advance' = a standby equity purchase agreement with a pre-paid advance; 'other'. | |
| event_kind | No | Which deal event the 8-K discloses: 'announcement' (purchase agreement signed), 'closing' (funds received), 'amendment_or_reset' (terms changed or conversion / exercise price reset), 'termination', or 'unstated'. | |
| cursor_date | No | Pagination: the 'cursor_date' value from the previous response's next_cursor. Send with cursor_ticker and cursor_id. | |
| has_warrants | No | 'true' = only deals with common-warrant coverage > 0%; 'false' = deals with no (or zero) common warrants. Pre-funded warrants do not count as coverage. | |
| min_toxicity | No | Only rows with toxicity_score >= this value (integer 0-3). Rows with a NULL score (terms in an unread exhibit) are excluded whenever this is set. | |
| cursor_ticker | No | Pagination: the 'cursor_ticker' value from the previous response's next_cursor (may be an empty string). | |
| updated_since | No | Only rows updated at or after this date/datetime (YYYY-MM-DD or YYYY-MM-DD HH:MM:SS) -- for incremental syncs. | |
| min_confidence | No | Only rows with extraction confidence >= this value (0-1), the model's own estimate of how faithfully the served terms reflect the filing. | |
| variable_price | No | 'true' = only deals priced off a discount to future market price (variable_discount_to_market or lesser_of); 'false' = fixed-price deals only. Omit for both. |