Flinks
¶ ↑
A ruby client for the Flinks API.
Installation¶ ↑
gem install flinks
Or with bundler:
gem 'flinks', require: 'flinks'
Usage¶ ↑
This library needs to be configured with your API customer ID.
flinks = Flinks.new(customer_id: ENV['FLINKS_CUSTOMER_ID'])
Configure on_error
to catch API requests returning a 400..599
HTTP status.
flinks = Flinks.new({ customer_id: ENV['FLINKS_CUSTOMER_ID'], on_error: Proc.new do |status, message, body| p [status, message, body] end })
Configure debug
to print every API requests and responses. Default to false
.
flinks = Flinks.new({ customer_id: ENV['FLINKS_CUSTOMER_ID'], debug: true })
Configure raw
to get the raw, non-transformed API response. Default to false
.
flinks = Flinks.new({ customer_id: ENV['FLINKS_CUSTOMER_ID'], raw: true })
Sandbox and Production¶ ↑
By default, the client uses the sandbox API endpoint: https://sandbox.flinks.io/v3/
. In production, the API endpoint must be configured with your own:
flinks = Flinks.new(customer_id: ENV['FLINKS_CUSTOMER_ID'], api_endpoint: "https://YOURNAME-api.private.fin.ag/v3/")
Endpoints¶ ↑
Authorize¶ ↑
-
authorize(login_id:, options:)
-
authorize_with_credentials(username:, password:, institution:, options:)
-
authorize_multiple(login_ids:)
Account¶ ↑
-
accounts_summary(request_id:, options:)
-
accounts_summary_async(request_id:)
-
accounts_detail(request_id:, options:)
-
accounts_detail_async(request_id:)
Card¶ ↑
-
delete_card(card_id:)
Refresh¶ ↑
-
set_scheduled_refresh(activated, login_id:)
Statement¶ ↑
-
statements(options:)
-
statements_async(request_id:)
Errors¶ ↑
Client Errors¶ ↑
Error | Description |
---|---|
`Flinks::ClientError` | Raised when API returns a 400..499 HTTP status code |
`Flinks::BadRequest` | Raised when API returns a 400 HTTP status code |
`Flinks::Unauthorized` | Raised when API returns a 401 HTTP status code |
`Flinks::Forbidden` | Raised when API returns a 403 HTTP status code |
`Flinks::TooManyRequests` | Raised when API returns a 403 HTTP status code for rate limit exceeded |
`Flinks::NotFound` | Raised when API returns a 404 HTTP status code |
`Flinks::MethodNotAllowed` | Raised when API returns a 405 HTTP status code |
`Flinks::NotAcceptable` | Raised when API returns a 406 HTTP status code |
`Flinks::Conflict` | Raised when API returns a 409 HTTP status code |
`Flinks::UnsupportedMediaType` | Raised when API returns a 415 HTTP status code |
`Flinks::UnprocessableEntity` | Raised when API returns a 422 HTTP status code |
Server Errors¶ ↑
Error | Description |
---|---|
`Flinks::ServerError` | Raised when API returns a 500..599 HTTP status code |
`Flinks::InternalServerError` | Raised when API returns a 500 HTTP status code |
`Flinks::NotImplemented` | Raised when API returns a 501 HTTP status code |
`Flinks::BadGateway` | Raised when API returns a 502 HTTP status code |
`Flinks::ServiceUnavailable` | Raised when API returns a 503 HTTP status code |
Documentation¶ ↑
See the API docs.
Supported Ruby versions¶ ↑
-
MRI 2.3
-
MRI 2.4
-
MRI 2.5
Development¶ ↑
Run all tests:
bundle exec rspec