Filing comparison
The compare endpoint lists what's new, changed, and removed in a filing since an earlier one, passages and tables alike. The endpoint is Compare from the reader, which matches passages by content rather than position.
Compare two filings
curl "https://api.secsift.com/v1/companies/AAPL/filings/0000320193-25-000079/compare?prior=0000320193-24-000123&limit=1" \
-H "Authorization: Bearer $SECSIFT_KEY" Name the earlier filing in prior, usually the company's previous filing of the same form.
Example answer
The first change in Apple's FY2025 10-K since its FY2024 10-K:
{
"company": {
"name": "Apple Inc.",
"ticker": "AAPL",
"cik": 320193
},
"filing": {
"accession": "0000320193-25-000079",
"form": "10-K",
"filed": "2025-10-31",
"period_end": "2025-09-27",
"fiscal": "FY2025",
"items": null
},
"prior_accession": "0000320193-24-000123",
"counts": {
"new": 37,
"changed": 213,
"removed": 89
},
"kind": "changed",
"data": [
{
"text": "For the fiscal year ended September 27, 2025",
"prior": "For the fiscal year ended September 28, 2024",
"table": null,
"cells": null,
"new_rows": null,
"new_columns": null,
"section": null,
"urls": {
"secsift": "https://secsift.com/?t=AAPL&a=0000320193-25-000079&b=b6"
}
}
],
"total": 213,
"next_offset": 1,
"truncated": false
} Ask for one kind at a time, with kind set to changed (the default), new, or removed. The entries come in the filing's order, each with its text,
section, and a link to the passage on SECSift.
Passages
A changed passage carries its earlier wording in prior. In the removed list, partial means only part of the passage was cut. Earlier and removed wording stops at 600
characters.
Tables
New and changed tables are in the lists too, with the table's number in table and the table
as Markdown in text. Here's Apple's changed stock performance table:
{
"text": "| | September 2020 | September 2021 | September 2022 | September 2023 | September 2024 | September 2025 |\n|---|---|---|---|---|---|---|\n| Apple Inc. | $100 | $132 | $136 | $155 | $208 | $234 |\n| S&P 500 Index | $100 | $137 | $115 | $136 | $185 | $217 |\n| Dow Jones U.S. Technology Total Stock Market Index | $100 | $147 | $107 | $147 | $220 | $287 |",
"prior": null,
"table": 3,
"cells": [
[0, 1],
[0, 2],
[0, 3]
],
"new_rows": [2],
"new_columns": [6],
"section": "Item 5",
"urls": {
"secsift": "https://secsift.com/?t=AAPL&a=0000320193-25-000079&b=b284"
}
} cells lists the [row, column] spots whose figures moved, counting from 0, with rows from the
first row under the header and columns from the label column. new_rows and new_columns list what the table added.
A changed table lists up to 200 cells, 100 new rows, and 20 new columns. A removed table comes through as an entry whose text starts with "[Table removed]".
Counts and pages
counts holds the totals for each kind, the same numbers as the Compare legend in the reader. total counts the entries in the kind you asked for, and next_offset starts the next
page.
Entries come 50 to a page by default, and up to 200 with limit. Each
kind stops at 1,200 passages, and truncated is true when one did.
A compare call counts once, and a 202 while SECSift prepares one of the two filings doesn't count. A first compare of filings SECSift hasn't read can take two rounds, one for each filing.