auths
objectreturn
or this.key = 'value'
, pass input data to your code viaparams
, and maintain state across executions with$checkpoint.async
(event, steps, params) => {
}
const axios = require('axios');
const moment = require('moment');
const { get } = require('lodash');
axios.defaults.baseURL = 'https://sandbox.tradier.com/v1/';
axios.defaults.headers.common['Authorization'] = `Bearer ${params.AUTH_TOKEN}`;
const arrayToObject = (array, keyField) =>
array.reduce((obj, item) => {
obj[item[keyField]] = item
return obj
}, {})
try {
const { data } = await axios.get('markets/calendar', {
params: {
month: moment().month() +1,
year: moment().year()
}
});
// const dates = arrayToObject(get(data, 'calendar.days.day'), 'date');
// console.log(dates);
// $checkpoint = dates;
const today = data.calendar.days.day.find(item => item.date === moment().format('YYYY-MM-DD'));
$respond({
status: 200,
body: today.status === 'open',
});
return today;
} catch (err) {
console.error(err);
}