Les services Web Valet de la Banque du Canada permettent d’accéder, grâce à la programmation informatique, à des données financières internationales. En utilisant l’interface Valet, vous pouvez extraire les données et les informations financières publiées par la Banque du Canada : par exemple, le taux de change quotidien dollar canadien/euro.
Les données sont fournies aux formats JSON, XML et CSV.
Vous trouverez dans l’interface Valet les routes suivantes :
- Listes
- Séries
- Groupes de séries
- Observations par série
- Observations par groupe de séries
- Taux de change – fils RSS
L’URL racine (préfixe) de chaque route est :
https://www.banqueducanada.ca/valet
Toutes les routes indiquées ci-après…
Exemple de résultats au format JSON (Formats):
On entend par format le format de présentation des données regroupées par Valet dans le fichier de résultats. Il est indiqué dans l’extension du nom de fichier. Valet peut présenter les données au format JSON, XML ou CSV. JSON est le format implicite. Pour préciser le format désiré, il suffit d’ajouter l’extension correspondante à la fin de la requête.
Exemples de requête : /observations/FXCADUSD/json
/observations/group/FX_RATES_DAILY/xml
Cette route permet d’obtenir les noms de toutes les séries disponibles, ou de tous les groupes de séries, en fonction de la valeur du nom de liste (listName).
Pour obtenir une liste, la route doit comprendre un nom de liste (listName). La syntaxe est la suivante :
Exemple de résultats au format JSON (Listes):
Exemple de requête : /lists/series
listName donne accès à l’ensemble de données recherché. Les valeurs suivantes sont valides : /lists/series
/lists/groups
Les listes sont présentées au format JSON, XML ou CSV : /lists/listName/json
/lists/listName/xml
/lists/listName/csv
Cette route permet d’obtenir les détails associés à un nom de série (seriesName).
Pour obtenir une liste, la route doit comprendre un nom de série (seriesName). La syntaxe est la suivante :
Exemple de résultats au format JSON (Séries):
Exemple de requête : /series/FXAUDCAD
seriesName donne accès aux détails concernant la série demandée. /series/FXAUDCAD
/series/V0691346
Les séries sont présentées au format JSON, XML ou CSV : /series/seriesName/json
/series/seriesName/xml
/series/seriesName/csv
Cette route permet d’obtenir tous les détails associés à un nom de groupe (groupName) et toutes les séries qu’il contient.
Pour obtenir une liste, la route doit comprendre un nom de groupe (groupName). La syntaxe est la suivante :
Exemple de résultats au format JSON (Groupes de séries):
Exemple de requête : /groups/FX_RATES_DAILY
groupName donne accès aux détails concernant le groupe de séries voulu. /groups/FX_RATES_MONTHLY
Les groupes de séries sont présentées au format JSON, XML ou CSV : /groups/groupName/json
/groups/groupName/xml
/groups/groupName/csv
La route des observations par série permet d’obtenir des résultats filtrés par nom de série (seriesNames). Une observation comprend la date d’enregistrement et la valeur d’une série.
Il faut indiquer au moins un nom de série (seriesNames) pour obtenir les observations de la série voulue. Si l’on ne précise pas de format, les données seront présentées implicitement au format JSON. On peut aussi utiliser un paramètre de requête (query) comme la période concernée, et cela, à l’aide de la syntaxe suivante :
Exemple de résultats au format JSON (Observations par série):
Exemple de requête : /observations/FXUSDCAD/json?recent=5
Les observations par série sont présentées au format JSON, XML ou CSV. /observations/FXUSDCAD/json
/observations/FXUSDCAD/xml
/observations/FXUSDCAD/csv
Le paramètre seriesNames donne une liste des noms de série séparés par une virgule. /observations/FXUSDCAD
/observations/FXUSDCAD,A.AGRI
Une requête (query) peut comprendre une date de début ou une date de fin, ou des paramètres récents, ce qui permet de limiter le nombre de résultats. Par exemple, la requête start_date=2016-05-09&end_date=2016-05-12 donnerait toutes les observations d’une série enregistrées du 9 au 12 mai 2016 inclusivement.
query : start_date, end_date ou une combinaison des deux /observations/FXUSDCAD?start_date=2019-05-09
/observations/FXUSDCAD?end_date=2020-05-12
/observations/FXUSDCAD?start_date=2019-05-09&end_date=2020-05-12
Une requête peut aussi porter sur une période récente (exprimée en semaines, mois ou années). Par exemple, la requête recent_weeks=10 donnerait toutes les observations enregistrées depuis les dix dernières semaines.
query : recent_[intervalle]
Exemple d’utilisation pour obtenir les X observations les plus récentes d’une série donnée : /observations/FXUSDCAD?recent=X
Exemple d’utilisation pour obtenir les observations des X dernières semaines d’une série donnée : /observations/FXUSDCAD?recent_weeks=X
Exemple d’utilisation pour obtenir les observations des X derniers mois d’une série donnée : /observations/FXUSDCAD?recent_months=X
Exemple d’utilisation pour obtenir les observations des X dernières années d’une série donnée : /observations/FXUSDCAD?recent_years=X
NOTA : Dans une requête, le paramètre recent _[intervalle] ne peut pas être utilisé en même temps que les paramètres start_date et end_date.
NOTA : Les paramètres de la requête relatifs à la date ne peuvent être utilisés qu’avec les séries chronologiques.
query: order_dir
Présente les observations d’une série donnée en ordre croissant : /observations/FXUSDCAD?order_dir=asc
Présente les observations d’une série donnée en ordre décroissant : /observations/FXUSDCAD?order_dir=desc
Les observations par groupe de séries permettent d’obtenir un groupe de séries filtrées par nom de groupe (groupName). Un groupe de séries comprend toutes les observations relatives aux séries relevant de ce groupe.
Il faut indiquer au moins un nom de groupe (groupName) pour obtenir les observations de la série associées au groupe demandé. Si l’on ne précise pas de format, les données seront présentées implicitement au format JSON. On peut aussi utiliser un paramètre de requête (query) comme la période concernée, et cela, à l’aide de la syntaxe suivante :
Exemple de résultats au format JSON (Observations par groupe de séries):
Exemple de requête : /observations/group/FX_RATES_DAILY/json?recent=5
Les observations par groupe de séries sont présentées au format JSON, XML ou CSV. /observations/group/FX_RATES_DAILY/json
/observations/group/FX_RATES_DAILY/xml
/observations/group/FX_RATES_DAILY/csv
Un nom de groupe (groupName) correspond à un groupe de séries réunies pour en faciliter le traitement. /observations/group/FX_RATES_DAILY
/observations/group/sdp-2012-8
Pour en savoir plus, consultez la section Observations par série.
La route Taux de change – fils RSS permet d’obtenir des observations sur les taux de change filtrés par nom de série (seriesNames). Les taux de change sont bilatéraux, c’est-à-dire que les observations d’une série donnée concernent les taux de change entre deux monnaies.
Il est possible d’indiquer un nom de série (seriesNames) pour limiter les résultats à une série de taux de change donnée. S’il n’est pas précisé, la route produira comme résultats la plus récente observation pour chaque série existante. La syntaxe est la suivante :
Exemple de résultats RSS (Taux de change – fils RSS):
Exemple de requête : /fx_rss/FXUSDCAD
Le paramètre seriesNames donne une liste de noms de série séparés par une virgule, sous la forme FX[monnaie1][monnaie2]. /fx_rss/FXUSDCAD
/fx_rss/FXUSDCAD,FXEURCAD
Ce paramètre facultatif permet de limiter les résultats à une série de taux de change. S’il n’est pas précisé, la requête donnera comme résultats la plus récente observation pour chaque série existante.
Exemple de résultats (Erreurs):