Filing Extractions
Return cached langextract spans for one filing or run paid extraction on cache miss.
Tier: paid | Cache: llm-call | Playground: authenticated only | Contract: 1.0.0
When To Use It
Use these tools for curated extraction caches and premium language-model-backed filing evidence.
Request Examples
BASE_URL="${EDGAR_API_URL:-https://www.edgarparser.com}"
curl -sS "$BASE_URL/api/extractions" \
-X POST \
-H "Authorization: Bearer $EDGAR_API_KEY" \
-H "Content-Type: application/json" \
--data '{"quarter":4,"schema":"operational_kpis","source":"auto","ticker":"AAPL","year":2025}'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 = {
"quarter": 4,
"schema": "operational_kpis",
"source": "auto",
"ticker": "AAPL",
"year": 2025
}
response = requests.post(f"{base_url}/api/extractions", headers=headers, json=payload, timeout=30)
response.raise_for_status()
data = response.json()Key Response Fields
| Field | Type | Why It Matters |
|---|---|---|
status | const "success" | Transport-level success indicator inside the JSON response. |
semantic_status | "ok" | "partial" | "empty" | "error" | null | Whether the response is semantically usable, partial, empty, or errored. |
coverage_status | "complete" | "partial" | "narrow" | "none" | null | Completeness signal; do not present partial or narrow coverage as complete. |
coverage_warning | string | null | Human-readable explanation of missing or ambiguous coverage. |
form_type | string | null | SEC form type; verify it matches the requested filing class. |
extractions | array<object> | Extraction result field; inspect provenance and coverage before treating it as disclosed. |
filing | object | Extraction result field; inspect provenance and coverage before treating it as disclosed. |
quarter | integer | Extraction result field; inspect provenance and coverage before treating it as disclosed. |
Response Fields To Inspect
schema_name, evidence spans, and source filing metadata for every extracted claim.- Coverage or cache-miss fields before treating missing rows as “not disclosed.”
- Confidence, provenance, and extraction timestamp fields when comparing periods.
Errors And Coverage
401or403: 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.- Paid or LLM-backed paths should be used only when cheaper fact, filing, table, or text tools cannot answer the question.
- Treat partial coverage, empty arrays, and warning fields as answer-quality signals even when HTTP status is
200.
Related Tools
Search Extractions, Extraction Series, Filing Document
Generated Reference
Contract
| Field | Value |
|---|---|
| Tool | get_filing_extractions |
| Method | POST |
| Path | /api/extractions |
| Contract version | 1.0.0 |
| Schema fingerprint | sha256:1a2eef0f7fcb5cf9a56c4d2e66064563adc8ac98d3660841ef46480f9bc4cb59 |
Parameters
| Name | Location | Required | Type | Notes |
|---|---|---|---|---|
| none | - | - | - | - |
Request Body Schema
{
"properties": {
"allow_stale": {
"default": false,
"type": "boolean"
},
"quarter": {
"maximum": 4.0,
"minimum": 1.0,
"type": "integer"
},
"schema": {
"type": "string"
},
"source": {
"default": "auto",
"enum": [
"auto",
"8k",
"proxy",
"20f",
"6k"
],
"type": "string"
},
"ticker": {
"type": "string"
},
"year": {
"type": "integer"
}
},
"required": [
"ticker",
"year",
"quarter",
"schema"
],
"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"
}
]
},
"extractions": {
"items": {
"additionalProperties": true,
"properties": {
"attributes": {
"additionalProperties": true,
"type": "object"
},
"char_end": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"char_start": {
"anyOf": [
{
"type": "integer"
},
{
"type": "null"
}
]
},
"class": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"grounded": {
"anyOf": [
{
"type": "boolean"
},
{
"type": "null"
}
]
},
"grounding_confidence": {
"anyOf": [
{
"type": "number"
},
{
"type": "null"
}
]
},
"grounding_method": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"text": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"validation_status": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
}
},
"type": "object"
},
"type": "array"
},
"filing": {
"additionalProperties": true,
"type": "object"
},
"form_type": {
"anyOf": [
{
"type": "string"
},
{
"type": "null"
}
]
},
"quarter": {
"type": "integer"
},
"schema_name": {
"type": "string"
},
"schema_version": {
"type": "string"
},
"semantic_status": {
"anyOf": [
{
"enum": [
"ok",
"partial",
"empty",
"error"
],
"type": "string"
},
{
"type": "null"
}
]
},
"source": {
"enum": [
"auto",
"8k",
"proxy",
"20f",
"6k"
],
"type": "string"
},
"status": {
"const": "success",
"type": "string"
},
"ticker": {
"type": "string"
},
"year": {
"type": "integer"
}
},
"required": [
"status",
"ticker",
"year",
"quarter",
"source",
"schema_name",
"schema_version"
],
"type": "object"
}