Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/nik01010/openbankeR
R client for querying the Open Banking API
https://github.com/nik01010/openbankeR
bank client data openbanking openbanking-api opendata opendata-api r
Last synced: 3 months ago
JSON representation
R client for querying the Open Banking API
- Host: GitHub
- URL: https://github.com/nik01010/openbankeR
- Owner: nik01010
- Created: 2022-02-19T11:37:24.000Z (over 2 years ago)
- Default Branch: master
- Last Pushed: 2022-07-13T13:44:09.000Z (over 2 years ago)
- Last Synced: 2024-07-04T18:22:38.065Z (4 months ago)
- Topics: bank, client, data, openbanking, openbanking-api, opendata, opendata-api, r
- Language: R
- Homepage:
- Size: 51.8 KB
- Stars: 6
- Watchers: 2
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
- jimsghstars - nik01010/openbankeR - R client for querying the Open Banking API (R)
README
# openbankeR
An R package for querying the
UK Open Banking (Open Data) API[![CRAN status](https://www.r-pkg.org/badges/version/openbankeR)](https://CRAN.R-project.org/package=openbankeR)
[![R build status](https://github.com/nik01010/openbankeR/workflows/R-CMD-check/badge.svg)](https://github.com/nik01010/openbankeR/actions)
[![Stability: Active](https://masterminds.github.io/stability/active.svg)](https://masterminds.github.io/stability/active.html)## Features
- Create an R client for the OpenBanking (OpenData) API- Extract raw data from the API using convenient functions
## Installation
From CRAN:
```R
install.packages("openbankeR")
```From GitHub:
```R
library(devtools)
install_github("nik01010/openbankeR")
```## Functions / Queries
R package functions:
| Function | Description | Input | Output |
| ------------- |----------------------|----------------------|-------------------|
| CreateOpenBankingClient | Creates a client for calling the API | Optional user-defined settings | OpenBankingClient object with queries |Once the client has been set-up, the following queries can be used:
| Query | Description | Input | Output |
| ------------- |----------------------|----------------------|-------------------|
| GetAvailableBanks | Get a list of banks that report the API | n/a | List of available banks |
| GetAvailableInstruments | Get a list of instruments reported via the API | n/a | List of available instruments |
| GetRawData | Get raw data using the API for a given bank and instrument | Bank name and instrument | Requested raw data |## Create an API client
Create a new client for querying the API
```R
library(openbankeR)openBankingClient <- openbankeR::CreateOpenBankingClient()
```## Bank Details
```R
bankDetails <- openBankingClient$BankDetailsView(bankDetails)
```## Available banks
Get a list of banks that report the API
```R
availableBanks <- openBankingClient$GetAvailableBanks()availableBanks
# [1] "Adam & Company" "Allied Irish Bank (GB)" "Bank of Ireland (UK)" "Bank of Scotland"
# [5] "Barclays Bank" "Coutts" "Danske Bank" "Esme"
# [9] "First Trust Bank" "Halifax" "HSBC Group" "Lloyds Bank"
# [13] "Nationwide Building Society" "NatWest" "Royal Bank of Scotland" "Santander UK"
# [17] "Ulster Bank" "Clydesdale Bank PLC" "Yorkshire Bank" "VM"
```## Available instruments
Get a list of instruments reported via the API
```R
availableInstruments <- openBankingClient$GetAvailableInstruments()availableInstruments
# [1] "business-current-accounts" "personal-current-accounts" "unsecured-sme-loans" "atms" "branches"
# [6] "commercial-credit-cards"
```## Extract raw data
Get raw data using the API for a given bank and instrument
```R
bankName <- "HSBC Group"
instrument <- "branches"rawData <- openBankingClient$GetRawData(
bankName = bankName,
instrument = instrument
)View(rawData)
```![Raw Data](man/figures/raw-data-screenshot.PNG)
## Additional help
Use the below commands to find additional documentation about the package
```R
??openbankeR??openbankeR::CreateOpenBankingClient
```## Note
Raw data provided by the API can be a nested structure and may need to be unnested for some types of analysis.