Class: Simplify::Coupon
- Inherits:
-
Hash
- Object
- Hash
- Simplify::Coupon
- Defined in:
- lib/simplify/coupon.rb
Overview
A Coupon object.
Instance Attribute Summary collapse
-
#authentication ⇒ Object
Authentication object used to access the API (See Simplify::Authentication for details).
Class Method Summary collapse
-
.create(parms, *auth) ⇒ Object
Creates an Coupon object.
-
.find(id, *auth) ⇒ Object
Retrieve a Coupon object from the API.
-
.list(criteria = nil, *auth) ⇒ Object
Retrieve Coupon objects.
Instance Method Summary collapse
-
#delete ⇒ Object
Delete this object.
-
#private_key ⇒ Object
Returns the private key used when accessing this object.
-
#private_key=(k) ⇒ Object
Sets the private key used when accessing this object.
-
#public_key ⇒ Object
Returns the public key used when accessing this object.
-
#public_key=(k) ⇒ Object
Sets the public key used when accessing this object.
-
#update ⇒ Object
-
maxRedemptions
Maximum number of redemptions allowed for the coupon.
-
Instance Attribute Details
#authentication ⇒ Object
Authentication object used to access the API (See Simplify::Authentication for details)
37 38 39 |
# File 'lib/simplify/coupon.rb', line 37 def authentication @authentication end |
Class Method Details
.create(parms, *auth) ⇒ Object
Creates an Coupon object
- parms
-
a hash of parameters; valid keys are:
-
amountOff
Amount off of the price of the product in minor units in the currency of the merchant. While this field is optional, you must provide either amountOff or percentOff for a coupon. Example: 1000 = 10.00 -
couponCode
Code that identifies the coupon to be used. required -
description
A brief section that describes the coupon. -
durationInMonths
Duration in months that the coupon will be applied after it has first been selected. -
endDate
Last date of the coupon in UTC millis that the coupon can be applied to a subscription. This ends at 23:59:59 of the merchant timezone. -
maxRedemptions
Maximum number of redemptions allowed for the coupon. A redemption is defined as when the coupon is applied to the subscription for the first time. -
percentOff
Percentage off of the price of the product. While this field is optional, you must provide either amountOff or percentOff for a coupon. The percent off is a whole number. -
startDate
First date of the coupon in UTC millis that the coupon can be applied to a subscription. This starts at midnight of the merchant timezone. required
- auth
-
Authentication information used for the API call. If no value is passed the global keys Simplify::public_key and Simplify::private_key are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns a Coupon object.
73 74 75 76 77 78 79 80 81 |
# File 'lib/simplify/coupon.rb', line 73 def self.create(parms, *auth) auth_obj = Simplify::PaymentsApi.create_auth_object(auth) h = Simplify::PaymentsApi.execute("coupon", 'create', parms, auth_obj) obj = Coupon.new() obj.authentication = auth_obj obj = obj.merge!(h) obj end |
.find(id, *auth) ⇒ Object
Retrieve a Coupon object from the API
- id
-
ID of object to retrieve
- auth
-
Authentication information used for the API call. If no value is passed the global keys Simplify::public_key and Simplify::private_key are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns a Coupon object.
115 116 117 118 119 120 121 122 123 |
# File 'lib/simplify/coupon.rb', line 115 def self.find(id, *auth) auth_obj = Simplify::PaymentsApi.create_auth_object(auth) h = Simplify::PaymentsApi.execute("coupon", 'show', {"id" => id}, auth_obj) obj = Coupon.new() obj.authentication = auth_obj obj = obj.merge!(h) obj end |
.list(criteria = nil, *auth) ⇒ Object
Retrieve Coupon objects.
- criteria
-
a hash of parameters; valid keys are:
-
filter
Filters to apply to the list. -
max
Allows up to a max of 50 list items to return. default:20 -
offset
Used in paging of the list. This is the start offset of the page. default:0 -
sorting
Allows for ascending or descending sorting of the list. The value maps properties to the sort direction (eitherasc
for ascending ordesc
for descending). Sortable properties are:dateCreated maxRedemptions timesRedeemed id startDate endDate percentOff couponCode durationInMonths amountOff
.
- auth
-
Authentication information used for the API call. If no value is passed the global keys Simplify::public_key and Simplify::private_key are used. For backwards compatibility the public and private keys may be passed instead of the authentication object.
Returns an object where the list
property contains the list of Coupon objects and the total
property contains the total number of Coupon objects available for the given criteria.
99 100 101 102 103 104 105 106 107 108 |
# File 'lib/simplify/coupon.rb', line 99 def self.list(criteria = nil, *auth) auth_obj = Simplify::PaymentsApi.create_auth_object(auth) h = Simplify::PaymentsApi.execute("coupon", 'list', criteria, auth_obj) obj = Coupon.new() obj.authentication = auth_obj obj = obj.merge!(h) obj end |
Instance Method Details
#delete ⇒ Object
Delete this object
84 85 86 87 88 |
# File 'lib/simplify/coupon.rb', line 84 def delete() h = Simplify::PaymentsApi.execute("coupon", 'delete', self, self.authentication) self.merge!(h) self end |
#private_key ⇒ Object
Returns the private key used when accessing this object. Deprecated: please use ‘authentication’ instead.
50 51 52 |
# File 'lib/simplify/coupon.rb', line 50 def private_key return self.authentication.private_key end |
#private_key=(k) ⇒ Object
Sets the private key used when accessing this object. Deprecated: please use ‘authentication’ instead.
55 56 57 |
# File 'lib/simplify/coupon.rb', line 55 def private_key=(k) return self.authentication.private_key = k end |
#public_key ⇒ Object
Returns the public key used when accessing this object. Deprecated: please use ‘authentication’ instead.
40 41 42 |
# File 'lib/simplify/coupon.rb', line 40 def public_key return self.authentication.public_key end |
#public_key=(k) ⇒ Object
Sets the public key used when accessing this object. Deprecated: please use ‘authentication’ instead.
45 46 47 |
# File 'lib/simplify/coupon.rb', line 45 def public_key=(k) return self.authentication.public_key = k end |
#update ⇒ Object
-
maxRedemptions
Maximum number of redemptions allowed for the coupon. A redemption is defined as when the coupon is applied to the subscription for the first time.
130 131 132 133 134 |
# File 'lib/simplify/coupon.rb', line 130 def update() h = Simplify::PaymentsApi.execute("coupon", 'update', self, self.authentication) self.merge!(h) self end |