Answer filing questions with identifiable documents, reporting periods, and source links. Separate reported facts, management statements, and analytical interpretations; a filing lookup alone does not support a buy/sell conclusion.
Setup
Set CRAWLORA_API_KEY to your key from crawlora.net.
Run the bundled scripts/crawlora.sh from this skill directory or by absolute
path. It uses x-api-key at https://api.crawlora.net/api/v1; keep the key in
the environment. Read reference/endpoints.md for live
SEC tools and the selected stored company/position datasets.
Resolve, retrieve, compare
-
Resolve the correct legal entity with
/sec/company/search?q=.... Preserve the CIK, ticker when available, and company name; tickers and names can change. -
Use
/sec/company/submissionswithcikorticker, optionalform,from,to, andlimit(max 500). One company identifier is required even when the catalog marks each individual field optional. Filing-date filters are not reporting-period filters. Resolve accession numbers from results. -
Retrieve
/sec/filingwithaccessionplus the company identifier. For a 10-K/10-Q/8-K analysis,/sec/filing/sectionsacceptsitemsandmax_chars(default 20,000; max 200,000 per section). Item numbering differs by form; read the returned form/title rather than assuming every Item 7 is MD&A. -
Compare equivalent sections from the requested filings. If
truncated=true, increase the cap within limits or inspect the primary document using/web/scrape. If text is still unavailable, narrow the claim. Never conclude a risk disappeared solely because it is absent from truncated extraction. -
For numeric comparisons,
/sec/financialssupportsstatement=income,balance, orcash_flow;period=annualorquarterly;limitup to 20. Preserve fiscal period, end date, currency, form, and returned source URL. Normalized values use latest-filed figures per period and may reflect restatements; they are not necessarily what was known on a historical date. -
Use the specialized surfaces only when needed:
Question Surface and constraint Find filings mentioning a topic /sec/full-text-search; confirm hits in the actual filingCompany overview /sec/company/intelligence; requested unavailable enrichments appear indegradedInsider disclosures /sec/insiderwith company identifier; inspect transaction codes/roles instead of calling every acquisition a market purchaseManager's holdings /sec/institutional-holdingsrequires the manager's CIK, not the issuer's ticker; returns latest 13F-HR holdingsCross-company XBRL fact /sec/framesrequiresconceptandperiod; match taxonomy/unit and distinguish duration from instant framesBulk company/position discovery Selected /datasets/sec-companies/*and/datasets/sec-institutional-positions/*; discover facet values and label these stored snapshots
scripts/crawlora.sh /sec/company/search q=Apple
scripts/crawlora.sh /sec/company/submissions ticker=AAPL form=10-K limit=2
# Use a returned accession for filing/sections; do not reuse a stale example ID.
scripts/crawlora.sh /sec/financials ticker=AAPL statement=income period=annual limit=2
Evidence and limits
Return a brief or comparison with entity/CIK, accession, form, filing date, reporting date/period, cited section or fact, source URL, and retrieval time. Show calculations and distinguish missing values from zeros.
- Match currency, units, duration, and fiscal calendars. A quarterly cash-flow disclosure can be year-to-date; do not assume it is a standalone quarter. Calendar frames can contain different start/end dates across filers. Verify comparability before calculating growth or ranking companies.
- Check amendments and restatements when the question depends on historical changes. An incomplete recent-submissions window is not an exhaustive archive.
- 13F is a delayed reporting snapshot with defined coverage, not a current complete portfolio or a record of every trade. Do not infer trade dates or investor intent from a change in reported holdings alone.
- Dataset results may lag live filings. Keep data-as-of dates distinct from
collection time. Inspect
degradedrather than silently filling enrichment gaps. - Back off on
429, retry a transient5xxonce, stop on401/403, and check applicationcode. Preserve partial evidence with explicit gaps.
For XBRL context and frame semantics, see the SEC's API documentation.