@varve/agency-sdks

Fetch Observations

Pull Bank of Canada Valet observations by series or group and build graph metadata.

Use getObservations() for one or more series.

const latest = await client.getObservations('FXUSDCAD', {
  recent: 5,
  orderDir: 'desc',
});
 
console.log(latest.observations);

Use getGroupObservations() for a Valet group.

const group = await client.getGroupObservations('FX_RATES_DAILY', {
  recent: 1,
});
 
console.log(group.observations);

Date filter rules

Valet does not allow recent-window filters to be combined with explicit date ranges. The client prevents incompatible combinations such as recent with startDate or endDate.

await client.getObservations('FXUSDCAD', {
  startDate: '2024-01-01',
  endDate: '2024-01-31',
});

Graph metadata

const graph = await client.getObservationGraphMetadata(['FXUSDCAD', 'FXEURCAD'], {
  recent: 10,
});
 
console.log(graph.series);
console.log(graph.periods);
console.log(graph.observations);

Observation values remain strings because Valet returns numbers as strings and some series may use non-numeric values.

FX RSS

Valet exposes a foreign exchange RSS/RDF XML feed. The SDK returns raw XML text.

const xml = await client.getFxRss('FXUSDCAD');
console.log(xml.slice(0, 500));

On this page