?>
ESC to close

Economic Indicators List API

Last updated:

Retrieve the complete catalog of US economic indicators covered by Business Quant, along with the full descriptor block for each one — code, name, category, release frequency, seasonal adjustment status, display unit, decimal precision, and direction. This is the discovery endpoint for the macro dataset: every code it returns is immediately valid on the Economic Data API and the Economic Calendar API, and the sorted categories array it hands back can be bound straight to a filter dropdown. Because the catalog changes rarely it is served from a long lived cache, so call it once at startup, keep the result, and stop hard-coding indicator codes into your application. The API is free to use.

Use this endpoint to:

Discover Every Valid Indicator Code Populate Category Filters Resolve Units And Precision
GET https://data.businessquant.com/economic/list?category={categories}&code={codes}&api_key={api_key}

Related endpoints: Pass any code from this catalog to the Economic Data API for its full historical time-series. Check when the next print lands with the Economic Calendar API, which accepts the same codes and categories. For the equivalent discovery endpoint on the equities side, see the Securities Universe API.

1. Request Parameters

Only the API key is required. Calling the endpoint bare returns every covered indicator, which is the usual way to use it. The two optional filters exist for narrower cases: pulling a single thematic group, or confirming descriptors on a known set of codes without transferring the whole catalog. Unlike the historic endpoint, there is no cap on how many codes you can pass here.

Parameter Description
api_key
Required
Your unique API key for authentication.
category
Optional
Comma separated list of categories to filter by. Values are matched exactly, so use the strings returned in the categories array of an unfiltered call. Remember to URL encode any category containing a space.
Format: category=Inflation,Employment
code
Optional Identifier
Comma separated list of specific indicator codes. Case insensitive, and the E: prefix is optional. Combining this with category narrows on both conditions together.
Format: code=CPIYOY,UNRATE,GDP

Filters that match nothing return 404. This differs from the Economic Calendar API, where an empty filtered result is a valid 200. Here an empty result means the category or code you asked for does not exist, which is a client error worth surfacing rather than rendering as an empty list.

Example cURL Request (Full Catalog)
curl -X GET "https://data.businessquant.com/economic/list?api_key=YOUR_API_KEY"
Example cURL Request (By Category)
curl -X GET "https://data.businessquant.com/economic/list?category=Inflation&api_key=YOUR_API_KEY"
Example cURL Request (Confirm Known Codes)
curl -X GET "https://data.businessquant.com/economic/list?code=CPIYOY,UNRATE&api_key=YOUR_API_KEY"

2. Sample Response

The catalog arrives in the standard two key envelope. Note that metadata here describes the result set rather than a security: how many indicators matched, and which categories are represented. Switch to JSON to inspect the descriptor objects in data, which carry every field you need to render an indicator correctly without a second call.

Response data not loaded.
File not found: templates/api-responses/economic-list.json

3. Response Field Reference

The metadata block summarises the result set, and data holds one descriptor object per indicator. These descriptor fields are identical to the ones returned in the metadata array of the Economic Data API, so a single parser handles both responses.

Metadata Fields

FieldTypeDescription
security_typearrayAlways ["Economic Indicator"]. Present so the envelope stays consistent with the equity and fund endpoints, where this field distinguishes asset classes.
total_indicatorsintegerNumber of indicators returned after any filters were applied.
categoriesarraySorted, de-duplicated list of the categories present in this result. Bind it directly to a filter control rather than maintaining your own list.

Data Fields — Indicator Descriptors

FieldTypeDescription
indicator_idintegerInternal series key. Stable across code changes, which makes it the safer choice for a primary key in your own store.
codestringCanonical indicator code in its stored form. Pass this to the historic and calendar endpoints.
namestringFull descriptive name of the indicator, suitable for chart titles and table labels.
categorystringThematic grouping, for example Inflation, Employment, Housing, or Interest Rates. Matches the values accepted by the category filter.
directionstringWhether a rising value is economically favourable. Use it to decide whether an increase should render green or red, since a rising unemployment rate and a rising GDP figure carry opposite meanings.
freqstringShort release frequency code, convenient for grouping and sorting.
freq_longstringHuman readable release frequency, for example Monthly or Quarterly. Display this one.
seasonal_adjstringSeasonal adjustment status. Worth surfacing, since adjusted and unadjusted variants of the same measure are not interchangeable in analysis.
display_unitstringUnit the raw values are expressed in, for example percent, index level, or thousands of units. Use it to label axes instead of assuming a unit per indicator.
decimalsintegerPrecision the publisher reports at. Format values to this rather than defaulting to two places, which would misrepresent indicators reported to one or three.

4. Recommended Usage

Call it once, then cache

The catalog is served from a long lived server side cache because it changes rarely. Fetch it when your application starts, store it locally keyed on indicator_id, and refresh on a daily or weekly schedule. There is no benefit to calling it on every page load.

Never hard-code indicator codes

Display codes are strings and are expected to change over time, which is exactly why history is joined on indicator_id internally. Resolve codes through this endpoint at runtime so a renamed series does not silently break a chart in production.

Drive your formatting from the descriptors

Between display_unit, decimals, and direction you have everything needed to render any indicator correctly without special casing. That means a new indicator added to our coverage appears in your interface formatted properly with no code change.

Build the filter UI from the response

The categories array is already sorted and de-duplicated, so it maps one to one onto a dropdown or a set of tabs. Those same strings are valid filters on this endpoint and on the Economic Calendar API.

Economic Indicators List Request Examples

Copy any request below directly into your application.

1. Complete Catalog
https://data.businessquant.com/economic/list?api_key=YOUR_API_KEY
2. Single Category
https://data.businessquant.com/economic/list?category=Employment&api_key=YOUR_API_KEY
3. Several Categories (Space Encoded)
https://data.businessquant.com/economic/list?category=Inflation,Interest%20Rates&api_key=YOUR_API_KEY
4. Descriptors for a Known Set of Codes
https://data.businessquant.com/economic/list?code=CPIYOY,UNRATE,GDP,PAYEMS&api_key=YOUR_API_KEY

Frequently Asked Questions

What does the Economic Indicators List API return?

The complete catalog of US economic indicators we cover, with a full descriptor for each: code, name, category, release frequency, seasonal adjustment status, display unit, decimal precision, and direction. The metadata block adds a total count and a sorted list of every category represented in the result.

How do I find valid economic indicator codes?

This endpoint is the source of truth. Every code it returns is immediately valid on the Economic Data API and the Economic Calendar API. New indicators are added to coverage over time, so resolving codes at runtime is safer than maintaining a hard-coded list.

Is there a limit on how many codes I can request?

No. The five code cap applies only to the historic time-series endpoint, where each code can return thousands of observations. Descriptors are small, so you can pass as many codes as you like here, or omit the filter entirely for the full catalog.

How often does the catalog change?

Rarely, which is why the response is served from a long lived cache. Fetch it at application startup and refresh on a daily or weekly schedule. Calling it on every request wastes quota without returning anything new.

Why should I store indicator_id rather than code?

Because codes are display strings and can be renamed, while indicator_id is a stable internal key. Our own history tables join on the id for exactly this reason. Keep the id as your primary key and treat the code as a label you refresh from this endpoint.

Is the Economic Indicators List API free to use?

Yes, the Economic Indicators List API is free to use. Sign up for an API key to retrieve the full indicator catalog immediately.