FactIQ Series API
Lookup time series metadata and datapoints from the curated economic datasets.
Lookup time series metadata and datapoints from the curated economic datasets.
Every API here is available over the APIs.io API and to AI agents over MCP.
One button, every client — Claude, Cursor, VS Code and the rest.
https://apis.io/mcp
find_apisBrowse and filter every API in the catalog.get_api_artifactsOne API's artifacts, grouped by type.get_openapiThe primary OpenAPI for this API.find_similar_apisAPIs that look like this one.apis_io_searchSTART HERE — APIs, providers and tags for one query, each with its total.resolveTurn a domain, URL or GitHub org into the provider it belongs to.find_cohortsEvery scored population of providers in the catalog.curl "https://apis.io/api/v1/apis/factiq-com:factiq-com-series-api"
curl "https://apis.io/api/v1/apis?limit=25"
Calls without X-API-Key need no key. Calls with it need a paid plan — get a key.
Free tier, no form to fill in. Signing in shares your email address with us — we store it to create your key and to recognise you if you sign in with another provider. See our Privacy Policy and Terms.
A second provider on the same verified email joins the account you already have.
openapi: 3.2.0
info:
title: FactIQ Series API
description: Programmatic access to curated economic time series data sourced from the BLS, Census, BEA, and OEWS pipelines. Endpoints cover direct series lookups, authentication, and MCP-based data tools for analysis.
contact:
name: FactIQ
url: https://www.factiq.com/contact
version: 1.0.0
tags:
- name: Series
description: Lookup time series metadata and datapoints from the curated economic datasets.
paths:
/series/{series_id}:
get:
tags:
- Series
summary: Fetch a time series by identifier
description: Return metadata and datapoints for the requested series. Prefix the identifier with `schema::` to query a non-default schema; otherwise the `bls` schema is assumed.
operationId: get_series_data_series__series_id__get
parameters:
- name: series_id
in: path
required: true
schema:
type: string
description: Series identifier. Use the format `schema::series_id` to target a specific schema; defaults to the BLS schema.
examples:
- bls::CES0000000001
title: Series Id
description: Series identifier. Use the format `schema::series_id` to target a specific schema; defaults to the BLS schema.
responses:
'200':
description: Series metadata and datapoints were retrieved successfully.
content:
application/json:
schema:
$ref: '#/components/schemas/DataSeries'
'400':
description: The requested schema name was not valid.
'404':
description: No series matched the supplied identifier.
'500':
description: Database error while retrieving the series.
'422':
description: Validation Error
content:
application/json:
schema:
$ref: '#/components/schemas/HTTPValidationError'
components:
schemas:
ValidationError:
properties:
loc:
items:
anyOf:
- type: string
- type: integer
type: array
title: Location
msg:
type: string
title: Message
type:
type: string
title: Error Type
input:
title: Input
ctx:
type: object
title: Context
type: object
required:
- loc
- msg
- type
title: ValidationError
DataSeries:
properties:
id:
type: string
title: Id
schemaName:
type: string
title: Schemaname
name:
anyOf:
- type: string
- type: 'null'
title: Name
description:
anyOf:
- type: string
- type: 'null'
title: Description
units:
anyOf:
- type: string
- type: 'null'
title: Units
seasonality:
anyOf:
- type: string
- type: 'null'
title: Seasonality
dataPoints:
items:
$ref: '#/components/schemas/DataPoint'
type: array
title: Datapoints
frequency:
anyOf:
- type: string
- type: 'null'
title: Frequency
state:
anyOf:
- type: string
- type: 'null'
title: State
county_or_metro_area:
anyOf:
- type: string
- type: 'null'
title: County Or Metro Area
organization:
anyOf:
- type: string
- type: 'null'
title: Organization
survey_title:
anyOf:
- type: string
- type: 'null'
title: Survey Title
survey_details:
anyOf:
- additionalProperties:
type: string
type: object
- type: 'null'
title: Survey Details
source:
anyOf:
- $ref: '#/components/schemas/SourceInfo'
- type: 'null'
series_id_note:
anyOf:
- type: string
- type: 'null'
title: Series Id Note
replacement_series_ids:
items:
type: string
type: array
title: Replacement Series Ids
is_compound:
type: boolean
title: Is Compound
default: false
data_type:
type: string
title: Data Type
default: timeseries
pivotedColumns:
anyOf:
- items:
type: string
type: array
- type: 'null'
title: Pivotedcolumns
pivotedData:
anyOf:
- items:
items: {}
type: array
type: array
- type: 'null'
title: Pivoteddata
type: object
required:
- id
- schemaName
- name
- description
- units
- seasonality
- dataPoints
- frequency
- state
- county_or_metro_area
- organization
- survey_title
- survey_details
title: DataSeries
DataPoint:
properties:
id:
type: string
title: Id
value:
anyOf:
- type: number
- type: integer
- type: string
title: Value
label:
type: string
title: Label
date:
type: string
title: Date
unit:
anyOf:
- type: string
- type: 'null'
title: Unit
type: object
required:
- id
- value
- label
- date
- unit
title: DataPoint
HTTPValidationError:
properties:
detail:
items:
$ref: '#/components/schemas/ValidationError'
type: array
title: Detail
type: object
title: HTTPValidationError
SourceInfo:
properties:
country:
type: string
title: Country
organization_acronym:
type: string
title: Organization Acronym
original_info:
type: string
title: Original Info
type: object
required:
- country
- organization_acronym
- original_info
title: SourceInfo
description: Structured source information for search results.
securitySchemes:
HTTPBearer:
type: http
scheme: bearer