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

# Get metric observations

> Returns metric observations with citations for one or more companies, with cursor-based pagination.

**Company filters:** Provide single-company filters (`company_id`, `company_domain`) or multi-company filters (`company_ids`, `company_domains`), but not both. GET requests support up to 200 companies.

**Global queries** (no company filter) require at least one date range (`measurement_end_date`, `comparison_window_end_date`, `created_at`, or `updated_at`) spanning 14 days or less.



## OpenAPI

````yaml GET /api/v1/metrics/
openapi: 3.0.3
info:
  title: Sacra API
  version: 1.0.0
  description: >-
    The Sacra API currently supports querying News, Documents, Companies and
    Categories that enable you to use Sacra research within your own
    application.


    ## **Getting started guide**


    To start using the APIs, you need to:


    - Only available to **Platforms** and **Funds** tier members. (See
    [here](https://sacra.com/pricing/))
        
    - You must use a valid API Key to send requests to the API endpoints. You
    can generate your API key in the Api Keys section of your [Organization
    Settings](https://sacra.com/orgs/settings/general/).
        
    - The API returns request responses in JSON format. When an API request
    returns an error, it is sent in the JSON response as an error key.
        

    ## Authentication


    The Sacra API uses Tokens for authentication.


    You can generate a Sacra API Key/Token in the Api Keys section of your
    [Organization Settings](https://sacra.com/orgs/settings/general/).


    You must include an API Key/Token in each request to the Sacra API with the
    **Authorization** request header.


    ### Authentication error response


    If a Token is missing, malformed, or invalid, you will receive an HTTP 401
    Unauthorized response code.


    ### **Need some help?**


    In case you have questions, we will eventually provide tutorials and a FAQ
    page. But for now you can check out the
    [#developers](https://discord.gg/mTswyV8gg3) channel in our community
    [Discord](https://discord.gg/mTswyV8gg3), there’s a good chance our
    community has an answer for you.


    ## Authorization


    | **Key** | **Value** |

    | --- | --- |

    | Authorization | Token {{API_KEY}} |
servers:
  - url: https://sacra.com
    description: Production
security: []
tags:
  - name: Companies
  - name: Categories
  - name: Events
  - name: News
  - name: Documents
  - name: Filings
  - name: Embeds
  - name: Metrics
  - name: Funding (Legacy)
paths:
  /api/v1/metrics/:
    get:
      tags:
        - Metrics
      summary: Get metric observations
      description: >-
        Returns metric observations with citations for one or more companies,
        with cursor-based pagination.


        **Company filters:** Provide single-company filters (`company_id`,
        `company_domain`) or multi-company filters (`company_ids`,
        `company_domains`), but not both. GET requests support up to 200
        companies.


        **Global queries** (no company filter) require at least one date range
        (`measurement_end_date`, `comparison_window_end_date`, `created_at`, or
        `updated_at`) spanning 14 days or less.
      operationId: metrics_retrieve
      parameters:
        - in: query
          name: base_period
          schema:
            type: string
          description: Comma-separated list of `metric_definition.base_period` values.
        - in: query
          name: company_domain
          schema:
            type: string
          description: >-
            Filter by a single company domain (e.g. `stripe.com`). Cannot
            combine with multi-company filters.
        - in: query
          name: company_domains
          schema:
            type: string
          description: >-
            Comma-separated list of company domains. Max 200 for GET. Cannot
            combine with single-company filters.
        - in: query
          name: company_id
          schema:
            type: string
          description: >-
            Filter by a single company ID. Cannot combine with multi-company
            filters.
        - in: query
          name: company_ids
          schema:
            type: string
          description: >-
            Comma-separated list of company IDs. Max 200 for GET. Cannot combine
            with single-company filters.
        - in: query
          name: comparison_window_end_date_gte
          schema:
            type: string
            format: date-time
          description: >-
            Filter where `measurement.comparison_window_end_date` >= this value
            (ISO 8601).
        - in: query
          name: comparison_window_end_date_lte
          schema:
            type: string
            format: date-time
          description: >-
            Filter where `measurement.comparison_window_end_date` <= this value
            (ISO 8601).
        - in: query
          name: created_at_gte
          schema:
            type: string
            format: date-time
          description: Filter metrics created on or after this datetime (ISO 8601).
        - in: query
          name: created_at_lte
          schema:
            type: string
            format: date-time
          description: Filter metrics created on or before this datetime (ISO 8601).
        - in: query
          name: growth_period
          schema:
            type: string
          description: Comma-separated list of `metric_definition.growth_period` values.
        - in: query
          name: include_all_signal_evidence
          schema:
            type: boolean
          description: >-
            When true, include all SignalEvidence rows even without
            quote/snippet/SEC filing URL. Default: false.
        - in: query
          name: measurement_end_date_gte
          schema:
            type: string
            format: date-time
          description: Filter where `measurement.end_date` >= this value (ISO 8601).
        - in: query
          name: measurement_end_date_lte
          schema:
            type: string
            format: date-time
          description: Filter where `measurement.end_date` <= this value (ISO 8601).
        - in: query
          name: measurement_scenario
          schema:
            type: string
          description: >-
            Comma-separated list of `measurement.scenario` values (e.g.
            `historical,projection`).
        - in: query
          name: metric_base
          schema:
            type: string
          description: >-
            Comma-separated list of `metric_definition.base` values to filter by
            (e.g. `revenue,arr,trailing_revenue`).
        - in: query
          name: metric_view
          schema:
            type: string
          description: >-
            Comma-separated list of `metric_definition.view` values (e.g.
            `value,growth`).
        - in: query
          name: page_after
          schema:
            type: string
          description: Cursor for the next page. Cannot combine with `page_before`.
        - in: query
          name: page_before
          schema:
            type: string
          description: Cursor for the previous page. Cannot combine with `page_after`.
        - in: query
          name: page_size
          schema:
            type: integer
          description: 'Results per page. Default: 30, max: 100.'
        - in: query
          name: updated_at_gte
          schema:
            type: string
            format: date-time
          description: Filter metrics updated on or after this datetime (ISO 8601).
        - in: query
          name: updated_at_lte
          schema:
            type: string
            format: date-time
          description: Filter metrics updated on or before this datetime (ISO 8601).
      responses:
        '200':
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/MetricsGetResponse'
              examples:
                CompanyRevenueMetrics:
                  value:
                    metrics:
                      - metric_id: 604e0090-a7ac-470c-ae63-376e0f5055f1
                        metric_definition:
                          base: trailing_revenue
                          view: value
                          base_period: year
                          base_forward: null
                          growth_period: null
                          growth_period_length: null
                        measurement:
                          scenario: historical
                          end_date: '2025-12-31'
                          custom_start_date: null
                          comparison_window_end_date: null
                          comparison_window_custom_start_date: null
                          type: equals
                          unit_kind: currency
                          currency_code: USD
                          amount: 2200000000
                          low: null
                          high: null
                          scope_name: null
                          scope_type: null
                          status: Active
                        updated_at: '2026-02-26T20:27:13.693661+00:00'
                        created_at: '2026-02-25T20:17:24.752169+00:00'
                        company:
                          id: '239'
                          slug: kraken
                          domain: kraken.com
                        citations:
                          summary:
                            count: 1
                            latest_updated_at: '2026-02-25T20:17:40.923084+00:00'
                          sources:
                            - link: >-
                                https://blog.kraken.com/news/kraken-2025-financials
                              headline: Kraken 2025 Financials
                              quote: >-
                                Adjusted revenue reached $2.2 billion,
                                representing 33% year-over-year growth.
                              publication: blog.kraken.com
                              type: article
                      - metric_id: 83a78a15-35a9-42b9-8bd5-084717e1597b
                        metric_definition:
                          base: trailing_revenue
                          view: growth
                          base_period: year
                          base_forward: null
                          growth_period: year
                          growth_period_length: 1
                        measurement:
                          scenario: historical
                          end_date: '2025-12-31'
                          custom_start_date: null
                          comparison_window_end_date: '2024-12-31'
                          comparison_window_custom_start_date: null
                          type: equals
                          unit_kind: percent
                          currency_code: null
                          amount: 33
                          low: null
                          high: null
                          scope_name: null
                          scope_type: null
                          status: Active
                        updated_at: '2026-02-26T20:27:13.690811+00:00'
                        created_at: '2026-02-25T20:17:24.761715+00:00'
                        company:
                          id: '239'
                          slug: kraken
                          domain: kraken.com
                        citations:
                          summary:
                            count: 1
                            latest_updated_at: '2026-02-25T20:17:40.946868+00:00'
                          sources:
                            - link: >-
                                https://blog.kraken.com/news/kraken-2025-financials
                              headline: Kraken 2025 Financials
                              quote: >-
                                Adjusted revenue reached $2.2 billion,
                                representing 33% year-over-year growth.
                              publication: blog.kraken.com
                              type: article
                    pagination:
                      page_size: 30
                      current_page_items: 2
                      total_items: 13
                      after_cursor: Start
                      before_cursor: null
                      next_link: null
                      prev_link: null
                    meta:
                      query_type: single-company
                      companies_count: 1
                      companies:
                        - id: '239'
                          slug: kraken
                          domain: kraken.com
                MultiCompanyMetrics:
                  value:
                    metrics:
                      - metric_id: e8429dad-2c5f-4e92-aff3-538ca28d59b6
                        metric_definition:
                          base: trailing_revenue
                          view: value
                          base_period: year
                          base_forward: null
                          growth_period: null
                          growth_period_length: null
                        measurement:
                          scenario: projection
                          end_date: '2030-12-31'
                          custom_start_date: null
                          comparison_window_end_date: null
                          comparison_window_custom_start_date: null
                          type: equals
                          unit_kind: currency
                          currency_code: USD
                          amount: 213000000000
                          low: null
                          high: null
                          scope_name: null
                          scope_type: null
                          status: Active
                        updated_at: '2026-02-26T20:27:13.843770+00:00'
                        created_at: '2026-02-25T20:17:24.704612+00:00'
                        company:
                          id: '579'
                          slug: openai
                          domain: openai.com
                        citations:
                          summary:
                            count: 1
                            latest_updated_at: '2026-02-25T20:17:40.830815+00:00'
                          sources:
                            - link: >-
                                https://fortune.com/2025/11/26/is-openai-profitable-forecast-data-center-200-billion-shortfall-hsbc
                              headline: >-
                                Is OpenAI Profitable Forecast Data Center 200
                                Billion Shortfall HSBC
                              quote: >-
                                Despite this, projected revenues, to over $213
                                billion in 2030, would simply not be enough.
                              publication: fortune.com
                              type: article
                      - metric_id: ab346558-9373-4d66-ab1b-bb3a1f9b6450
                        metric_definition:
                          base: trailing_revenue
                          view: value
                          base_period: year
                          base_forward: null
                          growth_period: null
                          growth_period_length: null
                        measurement:
                          scenario: projection
                          end_date: '2028-12-31'
                          custom_start_date: null
                          comparison_window_end_date: null
                          comparison_window_custom_start_date: null
                          type: equals
                          unit_kind: currency
                          currency_code: USD
                          amount: 70000000000
                          low: null
                          high: null
                          scope_name: null
                          scope_type: null
                          status: Active
                        updated_at: '2026-02-26T20:27:13.082265+00:00'
                        created_at: '2026-02-25T20:17:24.771316+00:00'
                        company:
                          id: '649'
                          slug: anthropic
                          domain: anthropic.com
                        citations:
                          summary:
                            count: 2
                            latest_updated_at: '2026-02-25T20:17:40.971313+00:00'
                          sources:
                            - link: >-
                                https://theinformation.com/briefings/anthropic-projects-70-billion-revenue-17-billion-cash-flow-2028
                              headline: >-
                                Anthropic Projects 70 Billion Revenue 17 Billion
                                Cash Flow 2028
                              quote: >-
                                Anthropic Projects $70 Billion in Revenue, $17
                                Billion in Cash Flow in 2028
                              publication: The Information
                              type: article
                    pagination:
                      page_size: 30
                      current_page_items: 2
                      total_items: 43
                      after_cursor: Start
                      before_cursor: null
                      next_link: >-
                        https://sacra.com/api/v1/metrics/?company_domains=anthropic.com%2Copenai.com&pagination=cursor&page_after=f1b310d3-ebb7-4aea-9414-a7342ad2642a
                      prev_link: null
                    meta:
                      query_type: multi-company
                      companies_count: 2
                      companies:
                        - id: '579'
                          slug: openai
                          domain: openai.com
                        - id: '649'
                          slug: anthropic
                          domain: anthropic.com
                  description: >-
                    Multi-company query using
                    company_domains=anthropic.com,openai.com. Shows pagination
                    with next_link.
                GrowthMetrics:
                  value:
                    metrics:
                      - metric_id: 9434fddf-16b4-4213-9508-3a745dbc856d
                        metric_definition:
                          base: run_rate_revenue
                          view: growth
                          base_period: null
                          base_forward: year
                          growth_period: year
                          growth_period_length: 1
                        measurement:
                          scenario: historical
                          end_date: '2026-02-09'
                          custom_start_date: null
                          comparison_window_end_date: '2025-02-09'
                          comparison_window_custom_start_date: null
                          type: greater_than
                          unit_kind: percent
                          currency_code: null
                          amount: null
                          low: 65
                          high: null
                          scope_name: null
                          scope_type: null
                          status: Active
                        updated_at: '2026-02-26T20:45:53.055594+00:00'
                        created_at: '2026-02-25T20:17:25.235582+00:00'
                        company:
                          id: '262'
                          slug: databricks
                          domain: databricks.com
                        citations:
                          summary:
                            count: 2
                            latest_updated_at: '2026-02-25T20:17:41.940116+00:00'
                          sources:
                            - link: >-
                                https://databricks.com/company/newsroom/press-releases/databricks-grows-65-yoy-surpasses-5-4-billion-revenue-run-rate
                              headline: >-
                                Databricks Grows 65 YoY Surpasses 5.4 Billion
                                Revenue Run Rate
                              quote: >-
                                Databricks crossed a $5.4 billion revenue
                                run-rate, delivering >65% year-over-year growth.
                              publication: databricks.com
                              type: article
                    pagination:
                      page_size: 30
                      current_page_items: 1
                      total_items: 9
                      after_cursor: Start
                      before_cursor: null
                      next_link: null
                      prev_link: null
                    meta:
                      query_type: single-company
                      companies_count: 1
                      companies:
                        - id: '262'
                          slug: databricks
                          domain: databricks.com
                  description: >-
                    Filtered by metric_view=growth. Shows greater_than type with
                    low field instead of amount.
                ProjectionMetrics:
                  value:
                    metrics:
                      - metric_id: 0a93733b-e784-41b5-b511-e2c44359da3d
                        metric_definition:
                          base: trailing_revenue
                          view: value
                          base_period: year
                          base_forward: null
                          growth_period: null
                          growth_period_length: null
                        measurement:
                          scenario: projection
                          end_date: '2026-12-31'
                          custom_start_date: null
                          comparison_window_end_date: null
                          comparison_window_custom_start_date: null
                          type: less_than
                          unit_kind: currency
                          currency_code: USD
                          amount: null
                          low: null
                          high: 18000000000
                          scope_name: null
                          scope_type: null
                          status: Active
                        updated_at: '2026-02-26T20:27:13.084979+00:00'
                        created_at: '2026-02-25T20:17:25.075542+00:00'
                        company:
                          id: '649'
                          slug: anthropic
                          domain: anthropic.com
                        citations:
                          summary:
                            count: 1
                            latest_updated_at: '2026-02-25T20:17:41.627102+00:00'
                          sources:
                            - link: >-
                                https://theinformation.com/briefings/anthropic-increases-2026-revenue-forecast-20-18-billion
                              headline: Anthropic Increases 2026 Revenue Forecast
                              quote: >-
                                Anthropic projected to generate as much as $18
                                billion this year.
                              publication: The Information
                              type: article
                    pagination:
                      page_size: 30
                      current_page_items: 1
                      total_items: 5
                      after_cursor: Start
                      before_cursor: null
                      next_link: null
                      prev_link: null
                    meta:
                      query_type: single-company
                      companies_count: 1
                      companies:
                        - id: '649'
                          slug: anthropic
                          domain: anthropic.com
                  description: >-
                    Filtered by measurement_scenario=projection. Shows less_than
                    type with high field instead of amount.
                ScopedRevenueMetrics:
                  value:
                    metrics:
                      - metric_id: b7e21f3a-4c89-4d12-a6f5-9e8b7c3d1a2f
                        metric_definition:
                          base: run_rate_revenue
                          view: value
                          base_period: null
                          base_forward: year
                          growth_period: null
                          growth_period_length: null
                        measurement:
                          scenario: historical
                          end_date: '2026-02-09'
                          custom_start_date: null
                          comparison_window_end_date: null
                          comparison_window_custom_start_date: null
                          type: equals
                          unit_kind: currency
                          currency_code: USD
                          amount: 2700000000
                          low: null
                          high: null
                          scope_name: Foundation Model
                          scope_type: product
                          status: Active
                        updated_at: '2026-02-26T20:45:53.055594+00:00'
                        created_at: '2026-02-25T20:17:25.235582+00:00'
                        company:
                          id: '262'
                          slug: databricks
                          domain: databricks.com
                        citations:
                          summary:
                            count: 1
                            latest_updated_at: '2026-02-25T20:17:41.940116+00:00'
                          sources: []
                    pagination:
                      page_size: 30
                      current_page_items: 1
                      total_items: 3
                      after_cursor: Start
                      before_cursor: null
                      next_link: null
                      prev_link: null
                    meta:
                      query_type: single-company
                      companies_count: 1
                      companies:
                        - id: '262'
                          slug: databricks
                          domain: databricks.com
                  description: >-
                    Metric with scope_name and scope_type populated. Scoped
                    metrics represent product or segment-level breakdowns (e.g.
                    scope_type=product, scope_name=Foundation Model).
                EmptyResults:
                  value:
                    metrics: []
                    pagination:
                      page_size: 30
                      current_page_items: 0
                      total_items: 0
                      after_cursor: Start
                      before_cursor: null
                      next_link: null
                      prev_link: null
                    meta:
                      query_type: single-company
                      companies_count: 0
                      companies: []
                  description: No metrics match the given filters.
          description: Paginated list of metric observations with citations.
        '400':
          content:
            text/plain:
              schema:
                type: string
                example: Date range must be 14 days or less for global queries
          description: Invalid parameters.
        '404':
          content:
            text/plain:
              schema:
                type: string
                example: 'Bad request: Company not found for domain: example.com'
          description: Company not found.
        '500':
          content:
            text/plain:
              schema:
                type: string
                example: Internal server error
          description: Internal server error.
      security:
        - SacraAPIAuthentication: []
components:
  schemas:
    MetricsGetResponse:
      type: object
      properties:
        metrics:
          type: array
          items:
            $ref: '#/components/schemas/MetricObservation'
        pagination:
          $ref: '#/components/schemas/MetricsPagination'
        meta:
          $ref: '#/components/schemas/MetricsMeta'
      required:
        - meta
        - metrics
        - pagination
    MetricObservation:
      type: object
      properties:
        metric_id:
          type: string
          format: uuid
        metric_definition:
          $ref: '#/components/schemas/MetricDefinition'
        measurement:
          $ref: '#/components/schemas/MetricMeasurement'
        updated_at:
          type: string
          format: date-time
        created_at:
          type: string
          format: date-time
        company:
          $ref: '#/components/schemas/MetricCompanyRef'
        citations:
          $ref: '#/components/schemas/MetricCitations'
      required:
        - citations
        - company
        - created_at
        - measurement
        - metric_definition
        - metric_id
        - updated_at
    MetricsPagination:
      type: object
      properties:
        page_size:
          type: integer
        current_page_items:
          type: integer
        total_items:
          type: integer
        after_cursor:
          type: string
          nullable: true
        before_cursor:
          type: string
          nullable: true
        next_link:
          type: string
          nullable: true
        prev_link:
          type: string
          nullable: true
      required:
        - after_cursor
        - before_cursor
        - current_page_items
        - next_link
        - page_size
        - prev_link
        - total_items
    MetricsMeta:
      type: object
      properties:
        query_type:
          type: string
          description: One of `single-company`, `multi-company`, `global`.
        companies_count:
          type: integer
        companies:
          type: array
          items:
            $ref: '#/components/schemas/MetricsMetaCompany'
      required:
        - companies
        - companies_count
        - query_type
    MetricDefinition:
      type: object
      properties:
        base:
          type: string
          description: e.g. `trailing_revenue`, `arr`, `valuation`.
        view:
          type: string
          description: Either `value` or `growth`.
        base_period:
          type: string
          nullable: true
          description: e.g. `year`, `quarter`.
        base_forward:
          type: string
          nullable: true
        growth_period:
          type: string
          nullable: true
          description: e.g. `year`.
        growth_period_length:
          type: integer
          nullable: true
      required:
        - base
        - base_forward
        - base_period
        - growth_period
        - growth_period_length
        - view
    MetricMeasurement:
      type: object
      properties:
        scenario:
          type: string
          description: Either `historical` or `projection`.
        end_date:
          type: string
        custom_start_date:
          type: string
          nullable: true
        comparison_window_end_date:
          type: string
          nullable: true
        comparison_window_custom_start_date:
          type: string
          nullable: true
        type:
          type: string
          description: e.g. `equals`, `range`.
        unit_kind:
          type: string
          description: e.g. `currency`, `percent`.
        currency_code:
          type: string
          nullable: true
        amount:
          type: number
          format: double
          nullable: true
        low:
          type: number
          format: double
          nullable: true
        high:
          type: number
          format: double
          nullable: true
        scope_name:
          type: string
          nullable: true
        scope_type:
          type: string
          nullable: true
        status:
          type: string
      required:
        - amount
        - comparison_window_custom_start_date
        - comparison_window_end_date
        - currency_code
        - custom_start_date
        - end_date
        - high
        - low
        - scenario
        - scope_name
        - scope_type
        - status
        - type
        - unit_kind
    MetricCompanyRef:
      type: object
      properties:
        id:
          type: string
        slug:
          type: string
        domain:
          type: string
      required:
        - domain
        - id
        - slug
    MetricCitations:
      type: object
      properties:
        summary:
          $ref: '#/components/schemas/MetricCitationsSummary'
        sources:
          type: array
          items:
            $ref: '#/components/schemas/MetricCitationSource'
      required:
        - sources
        - summary
    MetricsMetaCompany:
      type: object
      properties:
        id:
          type: string
        slug:
          type: string
        domain:
          type: string
      required:
        - domain
        - id
        - slug
    MetricCitationsSummary:
      type: object
      properties:
        count:
          type: integer
        latest_updated_at:
          type: string
          format: date-time
          nullable: true
      required:
        - count
        - latest_updated_at
    MetricCitationSource:
      type: object
      properties:
        link:
          type: string
        headline:
          type: string
        quote:
          type: string
          nullable: true
        publication:
          type: string
          nullable: true
        type:
          type: string
          description: e.g. `article`, `filing`.
      required:
        - headline
        - link
        - publication
        - quote
        - type
  securitySchemes:
    SacraAPIAuthentication:
      type: apiKey
      in: header
      name: Authorization
      description: |-
        Authenticate using one of two formats:

        - **Organization/user token:** `Token <your-token>`
        - **Stytch JWT:** `Bearer <your-jwt>`

````