Skip to main content

A python API client library for the US Bureau of Economic Analysis

Project description

Python Bureau Of Economic Analysis API Client

Table of Contents


An Python API client used to pull and retrieve data from the US Bureau of Economic Analysis.

Grab an API Key

To grab an API key, you'll need to setup an account with the Bureau Of Economic Analysis. Go to the API Homepage and fill out the register form on the left hand side. Once filled out an API key will be sent to your email.


Right now, the library is not hosted on PyPi so you will need to do a local install on your system if you plan to use it in other scrips you use.

First, clone this repo to your local system. After you clone the repo, make sure to run the file, so you can install any dependencies you may need. To run the file, run the following command in your terminal.

pip install python-bea

This will install all the dependencies listed in the file. Once done you can use the library wherever you want.


Here is a simple example of using the pybea library to grab a list of the different datasets availabel.

from pprint import pprint
from pybea.client import BureauEconomicAnalysisClient

# Initalize the new Client.
bea_client = BureauEconomicAnalysisClient(api_key='YOUR_API_KEY_HERE')

# Grab the Dataset List.
dataset_list = bea_client.get_dataset_list()

You will note the output of the above code would look like the following:

  "BEAAPI": {
    "Request": {
      "RequestParam": [
          "ParameterName": "METHOD",
          "ParameterValue": "GETPARAMETERLIST"
          "ParameterName": "RESULTFORMAT",
          "ParameterValue": "JSON"
    "Results": {
      "Parameter": [
          "ParameterName": "GeoFips",
          "ParameterDataType": "string",
          "ParameterDescription": "Comma-delimited list of 5-character geographic codes; COUNTY for all counties, STATE for all states, MSA for all MSAs, MIC for all Micropolitan Areas, PORT for all state metro/nonmetro portions, DIV for all Metropolitan Divisions, CSA for all Combined Statistical Areas, state post office abbreviation for all counties in one state (e.g. NY)",
          "ParameterIsRequiredFlag": "1",
          "MultipleAcceptedFlag": "1"
          "ParameterName": "Year",
          "ParameterDataType": "string",
          "ParameterDescription": "Comma-delimted list of years; LAST5 for latest 5 years; LAST10 for latest 10 years; ALL for all years",
          "ParameterIsRequiredFlag": "0",
          "ParameterDefaultValue": "LAST5",
          "MultipleAcceptedFlag": "1"

Support these Projects

Patreon: Help support this project and future projects by donating to my Patreon Page. I"m always looking to add more content for individuals like yourself, unfortuantely some of the APIs I would require me to pay monthly fees.

YouTube: If you"d like to watch more of my content, feel free to visit my YouTube channel Sigma Coding.

Project details

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

python-bea-0.1.1.tar.gz (12.0 kB view hashes)

Uploaded source

Built Distribution

python_bea-0.1.1-py3-none-any.whl (10.4 kB view hashes)

Uploaded py3

Supported by

AWS AWS Cloud computing and Security Sponsor Datadog Datadog Monitoring Fastly Fastly CDN Google Google Download Analytics Microsoft Microsoft PSF Sponsor Pingdom Pingdom Monitoring Sentry Sentry Error logging StatusPage StatusPage Status page