Alphanume

Insights

How to Track S-1 and Secondary Offering Filings via API

Alphanume Team · May 30, 2026

Pull structured dilution filings from Alphanume and screen for offerings that are large relative to a company's float.

Reading one S-1 is manageable. Tracking registration and offering activity across the whole market in real time is not, which is why most traders miss dilution events until the stock has already reacted. The Alphanume Stock Dilution endpoint delivers these filings as clean JSON so you can screen them programmatically.

The endpoint
GET https://api.alphanume.com/v1/dilution

Authenticate with ?api_key=alp_your_key or an X-API-Key header. The key is optional for a limited subset. Filter by date or by the range parameters date_gte, date_lte, date_gt, and date_lt.

Pull recent filings
import requests

r = requests.get(
    "https://api.alphanume.com/v1/dilution",
    params={"date_gte": "2026-05-01", "api_key": "alp_your_key"},
)
for row in r.json()["data"]:
    print(row["date"], row["ticker"], row["shares_offered"], row["market_cap_at_filing"])
Screen for material dilution

The signal is strongest when the offering is large relative to the company's size. Each record carries shares_offered and market_cap_at_filing, so you can rank filings by dilutive impact and focus on names where the new supply is a meaningful fraction of the float. The dilutive and resale flags let you separate true new-share issuance from resale registrations.

Track the lifecycle

A filing is not the end of the story. The became_effective, effective_date, offering_withdrawn, and withdrawal_date fields let you follow each registration from filing to resolution. For backtests, the point-in-time design means you can reconstruct exactly what was known on any historical date, with no lookahead.

A daily workflow
  • Each morning, pull filings from the past day or two.
  • Rank by shares_offered relative to market_cap_at_filing.
  • Cross-reference price to find names that have not yet reacted to the filing.
  • Follow the lifecycle fields to time around effectiveness.
Access and limits

Stock Dilution is on the free tier as a rolling 30-day delayed window, Pro at 600 requests per minute. Start with a free Alphanume API key and the API documentation, or explore it on Alphanume.

From filing feed to daily scan

Reading one S-1 is easy; monitoring registration and offering activity across thousands of companies in real time is not, which is why most traders only notice dilution after the stock has already reacted. Delivered as structured JSON, the same flow becomes a daily scan: pull yesterday's filings, rank by offering size relative to market cap, and surface the names where new supply is large enough to matter.

The lifecycle fields turn a one-off alert into a timeline you can trade around. became_effective, effective_date, offering_withdrawn, and withdrawal_date let you follow each registration to its resolution, while the point-in-time design means a historical pull returns the filings as they were known then, with no lookahead leaking into your study.

Frequently asked questions

What is the dilution endpoint?

GET https://api.alphanume.com/v1/dilution. Authenticate with ?api_key=alp_your_key or an X-API-Key header. The key is optional for a limited subset.

How do I screen for material offerings?

Rank filings by shares_offered relative to market_cap_at_filing, so you focus on offerings that are large compared to the company's size.

How do I follow a filing to its outcome?

Use the lifecycle fields: became_effective, effective_date, offering_withdrawn, and withdrawal_date track each registration from filing to resolution.

Can I reconstruct what was known on a past date?

Yes. The point-in-time design means a historical query returns the filings as they were known then, with no lookahead, which is what backtests need.

How do I read the source document?

Each record includes filing_url, a direct link to the SEC filing, so you can confirm the offering terms when you need the detail.