---
title: "Query statistics"
method: GET
path: "/statistics"
tags: ["Statistics"]
---

# Query statistics

`GET /statistics`

## Request

- Base URL: `https://statorigin.org/api/v1`
- URL: `https://statorigin.org/api/v1/statistics`
- Auth: none declared

The main endpoint. Returns published, verified data points matching the filters, each with complete provenance.

## Query parameters

- `industry` string
- `region` string
- `indicator` string
- `year` string
- `value_type` 'actual' | 'estimate' | 'forecast'
- `source_org` string
- `limit` integer
- `cursor` string

## Response `200`

Matching data points

- object
  - `data` Statistic[]
    - `id` string, required
    - `url` string, uri, required
    - `indicator` object, required
      - `slug` string
      - `name` string
      - `definition` string, nullable
    - `industry` object[]
      - `slug` string
      - `name` string
      - `isic` string: ISIC Rev.4 code
      - `is_primary` boolean
    - `region` object, required
      - `code` string
      - `name` string
      - `type` 'world' | 'country' | 'bloc' | 'subnational'
    - `period` object, required
      - `start` string, date
      - `end` string, date
      - `type` 'year' | 'quarter' | 'month' | 'point' | 'range'
    - `value` number, required
    - `value_text` string, nullable: The source's own phrasing, preserved verbatim
    - `unit` string, required
    - `currency` string, nullable
    - `scale` '1' | 'thousand' | 'million' | 'billion' | 'trillion'
    - `value_type` 'actual' | 'estimate' | 'forecast'
    - `source` object, required: Complete provenance. Never omitted.
      - `org` string
      - `org_short_name` string, nullable
      - `org_url` string, uri, nullable
      - `org_tier` integer
      - `document_title` string
      - `document_url` string, uri
      - `document_type` string
      - `locator` string, nullable: Page, table or section
      - `quote` string, nullable: Verbatim quotation for quote evidence; explicitly labelled generated description for dataset evidence
      - `evidence_type` 'quote' | 'dataset': How the value is evidenced
      - `dataset_query` object, nullable: Dataset code and keys selecting the unique observation
      - `dataset_evidence` object, nullable: Publisher response URL, version, retrieval time, SHA-256, schema mapping and methodology URL
      - `published_date` string, date, nullable
      - `accessed_at` string, date
      - `license` string, nullable
      - `url_status` 'ok' | 'redirect' | 'dead'
      - `self_reported` boolean: True when the publisher reports on itself (a company's own results or operations) rather than on the market. Industry hub pages exclude these; they remain available here and on the publisher's page.
    - `verification` 'pending' | 'verified' | 'disputed' | 'rejected'
    - `verified_by` string, nullable
    - `verified_at` string, date-time, nullable
    - `confidence` number, nullable
    - `is_secondhand` boolean: True when the figure was relayed from a secondary source
    - `supersedes` string, nullable: Id of the older record this one corrected, if any
    - `superseded_by` string, nullable: Id of the newer record that corrected this one. Non-null means this record is no longer current; its URL still resolves.
    - `is_current` boolean: False once superseded_by is set
    - `citation` object, required
      - `apa` string
      - `bibtex` string
    - `updated_at` string, date-time
  - `meta` Meta
    - `total` integer
    - `limit` integer
    - `next_cursor` string, nullable
    - `attribution` string
    - `license` string, uri
    - `docs` string, uri

## Other responses

- `400`: Invalid parameter
- `429`: Daily quota exhausted

---

[API](https://skmtc.dev/statorigin/apis/statorigin-api.md) · [All operations](https://skmtc.dev/statorigin/apis/statorigin-api/llms.txt) · [OpenAPI document](https://skmtc.dev/statorigin/apis/statorigin-api/revisions/cebde2a55b26?raw)
