Published
Edited
May 5, 2022
1 fork
Importers
1 star
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
Insert cell
import {fredFetch} from '@javierjavier/utilities'
Insert cell
// async function fredFetch (code, description, date = '2000-01-01') {
// const fetchLink =`${cors}https://api.stlouisfed.org/fred/series/observations?series_id=${code}&observation_start=${date}&api_key=${fredAPI}&file_type=json`;
// const rawFetch = await fetch(fetchLink).then(response => response.json());
// return rawFetch.observations.map(e=> ({
// ...e,
// 'description': description,
// }))
// }
Insert cell
async function beaNIPAFetch (tableName, years, frequency = 'M') {
const year = new Date().getFullYear();
let array = new Array();
for (let i = 0; i <= years; i++) {
array.push(year - i);
}
const arrayForLink = array.reverse().join(',');
const fetchLink = `${cors}https://apps.bea.gov/api/data/?&UserID=${beaAPI}&method=GetData&DataSetName=NIPA&TableName=${tableName}&Frequency=${frequency}&Year=${arrayForLink}&ResultFormat=json`
return fetch(`${fetchLink}`).then(response => response.json())}
Insert cell
async function beaGVAfetch (tableName, years, frequency = 'Q') {
const year = new Date().getFullYear();
let array = new Array();
for (let i = 0; i <= years; i++) {
array.push(year - i);
}
const arrayForLink = array.reverse().join(',');
const fetchLink = `${cors}https://apps.bea.gov/api/data/?&UserID=${beaAPI}&method=GetData&DataSetName=GDPbyIndustry&Frequency=${frequency}&Year=${arrayForLink}&Industry=ALL&tableID=All&ResultFormat=json`
return fetch(`${fetchLink}`).then(response => response.json())}
Insert cell
async function blsFetch (series) {
const link = `${cors}https://api.bls.gov/publicAPI/v2/timeseries/data`
return fetch(link, {
method: 'POST',
mode: 'cors',
headers: {
'content-type': 'application/json'
},
body: JSON.stringify({"seriesid":series, "registrationkey": blsAPI}),
}).then(response => {
return response.json();
}).catch(() => console.log("Can’t access response. Blocked by browser?"))
}
Insert cell

Purpose-built for displays of data

Observable is your go-to platform for exploring data and creating expressive data visualizations. Use reactive JavaScript notebooks for prototyping and a collaborative canvas for visual data exploration and dashboard creation.
Learn more