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

# Earnings date detail

> One results date: the event, the revisions of its date with the evidence for each (newest first, at most 100), the company's past results dates, and the headline results once reported. The estimator re-saves an unchanged estimate on every run: `revisions=changes` keeps only the revisions that changed the date, status or evidence, each with `repeated` (identical re-saves that followed it) and `lastConfirmedAt` (the last one's time), and adds `revisionsTotal` and `revisionsCollapsed`.



## OpenAPI

````yaml https://astreus.ai/openapi.json get /api/v1/earnings/calendar/{id}
openapi: 3.1.0
info:
  title: Astreus API
  version: '2026-11-11'
  description: >-
    Astreus is a financial data terminal that turns the world's unstructured
    financial disclosure into structured, traceable data. It reads what
    companies, exchanges and central banks publish — annual and interim reports,
    SEC filings, results announcements, investor presentations, earnings calls,
    8-Ks, regulator notices and policy text — across the United States, the Gulf
    (Tadawul, DFM, ADX, Boursa Kuwait, QSE), Japan, Taiwan, Korea, the UK and
    Europe, and serves it as data a program can trust: standardized financial
    statements (annual, quarterly, semiannual), segments and KPIs, the tables
    inside the notes, filing sections as text, investor decks page by page,
    earnings-call transcripts and audio, span-anchored observations, management
    guidance scored against outcomes, typed 8-K events, an attributed intraday
    news tape, insider and 13F ownership, a people registry, macro series (the
    current vintage: the latest published value for each period) and
    central-bank text, benchmark, commodity and compute-price series, and a
    source-linked claim graph with declared validation limits. Use `fact-source`
    and document metadata to retain available provenance. Publication and
    entitlement gates apply per dataset; inspect availability and tool
    limitations.


    Coverage is published live: `GET /api/v1/landing/coverage` (no key) returns
    every market served with company counts, history depth, completeness and
    periods held per data type — ask it before answering "what do you cover?".
    `{id}` is a ticker, a numeric SEC CIK, or a platform key for a non-SEC
    issuer (XSAU000001) — the `cik` field of the company payload. Human-readable
    guides: https://doc.astreus.ai (coverage at /coverage, data catalog at
    /data-catalog).


    Tiers: `public` endpoints need no credentials. Everything else takes an
    **API key** — create one on the Developers page in the terminal
    (https://astreus.ai/developers) and send it as `X-API-KEY: pk_live_...` (or
    `Authorization: Bearer pk_live_...`). Signed-in terminal sessions may use
    their Cognito ID token instead.


    Rate limits and quotas are per plan (fixed UTC windows): Free — 30 req/min,
    250 req/day; Build — 300 req/min, 100,000 req/month; Scale — custom. Build,
    Scale and prepaid credits are set up with sales
    (https://astreus.ai/contact), not self-serve. Responses carry RateLimit-*,
    X-Quota-* and, when credits pay, X-Billing-Source/X-Credits-Remaining-USD
    headers; a 429 carries `Retry-After` and a machine `code` of rate_limited or
    quota_exceeded (with sales_email).


    Server-side use: `/api/v1` sends no CORS headers, so a browser page on
    another origin cannot call it. Call it from a server, a script or an agent,
    and keep the key there.


    Versioning: `info.version` is the UTC date the contract last changed, and
    every response carries it in `x-astreus-api-version`. Within `/api/v1`
    changes are additive; a field or parameter that will go is marked
    `deprecated` first and kept for at least 90 days. Policy:
    https://doc.astreus.ai/versioning.


    Not investment advice. See /terms.
  contact:
    email: saif@astreus.ai
  termsOfService: https://astreus.ai/terms
  license:
    name: 'Proprietary: Astreus terms of service'
    url: https://astreus.ai/terms
servers:
  - url: https://astreus.ai
security: []
tags:
  - name: Search & Meta
    description: Entity resolution and platform metadata.
  - name: Company Data
    description: Profiles, structure, leadership, calendars.
  - name: Geo & Assets
    description: >-
      Physical assets on the map — what a company owns, operates or develops,
      where, since when, at what location precision, and the source behind each
      fact.
  - name: Financial Statements
    description: >-
      Standardized XBRL-derived statements — every line traceable to its filing
      via fact provenance.
  - name: SEC Filings
    description: >-
      The filing index and documents (SEC and exchange-published), parsed
      section text, and the tables inside the notes as gated grids and series.
  - name: 8-K Events
    description: >-
      Material events: 8-K items and exchange disclosures by item code,
      filterable by family, with extracted item text.
  - name: News
    description: >-
      The intraday news tape: filings, releases and licensed wires with source
      attribution, storylines and topics.
  - name: Transcripts & Calls
    description: Earnings-call transcripts, span-anchored observations, IR decks.
  - name: Guidance & Scorecards
    description: What management promised vs. what happened.
  - name: Ownership & Insiders
    description: 13F holders, Forms 3/4/5, the people registry.
  - name: Macro
    description: >-
      Economic series (the current vintage: the latest published value for each
      period) and central-bank text.
  - name: Market Data
    description: Daily bars for stocks, benchmarks, commodities and compute.
  - name: Intelligence
    description: Narratives and source-linked claims with declared validation status.
  - name: Analytics
    description: Charting over any catalog series.
paths:
  /api/v1/earnings/calendar/{id}:
    get:
      tags:
        - Company Data
      summary: Earnings date detail
      description: >-
        One results date: the event, the revisions of its date with the evidence
        for each (newest first, at most 100), the company's past results dates,
        and the headline results once reported. The estimator re-saves an
        unchanged estimate on every run: `revisions=changes` keeps only the
        revisions that changed the date, status or evidence, each with
        `repeated` (identical re-saves that followed it) and `lastConfirmedAt`
        (the last one's time), and adds `revisionsTotal` and
        `revisionsCollapsed`.
      operationId: get-earnings-date-detail
      parameters:
        - name: id
          in: path
          required: true
          description: The event id as the calendar returned it.
          schema:
            type: string
        - name: revisions
          in: query
          description: >-
            all (default): every revision. changes: only those that changed the
            date, status or evidence.
          schema:
            type: string
            enum:
              - all
              - changes
            default: all
      responses:
        '200':
          description: OK
          content:
            application/json:
              schema:
                type: object
                properties:
                  event:
                    type: object
                    properties:
                      id:
                        type: string
                      cik:
                        type: string
                      company:
                        type: string
                      ticker:
                        type: string
                      country:
                        type: string
                      periodEnd:
                        type: string
                        format: date
                      kind:
                        type: string
                      date:
                        type: string
                        format: date
                      status:
                        type: string
                      session:
                        type: 'null'
                      timeText:
                        type: 'null'
                      windowStart:
                        type: string
                        format: date
                      windowEnd:
                        type: string
                        format: date
                      sampleSize:
                        type: integer
                      explanation:
                        type: string
                      docRef:
                        type: 'null'
                      sourceUrl:
                        type: 'null'
                      quote:
                        type: 'null'
                      sourcePublishedAt:
                        type: 'null'
                      updatedAt:
                        type: string
                        format: date-time
                      revision:
                        type: string
                      reason:
                        type: string
                      marketCap:
                        type: integer
                      exchange:
                        type: string
                      website:
                        type: string
                      brandMark:
                        type: string
                      brandMarkChecked:
                        type: boolean
                      broadcast:
                        type: 'null'
                  revisions:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        status:
                          type: string
                        date:
                          type: string
                          format: date
                        reason:
                          type: string
                        createdAt:
                          type: string
                          format: date-time
                        docRef:
                          type: 'null'
                        sourceUrl:
                          type: 'null'
                        quote:
                          type: 'null'
                  history:
                    type: array
                    items:
                      type: object
                      properties:
                        id:
                          type: string
                        cik:
                          type: string
                        company:
                          type: string
                        ticker:
                          type: string
                        country:
                          type: string
                        periodEnd:
                          type: string
                          format: date
                        kind:
                          type: string
                        date:
                          type: string
                          format: date
                        status:
                          type: string
                        session:
                          type: 'null'
                        timeText:
                          type: 'null'
                        windowStart:
                          type: 'null'
                        windowEnd:
                          type: 'null'
                        sampleSize:
                          type: 'null'
                        explanation:
                          type: 'null'
                        docRef:
                          type: string
                        sourceUrl:
                          type: string
                        quote:
                          type: string
                        sourcePublishedAt:
                          type: 'null'
                        updatedAt:
                          type: string
                          format: date-time
                        revision:
                          type: string
                        reason:
                          type: string
                  results:
                    type: 'null'
                description: >-
                  Inferred from captured responses: every field shown was
                  returned by a real call; a field may be absent or null on
                  other calls.
                x-schema-source: inferred
              example:
                event:
                  id: '43656'
                  cik: XSAU000040
                  company: Al Majed Oud Co.
                  ticker: '4165'
                  country: SA
                  periodEnd: '2026-09-30'
                  kind: results
                  date: '2026-11-01'
                  status: estimated
                  session: null
                  timeText: null
                  windowStart: '2026-10-24'
                  windowEnd: '2026-11-10'
                  sampleSize: 9
                  explanation: >-
                    Based on 9 prior releases, including 2 for fiscal Q3. Recent
                    reporting dates carry more weight. This range is an
                    estimate, not an issuer schedule.
                  docRef: null
                  sourceUrl: null
                  quote: null
                  sourcePublishedAt: null
                  updatedAt: '2026-11-01T00:16:05.759Z'
                  revision: '376933'
                  reason: model_refresh
                  marketCap: 778792932
                  exchange: TADAWUL
                  website: http://www.almajed4oud.com
                  brandMark: >-
                    https://cdn.brandfetch.io/almajed4oud.com/icon?c=1idQJ_8ukVnXwK_PLYs&fallback=404
                  brandMarkChecked: true
                  broadcast: null
                revisions:
                  - id: '376933'
                    status: estimated
                    date: '2026-11-01'
                    reason: model_refresh
                    createdAt: '2026-11-01T00:16:05.759Z'
                    docRef: null
                    sourceUrl: null
                    quote: null
                  - id: '370833'
                    status: estimated
                    date: '2026-11-01'
                    reason: model_refresh
                    createdAt: '2026-10-31T00:16:01.562Z'
                    docRef: null
                    sourceUrl: null
                    quote: null
                history:
                  - id: '13211'
                    cik: XSAU000040
                    company: Al Majed Oud Co.
                    ticker: '4165'
                    country: SA
                    periodEnd: '2026-06-30'
                    kind: results
                    date: '2026-08-05'
                    status: reported
                    session: null
                    timeText: null
                    windowStart: null
                    windowEnd: null
                    sampleSize: null
                    explanation: null
                    docRef: SAU-4165-20260805-PR
                    sourceUrl: >-
                      https://www.saudiexchange.sa/wps/portal/saudiexchange/newsandreports/issuer-news/issuer-announcements/issuer-announcements-details/?anId=97261&anCat=1&cs=4165&locale=en
                    quote: >-
                      Al Majed Oud Co. announces its Interim Financial results
                      for the Period Ending on 2026-06-30 ( Six Months )
                    sourcePublishedAt: null
                    updatedAt: '2026-09-15T14:03:26.799Z'
                    revision: '12533'
                    reason: issuer_evidence
                  - id: '13208'
                    cik: XSAU000040
                    company: Al Majed Oud Co.
                    ticker: '4165'
                    country: SA
                    periodEnd: '2026-03-31'
                    kind: results
                    date: '2026-04-30'
                    status: reported
                    session: null
                    timeText: null
                    windowStart: null
                    windowEnd: null
                    sampleSize: null
                    explanation: null
                    docRef: SAU-4165-20260430-PR
                    sourceUrl: >-
                      https://www.saudiexchange.sa/wps/portal/saudiexchange/newsandreports/issuer-news/issuer-announcements/issuer-announcements-details/?anId=94809&anCat=1&cs=4165&locale=en
                    quote: >-
                      Al Majed Oud Co. announces its Interim Financial results
                      for the Period Ending on 2026-03-31 ( Three Months )
                    sourcePublishedAt: null
                    updatedAt: '2026-09-15T14:03:23.116Z'
                    revision: '12530'
                    reason: issuer_evidence
                results: null
        '400':
          description: >-
            A query parameter the route does not take (unknown_parameter), a
            value outside its type, enum or range (invalid_parameter), or a
            required one missing (missing_parameter); `param` names it. A
            request refused against this spec's parameter list is not metered.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '401':
          description: Missing or invalid bearer token.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '404':
          description: Unknown company, country, symbol or resource.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
        '429':
          description: Rate limited. Honour Retry-After.
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/Error'
      security:
        - apiKey: []
        - cognitoIdToken: []
components:
  schemas:
    Error:
      type: object
      required:
        - error
        - code
      properties:
        error:
          type: string
          description: Human-readable message. It may change; branch on `code`.
        code:
          type: string
          description: >-
            Stable machine code; every error carries one. unknown_parameter,
            invalid_parameter and missing_parameter come with `param`;
            unknown_parameter also with `allowed`. A route may add codes of its
            own (e.g. key_limit); treat an unlisted code by its HTTP status.
          enum:
            - unknown_parameter
            - invalid_parameter
            - missing_parameter
            - invalid_request
            - unauthenticated
            - upgrade_required
            - forbidden
            - not_found
            - conflict
            - too_large
            - unsupported_media_type
            - rate_limited
            - quota_exceeded
            - auth_unavailable
            - upstream_unavailable
            - internal_error
        param:
          type: string
          description: The query parameter at fault, when one is.
        allowed:
          type: array
          items:
            type: string
          description: 'With unknown_parameter: every query parameter the route takes.'
  securitySchemes:
    apiKey:
      type: apiKey
      in: header
      name: X-API-KEY
      description: >-
        Astreus API key (pk_live_...), created on the Developers page in the
        terminal. Also accepted as `Authorization: Bearer pk_live_...`.
      x-default: pk_live_YOUR_KEY
    cognitoIdToken:
      type: http
      scheme: bearer
      bearerFormat: JWT
      description: >-
        Amazon Cognito ID token (token_use=id) for the Astreus user pool — the
        terminal's own session credential. API consumers should use an API key
        instead.

````

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