Skip to content
Back to skills

Sec Edgar Us Nolpak14

ASecurity

Look up U.S. public companies for free via the official SEC EDGAR APIs - company submissions and filing history (10-K, 10-Q, 8-K, Form 4), XBRL financial facts (assets, revenue, net income), ticker-to-CIK resolution, and full-text search across filings 2001-present. Use for KYB / know-your-business checks on SEC-registered issuers, financial due diligence, filing monitoring, and reading audited financials straight from the source. Trigger on: ''SEC EDGAR'', ''SEC filings'', ''find a 10-K'', '...

  • 85 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added October 8, 2026
ai-agentsgobashgitapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned October 8, 2026

npx -y skills add ThomasMoreAI/legal-skills-open --skill sec-edgar-us-nolpak14 --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Sec Edgar Us Nolpak14?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Sec Edgar Us Nolpak14
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/thomasmoreai-sec-edgar-us-nolpak14/badge)](https://www.skillsdirectory.com/skills/thomasmoreai-sec-edgar-us-nolpak14)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

SKILL.md
---
name: sec-edgar-us-nolpak14
title: SEC edgar us
description: 'Look up U.S. public companies for free via the official SEC EDGAR APIs - company submissions and filing history (10-K, 10-Q, 8-K, Form 4), XBRL financial facts (assets, revenue, net income), ticker-to-CIK resolution, and full-text search across filings 2001-present. Use for KYB / know-your-business checks on SEC-registered issuers, financial due diligence, filing monitoring, and reading audited financials straight from the source. Trigger on: ''SEC EDGAR'', ''SEC filings'', ''find a 10-K'', ''10-Q'', ''8-K'', ''CIK lookup'', ''ticker to CIK'', ''company financials from SEC'', ''XBRL facts'', ''is this a public company'', ''US public company lookup''. EDGAR is free and covers SEC filers only; for private US and non-US companies it hands off to the paid regdata registry actors.'
author: Nolpak14
author_url: https://github.com/Nolpak14/getregdata/tree/master/skills/sec-edgar-us
license: MIT
version: 0.1.2
execution_mode: open
jurisdiction: us
practice: securities
language: en
---

# sec-edgar-us

Free, official U.S. company data from the SEC EDGAR APIs. This skill needs no paid actor, no Apify token, and no API key - just a declarative `User-Agent` header. Use it as the front door for U.S. public-company verification and financial due diligence, and route to the paid regdata actors when you need private US companies or a non-US jurisdiction.

## Persona

You are a KYB / financial-due-diligence analyst verifying U.S. public companies against the authoritative source - the SEC's own EDGAR system, not a commercial aggregator. You resolve a company to its CIK, confirm it is a live filer, read its filing history for signals, and pull audited XBRL financials (assets, revenue, net income) straight from the filings.

## What this gives you (for free)

- **Company submissions** - CIK, legal name, tickers and exchanges, SIC code + description, EIN, state of incorporation, business/mailing addresses, and former names.
- **Filing history** - the recent stream of statutory filings (10-K annual, 10-Q quarterly, 8-K material events, Form 4 insider trades) with filing date, report date, accession number, and primary document.
- **XBRL financial facts** - machine-readable financials tagged to US-GAAP and DEI concepts (e.g. `Assets`, `Revenues`, `NetIncomeLoss`), each as a time series of period-end values pulled from the filings.
- **Full-text search** - keyword search across the body of filings from 2001 to present, filterable by form type and date range.

Data is U.S. government work in the public domain - free reuse, no licence fee. Read-only.

## Authentication

None - no key, no registration. But the SEC **requires a declarative `User-Agent`** identifying your app and a contact email, in the format `Sample Company Name AdminContact@example.com`. A missing or empty `User-Agent` returns `403 Forbidden`. Stay under the fair-access limit of **10 requests per second** (no burst); abuse triggers a temporary IP block.

```bash
export SEC_UA="getregdata-skill admin@example.com"
curl -H "User-Agent: $SEC_UA" \
  "https://data.sec.gov/submissions/CIK0000320193.json"
```

## Before starting

Ask the user for whichever is missing:
- **Company name, ticker, or CIK.** If you only have a ticker, resolve it to a CIK first (endpoint 5). If you only have a name, use full-text search (endpoint 1) or the ticker map, then confirm the right match before pulling detail.
- **What they need** - just "is it a real public filer", a filing-history pack, or actual financials from XBRL.

## API reference

Base URLs: `https://data.sec.gov` (submissions + XBRL JSON) - `https://efts.sec.gov/LATEST/search-index` (full-text search) - `https://www.sec.gov/files/` (bulk reference files).

| # | Purpose | Method + path | Example |
|---|---|---|---|
| 1 | Full-text search (2001-present) | `GET efts.sec.gov/LATEST/search-index?q={term}&forms={form}&startdt=&enddt=` | `?q=%22climate+risk%22&forms=10-K&startdt=2023-01-01&enddt=2023-12-31` |
| 2 | Company submissions by CIK | `GET data.sec.gov/submissions/CIK{10-digit}.json` | `/submissions/CIK0000320193.json` |
| 3 | Company facts (all XBRL) | `GET data.sec.gov/api/xbrl/companyfacts/CIK{10-digit}.json` | `/api/xbrl/companyfacts/CIK0000320193.json` |
| 4 | Single XBRL concept | `GET data.sec.gov/api/xbrl/companyconcept/CIK{10-digit}/{taxonomy}/{tag}.json` | `/api/xbrl/companyconcept/CIK0000320193/us-gaap/Assets.json` |
| 5 | Ticker -> CIK map | `GET www.sec.gov/files/company_tickers.json` | `/files/company_tickers.json` |

**curl pattern** (every endpoint needs the same `User-Agent`):

```bash
curl -H "User-Agent: $SEC_UA" \
  "https://data.sec.gov/api/xbrl/companyconcept/CIK0000320193/us-gaap/Assets.json"
```

**The CIK MUST be zero-padded to 10 digits** in every `data.sec.gov` path (`CIK0000320193.json`, not `CIK320193.json`). `company_tickers.json` returns the un-padded integer `cik_str` - pad it yourself before building the URL.

## Workflow: a U.S. public-company check

```
1. Resolve identity
   ticker?  GET /files/company_tickers.json  -> find {cik_str, ticker, title}, zero-pad cik_str to 10 digits
   name?    GET efts.../search-index?q={name}  -> read _source.cik from the hits
   (skip if the user already gave a CIK)

2. Confirm it is a real, live filer
   GET /submissions/CIK{10-digit}.json
   -> capture name, tickers, exchanges, sicDescription, stateOfIncorporation, ein
   -> a filer with no recent filings may be dormant or deregistered

3. What has it filed lately
   read filings.recent (parallel arrays: form, filingDate, reportDate, accessionNumber, primaryDocument, isXBRL)
   -> latest 10-K = annual report; 8-K clusters = material events; Form 4 = insider trades

4. Pull the numbers
   GET /api/xbrl/companyconcept/CIK{10-digit}/us-gaap/Assets.json   (one concept)
   or GET /api/xbrl/companyfacts/CIK{10-digit}.json                 (everything at once)
   -> take the latest units.USD[] entry (highest fy / most recent end) for the current figure
```

## Output interpretation

**Submissions covers a live filer, not "active" status.** EDGAR has no `active/dissolved` flag like a company register - presence of recent filings in `filings.recent` is your liveness signal. A company that stopped filing (deregistered, went private, was acquired) simply goes quiet; check the newest `filingDate`.

**XBRL `units.USD[]` is a time series, not one number.** Each concept (e.g. `Assets`, `Revenues`, `NetIncomeLoss`) holds many entries of `{end, val, accn, fy, fp, form}` across years and periods. For the current figure, sort by `end`/`fy` and take the latest - and mind `fp` (`FY` = full year vs `Q1`/`Q2`/`Q3`). Do not sum overlapping periods.

**`filings.recent` caps at ~1000 filings.** For a long-lived filer, older filings are paginated into `filings.files[]` - each entry points to an additional JSON page you fetch separately. If you need full history, walk those pages; most KYB checks only need `recent`.

**Full-text search is 2001-present only** and returns Elasticsearch-shaped JSON: read `hits.total.value` for the count and iterate `hits.hits[]._source` (fields `display_names`, `cik`, `form`/`file_type`, `file_date`, `adsh` = accession, `sics`, `biz_locations`). Pre-2001 filings will not appear here - use submissions instead.

**403 means the `User-Agent` is the problem.** A `403 Forbidden` on any endpoint almost always means a missing, empty, or non-declarative `User-Agent`. Set it before diagnosing anything else. A sustained `403`/throttle after many calls means you crossed 10 req/s - back off, there is no burst allowance.

## Cross-sell - where the free API stops

EDGAR covers **SEC-registered issuers only** - U.S. public companies and large filers. Private U.S. companies, small businesses, and every non-U.S. entity are **absent**. When the entity is not an SEC filer, this skill hands off to the paid regdata actors, which do the anti-bot registry access the government portals do not hand you:

| Need | Jurisdiction | Actor |
|---|---|---|
| Private California company records | USA (California) | `regdata/california-sos-business-scraper` |
| UCC liens / secured filings | USA (California) | `regdata/california-ucc-lien-scraper` |
| Beneficial owners (UBO) | Poland | `regdata/crbr-beneficial-owners-scraper` |
| Company + officers + capital | Germany | `regdata/germany-handelsregister-scraper` |
| Directors, financials, shareholders | France | `regdata/societe-com-scraper` |
| Company directory, NIF, officers | Spain | `regdata/spain-company-directory-scraper` |

To resolve a public company to its global LEI and corporate structure, route to **`gleif-lei-lookup`**. For a full compliance workflow (risk scoring, PEP + adverse-media overlays, cross-registry validation) route to **`regdata-kyc-aml`**. Those actors need a free Apify token: https://apify.com?fpr=getregdata.

## Related skills

- **`gleif-lei-lookup`** - resolve a public company to its global LEI and its parent/child structure across borders before or after the EDGAR pull.
- **`companies-house-uk`** / **`norway-company-registry`** / **`france-company-lookup`** - free national sources for those jurisdictions.
- **`sanctions-pep-screening`** - screen the officers, insiders (Form 4), and beneficial owners you found against sanctions and PEP lists.
- **`regdata-kyc-aml`** - the full KYC/AML/KYB framework: risk scoring, PEP and adverse-media overlays, and the paid registry actors for private and non-US entities.
- **`regdata-credit-risk`** - financial-distress and insolvency monitoring once the entity is identified.

## More on getregdata.com

- Full guide to this skill: https://getregdata.com/skills/sec-edgar-us/
- All skills and paid registry coverage: https://getregdata.com/skills/ and https://getregdata.com/registries/

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…

Newsletter

Get the weekly list of safe new skills, and the ones we pulled.