Skip to main content

Find the release, then read it

GET /v1/events/enforcement turns three SEC enforcement release feeds into one filtered list. It is useful when a research, compliance, or diligence process needs to find the relevant release quickly and keep its SEC URL with the result. The endpoint is a research index, not a finding of liability. A respondent name can be ambiguous, a dollar amount can be absent or refer to only one component of relief, and an issuer mentioned in a release is not necessarily the respondent. Read the linked SEC release before using a result in an investment or compliance decision.

Sources and fields

The API returns records from:
  • SEC litigation releases (litigation_release)
  • SEC administrative proceedings (administrative_proceeding)
  • Accounting and Auditing Enforcement Releases (aaer)
Each record includes the source type, publication date, title, release number when available, a short excerpt, the SEC document URL, and any normalized respondent, violation, and penalty fields the source supports. violationType is a routing label inferred from release language; it is not an SEC legal classification.

Start with a narrow question

curl -H "x-api-key: $SECAPI_API_KEY" \
  "https://api.secapi.ai/v1/events/enforcement?violation_type=insider_trading&date_from=2025-01-01&limit=10"
The response is a standard list envelope. Save requestId when troubleshooting and use nextCursor only when hasMore is true.
{
  "object": "list",
  "data": [
    {
      "object": "enforcement_action",
      "sourceType": "litigation_release",
      "publishedAt": "2026-03-18T16:00:00.000Z",
      "releaseNumber": "LR-00000",
      "title": "Illustrative SEC enforcement release",
      "respondents": [
        { "name": "Example respondent", "entityId": null, "ticker": null, "cik": null }
      ],
      "violationType": "insider_trading",
      "penaltyAmount": null,
      "documentUrl": "https://www.sec.gov/litigation/litreleases/example.htm"
    }
  ],
  "hasMore": false,
  "nextCursor": null,
  "requestId": "req_example_123"
}

Filters

ParameterUse it for
queryMatching release titles and descriptions.
source_typeRestricting the source to litigation_release, administrative_proceeding, or aaer.
violation_typeOne normalized label: fraud, insider_trading, reporting_violation, market_manipulation, registration_violation, investment_adviser, broker_dealer, municipal_securities, or other.
respondent, ticker, cikFocusing the release search on a person or issuer. Entity matches should be checked against the linked source.
penalty_min, penalty_maxNarrowing on a disclosed dollar amount when one was parsed.
date_from, date_toRestricting SEC publication dates with inclusive YYYY-MM-DD bounds.
limit, cursorPaging through a bounded result set. limit is 1–50.

A practical review loop

  1. Filter by the person, issuer, source type, or risk question you are investigating.
  2. Read title, excerpt, respondents, and violationType as a triage layer.
  3. Open documentUrl; it is the evidence for the record.
  4. Preserve the release URL and requestId with downstream research instead of treating the normalized label as the complete story.