recurly 2.17.0 → 3.14.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.bumpversion.cfg +15 -0
- data/.github/ISSUE_TEMPLATE/bug-report.md +30 -0
- data/.github/ISSUE_TEMPLATE/question-or-other.md +10 -0
- data/.github/workflows/docs.yml +28 -0
- data/.github_changelog_generator +8 -0
- data/.gitignore +15 -0
- data/.rspec +2 -0
- data/.travis.yml +13 -0
- data/.yardopts +2 -0
- data/CHANGELOG.md +313 -0
- data/CODE_OF_CONDUCT.md +130 -0
- data/CONTRIBUTING.md +106 -0
- data/GETTING_STARTED.md +319 -0
- data/Gemfile +4 -0
- data/LICENSE.txt +21 -0
- data/README.md +9 -153
- data/Rakefile +6 -0
- data/benchmark.rb +16 -0
- data/lib/data/ca-certificates.crt +3466 -0
- data/lib/recurly/client/operations.rb +3665 -0
- data/lib/recurly/client.rb +353 -0
- data/lib/recurly/connection_pool.rb +40 -0
- data/lib/recurly/errors/api_errors.rb +83 -0
- data/lib/recurly/errors/network_errors.rb +10 -0
- data/lib/recurly/errors.rb +68 -0
- data/lib/recurly/http.rb +50 -0
- data/lib/recurly/pager.rb +146 -0
- data/lib/recurly/request.rb +31 -0
- data/lib/recurly/requests/account_acquisition_cost.rb +18 -0
- data/lib/recurly/requests/account_acquisition_updatable.rb +26 -0
- data/lib/recurly/requests/account_create.rb +90 -0
- data/lib/recurly/requests/account_purchase.rb +90 -0
- data/lib/recurly/requests/account_update.rb +78 -0
- data/lib/recurly/requests/add_on_create.rb +94 -0
- data/lib/recurly/requests/add_on_pricing.rb +18 -0
- data/lib/recurly/requests/add_on_update.rb +74 -0
- data/lib/recurly/requests/address.rb +46 -0
- data/lib/recurly/requests/billing_info_create.rb +110 -0
- data/lib/recurly/requests/coupon_bulk_create.rb +14 -0
- data/lib/recurly/requests/coupon_create.rb +94 -0
- data/lib/recurly/requests/coupon_pricing.rb +18 -0
- data/lib/recurly/requests/coupon_redemption_create.rb +18 -0
- data/lib/recurly/requests/coupon_update.rb +34 -0
- data/lib/recurly/requests/custom_field.rb +18 -0
- data/lib/recurly/requests/external_refund.rb +22 -0
- data/lib/recurly/requests/external_transaction.rb +26 -0
- data/lib/recurly/requests/invoice_address.rb +54 -0
- data/lib/recurly/requests/invoice_collect.rb +18 -0
- data/lib/recurly/requests/invoice_create.rb +42 -0
- data/lib/recurly/requests/invoice_refund.rb +34 -0
- data/lib/recurly/requests/invoice_updatable.rb +34 -0
- data/lib/recurly/requests/item_create.rb +58 -0
- data/lib/recurly/requests/item_update.rb +58 -0
- data/lib/recurly/requests/line_item_create.rb +82 -0
- data/lib/recurly/requests/line_item_refund.rb +22 -0
- data/lib/recurly/requests/measured_unit_create.rb +22 -0
- data/lib/recurly/requests/measured_unit_update.rb +22 -0
- data/lib/recurly/requests/plan_create.rb +98 -0
- data/lib/recurly/requests/plan_hosted_pages.rb +26 -0
- data/lib/recurly/requests/plan_pricing.rb +22 -0
- data/lib/recurly/requests/plan_update.rb +94 -0
- data/lib/recurly/requests/pricing.rb +18 -0
- data/lib/recurly/requests/purchase_create.rb +74 -0
- data/lib/recurly/requests/shipping_address_create.rb +62 -0
- data/lib/recurly/requests/shipping_address_update.rb +66 -0
- data/lib/recurly/requests/shipping_fee_create.rb +22 -0
- data/lib/recurly/requests/shipping_method_create.rb +26 -0
- data/lib/recurly/requests/shipping_method_update.rb +26 -0
- data/lib/recurly/requests/shipping_purchase.rb +22 -0
- data/lib/recurly/requests/subscription_add_on_create.rb +38 -0
- data/lib/recurly/requests/subscription_add_on_tier.rb +18 -0
- data/lib/recurly/requests/subscription_add_on_update.rb +42 -0
- data/lib/recurly/requests/subscription_cancel.rb +14 -0
- data/lib/recurly/requests/subscription_change_create.rb +66 -0
- data/lib/recurly/requests/subscription_change_shipping_create.rb +22 -0
- data/lib/recurly/requests/subscription_create.rb +106 -0
- data/lib/recurly/requests/subscription_pause.rb +14 -0
- data/lib/recurly/requests/subscription_purchase.rb +66 -0
- data/lib/recurly/requests/subscription_shipping_create.rb +30 -0
- data/lib/recurly/requests/subscription_shipping_purchase.rb +22 -0
- data/lib/recurly/requests/subscription_shipping_update.rb +22 -0
- data/lib/recurly/requests/subscription_update.rb +58 -0
- data/lib/recurly/requests/tier.rb +18 -0
- data/lib/recurly/requests/usage_create.rb +26 -0
- data/lib/recurly/requests.rb +8 -0
- data/lib/recurly/resource.rb +23 -1082
- data/lib/recurly/resources/account.rb +130 -0
- data/lib/recurly/resources/account_acquisition.rb +46 -0
- data/lib/recurly/resources/account_acquisition_cost.rb +18 -0
- data/lib/recurly/resources/account_balance.rb +26 -0
- data/lib/recurly/resources/account_balance_amount.rb +18 -0
- data/lib/recurly/resources/account_mini.rb +46 -0
- data/lib/recurly/resources/account_note.rb +34 -0
- data/lib/recurly/resources/add_on.rb +114 -0
- data/lib/recurly/resources/add_on_mini.rb +54 -0
- data/lib/recurly/resources/add_on_pricing.rb +18 -0
- data/lib/recurly/resources/address.rb +46 -0
- data/lib/recurly/resources/billing_info.rb +66 -0
- data/lib/recurly/resources/billing_info_updated_by.rb +18 -0
- data/lib/recurly/resources/binary_file.rb +14 -0
- data/lib/recurly/resources/coupon.rb +130 -0
- data/lib/recurly/resources/coupon_discount.rb +26 -0
- data/lib/recurly/resources/coupon_discount_pricing.rb +18 -0
- data/lib/recurly/resources/coupon_discount_trial.rb +18 -0
- data/lib/recurly/resources/coupon_mini.rb +42 -0
- data/lib/recurly/resources/coupon_redemption.rb +50 -0
- data/lib/recurly/resources/coupon_redemption_mini.rb +34 -0
- data/lib/recurly/resources/credit_payment.rb +66 -0
- data/lib/recurly/resources/custom_field.rb +18 -0
- data/lib/recurly/resources/custom_field_definition.rb +50 -0
- data/lib/recurly/resources/error.rb +22 -0
- data/lib/recurly/resources/error_may_have_transaction.rb +26 -0
- data/lib/recurly/resources/export_dates.rb +18 -0
- data/lib/recurly/resources/export_file.rb +22 -0
- data/lib/recurly/resources/export_files.rb +18 -0
- data/lib/recurly/resources/fraud_info.rb +22 -0
- data/lib/recurly/resources/invoice.rb +146 -0
- data/lib/recurly/resources/invoice_address.rb +54 -0
- data/lib/recurly/resources/invoice_collection.rb +22 -0
- data/lib/recurly/resources/invoice_mini.rb +30 -0
- data/lib/recurly/resources/item.rb +82 -0
- data/lib/recurly/resources/item_mini.rb +34 -0
- data/lib/recurly/resources/line_item.rb +198 -0
- data/lib/recurly/resources/line_item_list.rb +26 -0
- data/lib/recurly/resources/measured_unit.rb +46 -0
- data/lib/recurly/resources/payment_method.rb +66 -0
- data/lib/recurly/resources/plan.rb +118 -0
- data/lib/recurly/resources/plan_hosted_pages.rb +26 -0
- data/lib/recurly/resources/plan_mini.rb +26 -0
- data/lib/recurly/resources/plan_pricing.rb +22 -0
- data/lib/recurly/resources/pricing.rb +18 -0
- data/lib/recurly/resources/settings.rb +22 -0
- data/lib/recurly/resources/shipping_address.rb +82 -0
- data/lib/recurly/resources/shipping_method.rb +46 -0
- data/lib/recurly/resources/shipping_method_mini.rb +26 -0
- data/lib/recurly/resources/site.rb +54 -0
- data/lib/recurly/resources/subscription.rb +174 -0
- data/lib/recurly/resources/subscription_add_on.rb +66 -0
- data/lib/recurly/resources/subscription_add_on_tier.rb +18 -0
- data/lib/recurly/resources/subscription_change.rb +78 -0
- data/lib/recurly/resources/subscription_change_preview.rb +78 -0
- data/lib/recurly/resources/subscription_shipping.rb +26 -0
- data/lib/recurly/resources/tax_info.rb +22 -0
- data/lib/recurly/resources/tier.rb +18 -0
- data/lib/recurly/resources/transaction.rb +158 -0
- data/lib/recurly/resources/transaction_error.rb +38 -0
- data/lib/recurly/resources/transaction_payment_gateway.rb +26 -0
- data/lib/recurly/resources/unique_coupon_code.rb +50 -0
- data/lib/recurly/resources/usage.rb +70 -0
- data/lib/recurly/resources/user.rb +42 -0
- data/lib/recurly/resources.rb +18 -0
- data/lib/recurly/schema/file_parser.rb +13 -0
- data/lib/recurly/schema/json_parser.rb +72 -0
- data/lib/recurly/schema/request_caster.rb +60 -0
- data/lib/recurly/schema/resource_caster.rb +46 -0
- data/lib/recurly/schema/schema_factory.rb +48 -0
- data/lib/recurly/schema/schema_validator.rb +144 -0
- data/lib/recurly/schema.rb +156 -0
- data/lib/recurly/version.rb +1 -15
- data/lib/recurly.rb +15 -137
- data/openapi/api.yaml +21024 -0
- data/recurly.gemspec +39 -0
- data/scripts/build +5 -0
- data/scripts/bump +11 -0
- data/scripts/changelog +14 -0
- data/scripts/clean +6 -0
- data/scripts/format +12 -0
- data/scripts/prepare-release +36 -0
- data/scripts/release +32 -0
- data/scripts/test +15 -0
- metadata +206 -168
- data/lib/recurly/account.rb +0 -169
- data/lib/recurly/account_balance.rb +0 -21
- data/lib/recurly/add_on.rb +0 -30
- data/lib/recurly/address.rb +0 -25
- data/lib/recurly/adjustment.rb +0 -76
- data/lib/recurly/api/errors.rb +0 -206
- data/lib/recurly/api/net_http_adapter.rb +0 -111
- data/lib/recurly/api.rb +0 -101
- data/lib/recurly/billing_info.rb +0 -80
- data/lib/recurly/coupon.rb +0 -134
- data/lib/recurly/credit_payment.rb +0 -28
- data/lib/recurly/custom_field.rb +0 -15
- data/lib/recurly/delivery.rb +0 -19
- data/lib/recurly/error.rb +0 -13
- data/lib/recurly/gift_card.rb +0 -79
- data/lib/recurly/helper.rb +0 -51
- data/lib/recurly/invoice.rb +0 -268
- data/lib/recurly/invoice_collection.rb +0 -14
- data/lib/recurly/js.rb +0 -14
- data/lib/recurly/juris_detail.rb +0 -14
- data/lib/recurly/measured_unit.rb +0 -16
- data/lib/recurly/money.rb +0 -120
- data/lib/recurly/plan.rb +0 -40
- data/lib/recurly/purchase.rb +0 -219
- data/lib/recurly/redemption.rb +0 -46
- data/lib/recurly/resource/association.rb +0 -16
- data/lib/recurly/resource/errors.rb +0 -20
- data/lib/recurly/resource/pager.rb +0 -314
- data/lib/recurly/shipping_address.rb +0 -22
- data/lib/recurly/subscription/add_ons.rb +0 -77
- data/lib/recurly/subscription.rb +0 -325
- data/lib/recurly/subscription_add_on.rb +0 -50
- data/lib/recurly/tax_detail.rb +0 -14
- data/lib/recurly/tax_type.rb +0 -12
- data/lib/recurly/transaction/errors.rb +0 -107
- data/lib/recurly/transaction.rb +0 -116
- data/lib/recurly/usage.rb +0 -24
- data/lib/recurly/webhook/account_notification.rb +0 -10
- data/lib/recurly/webhook/billing_info_updated_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_account_notification.rb +0 -6
- data/lib/recurly/webhook/canceled_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/closed_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/closed_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/credit_payment_notification.rb +0 -12
- data/lib/recurly/webhook/dunning_notification.rb +0 -14
- data/lib/recurly/webhook/expired_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/failed_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/failed_payment_notification.rb +0 -6
- data/lib/recurly/webhook/gift_card_notification.rb +0 -8
- data/lib/recurly/webhook/invoice_notification.rb +0 -12
- data/lib/recurly/webhook/new_account_notification.rb +0 -6
- data/lib/recurly/webhook/new_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_credit_payment_notification.rb +0 -6
- data/lib/recurly/webhook/new_dunning_event_notification.rb +0 -6
- data/lib/recurly/webhook/new_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/new_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/new_usage_notification.rb +0 -8
- data/lib/recurly/webhook/notification.rb +0 -18
- data/lib/recurly/webhook/paid_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/past_due_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/past_due_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/processing_payment_notification.rb +0 -6
- data/lib/recurly/webhook/purchased_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/reactivated_account_notification.rb +0 -6
- data/lib/recurly/webhook/redeemed_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/renewed_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/reopened_charge_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/reopened_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/scheduled_payment_notification.rb +0 -6
- data/lib/recurly/webhook/subscription_notification.rb +0 -12
- data/lib/recurly/webhook/successful_payment_notification.rb +0 -6
- data/lib/recurly/webhook/successful_refund_notification.rb +0 -6
- data/lib/recurly/webhook/transaction_authorized_notification.rb +0 -6
- data/lib/recurly/webhook/transaction_notification.rb +0 -12
- data/lib/recurly/webhook/updated_account_notification.rb +0 -6
- data/lib/recurly/webhook/updated_balance_gift_card_notification.rb +0 -7
- data/lib/recurly/webhook/updated_subscription_notification.rb +0 -6
- data/lib/recurly/webhook/void_payment_notification.rb +0 -6
- data/lib/recurly/webhook/voided_credit_invoice_notification.rb +0 -6
- data/lib/recurly/webhook/voided_credit_payment_notification.rb +0 -6
- data/lib/recurly/webhook.rb +0 -88
- data/lib/recurly/xml/nokogiri.rb +0 -58
- data/lib/recurly/xml/rexml.rb +0 -50
- data/lib/recurly/xml.rb +0 -120
@@ -0,0 +1,146 @@
|
|
1
|
+
module Recurly
|
2
|
+
class Pager
|
3
|
+
attr_accessor :client
|
4
|
+
attr_reader :data, :next
|
5
|
+
|
6
|
+
def initialize(client:, path:, options: {})
|
7
|
+
@client = client
|
8
|
+
@path = path
|
9
|
+
@options = map_array_params(options)
|
10
|
+
rewind!
|
11
|
+
end
|
12
|
+
|
13
|
+
# Performs a request with the pager `limit` set to 1 and only returns the first
|
14
|
+
# result in the response.
|
15
|
+
def first
|
16
|
+
# Modify the @next url to set the :limit to 1
|
17
|
+
original_next = @next
|
18
|
+
@next = @path
|
19
|
+
fetch_next!(@options.merge(limit: 1))
|
20
|
+
# Restore the @next url to the original
|
21
|
+
@next = original_next
|
22
|
+
@data.first
|
23
|
+
end
|
24
|
+
|
25
|
+
# Makes a HEAD request to the API to determine how many total records exist.
|
26
|
+
def count
|
27
|
+
resource = @client.send(:head, self.next, @options)
|
28
|
+
resource.get_response.total_records
|
29
|
+
end
|
30
|
+
|
31
|
+
# Enumerates each "page" from the server.
|
32
|
+
# This method yields a given block with the array of items
|
33
|
+
# in the page `data` and the page number the pagination is on
|
34
|
+
# `page_num` which is 0-indexed.
|
35
|
+
#
|
36
|
+
# @example
|
37
|
+
# plans = client.list_plans()
|
38
|
+
# plans.each_page do |data|
|
39
|
+
# data.each do |plan|
|
40
|
+
# puts "Plan: #{plan.id}"
|
41
|
+
# end
|
42
|
+
# end
|
43
|
+
# @example
|
44
|
+
# plans = client.list_plans()
|
45
|
+
# plans.each_page.each_with_index do |data, page_num|
|
46
|
+
# puts "Page Number: #{page_num}"
|
47
|
+
# data.each do |plan|
|
48
|
+
# puts "Plan: #{plan.id}"
|
49
|
+
# end
|
50
|
+
# end
|
51
|
+
def each_page(&block)
|
52
|
+
if block_given?
|
53
|
+
page_enumerator.each(&block)
|
54
|
+
else
|
55
|
+
page_enumerator
|
56
|
+
end
|
57
|
+
end
|
58
|
+
|
59
|
+
# Enumerates each item on the server. Each item is yielded to the
|
60
|
+
# block presenting the effect of a continuous stream of items.
|
61
|
+
# In reality, the pager is fetching blocks of data (pages) under the hood.
|
62
|
+
# This method yields a given block with the next item to process.
|
63
|
+
#
|
64
|
+
# @example
|
65
|
+
# plans = client.list_plans()
|
66
|
+
# plans.each do |plan|
|
67
|
+
# puts "Plan: #{plan.id}"
|
68
|
+
# end
|
69
|
+
# @example
|
70
|
+
# plans = client.list_plans()
|
71
|
+
# plans.each.each_with_index do |plan, idx|
|
72
|
+
# puts "Plan #{idx}: #{plan.id}"
|
73
|
+
# end
|
74
|
+
def each(&block)
|
75
|
+
if block_given?
|
76
|
+
item_enumerator.each(&block)
|
77
|
+
else
|
78
|
+
item_enumerator
|
79
|
+
end
|
80
|
+
end
|
81
|
+
|
82
|
+
def has_more?
|
83
|
+
!!@has_more
|
84
|
+
end
|
85
|
+
|
86
|
+
def requires_client?
|
87
|
+
true
|
88
|
+
end
|
89
|
+
|
90
|
+
private
|
91
|
+
|
92
|
+
def item_enumerator
|
93
|
+
Enumerator.new do |yielder|
|
94
|
+
page_enumerator.each do |data|
|
95
|
+
data.each do |item|
|
96
|
+
yielder << item
|
97
|
+
end
|
98
|
+
end
|
99
|
+
end
|
100
|
+
end
|
101
|
+
|
102
|
+
def page_enumerator
|
103
|
+
Enumerator.new do |yielder|
|
104
|
+
loop do
|
105
|
+
# Pass in @options when requesting the first page (@data.empty?)
|
106
|
+
next_options = @data.empty? ? @options : {}
|
107
|
+
fetch_next!(next_options)
|
108
|
+
yielder << data
|
109
|
+
unless has_more?
|
110
|
+
rewind!
|
111
|
+
break
|
112
|
+
end
|
113
|
+
end
|
114
|
+
end
|
115
|
+
end
|
116
|
+
|
117
|
+
def fetch_next!(options)
|
118
|
+
path = extract_path(self.next)
|
119
|
+
page = @client.send(:get, path, options)
|
120
|
+
@data = page.data.map { |d| JSONParser.from_json(d) }
|
121
|
+
@has_more = page.has_more
|
122
|
+
@next = page.next
|
123
|
+
end
|
124
|
+
|
125
|
+
def rewind!
|
126
|
+
@data = []
|
127
|
+
@next = @path
|
128
|
+
end
|
129
|
+
|
130
|
+
# Returns just the path and parameters so we can safely reuse the connection
|
131
|
+
def extract_path(uri_or_path)
|
132
|
+
uri = URI(uri_or_path)
|
133
|
+
uri.kind_of?(URI::HTTP) ? uri.request_uri : uri_or_path
|
134
|
+
end
|
135
|
+
|
136
|
+
# Converts array parameters to CSV strings to maintain consistency with
|
137
|
+
# how the server expects the request to be formatted while providing the
|
138
|
+
# developer with an array type to maintain developer happiness!
|
139
|
+
def map_array_params(params)
|
140
|
+
@options = params.map do |key, param|
|
141
|
+
new_param = param.is_a?(Array) ? param.join(",") : param
|
142
|
+
[key, new_param]
|
143
|
+
end.to_h
|
144
|
+
end
|
145
|
+
end
|
146
|
+
end
|
@@ -0,0 +1,31 @@
|
|
1
|
+
module Recurly
|
2
|
+
# This class represents a request to Recurly.
|
3
|
+
# It's used to validate requests data as well as
|
4
|
+
# cast and serialize the request data to JSON.
|
5
|
+
class Request
|
6
|
+
extend Schema::SchemaFactory
|
7
|
+
extend Schema::RequestCaster
|
8
|
+
extend Schema::ResourceCaster
|
9
|
+
include Schema::SchemaValidator
|
10
|
+
|
11
|
+
attr_reader :attributes
|
12
|
+
|
13
|
+
def ==(other_resource)
|
14
|
+
self.attributes == other_resource.attributes
|
15
|
+
end
|
16
|
+
|
17
|
+
def to_s
|
18
|
+
self.inspect
|
19
|
+
end
|
20
|
+
|
21
|
+
protected
|
22
|
+
|
23
|
+
def initialize(attributes = {})
|
24
|
+
@attributes = self.class.cast_request(attributes)
|
25
|
+
end
|
26
|
+
|
27
|
+
def schema
|
28
|
+
self.class.schema
|
29
|
+
end
|
30
|
+
end
|
31
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AccountAcquisitionCost < Request
|
8
|
+
|
9
|
+
# @!attribute amount
|
10
|
+
# @return [Float] The amount of the corresponding currency used to acquire the account.
|
11
|
+
define_attribute :amount, Float
|
12
|
+
|
13
|
+
# @!attribute currency
|
14
|
+
# @return [String] 3-letter ISO 4217 currency code.
|
15
|
+
define_attribute :currency, String
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|
@@ -0,0 +1,26 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AccountAcquisitionUpdatable < Request
|
8
|
+
|
9
|
+
# @!attribute campaign
|
10
|
+
# @return [String] An arbitrary identifier for the marketing campaign that led to the acquisition of this account.
|
11
|
+
define_attribute :campaign, String
|
12
|
+
|
13
|
+
# @!attribute channel
|
14
|
+
# @return [String] The channel through which the account was acquired.
|
15
|
+
define_attribute :channel, String
|
16
|
+
|
17
|
+
# @!attribute cost
|
18
|
+
# @return [AccountAcquisitionCost] Account balance
|
19
|
+
define_attribute :cost, :AccountAcquisitionCost
|
20
|
+
|
21
|
+
# @!attribute subchannel
|
22
|
+
# @return [String] An arbitrary subchannel string representing a distinction/subcategory within a broader channel.
|
23
|
+
define_attribute :subchannel, String
|
24
|
+
end
|
25
|
+
end
|
26
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AccountCreate < Request
|
8
|
+
|
9
|
+
# @!attribute acquisition
|
10
|
+
# @return [AccountAcquisitionUpdatable]
|
11
|
+
define_attribute :acquisition, :AccountAcquisitionUpdatable
|
12
|
+
|
13
|
+
# @!attribute address
|
14
|
+
# @return [Address]
|
15
|
+
define_attribute :address, :Address
|
16
|
+
|
17
|
+
# @!attribute bill_to
|
18
|
+
# @return [String] An enumerable describing the billing behavior of the account, specifically whether the account is self-paying or will rely on the parent account to pay.
|
19
|
+
define_attribute :bill_to, String
|
20
|
+
|
21
|
+
# @!attribute billing_info
|
22
|
+
# @return [BillingInfoCreate]
|
23
|
+
define_attribute :billing_info, :BillingInfoCreate
|
24
|
+
|
25
|
+
# @!attribute cc_emails
|
26
|
+
# @return [String] Additional email address that should receive account correspondence. These should be separated only by commas. These CC emails will receive all emails that the `email` field also receives.
|
27
|
+
define_attribute :cc_emails, String
|
28
|
+
|
29
|
+
# @!attribute code
|
30
|
+
# @return [String] The unique identifier of the account. This cannot be changed once the account is created.
|
31
|
+
define_attribute :code, String
|
32
|
+
|
33
|
+
# @!attribute company
|
34
|
+
# @return [String]
|
35
|
+
define_attribute :company, String
|
36
|
+
|
37
|
+
# @!attribute custom_fields
|
38
|
+
# @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
|
39
|
+
define_attribute :custom_fields, Array, { :item_type => :CustomField }
|
40
|
+
|
41
|
+
# @!attribute email
|
42
|
+
# @return [String] The email address used for communicating with this customer. The customer will also use this email address to log into your hosted account management pages. This value does not need to be unique.
|
43
|
+
define_attribute :email, String
|
44
|
+
|
45
|
+
# @!attribute exemption_certificate
|
46
|
+
# @return [String] The tax exemption certificate number for the account. If the merchant has an integration for the Vertex tax provider, this optional value will be sent in any tax calculation requests for the account.
|
47
|
+
define_attribute :exemption_certificate, String
|
48
|
+
|
49
|
+
# @!attribute first_name
|
50
|
+
# @return [String]
|
51
|
+
define_attribute :first_name, String
|
52
|
+
|
53
|
+
# @!attribute last_name
|
54
|
+
# @return [String]
|
55
|
+
define_attribute :last_name, String
|
56
|
+
|
57
|
+
# @!attribute parent_account_code
|
58
|
+
# @return [String] The account code of the parent account to be associated with this account. Passing an empty value removes any existing parent association from this account. If both `parent_account_code` and `parent_account_id` are passed, the non-blank value in `parent_account_id` will be used. Only one level of parent child relationship is allowed. You cannot assign a parent account that itself has a parent account.
|
59
|
+
define_attribute :parent_account_code, String
|
60
|
+
|
61
|
+
# @!attribute parent_account_id
|
62
|
+
# @return [String] The UUID of the parent account to be associated with this account. Passing an empty value removes any existing parent association from this account. If both `parent_account_code` and `parent_account_id` are passed, the non-blank value in `parent_account_id` will be used. Only one level of parent child relationship is allowed. You cannot assign a parent account that itself has a parent account.
|
63
|
+
define_attribute :parent_account_id, String
|
64
|
+
|
65
|
+
# @!attribute preferred_locale
|
66
|
+
# @return [String] Used to determine the language and locale of emails sent on behalf of the merchant to the customer. The list of locales is restricted to those the merchant has enabled on the site.
|
67
|
+
define_attribute :preferred_locale, String
|
68
|
+
|
69
|
+
# @!attribute shipping_addresses
|
70
|
+
# @return [Array[ShippingAddressCreate]]
|
71
|
+
define_attribute :shipping_addresses, Array, { :item_type => :ShippingAddressCreate }
|
72
|
+
|
73
|
+
# @!attribute tax_exempt
|
74
|
+
# @return [Boolean] The tax status of the account. `true` exempts tax on the account, `false` applies tax on the account.
|
75
|
+
define_attribute :tax_exempt, :Boolean
|
76
|
+
|
77
|
+
# @!attribute transaction_type
|
78
|
+
# @return [String] An optional type designation for the payment gateway transaction created by this request. Supports 'moto' value, which is the acronym for mail order and telephone transactions.
|
79
|
+
define_attribute :transaction_type, String
|
80
|
+
|
81
|
+
# @!attribute username
|
82
|
+
# @return [String] A secondary value for the account.
|
83
|
+
define_attribute :username, String
|
84
|
+
|
85
|
+
# @!attribute vat_number
|
86
|
+
# @return [String] The VAT number of the account (to avoid having the VAT applied). This is only used for manually collected invoices.
|
87
|
+
define_attribute :vat_number, String
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,90 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AccountPurchase < Request
|
8
|
+
|
9
|
+
# @!attribute acquisition
|
10
|
+
# @return [AccountAcquisitionUpdatable]
|
11
|
+
define_attribute :acquisition, :AccountAcquisitionUpdatable
|
12
|
+
|
13
|
+
# @!attribute address
|
14
|
+
# @return [Address]
|
15
|
+
define_attribute :address, :Address
|
16
|
+
|
17
|
+
# @!attribute bill_to
|
18
|
+
# @return [String] An enumerable describing the billing behavior of the account, specifically whether the account is self-paying or will rely on the parent account to pay.
|
19
|
+
define_attribute :bill_to, String
|
20
|
+
|
21
|
+
# @!attribute billing_info
|
22
|
+
# @return [BillingInfoCreate]
|
23
|
+
define_attribute :billing_info, :BillingInfoCreate
|
24
|
+
|
25
|
+
# @!attribute cc_emails
|
26
|
+
# @return [String] Additional email address that should receive account correspondence. These should be separated only by commas. These CC emails will receive all emails that the `email` field also receives.
|
27
|
+
define_attribute :cc_emails, String
|
28
|
+
|
29
|
+
# @!attribute code
|
30
|
+
# @return [String] The unique identifier of the account. This cannot be changed once the account is created.
|
31
|
+
define_attribute :code, String
|
32
|
+
|
33
|
+
# @!attribute company
|
34
|
+
# @return [String]
|
35
|
+
define_attribute :company, String
|
36
|
+
|
37
|
+
# @!attribute custom_fields
|
38
|
+
# @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
|
39
|
+
define_attribute :custom_fields, Array, { :item_type => :CustomField }
|
40
|
+
|
41
|
+
# @!attribute email
|
42
|
+
# @return [String] The email address used for communicating with this customer. The customer will also use this email address to log into your hosted account management pages. This value does not need to be unique.
|
43
|
+
define_attribute :email, String
|
44
|
+
|
45
|
+
# @!attribute exemption_certificate
|
46
|
+
# @return [String] The tax exemption certificate number for the account. If the merchant has an integration for the Vertex tax provider, this optional value will be sent in any tax calculation requests for the account.
|
47
|
+
define_attribute :exemption_certificate, String
|
48
|
+
|
49
|
+
# @!attribute first_name
|
50
|
+
# @return [String]
|
51
|
+
define_attribute :first_name, String
|
52
|
+
|
53
|
+
# @!attribute id
|
54
|
+
# @return [String] Optional, but if present allows an existing account to be used and updated as part of the purchase.
|
55
|
+
define_attribute :id, String
|
56
|
+
|
57
|
+
# @!attribute last_name
|
58
|
+
# @return [String]
|
59
|
+
define_attribute :last_name, String
|
60
|
+
|
61
|
+
# @!attribute parent_account_code
|
62
|
+
# @return [String] The account code of the parent account to be associated with this account. Passing an empty value removes any existing parent association from this account. If both `parent_account_code` and `parent_account_id` are passed, the non-blank value in `parent_account_id` will be used. Only one level of parent child relationship is allowed. You cannot assign a parent account that itself has a parent account.
|
63
|
+
define_attribute :parent_account_code, String
|
64
|
+
|
65
|
+
# @!attribute parent_account_id
|
66
|
+
# @return [String] The UUID of the parent account to be associated with this account. Passing an empty value removes any existing parent association from this account. If both `parent_account_code` and `parent_account_id` are passed, the non-blank value in `parent_account_id` will be used. Only one level of parent child relationship is allowed. You cannot assign a parent account that itself has a parent account.
|
67
|
+
define_attribute :parent_account_id, String
|
68
|
+
|
69
|
+
# @!attribute preferred_locale
|
70
|
+
# @return [String] Used to determine the language and locale of emails sent on behalf of the merchant to the customer. The list of locales is restricted to those the merchant has enabled on the site.
|
71
|
+
define_attribute :preferred_locale, String
|
72
|
+
|
73
|
+
# @!attribute tax_exempt
|
74
|
+
# @return [Boolean] The tax status of the account. `true` exempts tax on the account, `false` applies tax on the account.
|
75
|
+
define_attribute :tax_exempt, :Boolean
|
76
|
+
|
77
|
+
# @!attribute transaction_type
|
78
|
+
# @return [String] An optional type designation for the payment gateway transaction created by this request. Supports 'moto' value, which is the acronym for mail order and telephone transactions.
|
79
|
+
define_attribute :transaction_type, String
|
80
|
+
|
81
|
+
# @!attribute username
|
82
|
+
# @return [String] A secondary value for the account.
|
83
|
+
define_attribute :username, String
|
84
|
+
|
85
|
+
# @!attribute vat_number
|
86
|
+
# @return [String] The VAT number of the account (to avoid having the VAT applied). This is only used for manually collected invoices.
|
87
|
+
define_attribute :vat_number, String
|
88
|
+
end
|
89
|
+
end
|
90
|
+
end
|
@@ -0,0 +1,78 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AccountUpdate < Request
|
8
|
+
|
9
|
+
# @!attribute address
|
10
|
+
# @return [Address]
|
11
|
+
define_attribute :address, :Address
|
12
|
+
|
13
|
+
# @!attribute bill_to
|
14
|
+
# @return [String] An enumerable describing the billing behavior of the account, specifically whether the account is self-paying or will rely on the parent account to pay.
|
15
|
+
define_attribute :bill_to, String
|
16
|
+
|
17
|
+
# @!attribute billing_info
|
18
|
+
# @return [BillingInfoCreate]
|
19
|
+
define_attribute :billing_info, :BillingInfoCreate
|
20
|
+
|
21
|
+
# @!attribute cc_emails
|
22
|
+
# @return [String] Additional email address that should receive account correspondence. These should be separated only by commas. These CC emails will receive all emails that the `email` field also receives.
|
23
|
+
define_attribute :cc_emails, String
|
24
|
+
|
25
|
+
# @!attribute company
|
26
|
+
# @return [String]
|
27
|
+
define_attribute :company, String
|
28
|
+
|
29
|
+
# @!attribute custom_fields
|
30
|
+
# @return [Array[CustomField]] The custom fields will only be altered when they are included in a request. Sending an empty array will not remove any existing values. To remove a field send the name with a null or empty value.
|
31
|
+
define_attribute :custom_fields, Array, { :item_type => :CustomField }
|
32
|
+
|
33
|
+
# @!attribute email
|
34
|
+
# @return [String] The email address used for communicating with this customer. The customer will also use this email address to log into your hosted account management pages. This value does not need to be unique.
|
35
|
+
define_attribute :email, String
|
36
|
+
|
37
|
+
# @!attribute exemption_certificate
|
38
|
+
# @return [String] The tax exemption certificate number for the account. If the merchant has an integration for the Vertex tax provider, this optional value will be sent in any tax calculation requests for the account.
|
39
|
+
define_attribute :exemption_certificate, String
|
40
|
+
|
41
|
+
# @!attribute first_name
|
42
|
+
# @return [String]
|
43
|
+
define_attribute :first_name, String
|
44
|
+
|
45
|
+
# @!attribute last_name
|
46
|
+
# @return [String]
|
47
|
+
define_attribute :last_name, String
|
48
|
+
|
49
|
+
# @!attribute parent_account_code
|
50
|
+
# @return [String] The account code of the parent account to be associated with this account. Passing an empty value removes any existing parent association from this account. If both `parent_account_code` and `parent_account_id` are passed, the non-blank value in `parent_account_id` will be used. Only one level of parent child relationship is allowed. You cannot assign a parent account that itself has a parent account.
|
51
|
+
define_attribute :parent_account_code, String
|
52
|
+
|
53
|
+
# @!attribute parent_account_id
|
54
|
+
# @return [String] The UUID of the parent account to be associated with this account. Passing an empty value removes any existing parent association from this account. If both `parent_account_code` and `parent_account_id` are passed, the non-blank value in `parent_account_id` will be used. Only one level of parent child relationship is allowed. You cannot assign a parent account that itself has a parent account.
|
55
|
+
define_attribute :parent_account_id, String
|
56
|
+
|
57
|
+
# @!attribute preferred_locale
|
58
|
+
# @return [String] Used to determine the language and locale of emails sent on behalf of the merchant to the customer. The list of locales is restricted to those the merchant has enabled on the site.
|
59
|
+
define_attribute :preferred_locale, String
|
60
|
+
|
61
|
+
# @!attribute tax_exempt
|
62
|
+
# @return [Boolean] The tax status of the account. `true` exempts tax on the account, `false` applies tax on the account.
|
63
|
+
define_attribute :tax_exempt, :Boolean
|
64
|
+
|
65
|
+
# @!attribute transaction_type
|
66
|
+
# @return [String] An optional type designation for the payment gateway transaction created by this request. Supports 'moto' value, which is the acronym for mail order and telephone transactions.
|
67
|
+
define_attribute :transaction_type, String
|
68
|
+
|
69
|
+
# @!attribute username
|
70
|
+
# @return [String] A secondary value for the account.
|
71
|
+
define_attribute :username, String
|
72
|
+
|
73
|
+
# @!attribute vat_number
|
74
|
+
# @return [String] The VAT number of the account (to avoid having the VAT applied). This is only used for manually collected invoices.
|
75
|
+
define_attribute :vat_number, String
|
76
|
+
end
|
77
|
+
end
|
78
|
+
end
|
@@ -0,0 +1,94 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AddOnCreate < Request
|
8
|
+
|
9
|
+
# @!attribute accounting_code
|
10
|
+
# @return [String] Accounting code for invoice line items for this add-on. If no value is provided, it defaults to add-on's code. If `item_code`/`item_id` is part of the request then `accounting_code` must be absent.
|
11
|
+
define_attribute :accounting_code, String
|
12
|
+
|
13
|
+
# @!attribute add_on_type
|
14
|
+
# @return [String] Whether the add-on type is fixed, or usage-based.
|
15
|
+
define_attribute :add_on_type, String
|
16
|
+
|
17
|
+
# @!attribute avalara_service_type
|
18
|
+
# @return [Integer] Used by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to [the documentation](https://help.avalara.com/AvaTax_for_Communications/Tax_Calculation/AvaTax_for_Communications_Tax_Engine/Mapping_Resources/TM_00115_AFC_Modules_Corresponding_Transaction_Types) for more available t/s types. If an `Item` is associated to the `AddOn`, then the `avalara_service_type` must be absent.
|
19
|
+
define_attribute :avalara_service_type, Integer
|
20
|
+
|
21
|
+
# @!attribute avalara_transaction_type
|
22
|
+
# @return [Integer] Used by Avalara for Communications taxes. The transaction type in combination with the service type describe how the add-on is taxed. Refer to [the documentation](https://help.avalara.com/AvaTax_for_Communications/Tax_Calculation/AvaTax_for_Communications_Tax_Engine/Mapping_Resources/TM_00115_AFC_Modules_Corresponding_Transaction_Types) for more available t/s types. If an `Item` is associated to the `AddOn`, then the `avalara_transaction_type` must be absent.
|
23
|
+
define_attribute :avalara_transaction_type, Integer
|
24
|
+
|
25
|
+
# @!attribute code
|
26
|
+
# @return [String] The unique identifier for the add-on within its plan. If `item_code`/`item_id` is part of the request then `code` must be absent. If `item_code`/`item_id` is not present `code` is required.
|
27
|
+
define_attribute :code, String
|
28
|
+
|
29
|
+
# @!attribute currencies
|
30
|
+
# @return [Array[AddOnPricing]] * If `item_code`/`item_id` is part of the request and the item has a default currency then `currencies` is optional. If the item does not have a default currency, then `currencies` is required. If `item_code`/`item_id` is not present `currencies` is required. * If the add-on's `tier_type` is `tiered`, `volume`, or `stairstep`, then `currencies` must be absent.
|
31
|
+
define_attribute :currencies, Array, { :item_type => :AddOnPricing }
|
32
|
+
|
33
|
+
# @!attribute default_quantity
|
34
|
+
# @return [Integer] Default quantity for the hosted pages.
|
35
|
+
define_attribute :default_quantity, Integer
|
36
|
+
|
37
|
+
# @!attribute display_quantity
|
38
|
+
# @return [Boolean] Determines if the quantity field is displayed on the hosted pages for the add-on.
|
39
|
+
define_attribute :display_quantity, :Boolean
|
40
|
+
|
41
|
+
# @!attribute item_code
|
42
|
+
# @return [String] Unique code to identify an item. Avaliable when the `Credit Invoices` and `Subscription Billing Terms` features are enabled. If `item_id` and `item_code` are both present, `item_id` will be used.
|
43
|
+
define_attribute :item_code, String
|
44
|
+
|
45
|
+
# @!attribute item_id
|
46
|
+
# @return [String] System-generated unique identifier for an item. Available when the `Credit Invoices` and `Subscription Billing Terms` features are enabled. If `item_id` and `item_code` are both present, `item_id` will be used.
|
47
|
+
define_attribute :item_id, String
|
48
|
+
|
49
|
+
# @!attribute measured_unit_id
|
50
|
+
# @return [String] System-generated unique identifier for a measured unit to be associated with the add-on. Either `measured_unit_id` or `measured_unit_name` are required when `add_on_type` is `usage`. If `measured_unit_id` and `measured_unit_name` are both present, `measured_unit_id` will be used.
|
51
|
+
define_attribute :measured_unit_id, String
|
52
|
+
|
53
|
+
# @!attribute measured_unit_name
|
54
|
+
# @return [String] Name of a measured unit to be associated with the add-on. Either `measured_unit_id` or `measured_unit_name` are required when `add_on_type` is `usage`. If `measured_unit_id` and `measured_unit_name` are both present, `measured_unit_id` will be used.
|
55
|
+
define_attribute :measured_unit_name, String
|
56
|
+
|
57
|
+
# @!attribute name
|
58
|
+
# @return [String] Describes your add-on and will appear in subscribers' invoices. If `item_code`/`item_id` is part of the request then `name` must be absent. If `item_code`/`item_id` is not present `name` is required.
|
59
|
+
define_attribute :name, String
|
60
|
+
|
61
|
+
# @!attribute optional
|
62
|
+
# @return [Boolean] Whether the add-on is optional for the customer to include in their purchase on the hosted payment page. If false, the add-on will be included when a subscription is created through the Recurly UI. However, the add-on will not be included when a subscription is created through the API.
|
63
|
+
define_attribute :optional, :Boolean
|
64
|
+
|
65
|
+
# @!attribute plan_id
|
66
|
+
# @return [String] Plan ID
|
67
|
+
define_attribute :plan_id, String
|
68
|
+
|
69
|
+
# @!attribute revenue_schedule_type
|
70
|
+
# @return [String] When this add-on is invoiced, the line item will use this revenue schedule. If `item_code`/`item_id` is part of the request then `revenue_schedule_type` must be absent in the request as the value will be set from the item.
|
71
|
+
define_attribute :revenue_schedule_type, String
|
72
|
+
|
73
|
+
# @!attribute tax_code
|
74
|
+
# @return [String] Optional field used by Avalara, Vertex, and Recurly's EU VAT tax feature to determine taxation rules. If you have your own AvaTax or Vertex account configured, use their tax codes to assign specific tax rules. If you are using Recurly's EU VAT feature, you can use values of `unknown`, `physical`, or `digital`. If `item_code`/`item_id` is part of the request then `tax_code` must be absent.
|
75
|
+
define_attribute :tax_code, String
|
76
|
+
|
77
|
+
# @!attribute tier_type
|
78
|
+
# @return [String] The pricing model for the add-on. For more information, [click here](https://docs.recurly.com/docs/billing-models#section-quantity-based). See our [Guide](https://developers.recurly.com/guides/item-addon-guide.html) for an overview of how to configure quantity-based pricing models.
|
79
|
+
define_attribute :tier_type, String
|
80
|
+
|
81
|
+
# @!attribute tiers
|
82
|
+
# @return [Array[Tier]] If the tier_type is `flat`, then `tiers` must be absent. The `tiers` object must include one to many tiers with `ending_quantity` and `unit_amount` for the desired `currencies`. There must be one tier with an `ending_quantity` of 999999999 which is the default if not provided.
|
83
|
+
define_attribute :tiers, Array, { :item_type => :Tier }
|
84
|
+
|
85
|
+
# @!attribute usage_percentage
|
86
|
+
# @return [Float] The percentage taken of the monetary amount of usage tracked. This can be up to 4 decimal places. A value between 0.0 and 100.0. Required if `add_on_type` is usage and `usage_type` is percentage. Must be omitted otherwise. `usage_percentage` does not support tiers.
|
87
|
+
define_attribute :usage_percentage, Float
|
88
|
+
|
89
|
+
# @!attribute usage_type
|
90
|
+
# @return [String] Type of usage, required if `add_on_type` is `usage`. See our [Guide](https://developers.recurly.com/guides/usage-based-billing-guide.html) for an overview of how to configure usage add-ons.
|
91
|
+
define_attribute :usage_type, String
|
92
|
+
end
|
93
|
+
end
|
94
|
+
end
|
@@ -0,0 +1,18 @@
|
|
1
|
+
# This file is automatically created by Recurly's OpenAPI generation process
|
2
|
+
# and thus any edits you make by hand will be lost. If you wish to make a
|
3
|
+
# change to this file, please create a Github issue explaining the changes you
|
4
|
+
# need and we will usher them to the appropriate places.
|
5
|
+
module Recurly
|
6
|
+
module Requests
|
7
|
+
class AddOnPricing < Request
|
8
|
+
|
9
|
+
# @!attribute currency
|
10
|
+
# @return [String] 3-letter ISO 4217 currency code.
|
11
|
+
define_attribute :currency, String
|
12
|
+
|
13
|
+
# @!attribute unit_amount
|
14
|
+
# @return [Float] Unit price
|
15
|
+
define_attribute :unit_amount, Float
|
16
|
+
end
|
17
|
+
end
|
18
|
+
end
|