Accounting and Auditing Enforcement Release Database API
The Accounting and Auditing Enforcement Release (AAER) Database API offers a repository of all AAER data published by the SEC from 1997 to present. It provides all metadata of published enforcement actions, including their documents (proceedings, summaries, judgements, etc) as PDF, HTML and their respective text versions (PDF and HTML converted to text).
Key Features
- Metadata: Includes release date/time, respondents, and URLs to all related documents — ranging from proceedings to judgments.
- Document Conversion: Access documents in various formats — PDF, HTML, and their converted text versions.
- Tagging System: AAER proceedings are tagged with ticker symbols and Central Index Key (CIK) for ease of reference.
- Search Functionality: A search API allows users to query the AAER database based on various criteria like involved parties (respondents), release dates, and more.
- Bulk Download Option: For extensive research and analysis, users have the option to use the bulk-download APIs to obtain the entire AAER metadata and their associated documents in ZIP files.
AAER Overview
The SEC publishes Accounting and Auditing Enforcement Releases (AAERs) as a part of its effort to inform the public about its enforcement activities related to financial reporting, auditing and accounting. AAERs represent only a subset of the SEC's broader enforcement activities. The actions published typically encompass:
- Civil Lawsuits: These are lawsuits brought by the SEC in federal court against individuals or entities accused of violations related to accounting and auditing standards or financial reporting requirements.
- Administrative Proceedings: These are actions initiated by the SEC to address violations within its jurisdiction but outside the court system. Such proceedings can lead to various outcomes, including penalties, disgorgement of ill-gotten gains, or professional bars.
- Settlements: Often, the SEC reaches settlements with respondents or defendants without a trial. These settlements typically involve penalties or other remedies, and the respondents or defendants often do not admit or deny the allegations.
- Cease-and-Desist Orders: These are orders issued by the SEC to an individual or entity to stop an ongoing or potential violation of securities laws.
- Bars or Suspensions: The SEC can bar or suspend professionals from appearing or practicing before it. This can impact accountants, auditors, attorneys, or other professionals who violate securities laws or professional standards.
- Opinions and Adjudicatory Orders: These are decisions made by the SEC following administrative proceedings.
- Notices: The SEC issues notices about various actions, including the institution of administrative proceedings or other relevant updates about AAERs.
API Endpoints
Search API
API to search the AAER database: POST requests to https://api.sec-api.io/aaers
Bulk Download APIs
API to bulk-download all AAER metadata: GET request to https://api.sec-api.io/aaers/metadata/all.json
API to bulk-download all AAER documents per year as ZIP files: GET request to https://api.sec-api.io/aaers/documents/{YEAR}.zip
Single Download APIs
API to download single AAER documents: GET requests to https://api.sec-api.io/aaers/{aaerNo}/{type}-{filename}
API to download single PDFs/HTMLs converted to text: GET requests to https://api.sec-api.io/aaers/{aaerNo}/{type}-{filename}.txt
Authentication
To authenticate your API requests, use the API key displayed in your user profile. You can utilize your API key in one of two ways. Choose the method that best fits your use case:
- Authorization Header: Include your API key as an
Authorization
header in your requests. For instance, before sending aPOST
request tohttps://api.sec-api.io/aaers
, ensure the header is set as follows:Authorization: YOUR_API_KEY
. - Query Parameter: Alternatively, append your API key directly to the URL as a query parameter. For example, when making
POST
requests, use the URLhttps://api.sec-api.io/aaers?token=YOUR_API_KEY
instead of the base endpoint.
Search API
To search the AAER database, make a POST request to https://api.sec-api.io/aaers
, providing your search criteria as a JSON payload.
Request Structure - Search API
The Search API recognizes the following JSON payload parameters:
query
(string, required) - The search term or expression, formatted using the Lucene syntax. Example:respondents:Plug Power
.from
(string, optional) - Pagination control to specify the starting position of the results. Max: 10000. Default: 0.size
(string, optional) - Determines the number of results to be returned. Max: 50. Default: 50.sort
(array, optional) - Specifies the field by which results should be sorted. By default, results are sorted bydateTime
in descending order.
Query Examples
Retrieve the most recent AAERs
To retrieve the metadata of the 10 most recently published AAERs, use the following request. The example Lucene query aaerNo:*
will return all AAERs, and the sort
parameter will sort the results by the dateTime
field in descending order.
1
{
2
"query": "aaerNo:*",
3
"from": "0",
4
"size": "10",
5
"sort": [{ "dateTime": { "order": "desc" } }]
6
}
Retrieve all AAERs from 2010 to 2020
The following request can be used to retrieve the metadata of all AAERs published between January 2010 and December 2020. The Lucene query dateTime:[2010-01-01 TO 2020-12-31]
searches for all AAERs filed between January 1, 2010, and December 31, 2020, and returns the first 50 results sorted by the dateTime
field in descending order. In order to retrieve all AAERs, the from
parameter should be incremented by 50
in subsequent requests until no more results are returned.
1
{
2
"query": "dateTime:[2010-01-01 TO 2020-12-31]",
3
"from": "0", // start with 0, then 50, 100, 150 and so on until no more AAERs are returned
4
"size": "50",
5
"sort": [{ "dateTime": { "order": "desc" } }]
6
}
Response Structure - Search API
When the Search API locates matches within the AAER database, it returns an array of AAER objects in JSON format. Each AAER object comprises the following fields:
aaerNo
: String indicating the AAER number. Example:AAER-44371
releaseNumbers
: Array of strings representing the release numbers associated with the AAER. Example:['33-11219', '34-98065', 'IA-6323]
dateTime
: Timestamp indicating the release date and time of the AAER. Example:2023-09-01T15:06:57Z
respondents
: Array of strings listing the respondents involved in the AAER. Example:['Wang, Jia Roger Qian, CPA', 'Wang Certified Public Accountant, P.C.']
urls
: Array of objects, each containing atype
and aurl
. The types and their corresponding URLs might include:- Primary Proceeding (always included):
https://www.sec.gov/files/litigation/admin/2023/34-98103.pdf
- Administrative Summary (optional):
https://www.sec.gov/enforce/33-11209-s
- SEC Complaint PDF (optional):
https://www.sec.gov/files/litigation/complaints/2023/comp-pr2023-126.pdf
- Judgement PDF (optional): For example, "Final Judgement - Jeffrey A. Hastings" might link to
https://www.sec.gov/files/litigation/litreleases/2023/judg25700-hastings.pdf
- Order PDF (optional): For instance, "Order - Lori Hastings" could link to
https://www.sec.gov/files/litigation/litreleases/2023/order25700-hastings.pdf
- Press Release:
https://www.sec.gov/news/press-release/2020-265
- Administrative Proceedings Release:
https://www.sec.gov/files/litigation/admin/2022/34-94714.pdf
- Litigation Release:
https://www.sec.gov/files/litigation/litreleases/2022/lr25364.htm
- Primary Proceeding (always included):
Response Example
1
[
2
{
3
//
4
// metadata
5
//
6
"dateTime": "2023-09-01T15:06:57Z",
7
"aaerNo": "AAER-4453",
8
"releaseNo": ["34-98272", "IA-6393"],
9
"respondents": [
10
// type: person, company, other
11
{ "type": "company", "name": "SQN Capital Management LLC" },
12
{ "type": "person", "name": "Jeremiah Silkowski" }
13
],
14
"urls": [
15
{
16
"type": "primary",
17
"url": "https://www.sec.gov/files/litigation/admin/2023/34-98272.pdf"
18
},
19
{
20
"type": "Administrative Summary",
21
"url": "https://www.sec.gov/enforce/34-98272-s"
22
}
23
],
24
//
25
// content
26
//
27
"summary": "...",
28
"violations": [
29
{
30
"section": "Section 206(4) of the Advisers Act and Rule 206(4)-8 thereunder",
31
"description": "..."
32
}
33
],
34
"parties": [
35
{
36
"type": "person",
37
"name": "Jeremiah Silkowski",
38
"role": "..."
39
},
40
{
41
"type": "company",
42
"name": "SQN Capital Management LLC",
43
"role": "..."
44
}
45
],
46
"penalties": [
47
{
48
"type": "disgorgement",
49
"amount": 1000000,
50
"description": "..."
51
},
52
{
53
"type": "penalty",
54
"amount": 1000000,
55
"description": "..."
56
}
57
]
58
}
59
// ...
60
]
Bulk-Download AAERs
Two bulk-download APIs for AAER metadata and AAER documents are available.
Bulk-Download AAER Metadata
Download the entire database of AAER metadata (publication date, respondents, release numbers, URLs to documents) of all AAERs published from 1997 to present as a single JSON file.
Endpoint: GET https://api.sec-api.io/aaers/metadata/all.json
The JSON file mirrors the structure of the Search API response, but containing all AAERs instead of a filtered subset. The JSON file contains an array of AAER metadata objects with the following structure:
aaerNo
: String indicating the AAER number. Example:AAER-44371
releaseNumbers
: Array of strings representing the release numbers associated with the AAER. Example:['33-11219', '34-98065', 'IA-6323]
dateTime
: Timestamp indicating the release date and time of the AAER. Example:2023-09-01T15:06:57Z
respondents
: Array of strings listing the respondents involved in the AAER. Example:['Wang, Jia Roger Qian, CPA', 'Wang Certified Public Accountant, P.C.']
urls
: Array of objects, each containing atype
and aurl
. The types and their corresponding URLs might include:- Primary Proceeding (always included):
https://www.sec.gov/files/litigation/admin/2023/34-98103.pdf
- Administrative Summary (optional):
https://www.sec.gov/enforce/33-11209-s
- SEC Complaint PDF (optional):
https://www.sec.gov/files/litigation/complaints/2023/comp-pr2023-126.pdf
- Judgement PDF (optional): For example, "Final Judgement - Jeffrey A. Hastings" might link to
https://www.sec.gov/files/litigation/litreleases/2023/judg25700-hastings.pdf
- Order PDF (optional): For instance, "Order - Lori Hastings" could link to
https://www.sec.gov/files/litigation/litreleases/2023/order25700-hastings.pdf
- Press Release:
https://www.sec.gov/news/press-release/2020-265
- Administrative Proceedings Release:
https://www.sec.gov/files/litigation/admin/2022/34-94714.pdf
- Litigation Release:
https://www.sec.gov/files/litigation/litreleases/2022/lr25364.htm
- Primary Proceeding (always included):
Example JSON file:
1
[
2
{
3
"dateTime": "2023-09-25T16:16:53Z",
4
"aaerNo": "AAER-4461",
5
"releaseNo": ["34-98499"],
6
"respondents": ["Michael D. Messina, CPA"],
7
"urls": [
8
{
9
"type": "primary",
10
"url": "https://www.sec.gov/files/litigation/admin/2023/34-98499.pdf"
11
},
12
{
13
"type": "Administrative Summary",
14
"url": "https://www.sec.gov/enforce/34-98499-s"
15
}
16
]
17
}
18
// ... more AAER objects
19
]
Bulk-Download AAER Documents by Year
Download a collection of all AAER documents, including proceedings, summaries, judgments, and more. These documents are available in PDF, HTML, and their corresponding text versions. They are organized annually, packaged as compressed ZIP files and contain all AAERs published in the respective year.
Endpoint: GET https://api.sec-api.io/aaers/documents/{YEAR}.zip
Inside the ZIP file, you'll find distinct folders, each representing an individual AAER. Here's a breakdown of the contents and structure:
- Folder Naming: Each AAER has its designated folder, named using the format
/aaer-{aaerNo}
. - Contents:
- Metadata: Each AAER folder contains a JSON file capturing its metadata.
- Original Documents: You'll find all relevant documents pertaining to the AAER, such as primary proceedings, administrative summaries, press releases, SEC complaints, judgments, litigation releases, and more. These are available in PDF and HTML formats, depending on how the SEC published the document. The HTML files mirror documents hosted as websites on SEC.gov.
- Text Versions: Every PDF and HTML document has a corresponding text file, making content easily accessible. These text files retain the original document's name but append a
.txt
extension. For instance, the text counterpart ofaaer-3254.pdf
would beaaer-3254.pdf.txt
.
Example structure of an unzipped ZIP file of AAERs published in 2022:
- ZIP file name:
2022.zip
- Unzipped folder structure:
/aaer-3254/
aaer-3254.json
(metadata)aaer-3254.pdf
(primary proceeding)aaer-3254.pdf.txt
(primary proceeding converted to text)aaer-3254-administrative-summary.html
(administrative summary)aaer-3254-administrative-summary.html.txt
(administrative summary converted to text)aaer-3254-press-release.html
(press release)aaer-3254-press-release.html.txt
(press release converted to text)aaer-3254-sec-complaint.pdf
(SEC complaint)aaer-3254-sec-complaint.pdf.txt
(SEC complaint converted to text)aaer-3254-judgement.pdf
(judgement)aaer-3254-judgement.pdf.txt
(judgement converted to text)aaer-3254-litigation-release.html
(litigation release)aaer-3254-litigation-release.html.txt
(litigation release converted to text)
References
Research Papers
- The Financial and Market Effects of the SEC's Accounting and Auditing Enforcement Releases
- A textual analysis of the US Securities and Exchange Commission's accounting and auditing enforcement releases relating to the Sarbanes–Oxley Act
- Fraud detection in publicly traded U.S firms using Beetle Antennae Search: A machine learning approach
- Fraud Type and Auditor Litigation: An Analysis of SEC Accounting and Auditing Enforcement Releases
- How Are Earnings Managed? Examples from Auditors
- Predicting Material Accounting Misstatements
- The effects of audit committee activity and independence on corporate fraud
- Undisclosed SEC Investigations
- What are You Saying? Using Topic to Detect Financial Misreporting