Ruby Wrapper for Tango Card RaaS API.
Tango Card provides a RaaS API for developers (https://www.tangocard.com/docs/raas-api/). This gem provides commonsense Ruby objects to wrap the JSON endpoints of the RaaS API.
- RDoc documentation available on RubyDoc.info
- Source code available on GitHub
- Please report bugs on the issue tracker
Add the tangocard
gem to your Gemfile
:
gem 'tangocard'
Create an initializer, e.g. config/initializers/tangocard.rb
:
Tangocard.configure do |c|
c.name = "BonuslyXYZ"
c.key = "Dnv9ehvff29"
c.base_uri = "https://sandbox.tangocard.com"
end
There are three required configuration parameters:
name
- The API account name you receive from Tango Cardkey
- The API account key you receive from Tango Cardbase_uri
- This defaults to the Tango Card sandbox. For production, you must specify the base URI for the production RaaS API. Make sure not to include/raas/v1
or any trailing slashes.
There are also optional configuration parameters:
default_brands
- An array of strings for the brands you want to retrieve withTangocard::Brand.default
. The strings should match the unique branddescription
fields exactly.local_images
- An array of local image names/URIs that you want to display instead of the default Tango Card-providedimage_url
.image_url
is sometimes blank, so this can be handy in those cases.sku_blacklist
- Reward SKUs that are blacklisted, ie. should never be returned as a purchasable reward.use_cache
- Use cache for Tangocard::Brand queries, defaults totrue
. The cache can be refreshed by callingTangocard.warm_cache
cache
- Which cache to use, defaults toActiveSupport::Cache::MemoryStore
. Using an out-of-process cache e.g. hosted memcache will improve performance and stability.logger
- i.e.Rails.logger
This gem provides two tools:
- A simple wrapper for the Tango Card RaaS API, consisting of two classes:
Tangocard::Raas
andTangocard::Response
. - Models for each of the Tango Card objects:
Tangocard::Account
,Tangocard::Brand
,Tangocard::Reward
,Tangocard::Order
andTangocard::ExchangeRate
. These provide a greater level of abstraction and ease of use.
This project is developed and maintained by Smartly, Inc. - makers of http://bonus.ly.
This project uses the MIT-LICENSE.