Getting Started with Shell EV
Introduction
The APIs detailed within this document will enable Shell's Fleet Solutions Customers to digitalize Shell Card/s and use them to pay to refuel their vehicles at Shell Stations.
Install the Package
Install the gem from the command line:
gem install digital-payments-sdk -v 1.0.0
Or add the gem to your Gemfile and run bundle
:
gem 'digital-payments-sdk', '1.0.0'
For additional gem details, see the RubyGems page for the digital-payments-sdk gem.
Test the SDK
To run the tests, navigate to the root directory of the SDK in your terminal and execute the following command:
rake
Initialize the API Client
Note: Documentation for the client can be found here.
The following parameters are configurable for the API Client:
Parameter | Type | Description |
---|
connection | Faraday::Connection | The Faraday connection object passed by the SDK user for making requests |
adapter | Faraday::Adapter | The Faraday adapter object passed by the SDK user for performing http requests |
timeout | Float | The value to use for connection timeout. Default: 60 |
max_retries | Integer | The number of times to retry an endpoint call if it fails. Default: 0 |
retry_interval | Float | Pause in seconds between retries. Default: 1 |
backoff_factor | Float | The amount to multiply each successive retry's interval amount by in order to provide backoff. Default: 2 |
retry_statuses | Array | A list of HTTP statuses to retry. Default: [408, 413, 429, 500, 502, 503, 504, 521, 522, 524] |
retry_methods | Array | A list of HTTP methods to retry. Default: %i[get put] |
http_callback | HttpCallBack | The Http CallBack allows defining callables for pre and post API calls. |
mpp_token_credentials | MppTokenCredentials | The credential object for Custom Header Signature |
o_auth_token_post_credentials | OAuthTokenPostCredentials | The credential object for Custom Header Signature |
The API client can be initialized as follows:
client = ShellEv::Client.new(
mpp_token_credentials: MppTokenCredentials.new(
authorization: 'Authorization'
),
o_auth_token_post_credentials: OAuthTokenPostCredentials.new(
x_apigee_authorization: 'X-Apigee-Authorization'
)
)
Authorization
This API uses the following authentication schemes.
List of APIs
Classes Documentation