Class: Lago::Api::Resources::Coupon
- Inherits:
-
Base
- Object
- Base
- Lago::Api::Resources::Coupon
show all
- Defined in:
- lib/lago/api/resources/coupon.rb
Instance Attribute Summary
Attributes inherited from Base
#client
Instance Method Summary
collapse
Methods inherited from Base
#create, #destroy, #get, #get_all, #initialize, #update
Instance Method Details
#api_resource ⇒ Object
7
8
9
|
# File 'lib/lago/api/resources/coupon.rb', line 7
def api_resource
'coupons'
end
|
#root_name ⇒ Object
11
12
13
|
# File 'lib/lago/api/resources/coupon.rb', line 11
def root_name
'coupon'
end
|
#whitelist_limitations(limitation_params) ⇒ Object
39
40
41
|
# File 'lib/lago/api/resources/coupon.rb', line 39
def whitelist_limitations(limitation_params)
(limitation_params || {}).slice(:plan_codes, :billable_metric_codes)
end
|
#whitelist_params(params) ⇒ Object
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
|
# File 'lib/lago/api/resources/coupon.rb', line 15
def whitelist_params(params)
result_hash = {
name: params[:name],
code: params[:code],
description: params[:description],
amount_cents: params[:amount_cents],
amount_currency: params[:amount_currency],
percentage_rate: params[:percentage_rate],
coupon_type: params[:coupon_type],
reusable: params[:reusable],
frequency: params[:frequency],
frequency_duration: params[:frequency_duration],
expiration: params[:expiration],
expiration_at: params[:expiration_at],
terminated_at: params[:terminated_at],
}.compact
whitelist_limitations(params[:applies_to]).tap do |limitations|
result_hash[:applies_to] = limitations unless limitations.empty?
end
{ root_name => result_hash }
end
|