Skip to Content
Tool ReferenceTablesCompare Filing Tables

Compare Filing Tables

Compare matching filing tables across multiple tickers.

Tier: public | Cache: cache-only | Playground: authenticated only | Contract: 1.0.0

When To Use It

Use these tools when the answer depends on tables embedded in filing documents rather than normalized XBRL facts.

Request Examples

BASE_URL="${EDGAR_API_URL:-https://www.edgarparser.com}" curl -sS "$BASE_URL/api/tables/compare" \ -X POST \ -H "Authorization: Bearer $EDGAR_API_KEY" \ -H "Content-Type: application/json" \ --data '{"source":"auto","tickers":["AAPL","MSFT"]}'
import os import requests base_url = os.getenv("EDGAR_API_URL", "https://www.edgarparser.com") headers = {"Authorization": f"Bearer {os.environ['EDGAR_API_KEY']}"} payload = { "source": "auto", "tickers": [ "AAPL", "MSFT" ] } response = requests.post(f"{base_url}/api/tables/compare", headers=headers, json=payload, timeout=30) response.raise_for_status() data = response.json()

Key Response Fields

FieldTypeWhy It Matters
statusconst "success"Transport-level success indicator inside the JSON response.
semantic_status"ok" | "partial" | "empty" | "error" | nullWhether the response is semantically usable, partial, empty, or errored.
coverage_status"complete" | "partial" | "narrow" | "none" | nullCompleteness signal; do not present partial or narrow coverage as complete.
coverage_warningstring | nullHuman-readable explanation of missing or ambiguous coverage.
rowsarray<object>Tabular or comparison rows that carry the answer data.
queryobjectTable result field; preserve row labels, column labels, and units when answering.
tickers_requested_countintegerCount field; use it to detect empty, partial, or unexpectedly broad output.
tickers_returned_countintegerCount field; use it to detect empty, partial, or unexpectedly broad output.

Response Fields To Inspect

  • table_id, title, section, and accession before using a table as evidence.
  • Row labels, column labels, units, and footnotes instead of inferring meaning from position alone.
  • Pagination or match-score fields when search returns multiple candidate tables.

Errors And Coverage

  • 401 or 403: the API key is missing, expired, or not allowed to use this tier.
  • 429: retry after the rate-limit window, and prefer broader batch or series tools over repeated single-period calls.
  • This tool is cache-only; if the target filing is not warm, warm it through an allowed paid path before retrying.
  • Honor pagination and truncation metadata; request the next page instead of assuming the first response is complete.

Search Filing Tables, Filing Tables, Compare Concept

Generated Reference

Contract

FieldValue
Toolcompare_filing_tables
MethodPOST
Path/api/tables/compare
Contract version1.0.0
Schema fingerprintsha256:2b1c4c125fdf452abcff5cafef7ec6fc350f2bfa615e637c08cc3afb8eb3507c

Parameters

NameLocationRequiredTypeNotes
none----

Request Body Schema

{ "properties": { "form_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "include_full_tables": { "default": true, "type": "boolean" }, "limit_per_ticker": { "default": 3, "maximum": 25.0, "minimum": 1.0, "type": "integer" }, "period_from": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "period_to": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "rebuild_index": { "default": false, "type": "boolean" }, "section_key": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "source": { "default": "auto", "enum": [ "auto", "8k", "proxy", "20f", "6k" ], "type": "string" }, "table_type": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "tickers": { "items": { "type": "string" }, "maxItems": 25, "minItems": 1, "type": "array" } }, "required": [ "tickers" ], "type": "object" }

Response Schema (200)

{ "additionalProperties": true, "properties": { "coverage_status": { "anyOf": [ { "enum": [ "complete", "partial", "narrow", "none" ], "type": "string" }, { "type": "null" } ] }, "coverage_warning": { "anyOf": [ { "type": "string" }, { "type": "null" } ] }, "query": { "additionalProperties": true, "type": "object" }, "rows": { "items": { "additionalProperties": true, "type": "object" }, "type": "array" }, "semantic_status": { "anyOf": [ { "enum": [ "ok", "partial", "empty", "error" ], "type": "string" }, { "type": "null" } ] }, "status": { "const": "success", "type": "string" }, "tickers_requested_count": { "type": "integer" }, "tickers_returned_count": { "type": "integer" }, "tickers_unresolved": { "items": { "type": "string" }, "type": "array" }, "total_matches_count": { "type": "integer" } }, "required": [ "status", "tickers_requested_count", "tickers_returned_count", "total_matches_count" ], "type": "object" }