DOCUMENTS & EXTRACTION / BETA

Source-native XML to JSON API

Read a filing’s actual XML structure as JSON with decimal strings and attributes retained.

What this endpoint returns

One verified manifest XML file; up to900KB parsed response.

  • Source element names
  • @_attributes
  • Repeated-element arrays
  • meta.representation

Make a request

Use an API key from your dashboard. Replace any uppercase CIK, ACCESSION, or DOCUMENT placeholders with actual identifiers. For document workflows, obtain the accession from filing metadata and choose a filename from the accession’s document manifest; filenames are not inferred from company names.

curl --fail-with-body "https://sec-api.dev/api/v1/filing-xml?cik=CIK&accession=ACCESSION&document=DOCUMENT.xml" \
  -H "Authorization: Bearer $SEC_API_KEY"

Keep the source context

Successful JSON responses provide a data envelope and source metadata. Store the original resource URL, fetchedAt retrieval time, and stale flag beside results. A retrieval timestamp is not the SEC’s publication timestamp. Use the documented pagination fields instead of assuming the first response is complete. Never treat a failed request as an empty filing or position set.

Limits that affect your application

Namespace prefixes are removed. This is source-native conversion, not normalized statements, offering metrics, or a cross-filing database.

Account rate limits and request quotas apply. Respect Retry-After when supplied and bound retries. Source-format differences may produce explicit validation errors; retain the request ID when investigating. This API makes public data accessible, but does not guarantee the correctness of a filer’s financial disclosures.

Read the endpoint guide · Follow runnable workflows · Data quality and coverage

Build the next step

Browse all products →

Source reference: SEC EDGAR API documentation and SEC technical specifications.