> ## Documentation Index
> Fetch the complete documentation index at: https://docs.oneshotagent.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Company Filings

> Look up a US public company's registry record and recent filings by its registry identifier.

Look up a US public company by its Central Index Key (CIK), the identifier the US Securities and Exchange Commission assigns to every filer. Returns the registry record: legal name, entity type, industry, tickers, exchanges, state of incorporation, fiscal year end, website, phone, former names and business address; and the most recent filings, newest first, each with form type, filing date, reporting period and a link to the document. Narrow the filings with `form` (exact form type, for example 10-K), `filed_after` and `filed_before`. Looks up by identifier only: it does not search by company name or ticker, and it does not return officers. Filters apply to the most recent filings the register lists inline (about 1,000), not the full history. `found` is false when the identifier is not in the register.

## Authentication

Requires x402 payment in the `payment-signature` header.

## Request Body

<ParamField body="cik" type="string" required>
  The 1 to 10 digit registry identifier (CIK), for example 320193. Shorter numbers are padded with zeros. A CIK is 1 to 10 digits.
</ParamField>

<ParamField body="form" type="string">
  Only filings of this exact form type, for example 10-K. 1 to 20 characters.
</ParamField>

<ParamField body="filed_after" type="string">
  Only filings made on or after this date, YYYY-MM-DD. Use YYYY-MM-DD.
</ParamField>

<ParamField body="filed_before" type="string">
  Only filings made on or before this date, YYYY-MM-DD. Use YYYY-MM-DD.
</ParamField>

<ParamField body="limit" type="integer">
  Most filings to return, newest first (1 to 50, default 10). From 1 to 50. Defaults to `10`.
</ParamField>

<Snippet file="audit-context-params.mdx" />

## Response (200 OK)

Top-level envelope: `success` (boolean) and `data` (object). All fields below are nested under `data`.

<ResponseField name="data.request_id" type="string">
  Durable job ID for audit and lookup
</ResponseField>

<ResponseField name="data.status" type="string">
  Job status: `completed`
</ResponseField>

<ResponseField name="data.tool" type="string">
  Always `company_filings`
</ResponseField>

<ResponseField name="data.result" type="object">
  The answer, described under Result below
</ResponseField>

<ResponseField name="data.evidence" type="object">
  Where the answer came from and when
</ResponseField>

<ResponseField name="data.evidence.source" type="string">
  The public body the data comes from. Always `US Securities and Exchange Commission`.
</ResponseField>

<ResponseField name="data.evidence.source_kind" type="string">
  `public` when the data comes from a public body, `commercial` otherwise
</ResponseField>

<ResponseField name="data.evidence.retrieved_at" type="string">
  When the lookup was made, as an ISO 8601 UTC time
</ResponseField>

<ResponseField name="data.evidence.as_of" type="string">
  When the source says the fact was last updated, or `null` when the source gives no date
</ResponseField>

## Result

Nested under `data.result`.

<ResponseField name="data.result.found" type="boolean">
  False when the identifier is not in the register; every other field is then empty.
</ResponseField>

<ResponseField name="data.result.cik" type="string">
  The identifier, padded to 10 digits. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.name" type="string">
  Name. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.entity_type" type="string">
  Entity type. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.industry_code" type="string">
  Standard Industrial Classification (SIC) code. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.industry" type="string">
  Industry. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.tickers" type="string[]">
  Tickers.
</ResponseField>

<ResponseField name="data.result.exchanges" type="string[]">
  Exchanges.
</ResponseField>

<ResponseField name="data.result.state_of_incorporation" type="string">
  State of incorporation. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.fiscal_year_end" type="string">
  MMDD. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.website" type="string">
  Website. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.phone" type="string">
  Phone. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.former_names" type="string[]">
  Former names.
</ResponseField>

<ResponseField name="data.result.street" type="string">
  Street. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.city" type="string">
  City. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.state" type="string">
  State. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.postal_code" type="string">
  Postal code. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.filings" type="object[]">
  Newest first.
</ResponseField>

<ResponseField name="data.result.filings[].form" type="string">
  Form type, for example 10-K, 10-Q, 8-K, 4.
</ResponseField>

<ResponseField name="data.result.filings[].filed_on" type="string">
  Date the filing was made, YYYY-MM-DD. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.filings[].period_end" type="string">
  Period the filing reports on, YYYY-MM-DD, when it has one. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.filings[].description" type="string">
  Description. `null` when the source gives no value.
</ResponseField>

<ResponseField name="data.result.filings[].accession_number" type="string">
  The filing identifier, with dashes.
</ResponseField>

<ResponseField name="data.result.filings[].url" type="string">
  Link to the primary document. `null` when the source gives no value.
</ResponseField>

<RequestExample>
  ```bash cURL theme={null}
  curl -X POST https://win.oneshotagent.com/v1/tools/lookup/company-filings \
    -H "Content-Type: application/json" \
    -H "payment-signature: <base64 x402 payment>" \
    -d '{
      "cik": "320193",
      "form": "8-K",
      "limit": 1
    }'
  ```

  ```javascript JavaScript theme={null}
  const response = await fetch("https://win.oneshotagent.com/v1/tools/lookup/company-filings", {
    method: "POST",
    headers: {
      "Content-Type": "application/json",
      "payment-signature": paymentProof,
    },
    body: JSON.stringify({
      "cik": "320193",
      "form": "8-K",
      "limit": 1
    }),
  });
  ```

  ```typescript SDK theme={null}
  const result = await agent.tool('lookup/company-filings', {
    cik: '320193',
    form: '8-K',
    limit: 1
  });
  console.log(result.data.result);
  console.log(result.data.evidence);
  ```
</RequestExample>

<ResponseExample>
  ```json Response (200) theme={null}
  {
    "success": true,
    "data": {
      "request_id": "uuid",
      "receipt_id": "rcpt_...",
      "status": "completed",
      "tool": "company_filings",
      "result": {
        "found": true,
        "cik": "0000320193",
        "name": "Apple Inc.",
        "entity_type": "operating",
        "industry_code": "3571",
        "industry": "Electronic Computers",
        "tickers": [
          "AAPL"
        ],
        "exchanges": [
          "Nasdaq"
        ],
        "state_of_incorporation": "CA",
        "fiscal_year_end": "0926",
        "website": null,
        "phone": "(408) 996-1010",
        "former_names": [
          "APPLE INC",
          "APPLE COMPUTER INC",
          "APPLE COMPUTER INC/ FA"
        ],
        "street": "ONE APPLE PARK WAY",
        "city": "CUPERTINO",
        "state": "CA",
        "postal_code": "95014",
        "filings": [
          {
            "form": "8-K",
            "filed_on": "2026-07-30",
            "period_end": "2026-07-30",
            "description": "8-K",
            "accession_number": "0000320193-26-000018",
            "url": "https://www.sec.gov/Archives/edgar/data/320193/000032019326000018/aapl-20260730.htm"
          }
        ]
      },
      "evidence": {
        "source": "US Securities and Exchange Commission",
        "source_kind": "public",
        "retrieved_at": "2026-01-15T12:00:00.000Z",
        "as_of": null
      }
    }
  }
  ```
</ResponseExample>

<Info>Price: \$0.01 per lookup. See [Pricing](/pricing) for every tool.</Info>

## Notes

* Results return inline. The finished job stays available at `/v1/requests/{request_id}`


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.