recurly 3.0.0.beta.5 → 3.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +5 -5
- data/.bumpversion.cfg +12 -0
- data/.travis.yml +2 -2
- data/.yardopts +3 -0
- data/CONTRIBUTING.md +102 -0
- data/GETTING_STARTED.md +266 -0
- data/README.md +12 -194
- data/benchmark.rb +16 -0
- data/lib/recurly.rb +4 -7
- data/lib/recurly/client.rb +60 -60
- data/lib/recurly/client/operations.rb +498 -340
- data/lib/recurly/errors.rb +4 -0
- data/lib/recurly/http.rb +43 -0
- data/lib/recurly/pager.rb +4 -10
- data/lib/recurly/request.rb +6 -6
- data/lib/recurly/requests.rb +8 -0
- data/lib/recurly/requests/account_acquisition_updatable.rb +2 -2
- data/lib/recurly/requests/billing_info_create.rb +4 -0
- data/lib/recurly/requests/custom_field.rb +18 -0
- data/lib/recurly/requests/invoice_create.rb +0 -4
- data/lib/recurly/requests/invoice_refund.rb +2 -2
- data/lib/recurly/requests/line_item_create.rb +4 -0
- data/lib/recurly/requests/purchase_create.rb +3 -7
- data/lib/recurly/requests/shipping_fee_create.rb +22 -0
- data/lib/recurly/requests/shipping_purchase.rb +22 -0
- data/lib/recurly/requests/subscription_add_on_create.rb +2 -6
- data/lib/recurly/requests/subscription_add_on_update.rb +26 -0
- data/lib/recurly/requests/subscription_change_create.rb +7 -3
- data/lib/recurly/requests/subscription_change_shipping_create.rb +22 -0
- data/lib/recurly/requests/subscription_create.rb +4 -8
- data/lib/recurly/requests/subscription_shipping_create.rb +30 -0
- data/lib/recurly/requests/subscription_shipping_update.rb +22 -0
- data/lib/recurly/requests/subscription_update.rb +3 -7
- data/lib/recurly/resource.rb +14 -1
- data/lib/recurly/resources.rb +17 -0
- data/lib/recurly/resources/account_acquisition.rb +2 -2
- data/lib/recurly/resources/add_on.rb +1 -1
- data/lib/recurly/resources/billing_info.rb +6 -6
- data/lib/recurly/resources/coupon.rb +1 -1
- data/lib/recurly/resources/coupon_discount.rb +2 -2
- data/lib/recurly/resources/coupon_redemption.rb +2 -2
- data/lib/recurly/resources/coupon_redemption_mini.rb +2 -2
- data/lib/recurly/resources/error_may_have_transaction.rb +2 -2
- data/lib/recurly/resources/invoice.rb +4 -0
- data/lib/recurly/resources/line_item.rb +1 -1
- data/lib/recurly/resources/{billing_info_payment_method.rb → payment_method.rb} +18 -2
- data/lib/recurly/resources/plan.rb +1 -1
- data/lib/recurly/resources/shipping_method.rb +42 -0
- data/lib/recurly/resources/shipping_method_mini.rb +26 -0
- data/lib/recurly/resources/subscription.rb +3 -3
- data/lib/recurly/resources/subscription_change.rb +4 -0
- data/lib/recurly/resources/subscription_shipping.rb +26 -0
- data/lib/recurly/resources/transaction.rb +4 -4
- data/lib/recurly/resources/transaction_error.rb +30 -0
- data/lib/recurly/schema.rb +85 -49
- data/lib/recurly/schema/json_parser.rb +16 -8
- data/lib/recurly/schema/request_caster.rb +10 -16
- data/lib/recurly/schema/resource_caster.rb +48 -0
- data/lib/recurly/schema/schema_factory.rb +0 -2
- data/lib/recurly/schema/schema_validator.rb +11 -14
- data/lib/recurly/version.rb +1 -1
- data/recurly.gemspec +6 -6
- data/scripts/build +1 -0
- data/scripts/bump +4 -0
- data/scripts/format +2 -0
- data/scripts/release +11 -0
- data/scripts/test +1 -0
- metadata +38 -20
- data/.ruby-version +0 -1
- data/lib/recurly/resources/transaction_payment_method.rb +0 -34
- data/lib/recurly/schema/json_deserializer.rb +0 -56
data/benchmark.rb
ADDED
@@ -0,0 +1,16 @@
|
|
1
|
+
require "rubygems"
|
2
|
+
require "bundler/setup"
|
3
|
+
require "recurly"
|
4
|
+
require "benchmark"
|
5
|
+
|
6
|
+
N = 1_000
|
7
|
+
|
8
|
+
account_body = "{\"id\":\"ljvmmbjchtgs\",\"object\":\"account\",\"code\":\"9ebd49f7288@example.com\",\"parent_account_id\":null,\"bill_to\":\"self\",\"state\":\"active\",\"username\":null,\"email\":null,\"cc_emails\":null,\"preferred_locale\":null,\"first_name\":\"Benjamin\",\"last_name\":\"Du Monde\",\"company\":null,\"vat_number\":null,\"tax_exempt\":false,\"exemption_certificate\":null,\"address\":null,\"billing_info\":null,\"shipping_addresses\":[{\"object\":\"shipping_address\",\"first_name\":\"Benjamin\",\"last_name\":\"Du Monde\",\"company\":null,\"phone\":null,\"street1\":\"1 Tchoupitoulas St\",\"street2\":null,\"city\":\"New Orleans\",\"region\":\"LA\",\"postal_code\":\"70115\",\"country\":\"US\",\"nickname\":\"Home\",\"email\":null,\"vat_number\":null,\"id\":\"ljvmmbk9e1as\",\"account_id\":\"ljvmmbjchtgs\",\"created_at\":\"2019-09-19T22:45:59Z\",\"updated_at\":\"2019-09-19T22:45:59Z\"}],\"custom_fields\":[],\"hosted_login_token\":\"PSvcHow5H4HGEGKTfHXadLNoDcRaDVMK\",\"created_at\":\"2019-09-19T22:45:59Z\",\"updated_at\":\"2019-09-19T22:45:59Z\",\"deleted_at\":null}"
|
9
|
+
|
10
|
+
Benchmark.bm do |benchmark|
|
11
|
+
benchmark.report("JSON parsing and casting\n") do
|
12
|
+
N.times do
|
13
|
+
_account = Recurly::JSONParser.parse(nil, account_body)
|
14
|
+
end
|
15
|
+
end
|
16
|
+
end
|
data/lib/recurly.rb
CHANGED
@@ -3,17 +3,14 @@ require "recurly/schema"
|
|
3
3
|
require "recurly/request"
|
4
4
|
require "recurly/resource"
|
5
5
|
require "recurly/pager"
|
6
|
-
|
7
|
-
|
8
|
-
|
9
|
-
# Include all resource files
|
10
|
-
resources = File.join(File.dirname(__FILE__), "recurly", "resources", "*.rb")
|
11
|
-
Dir.glob(resources, &method(:require))
|
6
|
+
require "recurly/requests"
|
7
|
+
require "recurly/resources"
|
8
|
+
require "recurly/http"
|
12
9
|
require "recurly/errors"
|
13
10
|
require "recurly/client"
|
14
11
|
|
15
12
|
module Recurly
|
16
|
-
STRICT_MODE =
|
13
|
+
STRICT_MODE = ENV["RECURLY_STRICT_MODE"] && ENV["RECURLY_STRICT_MODE"].downcase == "true"
|
17
14
|
if STRICT_MODE
|
18
15
|
puts "[Recurly] [WARNING] STRICT_MODE enabled. This should only be used for testing purposes."
|
19
16
|
end
|
data/lib/recurly/client.rb
CHANGED
@@ -8,49 +8,30 @@ module Recurly
|
|
8
8
|
class Client
|
9
9
|
require_relative "./client/operations"
|
10
10
|
|
11
|
-
BASE_URL = "https://
|
12
|
-
|
13
|
-
# The last result of the *X-RateLimit-Limit* header
|
14
|
-
# @return [Integer] The rate limit applied to this client.
|
15
|
-
attr_reader :rate_limit
|
16
|
-
|
17
|
-
# The last result of the *X-RateLimit-Remaining* header
|
18
|
-
# @return [Integer] The number of remaining requests, decrements per request.
|
19
|
-
attr_reader :rate_limit_remaining
|
20
|
-
|
21
|
-
# The last result of the *X-RateLimit-Reset* header
|
22
|
-
# @return [DateTime] The DateTime in which the request count will be reset.
|
23
|
-
attr_reader :rate_limit_reset
|
11
|
+
BASE_URL = "https://v3.recurly.com/"
|
24
12
|
|
25
13
|
# Initialize a client. It requires an API key.
|
26
14
|
#
|
27
15
|
# @example
|
28
16
|
# API_KEY = '83749879bbde395b5fe0cc1a5abf8e5'
|
29
|
-
#
|
30
|
-
# client = Recurly::Client.new(site_id: SITE_ID, api_key: API_KEY)
|
31
|
-
# # You can optionally use the subdomain instead of the site id
|
32
|
-
# client = Recurly::Client.new(subdomain: 'mysite-prod', api_key: API_KEY)
|
17
|
+
# client = Recurly::Client.new(api_key: API_KEY)
|
33
18
|
# sub = client.get_subscription(subscription_id: 'abcd123456')
|
34
19
|
# @example
|
35
20
|
# # You can also pass the initializer a block. This will give you
|
36
21
|
# # a client scoped for just that block
|
37
|
-
# Recurly::Client.new(
|
22
|
+
# Recurly::Client.new(api_key: API_KEY) do |client|
|
38
23
|
# sub = client.get_subscription(subscription_id: 'abcd123456')
|
39
24
|
# end
|
40
25
|
# @example
|
41
26
|
# # If you only plan on using the client for more than one site,
|
42
27
|
# # you should initialize a new client for each site.
|
43
28
|
#
|
44
|
-
#
|
45
|
-
#
|
46
|
-
# # Or use the subdomain
|
47
|
-
# client = Recurly::Client.new(api_key: API_KEY, subdomain: 'mysite-dev')
|
48
|
-
#
|
49
|
-
# sub = client.get_subscription(subscription_id: 'abcd123456')
|
29
|
+
# client = Recurly::Client.new(api_key: API_KEY1)
|
30
|
+
# sub = client.get_subscription(subscription_id: 'uuid-abcd123456')
|
50
31
|
#
|
51
32
|
# # you should create a new client to connect to another site
|
52
|
-
# client = Recurly::Client.new(api_key:
|
53
|
-
# sub = client.get_subscription(subscription_id: 'abcd7890')
|
33
|
+
# client = Recurly::Client.new(api_key: API_KEY2)
|
34
|
+
# sub = client.get_subscription(subscription_id: 'uuid-abcd7890')
|
54
35
|
#
|
55
36
|
# @param api_key [String] The private API key
|
56
37
|
# @param site_id [String] The site you wish to be scoped to.
|
@@ -65,57 +46,60 @@ module Recurly
|
|
65
46
|
end
|
66
47
|
|
67
48
|
def next_page(pager)
|
68
|
-
|
69
|
-
|
70
|
-
|
49
|
+
req = HTTP::Request.new(:get, pager.next, nil)
|
50
|
+
faraday_resp = run_request(req, headers)
|
51
|
+
handle_response! req, faraday_resp
|
71
52
|
end
|
72
53
|
|
73
54
|
protected
|
74
55
|
|
75
56
|
def pager(path, **options)
|
76
|
-
|
57
|
+
path = scope_by_site(path, **options)
|
58
|
+
Pager.new(
|
59
|
+
client: self,
|
60
|
+
path: path,
|
61
|
+
options: options,
|
62
|
+
)
|
77
63
|
end
|
78
64
|
|
79
65
|
def get(path, **options)
|
80
|
-
|
81
|
-
|
82
|
-
|
66
|
+
path = scope_by_site(path, **options)
|
67
|
+
request = HTTP::Request.new(:get, path, nil)
|
68
|
+
faraday_resp = run_request(request, headers)
|
69
|
+
handle_response! request, faraday_resp
|
83
70
|
rescue Faraday::ClientError => ex
|
84
71
|
raise_network_error!(ex)
|
85
72
|
end
|
86
73
|
|
87
74
|
def post(path, request_data, request_class, **options)
|
88
|
-
|
89
|
-
|
90
|
-
|
91
|
-
|
92
|
-
|
93
|
-
JSONParser.parse(self, response.body)
|
75
|
+
request_class.new(request_data).validate!
|
76
|
+
path = scope_by_site(path, **options)
|
77
|
+
request = HTTP::Request.new(:post, path, JSON.dump(request_data))
|
78
|
+
faraday_resp = run_request(request, headers)
|
79
|
+
handle_response! request, faraday_resp
|
94
80
|
rescue Faraday::ClientError => ex
|
95
81
|
raise_network_error!(ex)
|
96
82
|
end
|
97
83
|
|
98
84
|
def put(path, request_data = nil, request_class = nil, **options)
|
99
|
-
|
100
|
-
|
101
|
-
|
102
|
-
|
103
|
-
|
104
|
-
|
105
|
-
|
106
|
-
|
107
|
-
|
108
|
-
JSONParser.parse(self, response.body)
|
85
|
+
path = scope_by_site(path, **options)
|
86
|
+
request = HTTP::Request.new(:put, path)
|
87
|
+
if request_data
|
88
|
+
request_class.new(request_data).validate!
|
89
|
+
logger.info("PUT BODY #{JSON.dump(request_data)}")
|
90
|
+
request.body = JSON.dump(request_data)
|
91
|
+
end
|
92
|
+
faraday_resp = run_request(request, headers)
|
93
|
+
handle_response! request, faraday_resp
|
109
94
|
rescue Faraday::ClientError => ex
|
110
95
|
raise_network_error!(ex)
|
111
96
|
end
|
112
97
|
|
113
98
|
def delete(path, **options)
|
114
|
-
|
115
|
-
|
116
|
-
|
117
|
-
|
118
|
-
end
|
99
|
+
path = scope_by_site(path, **options)
|
100
|
+
request = HTTP::Request.new(:delete, path, nil)
|
101
|
+
faraday_resp = run_request(request, headers)
|
102
|
+
handle_response! request, faraday_resp
|
119
103
|
rescue Faraday::ClientError => ex
|
120
104
|
raise_network_error!(ex)
|
121
105
|
end
|
@@ -130,8 +114,21 @@ module Recurly
|
|
130
114
|
# @return [Logger]
|
131
115
|
attr_reader :logger
|
132
116
|
|
133
|
-
def run_request(
|
134
|
-
read_headers @conn.run_request(method,
|
117
|
+
def run_request(request, headers)
|
118
|
+
read_headers @conn.run_request(request.method, request.path, request.body, headers)
|
119
|
+
end
|
120
|
+
|
121
|
+
def handle_response!(request, faraday_resp)
|
122
|
+
response = HTTP::Response.new(faraday_resp, request)
|
123
|
+
raise_api_error!(response) unless (200...300).include?(response.status)
|
124
|
+
resource = if response.body
|
125
|
+
JSONParser.parse(self, response.body)
|
126
|
+
else
|
127
|
+
Resources::Empty.new
|
128
|
+
end
|
129
|
+
# Keep this interface "private"
|
130
|
+
resource.instance_variable_set(:@response, response)
|
131
|
+
resource
|
135
132
|
end
|
136
133
|
|
137
134
|
def raise_network_error!(ex)
|
@@ -156,9 +153,6 @@ module Recurly
|
|
156
153
|
end
|
157
154
|
|
158
155
|
def read_headers(response)
|
159
|
-
@rate_limit = response.headers["x-ratelimit-limit"].to_i
|
160
|
-
@rate_limit_remaining = response.headers["x-ratelimit-remaining"].to_i
|
161
|
-
@rate_limit_reset = Time.at(response.headers["x-ratelimit-reset"].to_i).to_datetime
|
162
156
|
if !@_ignore_deprecation_warning && response.headers["Recurly-Deprecated"]&.upcase == "TRUE"
|
163
157
|
puts "[recurly-client-ruby] WARNING: Your current API version \"#{api_version}\" is deprecated and will be sunset on #{response.headers["Recurly-Sunset-Date"]}"
|
164
158
|
end
|
@@ -196,8 +190,14 @@ module Recurly
|
|
196
190
|
@site_id = site_id
|
197
191
|
elsif subdomain
|
198
192
|
@site_id = "subdomain-#{subdomain}"
|
193
|
+
end
|
194
|
+
end
|
195
|
+
|
196
|
+
def scope_by_site(path, **options)
|
197
|
+
if site = site_id || options[:site_id]
|
198
|
+
"/sites/#{site}#{path}"
|
199
199
|
else
|
200
|
-
|
200
|
+
path
|
201
201
|
end
|
202
202
|
end
|
203
203
|
|
@@ -5,14 +5,14 @@
|
|
5
5
|
module Recurly
|
6
6
|
class Client
|
7
7
|
def api_version
|
8
|
-
"
|
8
|
+
"v2019-10-10"
|
9
9
|
end
|
10
10
|
|
11
11
|
# List sites
|
12
12
|
#
|
13
|
-
# {https://
|
13
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_sites list_sites api documenation}
|
14
14
|
#
|
15
|
-
# @param ids [
|
15
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
16
16
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
17
17
|
#
|
18
18
|
# *Important notes:*
|
@@ -44,19 +44,20 @@ module Recurly
|
|
44
44
|
|
45
45
|
# Fetch a site
|
46
46
|
#
|
47
|
-
# {https://
|
47
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_site get_site api documenation}
|
48
48
|
#
|
49
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
49
50
|
# @return [Resources::Site] A site.
|
50
|
-
def get_site()
|
51
|
+
def get_site(site_id:)
|
51
52
|
path = interpolate_path("/sites/{site_id}", site_id: site_id)
|
52
53
|
get(path)
|
53
54
|
end
|
54
55
|
|
55
56
|
# List a site's accounts
|
56
57
|
#
|
57
|
-
# {https://
|
58
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_accounts list_accounts api documenation}
|
58
59
|
#
|
59
|
-
# @param ids [
|
60
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
60
61
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
61
62
|
#
|
62
63
|
# *Important notes:*
|
@@ -80,10 +81,12 @@ module Recurly
|
|
80
81
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
81
82
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
82
83
|
#
|
83
|
-
# @param
|
84
|
+
# @param email [String] Filter for accounts with this exact email address. A blank value will return accounts with both +null+ and +""+ email addresses. Note that multiple accounts can share one email address.
|
85
|
+
# @param subscriber [Boolean] Filter for accounts with or without a subscription in the +active+,
|
84
86
|
# +canceled+, or +future+ state.
|
85
87
|
#
|
86
88
|
# @param past_due [String] Filter for accounts with an invoice in the +past_due+ state.
|
89
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
87
90
|
# @return [Pager<Resources::Account>] A list of the site's accounts.
|
88
91
|
# @example
|
89
92
|
# accounts = @client.list_accounts(limit: 200)
|
@@ -92,15 +95,16 @@ module Recurly
|
|
92
95
|
# end
|
93
96
|
#
|
94
97
|
def list_accounts(**options)
|
95
|
-
path = interpolate_path("/
|
98
|
+
path = interpolate_path("/accounts")
|
96
99
|
pager(path, **options)
|
97
100
|
end
|
98
101
|
|
99
102
|
# Create an account
|
100
103
|
#
|
101
|
-
# {https://
|
104
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_account create_account api documenation}
|
102
105
|
#
|
103
106
|
# @param body [Requests::AccountCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::AccountCreate}
|
107
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
104
108
|
# @return [Resources::Account] An account.
|
105
109
|
# @example
|
106
110
|
# begin
|
@@ -138,16 +142,17 @@ module Recurly
|
|
138
142
|
# puts "ValidationError: #{e.recurly_error.params}"
|
139
143
|
# end
|
140
144
|
#
|
141
|
-
def create_account(body
|
142
|
-
path = interpolate_path("/
|
143
|
-
post(path, body, Requests::AccountCreate)
|
145
|
+
def create_account(body:, **options)
|
146
|
+
path = interpolate_path("/accounts")
|
147
|
+
post(path, body, Requests::AccountCreate, **options)
|
144
148
|
end
|
145
149
|
|
146
150
|
# Fetch an account
|
147
151
|
#
|
148
|
-
# {https://
|
152
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_account get_account api documenation}
|
149
153
|
#
|
150
154
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
155
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
151
156
|
# @return [Resources::Account] An account.
|
152
157
|
# @example
|
153
158
|
# begin
|
@@ -159,17 +164,18 @@ module Recurly
|
|
159
164
|
# puts "Resource Not Found"
|
160
165
|
# end
|
161
166
|
#
|
162
|
-
def get_account(account_id
|
163
|
-
path = interpolate_path("/
|
164
|
-
get(path)
|
167
|
+
def get_account(account_id:, **options)
|
168
|
+
path = interpolate_path("/accounts/{account_id}", account_id: account_id)
|
169
|
+
get(path, **options)
|
165
170
|
end
|
166
171
|
|
167
172
|
# Modify an account
|
168
173
|
#
|
169
|
-
# {https://
|
174
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_account update_account api documenation}
|
170
175
|
#
|
171
176
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
172
177
|
# @param body [Requests::AccountUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::AccountUpdate}
|
178
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
173
179
|
# @return [Resources::Account] An account.
|
174
180
|
# @example
|
175
181
|
# begin
|
@@ -188,16 +194,17 @@ module Recurly
|
|
188
194
|
# puts "ValidationError: #{e.recurly_error.params}"
|
189
195
|
# end
|
190
196
|
#
|
191
|
-
def update_account(account_id:, body
|
192
|
-
path = interpolate_path("/
|
193
|
-
put(path, body, Requests::AccountUpdate)
|
197
|
+
def update_account(account_id:, body:, **options)
|
198
|
+
path = interpolate_path("/accounts/{account_id}", account_id: account_id)
|
199
|
+
put(path, body, Requests::AccountUpdate, **options)
|
194
200
|
end
|
195
201
|
|
196
202
|
# Deactivate an account
|
197
203
|
#
|
198
|
-
# {https://
|
204
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/deactivate_account deactivate_account api documenation}
|
199
205
|
#
|
200
206
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
207
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
201
208
|
# @return [Resources::Account] An account.
|
202
209
|
# @example
|
203
210
|
# begin
|
@@ -209,16 +216,17 @@ module Recurly
|
|
209
216
|
# puts "Resource Not Found"
|
210
217
|
# end
|
211
218
|
#
|
212
|
-
def deactivate_account(account_id
|
213
|
-
path = interpolate_path("/
|
214
|
-
delete(path)
|
219
|
+
def deactivate_account(account_id:, **options)
|
220
|
+
path = interpolate_path("/accounts/{account_id}", account_id: account_id)
|
221
|
+
delete(path, **options)
|
215
222
|
end
|
216
223
|
|
217
224
|
# Fetch an account's acquisition data
|
218
225
|
#
|
219
|
-
# {https://
|
226
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_account_acquisition get_account_acquisition api documenation}
|
220
227
|
#
|
221
228
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
229
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
222
230
|
# @return [Resources::AccountAcquisition] An account's acquisition data.
|
223
231
|
# @example
|
224
232
|
# begin
|
@@ -230,28 +238,31 @@ module Recurly
|
|
230
238
|
# puts "Resource Not Found"
|
231
239
|
# end
|
232
240
|
#
|
233
|
-
def get_account_acquisition(account_id
|
234
|
-
path = interpolate_path("/
|
235
|
-
get(path)
|
241
|
+
def get_account_acquisition(account_id:, **options)
|
242
|
+
path = interpolate_path("/accounts/{account_id}/acquisition", account_id: account_id)
|
243
|
+
get(path, **options)
|
236
244
|
end
|
237
245
|
|
238
246
|
# Update an account's acquisition data
|
239
247
|
#
|
240
|
-
# {https://
|
248
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_account_acquisition update_account_acquisition api documenation}
|
241
249
|
#
|
242
250
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
243
251
|
# @param body [Requests::AccountAcquisitionUpdatable] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::AccountAcquisitionUpdatable}
|
252
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
244
253
|
# @return [Resources::AccountAcquisition] An account's updated acquisition data.
|
245
|
-
def update_account_acquisition(account_id:, body
|
246
|
-
path = interpolate_path("/
|
247
|
-
put(path, body, Requests::AccountAcquisitionUpdatable)
|
254
|
+
def update_account_acquisition(account_id:, body:, **options)
|
255
|
+
path = interpolate_path("/accounts/{account_id}/acquisition", account_id: account_id)
|
256
|
+
put(path, body, Requests::AccountAcquisitionUpdatable, **options)
|
248
257
|
end
|
249
258
|
|
250
259
|
# Remove an account's acquisition data
|
251
260
|
#
|
252
|
-
# {https://
|
261
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_account_acquisition remove_account_acquisition api documenation}
|
253
262
|
#
|
254
263
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
264
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
265
|
+
# @return [Empty] Acquisition data was succesfully deleted.
|
255
266
|
# @example
|
256
267
|
# begin
|
257
268
|
# acquisition = @client.remove_account_acquisition(account_id: account_id)
|
@@ -262,16 +273,17 @@ module Recurly
|
|
262
273
|
# puts "Resource Not Found"
|
263
274
|
# end
|
264
275
|
#
|
265
|
-
def remove_account_acquisition(account_id
|
266
|
-
path = interpolate_path("/
|
267
|
-
delete(path)
|
276
|
+
def remove_account_acquisition(account_id:, **options)
|
277
|
+
path = interpolate_path("/accounts/{account_id}/acquisition", account_id: account_id)
|
278
|
+
delete(path, **options)
|
268
279
|
end
|
269
280
|
|
270
281
|
# Reactivate an inactive account
|
271
282
|
#
|
272
|
-
# {https://
|
283
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/reactivate_account reactivate_account api documenation}
|
273
284
|
#
|
274
285
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
286
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
275
287
|
# @return [Resources::Account] An account.
|
276
288
|
# @example
|
277
289
|
# begin
|
@@ -283,16 +295,17 @@ module Recurly
|
|
283
295
|
# puts "Resource Not Found"
|
284
296
|
# end
|
285
297
|
#
|
286
|
-
def reactivate_account(account_id
|
287
|
-
path = interpolate_path("/
|
288
|
-
put(path)
|
298
|
+
def reactivate_account(account_id:, **options)
|
299
|
+
path = interpolate_path("/accounts/{account_id}/reactivate", account_id: account_id)
|
300
|
+
put(path, **options)
|
289
301
|
end
|
290
302
|
|
291
303
|
# Fetch an account's balance and past due status
|
292
304
|
#
|
293
|
-
# {https://
|
305
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_account_balance get_account_balance api documenation}
|
294
306
|
#
|
295
307
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
308
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
296
309
|
# @return [Resources::AccountBalance] An account's balance.
|
297
310
|
# @example
|
298
311
|
# begin
|
@@ -304,16 +317,17 @@ module Recurly
|
|
304
317
|
# puts "Resource Not Found"
|
305
318
|
# end
|
306
319
|
#
|
307
|
-
def get_account_balance(account_id
|
308
|
-
path = interpolate_path("/
|
309
|
-
get(path)
|
320
|
+
def get_account_balance(account_id:, **options)
|
321
|
+
path = interpolate_path("/accounts/{account_id}/balance", account_id: account_id)
|
322
|
+
get(path, **options)
|
310
323
|
end
|
311
324
|
|
312
325
|
# Fetch an account's billing information
|
313
326
|
#
|
314
|
-
# {https://
|
327
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_billing_info get_billing_info api documenation}
|
315
328
|
#
|
316
329
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
330
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
317
331
|
# @return [Resources::BillingInfo] An account's billing information.
|
318
332
|
# @example
|
319
333
|
# begin
|
@@ -325,17 +339,18 @@ module Recurly
|
|
325
339
|
# puts "Resource Not Found"
|
326
340
|
# end
|
327
341
|
#
|
328
|
-
def get_billing_info(account_id
|
329
|
-
path = interpolate_path("/
|
330
|
-
get(path)
|
342
|
+
def get_billing_info(account_id:, **options)
|
343
|
+
path = interpolate_path("/accounts/{account_id}/billing_info", account_id: account_id)
|
344
|
+
get(path, **options)
|
331
345
|
end
|
332
346
|
|
333
347
|
# Set an account's billing information
|
334
348
|
#
|
335
|
-
# {https://
|
349
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_billing_info update_billing_info api documenation}
|
336
350
|
#
|
337
351
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
338
352
|
# @param body [Requests::BillingInfoCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::BillingInfoCreate}
|
353
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
339
354
|
# @return [Resources::BillingInfo] Updated billing information.
|
340
355
|
# @example
|
341
356
|
# begin
|
@@ -354,16 +369,18 @@ module Recurly
|
|
354
369
|
# puts "ValidationError: #{e.recurly_error.params}"
|
355
370
|
# end
|
356
371
|
#
|
357
|
-
def update_billing_info(account_id:, body
|
358
|
-
path = interpolate_path("/
|
359
|
-
put(path, body, Requests::BillingInfoCreate)
|
372
|
+
def update_billing_info(account_id:, body:, **options)
|
373
|
+
path = interpolate_path("/accounts/{account_id}/billing_info", account_id: account_id)
|
374
|
+
put(path, body, Requests::BillingInfoCreate, **options)
|
360
375
|
end
|
361
376
|
|
362
377
|
# Remove an account's billing information
|
363
378
|
#
|
364
|
-
# {https://
|
379
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_billing_info remove_billing_info api documenation}
|
365
380
|
#
|
366
381
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
382
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
383
|
+
# @return [Empty] Billing information deleted
|
367
384
|
# @example
|
368
385
|
# begin
|
369
386
|
# @client.remove_billing_info(account_id: account_id)
|
@@ -374,17 +391,17 @@ module Recurly
|
|
374
391
|
# puts "Resource Not Found"
|
375
392
|
# end
|
376
393
|
#
|
377
|
-
def remove_billing_info(account_id
|
378
|
-
path = interpolate_path("/
|
379
|
-
delete(path)
|
394
|
+
def remove_billing_info(account_id:, **options)
|
395
|
+
path = interpolate_path("/accounts/{account_id}/billing_info", account_id: account_id)
|
396
|
+
delete(path, **options)
|
380
397
|
end
|
381
398
|
|
382
399
|
# Show the coupon redemptions for an account
|
383
400
|
#
|
384
|
-
# {https://
|
401
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_coupon_redemptions list_account_coupon_redemptions api documenation}
|
385
402
|
#
|
386
403
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
387
|
-
# @param ids [
|
404
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
388
405
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
389
406
|
#
|
390
407
|
# *Important notes:*
|
@@ -406,6 +423,7 @@ module Recurly
|
|
406
423
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
407
424
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
408
425
|
#
|
426
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
409
427
|
# @return [Pager<Resources::CouponRedemption>] A list of the the coupon redemptions on an account.
|
410
428
|
# @example
|
411
429
|
# redemptions = @client.list_account_coupon_redemptions(
|
@@ -417,15 +435,16 @@ module Recurly
|
|
417
435
|
# end
|
418
436
|
#
|
419
437
|
def list_account_coupon_redemptions(account_id:, **options)
|
420
|
-
path = interpolate_path("/
|
438
|
+
path = interpolate_path("/accounts/{account_id}/coupon_redemptions", account_id: account_id)
|
421
439
|
pager(path, **options)
|
422
440
|
end
|
423
441
|
|
424
442
|
# Show the coupon redemption that is active on an account
|
425
443
|
#
|
426
|
-
# {https://
|
444
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_active_coupon_redemption get_active_coupon_redemption api documenation}
|
427
445
|
#
|
428
446
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
447
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
429
448
|
# @return [Resources::CouponRedemption] An active coupon redemption on an account.
|
430
449
|
# @example
|
431
450
|
# begin
|
@@ -437,17 +456,18 @@ module Recurly
|
|
437
456
|
# puts "Resource Not Found"
|
438
457
|
# end
|
439
458
|
#
|
440
|
-
def get_active_coupon_redemption(account_id
|
441
|
-
path = interpolate_path("/
|
442
|
-
get(path)
|
459
|
+
def get_active_coupon_redemption(account_id:, **options)
|
460
|
+
path = interpolate_path("/accounts/{account_id}/coupon_redemptions/active", account_id: account_id)
|
461
|
+
get(path, **options)
|
443
462
|
end
|
444
463
|
|
445
464
|
# Generate an active coupon redemption on an account
|
446
465
|
#
|
447
|
-
# {https://
|
466
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_coupon_redemption create_coupon_redemption api documenation}
|
448
467
|
#
|
449
468
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
450
469
|
# @param body [Requests::CouponRedemptionCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::CouponRedemptionCreate}
|
470
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
451
471
|
# @return [Resources::CouponRedemption] Returns the new coupon redemption.
|
452
472
|
# @example
|
453
473
|
# begin
|
@@ -466,16 +486,17 @@ module Recurly
|
|
466
486
|
# puts "ValidationError: #{e.recurly_error.params}"
|
467
487
|
# end
|
468
488
|
#
|
469
|
-
def create_coupon_redemption(account_id:, body
|
470
|
-
path = interpolate_path("/
|
471
|
-
post(path, body, Requests::CouponRedemptionCreate)
|
489
|
+
def create_coupon_redemption(account_id:, body:, **options)
|
490
|
+
path = interpolate_path("/accounts/{account_id}/coupon_redemptions/active", account_id: account_id)
|
491
|
+
post(path, body, Requests::CouponRedemptionCreate, **options)
|
472
492
|
end
|
473
493
|
|
474
494
|
# Delete the active coupon redemption from an account
|
475
495
|
#
|
476
|
-
# {https://
|
496
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_coupon_redemption remove_coupon_redemption api documenation}
|
477
497
|
#
|
478
498
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
499
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
479
500
|
# @return [Resources::CouponRedemption] Coupon redemption deleted.
|
480
501
|
# @example
|
481
502
|
# begin
|
@@ -487,14 +508,14 @@ module Recurly
|
|
487
508
|
# puts "Resource Not Found"
|
488
509
|
# end
|
489
510
|
#
|
490
|
-
def remove_coupon_redemption(account_id
|
491
|
-
path = interpolate_path("/
|
492
|
-
delete(path)
|
511
|
+
def remove_coupon_redemption(account_id:, **options)
|
512
|
+
path = interpolate_path("/accounts/{account_id}/coupon_redemptions/active", account_id: account_id)
|
513
|
+
delete(path, **options)
|
493
514
|
end
|
494
515
|
|
495
516
|
# List an account's credit payments
|
496
517
|
#
|
497
|
-
# {https://
|
518
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_credit_payments list_account_credit_payments api documenation}
|
498
519
|
#
|
499
520
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
500
521
|
# @param limit [Integer] Limit number of records 1-200.
|
@@ -509,6 +530,7 @@ module Recurly
|
|
509
530
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
510
531
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
511
532
|
#
|
533
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
512
534
|
# @return [Pager<Resources::CreditPayment>] A list of the account's credit payments.
|
513
535
|
# @example
|
514
536
|
# payments = @client.list_account_credit_payments(
|
@@ -520,16 +542,16 @@ module Recurly
|
|
520
542
|
# end
|
521
543
|
#
|
522
544
|
def list_account_credit_payments(account_id:, **options)
|
523
|
-
path = interpolate_path("/
|
545
|
+
path = interpolate_path("/accounts/{account_id}/credit_payments", account_id: account_id)
|
524
546
|
pager(path, **options)
|
525
547
|
end
|
526
548
|
|
527
549
|
# List an account's invoices
|
528
550
|
#
|
529
|
-
# {https://
|
551
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_invoices list_account_invoices api documenation}
|
530
552
|
#
|
531
553
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
532
|
-
# @param ids [
|
554
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
533
555
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
534
556
|
#
|
535
557
|
# *Important notes:*
|
@@ -559,6 +581,7 @@ module Recurly
|
|
559
581
|
# - +type=non-legacy+, only charge and credit invoices will be returned.
|
560
582
|
# - +type=legacy+, only legacy invoices will be returned.
|
561
583
|
#
|
584
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
562
585
|
# @return [Pager<Resources::Invoice>] A list of the account's invoices.
|
563
586
|
# @example
|
564
587
|
# invoices = @client.list_account_invoices(
|
@@ -570,16 +593,17 @@ module Recurly
|
|
570
593
|
# end
|
571
594
|
#
|
572
595
|
def list_account_invoices(account_id:, **options)
|
573
|
-
path = interpolate_path("/
|
596
|
+
path = interpolate_path("/accounts/{account_id}/invoices", account_id: account_id)
|
574
597
|
pager(path, **options)
|
575
598
|
end
|
576
599
|
|
577
600
|
# Create an invoice for pending line items
|
578
601
|
#
|
579
|
-
# {https://
|
602
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_invoice create_invoice api documenation}
|
580
603
|
#
|
581
604
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
582
605
|
# @param body [Requests::InvoiceCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::InvoiceCreate}
|
606
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
583
607
|
# @return [Resources::InvoiceCollection] Returns the new invoices.
|
584
608
|
# @example
|
585
609
|
# begin
|
@@ -598,17 +622,18 @@ module Recurly
|
|
598
622
|
# puts "ValidationError: #{e.recurly_error.params}"
|
599
623
|
# end
|
600
624
|
#
|
601
|
-
def create_invoice(account_id:, body
|
602
|
-
path = interpolate_path("/
|
603
|
-
post(path, body, Requests::InvoiceCreate)
|
625
|
+
def create_invoice(account_id:, body:, **options)
|
626
|
+
path = interpolate_path("/accounts/{account_id}/invoices", account_id: account_id)
|
627
|
+
post(path, body, Requests::InvoiceCreate, **options)
|
604
628
|
end
|
605
629
|
|
606
630
|
# Preview new invoice for pending line items
|
607
631
|
#
|
608
|
-
# {https://
|
632
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/preview_invoice preview_invoice api documenation}
|
609
633
|
#
|
610
634
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
611
635
|
# @param body [Requests::InvoiceCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::InvoiceCreate}
|
636
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
612
637
|
# @return [Resources::InvoiceCollection] Returns the invoice previews.
|
613
638
|
# @example
|
614
639
|
# begin
|
@@ -627,17 +652,17 @@ module Recurly
|
|
627
652
|
# puts "ValidationError: #{e.recurly_error.params}"
|
628
653
|
# end
|
629
654
|
#
|
630
|
-
def preview_invoice(account_id:, body
|
631
|
-
path = interpolate_path("/
|
632
|
-
post(path, body, Requests::InvoiceCreate)
|
655
|
+
def preview_invoice(account_id:, body:, **options)
|
656
|
+
path = interpolate_path("/accounts/{account_id}/invoices/preview", account_id: account_id)
|
657
|
+
post(path, body, Requests::InvoiceCreate, **options)
|
633
658
|
end
|
634
659
|
|
635
660
|
# List an account's line items
|
636
661
|
#
|
637
|
-
# {https://
|
662
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_line_items list_account_line_items api documenation}
|
638
663
|
#
|
639
664
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
640
|
-
# @param ids [
|
665
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
641
666
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
642
667
|
#
|
643
668
|
# *Important notes:*
|
@@ -664,6 +689,7 @@ module Recurly
|
|
664
689
|
# @param original [String] Filter by original field.
|
665
690
|
# @param state [String] Filter by state field.
|
666
691
|
# @param type [String] Filter by type field.
|
692
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
667
693
|
# @return [Pager<Resources::LineItem>] A list of the account's line items.
|
668
694
|
# @example
|
669
695
|
# line_items = @client.list_account_line_items(
|
@@ -675,16 +701,17 @@ module Recurly
|
|
675
701
|
# end
|
676
702
|
#
|
677
703
|
def list_account_line_items(account_id:, **options)
|
678
|
-
path = interpolate_path("/
|
704
|
+
path = interpolate_path("/accounts/{account_id}/line_items", account_id: account_id)
|
679
705
|
pager(path, **options)
|
680
706
|
end
|
681
707
|
|
682
708
|
# Create a new line item for the account
|
683
709
|
#
|
684
|
-
# {https://
|
710
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_line_item create_line_item api documenation}
|
685
711
|
#
|
686
712
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
687
713
|
# @param body [Requests::LineItemCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::LineItemCreate}
|
714
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
688
715
|
# @return [Resources::LineItem] Returns the new line item.
|
689
716
|
# @example
|
690
717
|
# begin
|
@@ -704,17 +731,17 @@ module Recurly
|
|
704
731
|
# puts "ValidationError: #{e.recurly_error.params}"
|
705
732
|
# end
|
706
733
|
#
|
707
|
-
def create_line_item(account_id:, body
|
708
|
-
path = interpolate_path("/
|
709
|
-
post(path, body, Requests::LineItemCreate)
|
734
|
+
def create_line_item(account_id:, body:, **options)
|
735
|
+
path = interpolate_path("/accounts/{account_id}/line_items", account_id: account_id)
|
736
|
+
post(path, body, Requests::LineItemCreate, **options)
|
710
737
|
end
|
711
738
|
|
712
739
|
# Fetch a list of an account's notes
|
713
740
|
#
|
714
|
-
# {https://
|
741
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_notes list_account_notes api documenation}
|
715
742
|
#
|
716
743
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
717
|
-
# @param ids [
|
744
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
718
745
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
719
746
|
#
|
720
747
|
# *Important notes:*
|
@@ -726,6 +753,7 @@ module Recurly
|
|
726
753
|
# * Records are returned in an arbitrary order. Since results are all
|
727
754
|
# returned at once you can sort the records yourself.
|
728
755
|
#
|
756
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
729
757
|
# @return [Pager<Resources::AccountNote>] A list of an account's notes.
|
730
758
|
# @example
|
731
759
|
# account_notes = @client.list_account_notes(account_id: account_id, limit: 200)
|
@@ -734,16 +762,17 @@ module Recurly
|
|
734
762
|
# end
|
735
763
|
#
|
736
764
|
def list_account_notes(account_id:, **options)
|
737
|
-
path = interpolate_path("/
|
765
|
+
path = interpolate_path("/accounts/{account_id}/notes", account_id: account_id)
|
738
766
|
pager(path, **options)
|
739
767
|
end
|
740
768
|
|
741
769
|
# Fetch an account note
|
742
770
|
#
|
743
|
-
# {https://
|
771
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_account_note get_account_note api documenation}
|
744
772
|
#
|
745
773
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
746
774
|
# @param account_note_id [String] Account Note ID.
|
775
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
747
776
|
# @return [Resources::AccountNote] An account note.
|
748
777
|
# @example
|
749
778
|
# begin
|
@@ -758,17 +787,17 @@ module Recurly
|
|
758
787
|
# puts "Resource Not Found"
|
759
788
|
# end
|
760
789
|
#
|
761
|
-
def get_account_note(account_id:, account_note_id
|
762
|
-
path = interpolate_path("/
|
763
|
-
get(path)
|
790
|
+
def get_account_note(account_id:, account_note_id:, **options)
|
791
|
+
path = interpolate_path("/accounts/{account_id}/notes/{account_note_id}", account_id: account_id, account_note_id: account_note_id)
|
792
|
+
get(path, **options)
|
764
793
|
end
|
765
794
|
|
766
795
|
# Fetch a list of an account's shipping addresses
|
767
796
|
#
|
768
|
-
# {https://
|
797
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_shipping_addresses list_shipping_addresses api documenation}
|
769
798
|
#
|
770
799
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
771
|
-
# @param ids [
|
800
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
772
801
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
773
802
|
#
|
774
803
|
# *Important notes:*
|
@@ -792,6 +821,7 @@ module Recurly
|
|
792
821
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
793
822
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
794
823
|
#
|
824
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
795
825
|
# @return [Pager<Resources::ShippingAddress>] A list of an account's shipping addresses.
|
796
826
|
# @example
|
797
827
|
# shipping_addresses = @client.list_shipping_addresses(
|
@@ -803,28 +833,30 @@ module Recurly
|
|
803
833
|
# end
|
804
834
|
#
|
805
835
|
def list_shipping_addresses(account_id:, **options)
|
806
|
-
path = interpolate_path("/
|
836
|
+
path = interpolate_path("/accounts/{account_id}/shipping_addresses", account_id: account_id)
|
807
837
|
pager(path, **options)
|
808
838
|
end
|
809
839
|
|
810
840
|
# Create a new shipping address for the account
|
811
841
|
#
|
812
|
-
# {https://
|
842
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_shipping_address create_shipping_address api documenation}
|
813
843
|
#
|
814
844
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
815
845
|
# @param body [Requests::ShippingAddressCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::ShippingAddressCreate}
|
846
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
816
847
|
# @return [Resources::ShippingAddress] Returns the new shipping address.
|
817
|
-
def create_shipping_address(account_id:, body
|
818
|
-
path = interpolate_path("/
|
819
|
-
post(path, body, Requests::ShippingAddressCreate)
|
848
|
+
def create_shipping_address(account_id:, body:, **options)
|
849
|
+
path = interpolate_path("/accounts/{account_id}/shipping_addresses", account_id: account_id)
|
850
|
+
post(path, body, Requests::ShippingAddressCreate, **options)
|
820
851
|
end
|
821
852
|
|
822
853
|
# Fetch an account's shipping address
|
823
854
|
#
|
824
|
-
# {https://
|
855
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_shipping_address get_shipping_address api documenation}
|
825
856
|
#
|
826
857
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
827
858
|
# @param shipping_address_id [String] Shipping Address ID.
|
859
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
828
860
|
# @return [Resources::ShippingAddress] A shipping address.
|
829
861
|
# @example
|
830
862
|
# begin
|
@@ -839,18 +871,19 @@ module Recurly
|
|
839
871
|
# puts "Resource Not Found"
|
840
872
|
# end
|
841
873
|
#
|
842
|
-
def get_shipping_address(account_id:, shipping_address_id
|
843
|
-
path = interpolate_path("/
|
844
|
-
get(path)
|
874
|
+
def get_shipping_address(account_id:, shipping_address_id:, **options)
|
875
|
+
path = interpolate_path("/accounts/{account_id}/shipping_addresses/{shipping_address_id}", account_id: account_id, shipping_address_id: shipping_address_id)
|
876
|
+
get(path, **options)
|
845
877
|
end
|
846
878
|
|
847
879
|
# Update an account's shipping address
|
848
880
|
#
|
849
|
-
# {https://
|
881
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_shipping_address update_shipping_address api documenation}
|
850
882
|
#
|
851
883
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
852
884
|
# @param shipping_address_id [String] Shipping Address ID.
|
853
885
|
# @param body [Requests::ShippingAddressUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::ShippingAddressUpdate}
|
886
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
854
887
|
# @return [Resources::ShippingAddress] The updated shipping address.
|
855
888
|
# @example
|
856
889
|
# begin
|
@@ -871,17 +904,19 @@ module Recurly
|
|
871
904
|
# puts "ValidationError: #{e.recurly_error.params}"
|
872
905
|
# end
|
873
906
|
#
|
874
|
-
def update_shipping_address(account_id:, shipping_address_id:, body
|
875
|
-
path = interpolate_path("/
|
876
|
-
put(path, body, Requests::ShippingAddressUpdate)
|
907
|
+
def update_shipping_address(account_id:, shipping_address_id:, body:, **options)
|
908
|
+
path = interpolate_path("/accounts/{account_id}/shipping_addresses/{shipping_address_id}", account_id: account_id, shipping_address_id: shipping_address_id)
|
909
|
+
put(path, body, Requests::ShippingAddressUpdate, **options)
|
877
910
|
end
|
878
911
|
|
879
912
|
# Remove an account's shipping address
|
880
913
|
#
|
881
|
-
# {https://
|
914
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_shipping_address remove_shipping_address api documenation}
|
882
915
|
#
|
883
916
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
884
917
|
# @param shipping_address_id [String] Shipping Address ID.
|
918
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
919
|
+
# @return [Empty] Shipping address deleted.
|
885
920
|
# @example
|
886
921
|
# begin
|
887
922
|
# @client.remove_shipping_address(
|
@@ -895,17 +930,17 @@ module Recurly
|
|
895
930
|
# puts "Resource Not Found"
|
896
931
|
# end
|
897
932
|
#
|
898
|
-
def remove_shipping_address(account_id:, shipping_address_id
|
899
|
-
path = interpolate_path("/
|
900
|
-
delete(path)
|
933
|
+
def remove_shipping_address(account_id:, shipping_address_id:, **options)
|
934
|
+
path = interpolate_path("/accounts/{account_id}/shipping_addresses/{shipping_address_id}", account_id: account_id, shipping_address_id: shipping_address_id)
|
935
|
+
delete(path, **options)
|
901
936
|
end
|
902
937
|
|
903
938
|
# List an account's subscriptions
|
904
939
|
#
|
905
|
-
# {https://
|
940
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_subscriptions list_account_subscriptions api documenation}
|
906
941
|
#
|
907
942
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
908
|
-
# @param ids [
|
943
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
909
944
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
910
945
|
#
|
911
946
|
# *Important notes:*
|
@@ -935,6 +970,7 @@ module Recurly
|
|
935
970
|
# - When +state=in_trial+, only subscriptions that have a trial_started_at date earlier than now and a trial_ends_at date later than now will be returned.
|
936
971
|
# - When +state=live+, only subscriptions that are in an active, canceled, or future state or are in trial will be returned.
|
937
972
|
#
|
973
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
938
974
|
# @return [Pager<Resources::Subscription>] A list of the account's subscriptions.
|
939
975
|
# @example
|
940
976
|
# subscriptions = @client.list_account_subscriptions(
|
@@ -946,16 +982,16 @@ module Recurly
|
|
946
982
|
# end
|
947
983
|
#
|
948
984
|
def list_account_subscriptions(account_id:, **options)
|
949
|
-
path = interpolate_path("/
|
985
|
+
path = interpolate_path("/accounts/{account_id}/subscriptions", account_id: account_id)
|
950
986
|
pager(path, **options)
|
951
987
|
end
|
952
988
|
|
953
989
|
# List an account's transactions
|
954
990
|
#
|
955
|
-
# {https://
|
991
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_transactions list_account_transactions api documenation}
|
956
992
|
#
|
957
993
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
958
|
-
# @param ids [
|
994
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
959
995
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
960
996
|
#
|
961
997
|
# *Important notes:*
|
@@ -981,6 +1017,7 @@ module Recurly
|
|
981
1017
|
#
|
982
1018
|
# @param type [String] Filter by type field. The value +payment+ will return both +purchase+ and +capture+ transactions.
|
983
1019
|
# @param success [String] Filter by success field.
|
1020
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
984
1021
|
# @return [Pager<Resources::Transaction>] A list of the account's transactions.
|
985
1022
|
# @example
|
986
1023
|
# transactions = @client.list_account_transactions(
|
@@ -992,16 +1029,16 @@ module Recurly
|
|
992
1029
|
# end
|
993
1030
|
#
|
994
1031
|
def list_account_transactions(account_id:, **options)
|
995
|
-
path = interpolate_path("/
|
1032
|
+
path = interpolate_path("/accounts/{account_id}/transactions", account_id: account_id)
|
996
1033
|
pager(path, **options)
|
997
1034
|
end
|
998
1035
|
|
999
1036
|
# List an account's child accounts
|
1000
1037
|
#
|
1001
|
-
# {https://
|
1038
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_child_accounts list_child_accounts api documenation}
|
1002
1039
|
#
|
1003
1040
|
# @param account_id [String] Account ID or code (use prefix: +code-+, e.g. +code-bob+).
|
1004
|
-
# @param ids [
|
1041
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1005
1042
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1006
1043
|
#
|
1007
1044
|
# *Important notes:*
|
@@ -1025,10 +1062,12 @@ module Recurly
|
|
1025
1062
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1026
1063
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1027
1064
|
#
|
1028
|
-
# @param
|
1065
|
+
# @param email [String] Filter for accounts with this exact email address. A blank value will return accounts with both +null+ and +""+ email addresses. Note that multiple accounts can share one email address.
|
1066
|
+
# @param subscriber [Boolean] Filter for accounts with or without a subscription in the +active+,
|
1029
1067
|
# +canceled+, or +future+ state.
|
1030
1068
|
#
|
1031
1069
|
# @param past_due [String] Filter for accounts with an invoice in the +past_due+ state.
|
1070
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1032
1071
|
# @return [Pager<Resources::Account>] A list of an account's child accounts.
|
1033
1072
|
# @example
|
1034
1073
|
# child_accounts = @client.list_child_accounts(
|
@@ -1040,15 +1079,15 @@ module Recurly
|
|
1040
1079
|
# end
|
1041
1080
|
#
|
1042
1081
|
def list_child_accounts(account_id:, **options)
|
1043
|
-
path = interpolate_path("/
|
1082
|
+
path = interpolate_path("/accounts/{account_id}/accounts", account_id: account_id)
|
1044
1083
|
pager(path, **options)
|
1045
1084
|
end
|
1046
1085
|
|
1047
1086
|
# List a site's account acquisition data
|
1048
1087
|
#
|
1049
|
-
# {https://
|
1088
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_account_acquisition list_account_acquisition api documenation}
|
1050
1089
|
#
|
1051
|
-
# @param ids [
|
1090
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1052
1091
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1053
1092
|
#
|
1054
1093
|
# *Important notes:*
|
@@ -1072,6 +1111,7 @@ module Recurly
|
|
1072
1111
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1073
1112
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1074
1113
|
#
|
1114
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1075
1115
|
# @return [Pager<Resources::AccountAcquisition>] A list of the site's account acquisition data.
|
1076
1116
|
# @example
|
1077
1117
|
# acquisitions = @client.list_account_acquisition(limit: 200)
|
@@ -1080,15 +1120,15 @@ module Recurly
|
|
1080
1120
|
# end
|
1081
1121
|
#
|
1082
1122
|
def list_account_acquisition(**options)
|
1083
|
-
path = interpolate_path("/
|
1123
|
+
path = interpolate_path("/acquisitions")
|
1084
1124
|
pager(path, **options)
|
1085
1125
|
end
|
1086
1126
|
|
1087
1127
|
# List a site's coupons
|
1088
1128
|
#
|
1089
|
-
# {https://
|
1129
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_coupons list_coupons api documenation}
|
1090
1130
|
#
|
1091
|
-
# @param ids [
|
1131
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1092
1132
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1093
1133
|
#
|
1094
1134
|
# *Important notes:*
|
@@ -1112,6 +1152,7 @@ module Recurly
|
|
1112
1152
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1113
1153
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1114
1154
|
#
|
1155
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1115
1156
|
# @return [Pager<Resources::Coupon>] A list of the site's coupons.
|
1116
1157
|
# @example
|
1117
1158
|
# coupons = @client.list_coupons(limit: 200)
|
@@ -1120,15 +1161,16 @@ module Recurly
|
|
1120
1161
|
# end
|
1121
1162
|
#
|
1122
1163
|
def list_coupons(**options)
|
1123
|
-
path = interpolate_path("/
|
1164
|
+
path = interpolate_path("/coupons")
|
1124
1165
|
pager(path, **options)
|
1125
1166
|
end
|
1126
1167
|
|
1127
1168
|
# Create a new coupon
|
1128
1169
|
#
|
1129
|
-
# {https://
|
1170
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_coupon create_coupon api documenation}
|
1130
1171
|
#
|
1131
1172
|
# @param body [Requests::CouponCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::CouponCreate}
|
1173
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1132
1174
|
# @return [Resources::Coupon] A new coupon.
|
1133
1175
|
# @example
|
1134
1176
|
# begin
|
@@ -1153,16 +1195,17 @@ module Recurly
|
|
1153
1195
|
# puts "ValidationError: #{e.recurly_error.params}"
|
1154
1196
|
# end
|
1155
1197
|
#
|
1156
|
-
def create_coupon(body
|
1157
|
-
path = interpolate_path("/
|
1158
|
-
post(path, body, Requests::CouponCreate)
|
1198
|
+
def create_coupon(body:, **options)
|
1199
|
+
path = interpolate_path("/coupons")
|
1200
|
+
post(path, body, Requests::CouponCreate, **options)
|
1159
1201
|
end
|
1160
1202
|
|
1161
1203
|
# Fetch a coupon
|
1162
1204
|
#
|
1163
|
-
# {https://
|
1205
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_coupon get_coupon api documenation}
|
1164
1206
|
#
|
1165
1207
|
# @param coupon_id [String] Coupon ID or code (use prefix: +code-+, e.g. +code-10off+).
|
1208
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1166
1209
|
# @return [Resources::Coupon] A coupon.
|
1167
1210
|
# @example
|
1168
1211
|
# begin
|
@@ -1174,29 +1217,30 @@ module Recurly
|
|
1174
1217
|
# puts "Resource Not Found"
|
1175
1218
|
# end
|
1176
1219
|
#
|
1177
|
-
def get_coupon(coupon_id
|
1178
|
-
path = interpolate_path("/
|
1179
|
-
get(path)
|
1220
|
+
def get_coupon(coupon_id:, **options)
|
1221
|
+
path = interpolate_path("/coupons/{coupon_id}", coupon_id: coupon_id)
|
1222
|
+
get(path, **options)
|
1180
1223
|
end
|
1181
1224
|
|
1182
1225
|
# Update an active coupon
|
1183
1226
|
#
|
1184
|
-
# {https://
|
1227
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_coupon update_coupon api documenation}
|
1185
1228
|
#
|
1186
1229
|
# @param coupon_id [String] Coupon ID or code (use prefix: +code-+, e.g. +code-10off+).
|
1187
1230
|
# @param body [Requests::CouponUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::CouponUpdate}
|
1231
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1188
1232
|
# @return [Resources::Coupon] The updated coupon.
|
1189
|
-
def update_coupon(coupon_id:, body
|
1190
|
-
path = interpolate_path("/
|
1191
|
-
put(path, body, Requests::CouponUpdate)
|
1233
|
+
def update_coupon(coupon_id:, body:, **options)
|
1234
|
+
path = interpolate_path("/coupons/{coupon_id}", coupon_id: coupon_id)
|
1235
|
+
put(path, body, Requests::CouponUpdate, **options)
|
1192
1236
|
end
|
1193
1237
|
|
1194
1238
|
# List unique coupon codes associated with a bulk coupon
|
1195
1239
|
#
|
1196
|
-
# {https://
|
1240
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_unique_coupon_codes list_unique_coupon_codes api documenation}
|
1197
1241
|
#
|
1198
1242
|
# @param coupon_id [String] Coupon ID or code (use prefix: +code-+, e.g. +code-10off+).
|
1199
|
-
# @param ids [
|
1243
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1200
1244
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1201
1245
|
#
|
1202
1246
|
# *Important notes:*
|
@@ -1220,15 +1264,16 @@ module Recurly
|
|
1220
1264
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1221
1265
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1222
1266
|
#
|
1267
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1223
1268
|
# @return [Pager<Resources::UniqueCouponCode>] A list of unique coupon codes that were generated
|
1224
1269
|
def list_unique_coupon_codes(coupon_id:, **options)
|
1225
|
-
path = interpolate_path("/
|
1270
|
+
path = interpolate_path("/coupons/{coupon_id}/unique_coupon_codes", coupon_id: coupon_id)
|
1226
1271
|
pager(path, **options)
|
1227
1272
|
end
|
1228
1273
|
|
1229
1274
|
# List a site's credit payments
|
1230
1275
|
#
|
1231
|
-
# {https://
|
1276
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_credit_payments list_credit_payments api documenation}
|
1232
1277
|
#
|
1233
1278
|
# @param limit [Integer] Limit number of records 1-200.
|
1234
1279
|
# @param order [String] Sort order.
|
@@ -1242,6 +1287,7 @@ module Recurly
|
|
1242
1287
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1243
1288
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1244
1289
|
#
|
1290
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1245
1291
|
# @return [Pager<Resources::CreditPayment>] A list of the site's credit payments.
|
1246
1292
|
# @example
|
1247
1293
|
# payments = @client.list_credit_payments(limit: 200)
|
@@ -1250,26 +1296,27 @@ module Recurly
|
|
1250
1296
|
# end
|
1251
1297
|
#
|
1252
1298
|
def list_credit_payments(**options)
|
1253
|
-
path = interpolate_path("/
|
1299
|
+
path = interpolate_path("/credit_payments")
|
1254
1300
|
pager(path, **options)
|
1255
1301
|
end
|
1256
1302
|
|
1257
1303
|
# Fetch a credit payment
|
1258
1304
|
#
|
1259
|
-
# {https://
|
1305
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_credit_payment get_credit_payment api documenation}
|
1260
1306
|
#
|
1261
1307
|
# @param credit_payment_id [String] Credit Payment ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
1308
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1262
1309
|
# @return [Resources::CreditPayment] A credit payment.
|
1263
|
-
def get_credit_payment(credit_payment_id
|
1264
|
-
path = interpolate_path("/
|
1265
|
-
get(path)
|
1310
|
+
def get_credit_payment(credit_payment_id:, **options)
|
1311
|
+
path = interpolate_path("/credit_payments/{credit_payment_id}", credit_payment_id: credit_payment_id)
|
1312
|
+
get(path, **options)
|
1266
1313
|
end
|
1267
1314
|
|
1268
1315
|
# List a site's custom field definitions
|
1269
1316
|
#
|
1270
|
-
# {https://
|
1317
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_custom_field_definitions list_custom_field_definitions api documenation}
|
1271
1318
|
#
|
1272
|
-
# @param ids [
|
1319
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1273
1320
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1274
1321
|
#
|
1275
1322
|
# *Important notes:*
|
@@ -1293,6 +1340,7 @@ module Recurly
|
|
1293
1340
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1294
1341
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1295
1342
|
#
|
1343
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1296
1344
|
# @return [Pager<Resources::CustomFieldDefinition>] A list of the site's custom field definitions.
|
1297
1345
|
# @example
|
1298
1346
|
# custom_fields = @client.list_custom_field_definitions(limit: 200)
|
@@ -1301,26 +1349,27 @@ module Recurly
|
|
1301
1349
|
# end
|
1302
1350
|
#
|
1303
1351
|
def list_custom_field_definitions(**options)
|
1304
|
-
path = interpolate_path("/
|
1352
|
+
path = interpolate_path("/custom_field_definitions")
|
1305
1353
|
pager(path, **options)
|
1306
1354
|
end
|
1307
1355
|
|
1308
1356
|
# Fetch an custom field definition
|
1309
1357
|
#
|
1310
|
-
# {https://
|
1358
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_custom_field_definition get_custom_field_definition api documenation}
|
1311
1359
|
#
|
1312
1360
|
# @param custom_field_definition_id [String] Custom Field Definition ID
|
1361
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1313
1362
|
# @return [Resources::CustomFieldDefinition] An custom field definition.
|
1314
|
-
def get_custom_field_definition(custom_field_definition_id
|
1315
|
-
path = interpolate_path("/
|
1316
|
-
get(path)
|
1363
|
+
def get_custom_field_definition(custom_field_definition_id:, **options)
|
1364
|
+
path = interpolate_path("/custom_field_definitions/{custom_field_definition_id}", custom_field_definition_id: custom_field_definition_id)
|
1365
|
+
get(path, **options)
|
1317
1366
|
end
|
1318
1367
|
|
1319
1368
|
# List a site's invoices
|
1320
1369
|
#
|
1321
|
-
# {https://
|
1370
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_invoices list_invoices api documenation}
|
1322
1371
|
#
|
1323
|
-
# @param ids [
|
1372
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1324
1373
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1325
1374
|
#
|
1326
1375
|
# *Important notes:*
|
@@ -1350,6 +1399,7 @@ module Recurly
|
|
1350
1399
|
# - +type=non-legacy+, only charge and credit invoices will be returned.
|
1351
1400
|
# - +type=legacy+, only legacy invoices will be returned.
|
1352
1401
|
#
|
1402
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1353
1403
|
# @return [Pager<Resources::Invoice>] A list of the site's invoices.
|
1354
1404
|
# @example
|
1355
1405
|
# invoices = @client.list_invoices(limit: 200)
|
@@ -1358,15 +1408,16 @@ module Recurly
|
|
1358
1408
|
# end
|
1359
1409
|
#
|
1360
1410
|
def list_invoices(**options)
|
1361
|
-
path = interpolate_path("/
|
1411
|
+
path = interpolate_path("/invoices")
|
1362
1412
|
pager(path, **options)
|
1363
1413
|
end
|
1364
1414
|
|
1365
1415
|
# Fetch an invoice
|
1366
1416
|
#
|
1367
|
-
# {https://
|
1417
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_invoice get_invoice api documenation}
|
1368
1418
|
#
|
1369
1419
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1420
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1370
1421
|
# @return [Resources::Invoice] An invoice.
|
1371
1422
|
# @example
|
1372
1423
|
# begin
|
@@ -1378,28 +1429,30 @@ module Recurly
|
|
1378
1429
|
# puts "Resource Not Found"
|
1379
1430
|
# end
|
1380
1431
|
#
|
1381
|
-
def get_invoice(invoice_id
|
1382
|
-
path = interpolate_path("/
|
1383
|
-
get(path)
|
1432
|
+
def get_invoice(invoice_id:, **options)
|
1433
|
+
path = interpolate_path("/invoices/{invoice_id}", invoice_id: invoice_id)
|
1434
|
+
get(path, **options)
|
1384
1435
|
end
|
1385
1436
|
|
1386
1437
|
# Update an invoice
|
1387
1438
|
#
|
1388
|
-
# {https://
|
1439
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/put_invoice put_invoice api documenation}
|
1389
1440
|
#
|
1390
1441
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1391
1442
|
# @param body [Requests::InvoiceUpdatable] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::InvoiceUpdatable}
|
1443
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1392
1444
|
# @return [Resources::Invoice] An invoice.
|
1393
|
-
def put_invoice(invoice_id:, body
|
1394
|
-
path = interpolate_path("/
|
1395
|
-
put(path, body, Requests::InvoiceUpdatable)
|
1445
|
+
def put_invoice(invoice_id:, body:, **options)
|
1446
|
+
path = interpolate_path("/invoices/{invoice_id}", invoice_id: invoice_id)
|
1447
|
+
put(path, body, Requests::InvoiceUpdatable, **options)
|
1396
1448
|
end
|
1397
1449
|
|
1398
1450
|
# Collect a pending or past due, automatic invoice
|
1399
1451
|
#
|
1400
|
-
# {https://
|
1452
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/collect_invoice collect_invoice api documenation}
|
1401
1453
|
#
|
1402
1454
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1455
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1403
1456
|
# @return [Resources::Invoice] The updated invoice.
|
1404
1457
|
# @example
|
1405
1458
|
# begin
|
@@ -1411,16 +1464,17 @@ module Recurly
|
|
1411
1464
|
# puts "Resource Not Found"
|
1412
1465
|
# end
|
1413
1466
|
#
|
1414
|
-
def collect_invoice(invoice_id
|
1415
|
-
path = interpolate_path("/
|
1416
|
-
put(path)
|
1467
|
+
def collect_invoice(invoice_id:, **options)
|
1468
|
+
path = interpolate_path("/invoices/{invoice_id}/collect", invoice_id: invoice_id)
|
1469
|
+
put(path, **options)
|
1417
1470
|
end
|
1418
1471
|
|
1419
1472
|
# Mark an open invoice as failed
|
1420
1473
|
#
|
1421
|
-
# {https://
|
1474
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/fail_invoice fail_invoice api documenation}
|
1422
1475
|
#
|
1423
1476
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1477
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1424
1478
|
# @return [Resources::Invoice] The updated invoice.
|
1425
1479
|
# @example
|
1426
1480
|
# begin
|
@@ -1432,16 +1486,17 @@ module Recurly
|
|
1432
1486
|
# puts "Resource Not Found"
|
1433
1487
|
# end
|
1434
1488
|
#
|
1435
|
-
def fail_invoice(invoice_id
|
1436
|
-
path = interpolate_path("/
|
1437
|
-
put(path)
|
1489
|
+
def fail_invoice(invoice_id:, **options)
|
1490
|
+
path = interpolate_path("/invoices/{invoice_id}/mark_failed", invoice_id: invoice_id)
|
1491
|
+
put(path, **options)
|
1438
1492
|
end
|
1439
1493
|
|
1440
1494
|
# Mark an open invoice as successful
|
1441
1495
|
#
|
1442
|
-
# {https://
|
1496
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/mark_invoice_successful mark_invoice_successful api documenation}
|
1443
1497
|
#
|
1444
1498
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1499
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1445
1500
|
# @return [Resources::Invoice] The updated invoice.
|
1446
1501
|
# @example
|
1447
1502
|
# begin
|
@@ -1453,16 +1508,17 @@ module Recurly
|
|
1453
1508
|
# puts "Resource Not Found"
|
1454
1509
|
# end
|
1455
1510
|
#
|
1456
|
-
def mark_invoice_successful(invoice_id
|
1457
|
-
path = interpolate_path("/
|
1458
|
-
put(path)
|
1511
|
+
def mark_invoice_successful(invoice_id:, **options)
|
1512
|
+
path = interpolate_path("/invoices/{invoice_id}/mark_successful", invoice_id: invoice_id)
|
1513
|
+
put(path, **options)
|
1459
1514
|
end
|
1460
1515
|
|
1461
1516
|
# Reopen a closed, manual invoice
|
1462
1517
|
#
|
1463
|
-
# {https://
|
1518
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/reopen_invoice reopen_invoice api documenation}
|
1464
1519
|
#
|
1465
1520
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1521
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1466
1522
|
# @return [Resources::Invoice] The updated invoice.
|
1467
1523
|
# @example
|
1468
1524
|
# begin
|
@@ -1474,17 +1530,29 @@ module Recurly
|
|
1474
1530
|
# puts "Resource Not Found"
|
1475
1531
|
# end
|
1476
1532
|
#
|
1477
|
-
def reopen_invoice(invoice_id
|
1478
|
-
path = interpolate_path("/
|
1479
|
-
put(path)
|
1533
|
+
def reopen_invoice(invoice_id:, **options)
|
1534
|
+
path = interpolate_path("/invoices/{invoice_id}/reopen", invoice_id: invoice_id)
|
1535
|
+
put(path, **options)
|
1536
|
+
end
|
1537
|
+
|
1538
|
+
# Void a credit invoice.
|
1539
|
+
#
|
1540
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/void_invoice void_invoice api documenation}
|
1541
|
+
#
|
1542
|
+
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1543
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1544
|
+
# @return [Resources::Invoice] The updated invoice.
|
1545
|
+
def void_invoice(invoice_id:, **options)
|
1546
|
+
path = interpolate_path("/invoices/{invoice_id}/void", invoice_id: invoice_id)
|
1547
|
+
put(path, **options)
|
1480
1548
|
end
|
1481
1549
|
|
1482
1550
|
# List an invoice's line items
|
1483
1551
|
#
|
1484
|
-
# {https://
|
1552
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_invoice_line_items list_invoice_line_items api documenation}
|
1485
1553
|
#
|
1486
1554
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1487
|
-
# @param ids [
|
1555
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1488
1556
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1489
1557
|
#
|
1490
1558
|
# *Important notes:*
|
@@ -1511,18 +1579,19 @@ module Recurly
|
|
1511
1579
|
# @param original [String] Filter by original field.
|
1512
1580
|
# @param state [String] Filter by state field.
|
1513
1581
|
# @param type [String] Filter by type field.
|
1582
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1514
1583
|
# @return [Pager<Resources::LineItem>] A list of the invoice's line items.
|
1515
1584
|
def list_invoice_line_items(invoice_id:, **options)
|
1516
|
-
path = interpolate_path("/
|
1585
|
+
path = interpolate_path("/invoices/{invoice_id}/line_items", invoice_id: invoice_id)
|
1517
1586
|
pager(path, **options)
|
1518
1587
|
end
|
1519
1588
|
|
1520
1589
|
# Show the coupon redemptions applied to an invoice
|
1521
1590
|
#
|
1522
|
-
# {https://
|
1591
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_invoice_coupon_redemptions list_invoice_coupon_redemptions api documenation}
|
1523
1592
|
#
|
1524
1593
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1525
|
-
# @param ids [
|
1594
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1526
1595
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1527
1596
|
#
|
1528
1597
|
# *Important notes:*
|
@@ -1544,6 +1613,7 @@ module Recurly
|
|
1544
1613
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
1545
1614
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1546
1615
|
#
|
1616
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1547
1617
|
# @return [Pager<Resources::CouponRedemption>] A list of the the coupon redemptions associated with the invoice.
|
1548
1618
|
# @example
|
1549
1619
|
# coupon_redemptions = @client.list_invoice_coupon_redemptions(
|
@@ -1555,27 +1625,29 @@ module Recurly
|
|
1555
1625
|
# end
|
1556
1626
|
#
|
1557
1627
|
def list_invoice_coupon_redemptions(invoice_id:, **options)
|
1558
|
-
path = interpolate_path("/
|
1628
|
+
path = interpolate_path("/invoices/{invoice_id}/coupon_redemptions", invoice_id: invoice_id)
|
1559
1629
|
pager(path, **options)
|
1560
1630
|
end
|
1561
1631
|
|
1562
1632
|
# List an invoice's related credit or charge invoices
|
1563
1633
|
#
|
1564
|
-
# {https://
|
1634
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_related_invoices list_related_invoices api documenation}
|
1565
1635
|
#
|
1566
1636
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1637
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1567
1638
|
# @return [Pager<Resources::Invoice>] A list of the credit or charge invoices associated with the invoice.
|
1568
|
-
def list_related_invoices(invoice_id
|
1569
|
-
path = interpolate_path("/
|
1570
|
-
pager(path)
|
1639
|
+
def list_related_invoices(invoice_id:, **options)
|
1640
|
+
path = interpolate_path("/invoices/{invoice_id}/related_invoices", invoice_id: invoice_id)
|
1641
|
+
pager(path, **options)
|
1571
1642
|
end
|
1572
1643
|
|
1573
1644
|
# Refund an invoice
|
1574
1645
|
#
|
1575
|
-
# {https://
|
1646
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/refund_invoice refund_invoice api documenation}
|
1576
1647
|
#
|
1577
1648
|
# @param invoice_id [String] Invoice ID or number (use prefix: +number-+, e.g. +number-1000+).
|
1578
1649
|
# @param body [Requests::InvoiceRefund] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::InvoiceRefund}
|
1650
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1579
1651
|
# @return [Resources::Invoice] Returns the new credit invoice.
|
1580
1652
|
# @example
|
1581
1653
|
# begin
|
@@ -1594,16 +1666,16 @@ module Recurly
|
|
1594
1666
|
# puts "ValidationError: #{e.recurly_error.params}"
|
1595
1667
|
# end
|
1596
1668
|
#
|
1597
|
-
def refund_invoice(invoice_id:, body
|
1598
|
-
path = interpolate_path("/
|
1599
|
-
post(path, body, Requests::InvoiceRefund)
|
1669
|
+
def refund_invoice(invoice_id:, body:, **options)
|
1670
|
+
path = interpolate_path("/invoices/{invoice_id}/refund", invoice_id: invoice_id)
|
1671
|
+
post(path, body, Requests::InvoiceRefund, **options)
|
1600
1672
|
end
|
1601
1673
|
|
1602
1674
|
# List a site's line items
|
1603
1675
|
#
|
1604
|
-
# {https://
|
1676
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_line_items list_line_items api documenation}
|
1605
1677
|
#
|
1606
|
-
# @param ids [
|
1678
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1607
1679
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1608
1680
|
#
|
1609
1681
|
# *Important notes:*
|
@@ -1630,17 +1702,19 @@ module Recurly
|
|
1630
1702
|
# @param original [String] Filter by original field.
|
1631
1703
|
# @param state [String] Filter by state field.
|
1632
1704
|
# @param type [String] Filter by type field.
|
1705
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1633
1706
|
# @return [Pager<Resources::LineItem>] A list of the site's line items.
|
1634
1707
|
def list_line_items(**options)
|
1635
|
-
path = interpolate_path("/
|
1708
|
+
path = interpolate_path("/line_items")
|
1636
1709
|
pager(path, **options)
|
1637
1710
|
end
|
1638
1711
|
|
1639
1712
|
# Fetch a line item
|
1640
1713
|
#
|
1641
|
-
# {https://
|
1714
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_line_item get_line_item api documenation}
|
1642
1715
|
#
|
1643
1716
|
# @param line_item_id [String] Line Item ID.
|
1717
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1644
1718
|
# @return [Resources::LineItem] A line item.
|
1645
1719
|
# @example
|
1646
1720
|
# begin
|
@@ -1652,16 +1726,18 @@ module Recurly
|
|
1652
1726
|
# puts "Resource Not Found"
|
1653
1727
|
# end
|
1654
1728
|
#
|
1655
|
-
def get_line_item(line_item_id
|
1656
|
-
path = interpolate_path("/
|
1657
|
-
get(path)
|
1729
|
+
def get_line_item(line_item_id:, **options)
|
1730
|
+
path = interpolate_path("/line_items/{line_item_id}", line_item_id: line_item_id)
|
1731
|
+
get(path, **options)
|
1658
1732
|
end
|
1659
1733
|
|
1660
1734
|
# Delete an uninvoiced line item
|
1661
1735
|
#
|
1662
|
-
# {https://
|
1736
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_line_item remove_line_item api documenation}
|
1663
1737
|
#
|
1664
1738
|
# @param line_item_id [String] Line Item ID.
|
1739
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1740
|
+
# @return [Empty] Line item deleted.
|
1665
1741
|
# @example
|
1666
1742
|
# begin
|
1667
1743
|
# @client.remove_line_item(
|
@@ -1674,16 +1750,16 @@ module Recurly
|
|
1674
1750
|
# puts "Resource Not Found"
|
1675
1751
|
# end
|
1676
1752
|
#
|
1677
|
-
def remove_line_item(line_item_id
|
1678
|
-
path = interpolate_path("/
|
1679
|
-
delete(path)
|
1753
|
+
def remove_line_item(line_item_id:, **options)
|
1754
|
+
path = interpolate_path("/line_items/{line_item_id}", line_item_id: line_item_id)
|
1755
|
+
delete(path, **options)
|
1680
1756
|
end
|
1681
1757
|
|
1682
1758
|
# List a site's plans
|
1683
1759
|
#
|
1684
|
-
# {https://
|
1760
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_plans list_plans api documenation}
|
1685
1761
|
#
|
1686
|
-
# @param ids [
|
1762
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1687
1763
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1688
1764
|
#
|
1689
1765
|
# *Important notes:*
|
@@ -1708,6 +1784,7 @@ module Recurly
|
|
1708
1784
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1709
1785
|
#
|
1710
1786
|
# @param state [String] Filter by state.
|
1787
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1711
1788
|
# @return [Pager<Resources::Plan>] A list of plans.
|
1712
1789
|
# @example
|
1713
1790
|
# plans = @client.list_plans(limit: 200)
|
@@ -1716,15 +1793,16 @@ module Recurly
|
|
1716
1793
|
# end
|
1717
1794
|
#
|
1718
1795
|
def list_plans(**options)
|
1719
|
-
path = interpolate_path("/
|
1796
|
+
path = interpolate_path("/plans")
|
1720
1797
|
pager(path, **options)
|
1721
1798
|
end
|
1722
1799
|
|
1723
1800
|
# Create a plan
|
1724
1801
|
#
|
1725
|
-
# {https://
|
1802
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_plan create_plan api documenation}
|
1726
1803
|
#
|
1727
1804
|
# @param body [Requests::PlanCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::PlanCreate}
|
1805
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1728
1806
|
# @return [Resources::Plan] A plan.
|
1729
1807
|
# @example
|
1730
1808
|
# begin
|
@@ -1753,16 +1831,17 @@ module Recurly
|
|
1753
1831
|
# puts "ValidationError: #{e.recurly_error.params}"
|
1754
1832
|
# end
|
1755
1833
|
#
|
1756
|
-
def create_plan(body
|
1757
|
-
path = interpolate_path("/
|
1758
|
-
post(path, body, Requests::PlanCreate)
|
1834
|
+
def create_plan(body:, **options)
|
1835
|
+
path = interpolate_path("/plans")
|
1836
|
+
post(path, body, Requests::PlanCreate, **options)
|
1759
1837
|
end
|
1760
1838
|
|
1761
1839
|
# Fetch a plan
|
1762
1840
|
#
|
1763
|
-
# {https://
|
1841
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_plan get_plan api documenation}
|
1764
1842
|
#
|
1765
1843
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1844
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1766
1845
|
# @return [Resources::Plan] A plan.
|
1767
1846
|
# @example
|
1768
1847
|
# begin
|
@@ -1774,40 +1853,42 @@ module Recurly
|
|
1774
1853
|
# puts "Resource Not Found"
|
1775
1854
|
# end
|
1776
1855
|
#
|
1777
|
-
def get_plan(plan_id
|
1778
|
-
path = interpolate_path("/
|
1779
|
-
get(path)
|
1856
|
+
def get_plan(plan_id:, **options)
|
1857
|
+
path = interpolate_path("/plans/{plan_id}", plan_id: plan_id)
|
1858
|
+
get(path, **options)
|
1780
1859
|
end
|
1781
1860
|
|
1782
1861
|
# Update a plan
|
1783
1862
|
#
|
1784
|
-
# {https://
|
1863
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_plan update_plan api documenation}
|
1785
1864
|
#
|
1786
1865
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1787
1866
|
# @param body [Requests::PlanUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::PlanUpdate}
|
1867
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1788
1868
|
# @return [Resources::Plan] A plan.
|
1789
|
-
def update_plan(plan_id:, body
|
1790
|
-
path = interpolate_path("/
|
1791
|
-
put(path, body, Requests::PlanUpdate)
|
1869
|
+
def update_plan(plan_id:, body:, **options)
|
1870
|
+
path = interpolate_path("/plans/{plan_id}", plan_id: plan_id)
|
1871
|
+
put(path, body, Requests::PlanUpdate, **options)
|
1792
1872
|
end
|
1793
1873
|
|
1794
1874
|
# Remove a plan
|
1795
1875
|
#
|
1796
|
-
# {https://
|
1876
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_plan remove_plan api documenation}
|
1797
1877
|
#
|
1798
1878
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1879
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1799
1880
|
# @return [Resources::Plan] Plan deleted
|
1800
|
-
def remove_plan(plan_id
|
1801
|
-
path = interpolate_path("/
|
1802
|
-
delete(path)
|
1881
|
+
def remove_plan(plan_id:, **options)
|
1882
|
+
path = interpolate_path("/plans/{plan_id}", plan_id: plan_id)
|
1883
|
+
delete(path, **options)
|
1803
1884
|
end
|
1804
1885
|
|
1805
1886
|
# List a plan's add-ons
|
1806
1887
|
#
|
1807
|
-
# {https://
|
1888
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_plan_add_ons list_plan_add_ons api documenation}
|
1808
1889
|
#
|
1809
1890
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1810
|
-
# @param ids [
|
1891
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1811
1892
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1812
1893
|
#
|
1813
1894
|
# *Important notes:*
|
@@ -1832,6 +1913,7 @@ module Recurly
|
|
1832
1913
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1833
1914
|
#
|
1834
1915
|
# @param state [String] Filter by state.
|
1916
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1835
1917
|
# @return [Pager<Resources::AddOn>] A list of add-ons.
|
1836
1918
|
# @example
|
1837
1919
|
# add_ons = @client.list_plan_add_ons(
|
@@ -1843,28 +1925,30 @@ module Recurly
|
|
1843
1925
|
# end
|
1844
1926
|
#
|
1845
1927
|
def list_plan_add_ons(plan_id:, **options)
|
1846
|
-
path = interpolate_path("/
|
1928
|
+
path = interpolate_path("/plans/{plan_id}/add_ons", plan_id: plan_id)
|
1847
1929
|
pager(path, **options)
|
1848
1930
|
end
|
1849
1931
|
|
1850
1932
|
# Create an add-on
|
1851
1933
|
#
|
1852
|
-
# {https://
|
1934
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_plan_add_on create_plan_add_on api documenation}
|
1853
1935
|
#
|
1854
1936
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1855
1937
|
# @param body [Requests::AddOnCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::AddOnCreate}
|
1938
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1856
1939
|
# @return [Resources::AddOn] An add-on.
|
1857
|
-
def create_plan_add_on(plan_id:, body
|
1858
|
-
path = interpolate_path("/
|
1859
|
-
post(path, body, Requests::AddOnCreate)
|
1940
|
+
def create_plan_add_on(plan_id:, body:, **options)
|
1941
|
+
path = interpolate_path("/plans/{plan_id}/add_ons", plan_id: plan_id)
|
1942
|
+
post(path, body, Requests::AddOnCreate, **options)
|
1860
1943
|
end
|
1861
1944
|
|
1862
1945
|
# Fetch a plan's add-on
|
1863
1946
|
#
|
1864
|
-
# {https://
|
1947
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_plan_add_on get_plan_add_on api documenation}
|
1865
1948
|
#
|
1866
1949
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1867
1950
|
# @param add_on_id [String] Add-on ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1951
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1868
1952
|
# @return [Resources::AddOn] An add-on.
|
1869
1953
|
# @example
|
1870
1954
|
# begin
|
@@ -1878,41 +1962,43 @@ module Recurly
|
|
1878
1962
|
# puts "Resource Not Found"
|
1879
1963
|
# end
|
1880
1964
|
#
|
1881
|
-
def get_plan_add_on(plan_id:, add_on_id
|
1882
|
-
path = interpolate_path("/
|
1883
|
-
get(path)
|
1965
|
+
def get_plan_add_on(plan_id:, add_on_id:, **options)
|
1966
|
+
path = interpolate_path("/plans/{plan_id}/add_ons/{add_on_id}", plan_id: plan_id, add_on_id: add_on_id)
|
1967
|
+
get(path, **options)
|
1884
1968
|
end
|
1885
1969
|
|
1886
1970
|
# Update an add-on
|
1887
1971
|
#
|
1888
|
-
# {https://
|
1972
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/update_plan_add_on update_plan_add_on api documenation}
|
1889
1973
|
#
|
1890
1974
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1891
1975
|
# @param add_on_id [String] Add-on ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1892
1976
|
# @param body [Requests::AddOnUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::AddOnUpdate}
|
1977
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1893
1978
|
# @return [Resources::AddOn] An add-on.
|
1894
|
-
def update_plan_add_on(plan_id:, add_on_id:, body
|
1895
|
-
path = interpolate_path("/
|
1896
|
-
put(path, body, Requests::AddOnUpdate)
|
1979
|
+
def update_plan_add_on(plan_id:, add_on_id:, body:, **options)
|
1980
|
+
path = interpolate_path("/plans/{plan_id}/add_ons/{add_on_id}", plan_id: plan_id, add_on_id: add_on_id)
|
1981
|
+
put(path, body, Requests::AddOnUpdate, **options)
|
1897
1982
|
end
|
1898
1983
|
|
1899
1984
|
# Remove an add-on
|
1900
1985
|
#
|
1901
|
-
# {https://
|
1986
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_plan_add_on remove_plan_add_on api documenation}
|
1902
1987
|
#
|
1903
1988
|
# @param plan_id [String] Plan ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1904
1989
|
# @param add_on_id [String] Add-on ID or code (use prefix: +code-+, e.g. +code-gold+).
|
1990
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1905
1991
|
# @return [Resources::AddOn] Add-on deleted
|
1906
|
-
def remove_plan_add_on(plan_id:, add_on_id
|
1907
|
-
path = interpolate_path("/
|
1908
|
-
delete(path)
|
1992
|
+
def remove_plan_add_on(plan_id:, add_on_id:, **options)
|
1993
|
+
path = interpolate_path("/plans/{plan_id}/add_ons/{add_on_id}", plan_id: plan_id, add_on_id: add_on_id)
|
1994
|
+
delete(path, **options)
|
1909
1995
|
end
|
1910
1996
|
|
1911
1997
|
# List a site's add-ons
|
1912
1998
|
#
|
1913
|
-
# {https://
|
1999
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_add_ons list_add_ons api documenation}
|
1914
2000
|
#
|
1915
|
-
# @param ids [
|
2001
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1916
2002
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1917
2003
|
#
|
1918
2004
|
# *Important notes:*
|
@@ -1937,28 +2023,77 @@ module Recurly
|
|
1937
2023
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
1938
2024
|
#
|
1939
2025
|
# @param state [String] Filter by state.
|
2026
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1940
2027
|
# @return [Pager<Resources::AddOn>] A list of add-ons.
|
1941
2028
|
def list_add_ons(**options)
|
1942
|
-
path = interpolate_path("/
|
2029
|
+
path = interpolate_path("/add_ons")
|
1943
2030
|
pager(path, **options)
|
1944
2031
|
end
|
1945
2032
|
|
1946
2033
|
# Fetch an add-on
|
1947
2034
|
#
|
1948
|
-
# {https://
|
2035
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_add_on get_add_on api documenation}
|
1949
2036
|
#
|
1950
2037
|
# @param add_on_id [String] Add-on ID or code (use prefix: +code-+, e.g. +code-gold+).
|
2038
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1951
2039
|
# @return [Resources::AddOn] An add-on.
|
1952
|
-
def get_add_on(add_on_id
|
1953
|
-
path = interpolate_path("/
|
1954
|
-
get(path)
|
2040
|
+
def get_add_on(add_on_id:, **options)
|
2041
|
+
path = interpolate_path("/add_ons/{add_on_id}", add_on_id: add_on_id)
|
2042
|
+
get(path, **options)
|
2043
|
+
end
|
2044
|
+
|
2045
|
+
# List a site's shipping methods
|
2046
|
+
#
|
2047
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_shipping_methods list_shipping_methods api documenation}
|
2048
|
+
#
|
2049
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
2050
|
+
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
2051
|
+
#
|
2052
|
+
# *Important notes:*
|
2053
|
+
#
|
2054
|
+
# * The +ids+ parameter cannot be used with any other ordering or filtering
|
2055
|
+
# parameters (+limit+, +order+, +sort+, +begin_time+, +end_time+, etc)
|
2056
|
+
# * Invalid or unknown IDs will be ignored, so you should check that the
|
2057
|
+
# results correspond to your request.
|
2058
|
+
# * Records are returned in an arbitrary order. Since results are all
|
2059
|
+
# returned at once you can sort the records yourself.
|
2060
|
+
#
|
2061
|
+
# @param limit [Integer] Limit number of records 1-200.
|
2062
|
+
# @param order [String] Sort order.
|
2063
|
+
# @param sort [String] Sort field. You *really* only want to sort by +updated_at+ in ascending
|
2064
|
+
# order. In descending order updated records will move behind the cursor and could
|
2065
|
+
# prevent some records from being returned.
|
2066
|
+
#
|
2067
|
+
# @param begin_time [DateTime] Filter by begin_time when +sort=created_at+ or +sort=updated_at+.
|
2068
|
+
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
2069
|
+
#
|
2070
|
+
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
2071
|
+
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
2072
|
+
#
|
2073
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2074
|
+
# @return [Pager<Resources::ShippingMethod>] A list of the site's shipping methods.
|
2075
|
+
def list_shipping_methods(**options)
|
2076
|
+
path = interpolate_path("/shipping_methods")
|
2077
|
+
pager(path, **options)
|
2078
|
+
end
|
2079
|
+
|
2080
|
+
# Fetch a shipping method
|
2081
|
+
#
|
2082
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_shipping_method get_shipping_method api documenation}
|
2083
|
+
#
|
2084
|
+
# @param id [String] Shipping Method ID or code (use prefix: +code-+, e.g. +code-usps_2-day+).
|
2085
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2086
|
+
# @return [Resources::ShippingMethod] A shipping_method.
|
2087
|
+
def get_shipping_method(id:, **options)
|
2088
|
+
path = interpolate_path("/shipping_methods/{id}", id: id)
|
2089
|
+
get(path, **options)
|
1955
2090
|
end
|
1956
2091
|
|
1957
2092
|
# List a site's subscriptions
|
1958
2093
|
#
|
1959
|
-
# {https://
|
2094
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_subscriptions list_subscriptions api documenation}
|
1960
2095
|
#
|
1961
|
-
# @param ids [
|
2096
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
1962
2097
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
1963
2098
|
#
|
1964
2099
|
# *Important notes:*
|
@@ -1988,6 +2123,7 @@ module Recurly
|
|
1988
2123
|
# - When +state=in_trial+, only subscriptions that have a trial_started_at date earlier than now and a trial_ends_at date later than now will be returned.
|
1989
2124
|
# - When +state=live+, only subscriptions that are in an active, canceled, or future state or are in trial will be returned.
|
1990
2125
|
#
|
2126
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
1991
2127
|
# @return [Pager<Resources::Subscription>] A list of the site's subscriptions.
|
1992
2128
|
# @example
|
1993
2129
|
# subscriptions = @client.list_subscriptions(limit: 200)
|
@@ -1996,15 +2132,16 @@ module Recurly
|
|
1996
2132
|
# end
|
1997
2133
|
#
|
1998
2134
|
def list_subscriptions(**options)
|
1999
|
-
path = interpolate_path("/
|
2135
|
+
path = interpolate_path("/subscriptions")
|
2000
2136
|
pager(path, **options)
|
2001
2137
|
end
|
2002
2138
|
|
2003
2139
|
# Create a new subscription
|
2004
2140
|
#
|
2005
|
-
# {https://
|
2141
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_subscription create_subscription api documenation}
|
2006
2142
|
#
|
2007
2143
|
# @param body [Requests::SubscriptionCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::SubscriptionCreate}
|
2144
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2008
2145
|
# @return [Resources::Subscription] A subscription.
|
2009
2146
|
# @example
|
2010
2147
|
# begin
|
@@ -2027,16 +2164,17 @@ module Recurly
|
|
2027
2164
|
# puts "ValidationError: #{e.recurly_error.params}"
|
2028
2165
|
# end
|
2029
2166
|
#
|
2030
|
-
def create_subscription(body
|
2031
|
-
path = interpolate_path("/
|
2032
|
-
post(path, body, Requests::SubscriptionCreate)
|
2167
|
+
def create_subscription(body:, **options)
|
2168
|
+
path = interpolate_path("/subscriptions")
|
2169
|
+
post(path, body, Requests::SubscriptionCreate, **options)
|
2033
2170
|
end
|
2034
2171
|
|
2035
2172
|
# Fetch a subscription
|
2036
2173
|
#
|
2037
|
-
# {https://
|
2174
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_subscription get_subscription api documenation}
|
2038
2175
|
#
|
2039
2176
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2177
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2040
2178
|
# @return [Resources::Subscription] A subscription.
|
2041
2179
|
# @example
|
2042
2180
|
# begin
|
@@ -2050,17 +2188,18 @@ module Recurly
|
|
2050
2188
|
# puts "Resource Not Found"
|
2051
2189
|
# end
|
2052
2190
|
#
|
2053
|
-
def get_subscription(subscription_id
|
2054
|
-
path = interpolate_path("/
|
2055
|
-
get(path)
|
2191
|
+
def get_subscription(subscription_id:, **options)
|
2192
|
+
path = interpolate_path("/subscriptions/{subscription_id}", subscription_id: subscription_id)
|
2193
|
+
get(path, **options)
|
2056
2194
|
end
|
2057
2195
|
|
2058
2196
|
# Modify a subscription
|
2059
2197
|
#
|
2060
|
-
# {https://
|
2198
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/modify_subscription modify_subscription api documenation}
|
2061
2199
|
#
|
2062
2200
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2063
2201
|
# @param body [Requests::SubscriptionUpdate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::SubscriptionUpdate}
|
2202
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2064
2203
|
# @return [Resources::Subscription] A subscription.
|
2065
2204
|
# @example
|
2066
2205
|
# begin
|
@@ -2079,14 +2218,14 @@ module Recurly
|
|
2079
2218
|
# puts "ValidationError: #{e.recurly_error.params}"
|
2080
2219
|
# end
|
2081
2220
|
#
|
2082
|
-
def modify_subscription(subscription_id:, body
|
2083
|
-
path = interpolate_path("/
|
2084
|
-
put(path, body, Requests::SubscriptionUpdate)
|
2221
|
+
def modify_subscription(subscription_id:, body:, **options)
|
2222
|
+
path = interpolate_path("/subscriptions/{subscription_id}", subscription_id: subscription_id)
|
2223
|
+
put(path, body, Requests::SubscriptionUpdate, **options)
|
2085
2224
|
end
|
2086
2225
|
|
2087
2226
|
# Terminate a subscription
|
2088
2227
|
#
|
2089
|
-
# {https://
|
2228
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/terminate_subscription terminate_subscription api documenation}
|
2090
2229
|
#
|
2091
2230
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2092
2231
|
# @param refund [String] The type of refund to perform:
|
@@ -2099,6 +2238,7 @@ module Recurly
|
|
2099
2238
|
#
|
2100
2239
|
# You may also terminate a subscription with no refund and then manually refund specific invoices.
|
2101
2240
|
#
|
2241
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2102
2242
|
# @return [Resources::Subscription] An expired subscription.
|
2103
2243
|
# @example
|
2104
2244
|
# begin
|
@@ -2113,15 +2253,16 @@ module Recurly
|
|
2113
2253
|
# end
|
2114
2254
|
#
|
2115
2255
|
def terminate_subscription(subscription_id:, **options)
|
2116
|
-
path = interpolate_path("/
|
2256
|
+
path = interpolate_path("/subscriptions/{subscription_id}", subscription_id: subscription_id)
|
2117
2257
|
delete(path, **options)
|
2118
2258
|
end
|
2119
2259
|
|
2120
2260
|
# Cancel a subscription
|
2121
2261
|
#
|
2122
|
-
# {https://
|
2262
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/cancel_subscription cancel_subscription api documenation}
|
2123
2263
|
#
|
2124
2264
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2265
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2125
2266
|
# @return [Resources::Subscription] A canceled or failed subscription.
|
2126
2267
|
# @example
|
2127
2268
|
# begin
|
@@ -2135,16 +2276,17 @@ module Recurly
|
|
2135
2276
|
# puts "Resource Not Found"
|
2136
2277
|
# end
|
2137
2278
|
#
|
2138
|
-
def cancel_subscription(subscription_id
|
2139
|
-
path = interpolate_path("/
|
2140
|
-
put(path)
|
2279
|
+
def cancel_subscription(subscription_id:, **options)
|
2280
|
+
path = interpolate_path("/subscriptions/{subscription_id}/cancel", subscription_id: subscription_id)
|
2281
|
+
put(path, **options)
|
2141
2282
|
end
|
2142
2283
|
|
2143
2284
|
# Reactivate a canceled subscription
|
2144
2285
|
#
|
2145
|
-
# {https://
|
2286
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/reactivate_subscription reactivate_subscription api documenation}
|
2146
2287
|
#
|
2147
2288
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2289
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2148
2290
|
# @return [Resources::Subscription] An active subscription.
|
2149
2291
|
# @example
|
2150
2292
|
# begin
|
@@ -2158,17 +2300,18 @@ module Recurly
|
|
2158
2300
|
# puts "Resource Not Found"
|
2159
2301
|
# end
|
2160
2302
|
#
|
2161
|
-
def reactivate_subscription(subscription_id
|
2162
|
-
path = interpolate_path("/
|
2163
|
-
put(path)
|
2303
|
+
def reactivate_subscription(subscription_id:, **options)
|
2304
|
+
path = interpolate_path("/subscriptions/{subscription_id}/reactivate", subscription_id: subscription_id)
|
2305
|
+
put(path, **options)
|
2164
2306
|
end
|
2165
2307
|
|
2166
2308
|
# Pause subscription
|
2167
2309
|
#
|
2168
|
-
# {https://
|
2310
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/pause_subscription pause_subscription api documenation}
|
2169
2311
|
#
|
2170
2312
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2171
2313
|
# @param body [Requests::SubscriptionPause] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::SubscriptionPause}
|
2314
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2172
2315
|
# @return [Resources::Subscription] A subscription.
|
2173
2316
|
# @example
|
2174
2317
|
# begin
|
@@ -2186,16 +2329,17 @@ module Recurly
|
|
2186
2329
|
# puts "Resource Not Found"
|
2187
2330
|
# end
|
2188
2331
|
#
|
2189
|
-
def pause_subscription(subscription_id:, body
|
2190
|
-
path = interpolate_path("/
|
2191
|
-
put(path, body, Requests::SubscriptionPause)
|
2332
|
+
def pause_subscription(subscription_id:, body:, **options)
|
2333
|
+
path = interpolate_path("/subscriptions/{subscription_id}/pause", subscription_id: subscription_id)
|
2334
|
+
put(path, body, Requests::SubscriptionPause, **options)
|
2192
2335
|
end
|
2193
2336
|
|
2194
2337
|
# Resume subscription
|
2195
2338
|
#
|
2196
|
-
# {https://
|
2339
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/resume_subscription resume_subscription api documenation}
|
2197
2340
|
#
|
2198
2341
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2342
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2199
2343
|
# @return [Resources::Subscription] A subscription.
|
2200
2344
|
# @example
|
2201
2345
|
# begin
|
@@ -2209,16 +2353,17 @@ module Recurly
|
|
2209
2353
|
# puts "Resource Not Found"
|
2210
2354
|
# end
|
2211
2355
|
#
|
2212
|
-
def resume_subscription(subscription_id
|
2213
|
-
path = interpolate_path("/
|
2214
|
-
put(path)
|
2356
|
+
def resume_subscription(subscription_id:, **options)
|
2357
|
+
path = interpolate_path("/subscriptions/{subscription_id}/resume", subscription_id: subscription_id)
|
2358
|
+
put(path, **options)
|
2215
2359
|
end
|
2216
2360
|
|
2217
2361
|
# Fetch a subscription's pending change
|
2218
2362
|
#
|
2219
|
-
# {https://
|
2363
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_subscription_change get_subscription_change api documenation}
|
2220
2364
|
#
|
2221
2365
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2366
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2222
2367
|
# @return [Resources::SubscriptionChange] A subscription's pending change.
|
2223
2368
|
# @example
|
2224
2369
|
# begin
|
@@ -2232,17 +2377,18 @@ module Recurly
|
|
2232
2377
|
# puts "Resource Not Found"
|
2233
2378
|
# end
|
2234
2379
|
#
|
2235
|
-
def get_subscription_change(subscription_id
|
2236
|
-
path = interpolate_path("/
|
2237
|
-
get(path)
|
2380
|
+
def get_subscription_change(subscription_id:, **options)
|
2381
|
+
path = interpolate_path("/subscriptions/{subscription_id}/change", subscription_id: subscription_id)
|
2382
|
+
get(path, **options)
|
2238
2383
|
end
|
2239
2384
|
|
2240
2385
|
# Create a new subscription change
|
2241
2386
|
#
|
2242
|
-
# {https://
|
2387
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_subscription_change create_subscription_change api documenation}
|
2243
2388
|
#
|
2244
2389
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2245
2390
|
# @param body [Requests::SubscriptionChangeCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::SubscriptionChangeCreate}
|
2391
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2246
2392
|
# @return [Resources::SubscriptionChange] A subscription change.
|
2247
2393
|
# @example
|
2248
2394
|
# begin
|
@@ -2261,16 +2407,18 @@ module Recurly
|
|
2261
2407
|
# puts "ValidationError: #{e.recurly_error.params}"
|
2262
2408
|
# end
|
2263
2409
|
#
|
2264
|
-
def create_subscription_change(subscription_id:, body
|
2265
|
-
path = interpolate_path("/
|
2266
|
-
post(path, body, Requests::SubscriptionChangeCreate)
|
2410
|
+
def create_subscription_change(subscription_id:, body:, **options)
|
2411
|
+
path = interpolate_path("/subscriptions/{subscription_id}/change", subscription_id: subscription_id)
|
2412
|
+
post(path, body, Requests::SubscriptionChangeCreate, **options)
|
2267
2413
|
end
|
2268
2414
|
|
2269
2415
|
# Delete the pending subscription change
|
2270
2416
|
#
|
2271
|
-
# {https://
|
2417
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/remove_subscription_change remove_subscription_change api documenation}
|
2272
2418
|
#
|
2273
2419
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2420
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2421
|
+
# @return [Empty] Subscription change was deleted.
|
2274
2422
|
# @example
|
2275
2423
|
# begin
|
2276
2424
|
# @client.remove_subscription_change(
|
@@ -2283,17 +2431,17 @@ module Recurly
|
|
2283
2431
|
# puts "Resource Not Found"
|
2284
2432
|
# end
|
2285
2433
|
#
|
2286
|
-
def remove_subscription_change(subscription_id
|
2287
|
-
path = interpolate_path("/
|
2288
|
-
delete(path)
|
2434
|
+
def remove_subscription_change(subscription_id:, **options)
|
2435
|
+
path = interpolate_path("/subscriptions/{subscription_id}/change", subscription_id: subscription_id)
|
2436
|
+
delete(path, **options)
|
2289
2437
|
end
|
2290
2438
|
|
2291
2439
|
# List a subscription's invoices
|
2292
2440
|
#
|
2293
|
-
# {https://
|
2441
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_subscription_invoices list_subscription_invoices api documenation}
|
2294
2442
|
#
|
2295
2443
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2296
|
-
# @param ids [
|
2444
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
2297
2445
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
2298
2446
|
#
|
2299
2447
|
# *Important notes:*
|
@@ -2323,6 +2471,7 @@ module Recurly
|
|
2323
2471
|
# - +type=non-legacy+, only charge and credit invoices will be returned.
|
2324
2472
|
# - +type=legacy+, only legacy invoices will be returned.
|
2325
2473
|
#
|
2474
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2326
2475
|
# @return [Pager<Resources::Invoice>] A list of the subscription's invoices.
|
2327
2476
|
# @example
|
2328
2477
|
# invoices = @client.list_subscription_invoices(
|
@@ -2334,16 +2483,16 @@ module Recurly
|
|
2334
2483
|
# end
|
2335
2484
|
#
|
2336
2485
|
def list_subscription_invoices(subscription_id:, **options)
|
2337
|
-
path = interpolate_path("/
|
2486
|
+
path = interpolate_path("/subscriptions/{subscription_id}/invoices", subscription_id: subscription_id)
|
2338
2487
|
pager(path, **options)
|
2339
2488
|
end
|
2340
2489
|
|
2341
2490
|
# List a subscription's line items
|
2342
2491
|
#
|
2343
|
-
# {https://
|
2492
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_subscription_line_items list_subscription_line_items api documenation}
|
2344
2493
|
#
|
2345
2494
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2346
|
-
# @param ids [
|
2495
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
2347
2496
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
2348
2497
|
#
|
2349
2498
|
# *Important notes:*
|
@@ -2370,6 +2519,7 @@ module Recurly
|
|
2370
2519
|
# @param original [String] Filter by original field.
|
2371
2520
|
# @param state [String] Filter by state field.
|
2372
2521
|
# @param type [String] Filter by type field.
|
2522
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2373
2523
|
# @return [Pager<Resources::LineItem>] A list of the subscription's line items.
|
2374
2524
|
# @example
|
2375
2525
|
# line_items = @client.list_subscription_line_items(
|
@@ -2381,16 +2531,16 @@ module Recurly
|
|
2381
2531
|
# end
|
2382
2532
|
#
|
2383
2533
|
def list_subscription_line_items(subscription_id:, **options)
|
2384
|
-
path = interpolate_path("/
|
2534
|
+
path = interpolate_path("/subscriptions/{subscription_id}/line_items", subscription_id: subscription_id)
|
2385
2535
|
pager(path, **options)
|
2386
2536
|
end
|
2387
2537
|
|
2388
2538
|
# Show the coupon redemptions for a subscription
|
2389
2539
|
#
|
2390
|
-
# {https://
|
2540
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_subscription_coupon_redemptions list_subscription_coupon_redemptions api documenation}
|
2391
2541
|
#
|
2392
2542
|
# @param subscription_id [String] Subscription ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2393
|
-
# @param ids [
|
2543
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
2394
2544
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
2395
2545
|
#
|
2396
2546
|
# *Important notes:*
|
@@ -2412,6 +2562,7 @@ module Recurly
|
|
2412
2562
|
# @param end_time [DateTime] Filter by end_time when +sort=created_at+ or +sort=updated_at+.
|
2413
2563
|
# *Note:* this value is an ISO8601 timestamp. A partial timestamp that does not include a time zone will default to UTC.
|
2414
2564
|
#
|
2565
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2415
2566
|
# @return [Pager<Resources::CouponRedemption>] A list of the the coupon redemptions on a subscription.
|
2416
2567
|
# @example
|
2417
2568
|
# coupon_redemptions = @client.list_subscription_coupon_redemptions(
|
@@ -2423,15 +2574,15 @@ module Recurly
|
|
2423
2574
|
# end
|
2424
2575
|
#
|
2425
2576
|
def list_subscription_coupon_redemptions(subscription_id:, **options)
|
2426
|
-
path = interpolate_path("/
|
2577
|
+
path = interpolate_path("/subscriptions/{subscription_id}/coupon_redemptions", subscription_id: subscription_id)
|
2427
2578
|
pager(path, **options)
|
2428
2579
|
end
|
2429
2580
|
|
2430
2581
|
# List a site's transactions
|
2431
2582
|
#
|
2432
|
-
# {https://
|
2583
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/list_transactions list_transactions api documenation}
|
2433
2584
|
#
|
2434
|
-
# @param ids [
|
2585
|
+
# @param ids [String] Filter results by their IDs. Up to 200 IDs can be passed at once using
|
2435
2586
|
# commas as separators, e.g. +ids=h1at4d57xlmy,gyqgg0d3v9n1,jrsm5b4yefg6+.
|
2436
2587
|
#
|
2437
2588
|
# *Important notes:*
|
@@ -2457,6 +2608,7 @@ module Recurly
|
|
2457
2608
|
#
|
2458
2609
|
# @param type [String] Filter by type field. The value +payment+ will return both +purchase+ and +capture+ transactions.
|
2459
2610
|
# @param success [String] Filter by success field.
|
2611
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2460
2612
|
# @return [Pager<Resources::Transaction>] A list of the site's transactions.
|
2461
2613
|
# @example
|
2462
2614
|
# transactions = @client.list_transactions(limit: 200)
|
@@ -2465,15 +2617,16 @@ module Recurly
|
|
2465
2617
|
# end
|
2466
2618
|
#
|
2467
2619
|
def list_transactions(**options)
|
2468
|
-
path = interpolate_path("/
|
2620
|
+
path = interpolate_path("/transactions")
|
2469
2621
|
pager(path, **options)
|
2470
2622
|
end
|
2471
2623
|
|
2472
2624
|
# Fetch a transaction
|
2473
2625
|
#
|
2474
|
-
# {https://
|
2626
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_transaction get_transaction api documenation}
|
2475
2627
|
#
|
2476
2628
|
# @param transaction_id [String] Transaction ID or UUID (use prefix: +uuid-+, e.g. +uuid-123457890+).
|
2629
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2477
2630
|
# @return [Resources::Transaction] A transaction.
|
2478
2631
|
# @example
|
2479
2632
|
# begin
|
@@ -2485,49 +2638,53 @@ module Recurly
|
|
2485
2638
|
# puts "Resource Not Found"
|
2486
2639
|
# end
|
2487
2640
|
#
|
2488
|
-
def get_transaction(transaction_id
|
2489
|
-
path = interpolate_path("/
|
2490
|
-
get(path)
|
2641
|
+
def get_transaction(transaction_id:, **options)
|
2642
|
+
path = interpolate_path("/transactions/{transaction_id}", transaction_id: transaction_id)
|
2643
|
+
get(path, **options)
|
2491
2644
|
end
|
2492
2645
|
|
2493
2646
|
# Fetch a unique coupon code
|
2494
2647
|
#
|
2495
|
-
# {https://
|
2648
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/get_unique_coupon_code get_unique_coupon_code api documenation}
|
2496
2649
|
#
|
2497
2650
|
# @param unique_coupon_code_id [String] Unique Coupon Code ID or code (use prefix: +code-+, e.g. +code-abc-8dh2-def+).
|
2651
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2498
2652
|
# @return [Resources::UniqueCouponCode] A unique coupon code.
|
2499
|
-
def get_unique_coupon_code(unique_coupon_code_id
|
2500
|
-
path = interpolate_path("/
|
2501
|
-
get(path)
|
2653
|
+
def get_unique_coupon_code(unique_coupon_code_id:, **options)
|
2654
|
+
path = interpolate_path("/unique_coupon_codes/{unique_coupon_code_id}", unique_coupon_code_id: unique_coupon_code_id)
|
2655
|
+
get(path, **options)
|
2502
2656
|
end
|
2503
2657
|
|
2504
2658
|
# Deactivate a unique coupon code
|
2505
2659
|
#
|
2506
|
-
# {https://
|
2660
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/deactivate_unique_coupon_code deactivate_unique_coupon_code api documenation}
|
2507
2661
|
#
|
2508
2662
|
# @param unique_coupon_code_id [String] Unique Coupon Code ID or code (use prefix: +code-+, e.g. +code-abc-8dh2-def+).
|
2663
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2509
2664
|
# @return [Resources::UniqueCouponCode] A unique coupon code.
|
2510
|
-
def deactivate_unique_coupon_code(unique_coupon_code_id
|
2511
|
-
path = interpolate_path("/
|
2512
|
-
delete(path)
|
2665
|
+
def deactivate_unique_coupon_code(unique_coupon_code_id:, **options)
|
2666
|
+
path = interpolate_path("/unique_coupon_codes/{unique_coupon_code_id}", unique_coupon_code_id: unique_coupon_code_id)
|
2667
|
+
delete(path, **options)
|
2513
2668
|
end
|
2514
2669
|
|
2515
2670
|
# Restore a unique coupon code
|
2516
2671
|
#
|
2517
|
-
# {https://
|
2672
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/reactivate_unique_coupon_code reactivate_unique_coupon_code api documenation}
|
2518
2673
|
#
|
2519
2674
|
# @param unique_coupon_code_id [String] Unique Coupon Code ID or code (use prefix: +code-+, e.g. +code-abc-8dh2-def+).
|
2675
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2520
2676
|
# @return [Resources::UniqueCouponCode] A unique coupon code.
|
2521
|
-
def reactivate_unique_coupon_code(unique_coupon_code_id
|
2522
|
-
path = interpolate_path("/
|
2523
|
-
put(path)
|
2677
|
+
def reactivate_unique_coupon_code(unique_coupon_code_id:, **options)
|
2678
|
+
path = interpolate_path("/unique_coupon_codes/{unique_coupon_code_id}/restore", unique_coupon_code_id: unique_coupon_code_id)
|
2679
|
+
put(path, **options)
|
2524
2680
|
end
|
2525
2681
|
|
2526
2682
|
# Create a new purchase
|
2527
2683
|
#
|
2528
|
-
# {https://
|
2684
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/create_purchase create_purchase api documenation}
|
2529
2685
|
#
|
2530
2686
|
# @param body [Requests::PurchaseCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::PurchaseCreate}
|
2687
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2531
2688
|
# @return [Resources::InvoiceCollection] Returns the new invoices
|
2532
2689
|
# @example
|
2533
2690
|
# begin
|
@@ -2556,16 +2713,17 @@ module Recurly
|
|
2556
2713
|
# puts "ValidationError: #{e.recurly_error.params}"
|
2557
2714
|
# end
|
2558
2715
|
#
|
2559
|
-
def create_purchase(body
|
2560
|
-
path = interpolate_path("/
|
2561
|
-
post(path, body, Requests::PurchaseCreate)
|
2716
|
+
def create_purchase(body:, **options)
|
2717
|
+
path = interpolate_path("/purchases")
|
2718
|
+
post(path, body, Requests::PurchaseCreate, **options)
|
2562
2719
|
end
|
2563
2720
|
|
2564
2721
|
# Preview a new purchase
|
2565
2722
|
#
|
2566
|
-
# {https://
|
2723
|
+
# {https://developers.recurly.com/api/v2019-10-10#operation/preview_purchase preview_purchase api documenation}
|
2567
2724
|
#
|
2568
2725
|
# @param body [Requests::PurchaseCreate] The Hash representing the JSON request to send to the server. It should conform to the schema of {Requests::PurchaseCreate}
|
2726
|
+
# @param site_id [String] Site ID or subdomain (use prefix: +subdomain-+, e.g. +subdomain-recurly+).
|
2569
2727
|
# @return [Resources::InvoiceCollection] Returns preview of the new invoices
|
2570
2728
|
# @example
|
2571
2729
|
# begin
|
@@ -2594,9 +2752,9 @@ module Recurly
|
|
2594
2752
|
# puts "ValidationError: #{e.recurly_error.params}"
|
2595
2753
|
# end
|
2596
2754
|
#
|
2597
|
-
def preview_purchase(body
|
2598
|
-
path = interpolate_path("/
|
2599
|
-
post(path, body, Requests::PurchaseCreate)
|
2755
|
+
def preview_purchase(body:, **options)
|
2756
|
+
path = interpolate_path("/purchases/preview")
|
2757
|
+
post(path, body, Requests::PurchaseCreate, **options)
|
2600
2758
|
end
|
2601
2759
|
end
|
2602
2760
|
end
|