add README.md for providers

This commit is contained in:
Steven Polley 2023-11-13 17:40:13 -07:00
parent 4c01dc4ea2
commit 0a518fd31a
1 changed files with 21 additions and 0 deletions

21
providers/README.md Normal file
View File

@ -0,0 +1,21 @@
# Provider Packages
Provider packages are used for any integration and are found in their own sub directories. Providers must adhere to the interface speficied in accountProviders.go.
```golang
// AccountProvider is the base set of requirements to be implemented for any integration
type AccountProvider interface {
Name() string // Returns the name of the provider
Configure() error // Configures the provider for first use - if an error is returned the provider is not used
GetBalances() ([]int, []string, error) // A slice of balances, and an index mapped slice of ynab account IDs this provider handles is returned
}
```
By convention, these methods are implemented in a file called providerImpl.go in each of the provider packages.
The following providers are currently available:
* bitcoin
* questrade
* staticjsonFinnhub
* staticjsonYahooFinance