avatax 14.4.4 → 17.5.0
Sign up to get free protection for your applications and to get access to all the features.
- checksums.yaml +4 -4
- data/.gitignore +54 -0
- data/.rspec +2 -0
- data/.travis.yml +7 -0
- data/.yardopts +5 -0
- data/Gemfile +3 -0
- data/LICENSE +201 -191
- data/README.md +63 -61
- data/Rakefile +9 -0
- data/avatax.gemspec +39 -0
- data/example/avatax.rb +14 -0
- data/example/credentials.example.yaml +5 -0
- data/lib/avatax.rb +19 -13
- data/lib/avatax/api.rb +27 -0
- data/lib/avatax/client.rb +32 -0
- data/lib/avatax/client/accounts.rb +110 -0
- data/lib/avatax/client/addresses.rb +52 -0
- data/lib/avatax/client/batches.rb +117 -0
- data/lib/avatax/client/companies.rb +218 -0
- data/lib/avatax/client/contacts.rb +115 -0
- data/lib/avatax/client/definitions.rb +569 -0
- data/lib/avatax/client/filingcalendars.rb +313 -0
- data/lib/avatax/client/filings.rb +417 -0
- data/lib/avatax/client/free.rb +104 -0
- data/lib/avatax/client/fundingrequests.rb +53 -0
- data/lib/avatax/client/items.rb +111 -0
- data/lib/avatax/client/jurisdictionoverrides.rb +125 -0
- data/lib/avatax/client/locations.rb +158 -0
- data/lib/avatax/client/nexus.rb +157 -0
- data/lib/avatax/client/notices.rb +297 -0
- data/lib/avatax/client/onboarding.rb +23 -0
- data/lib/avatax/client/pointofsale.rb +24 -0
- data/lib/avatax/client/registrar.rb +216 -0
- data/lib/avatax/client/settings.rb +137 -0
- data/lib/avatax/client/subscriptions.rb +66 -0
- data/lib/avatax/client/taxcodes.rb +127 -0
- data/lib/avatax/client/taxrules.rb +127 -0
- data/lib/avatax/client/transactions.rb +473 -0
- data/lib/avatax/client/upcs.rb +112 -0
- data/lib/avatax/client/users.rb +112 -0
- data/lib/avatax/client/utilities.rb +52 -0
- data/lib/avatax/configuration.rb +53 -18
- data/lib/avatax/connection.rb +28 -0
- data/lib/avatax/request.rb +38 -0
- data/lib/avatax/version.rb +3 -0
- data/spec/avatax/client/accounts_spec.rb +26 -0
- data/spec/avatax_spec.rb +59 -0
- data/spec/fixtures/accounts.json +16 -0
- data/spec/spec_helper.rb +47 -0
- metadata +143 -30
- data/lib/avatax/address_service.rb +0 -31
- data/lib/avatax/tax_service.rb +0 -61
@@ -0,0 +1,23 @@
|
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module Onboarding
|
4
|
+
|
5
|
+
|
6
|
+
# Request a new Avalara account
|
7
|
+
#
|
8
|
+
# This API is for use by partner onboarding services customers only.
|
9
|
+
# Calling this API creates an account with the specified product subscriptions, but does not configure billing.
|
10
|
+
# The customer will receive information from Avalara about how to configure billing for their account.
|
11
|
+
# You should call this API when a customer has requested to begin using Avalara services.
|
12
|
+
#
|
13
|
+
# @param NewAccountRequestModel model Information about the account you wish to create and the selected product offerings.
|
14
|
+
# @return NewAccountModel
|
15
|
+
def request_new_account(model)
|
16
|
+
path = "/api/v2/accounts/request"
|
17
|
+
|
18
|
+
post(path, model)
|
19
|
+
end
|
20
|
+
|
21
|
+
end
|
22
|
+
end
|
23
|
+
end
|
@@ -0,0 +1,24 @@
|
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module PointOfSale
|
4
|
+
|
5
|
+
|
6
|
+
# Point of sale data file generation
|
7
|
+
#
|
8
|
+
# Builds a point-of-sale data file containing tax rates and rules for items and locations that can be used
|
9
|
+
# to correctly calculate tax in the event a point-of-sale device is not able to reach AvaTax.
|
10
|
+
# This data file can be customized for specific partner devices and usage conditions.
|
11
|
+
# The result of this API is the file you requested in the format you requested using the 'responseType' field.
|
12
|
+
# This API builds the file on demand, and is limited to files with no more than 7500 scenarios.
|
13
|
+
#
|
14
|
+
# @param PointOfSaleDataRequestModel model Parameters about the desired file format and report format, specifying which company, locations and TaxCodes to include.
|
15
|
+
# @return FileResult
|
16
|
+
def build_point_of_sale_data_file(model)
|
17
|
+
path = "/api/v2/pointofsaledata/build"
|
18
|
+
|
19
|
+
post(path, model)
|
20
|
+
end
|
21
|
+
|
22
|
+
end
|
23
|
+
end
|
24
|
+
end
|
@@ -0,0 +1,216 @@
|
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module Registrar
|
4
|
+
|
5
|
+
|
6
|
+
# Change Password
|
7
|
+
#
|
8
|
+
# # For Registrar Use Only
|
9
|
+
# This API is for use by Avalara Registrar administrative users only.
|
10
|
+
#
|
11
|
+
# Allows a user to change their password via the API.
|
12
|
+
# This API only allows the currently authenticated user to change their password; it cannot be used to apply to a
|
13
|
+
# different user than the one authenticating the current API call.
|
14
|
+
#
|
15
|
+
# @param PasswordChangeModel model An object containing your current password and the new password.
|
16
|
+
# @return string
|
17
|
+
def change_password(model)
|
18
|
+
path = "/api/v2/passwords"
|
19
|
+
|
20
|
+
put(path, model)
|
21
|
+
end
|
22
|
+
|
23
|
+
|
24
|
+
# Create a new account
|
25
|
+
#
|
26
|
+
# # For Registrar Use Only
|
27
|
+
# This API is for use by Avalara Registrar administrative users only.
|
28
|
+
#
|
29
|
+
# Create a single new account object.
|
30
|
+
# When creating an account object you may attach subscriptions and users as part of the 'Create' call.
|
31
|
+
#
|
32
|
+
# @param AccountModel model The account you wish to create.
|
33
|
+
# @return AccountModel
|
34
|
+
def create_account(model)
|
35
|
+
path = "/api/v2/accounts"
|
36
|
+
|
37
|
+
post(path, model)
|
38
|
+
end
|
39
|
+
|
40
|
+
|
41
|
+
# Create a new subscription
|
42
|
+
#
|
43
|
+
# # For Registrar Use Only
|
44
|
+
# This API is for use by Avalara Registrar administrative users only.
|
45
|
+
#
|
46
|
+
# Create one or more new subscription objects attached to this account.
|
47
|
+
# A 'subscription' indicates a licensed subscription to a named Avalara service.
|
48
|
+
# To request or remove subscriptions, please contact Avalara sales or your customer account manager.
|
49
|
+
#
|
50
|
+
# @param int accountId The ID of the account that owns this subscription.
|
51
|
+
# @param SubscriptionModel[] model The subscription you wish to create.
|
52
|
+
# @return SubscriptionModel[]
|
53
|
+
def create_subscriptions(accountId, model)
|
54
|
+
path = "/api/v2/accounts/#{accountId}/subscriptions"
|
55
|
+
|
56
|
+
post(path, model)
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
# Create new users
|
61
|
+
#
|
62
|
+
# # For Registrar Use Only
|
63
|
+
# This API is for use by Avalara Registrar administrative users only.
|
64
|
+
#
|
65
|
+
# Create one or more new user objects attached to this account.
|
66
|
+
# A user represents one person with access privileges to make API calls and work with a specific account.
|
67
|
+
#
|
68
|
+
# @param int accountId The unique ID number of the account where these users will be created.
|
69
|
+
# @param UserModel[] model The user or array of users you wish to create.
|
70
|
+
# @return UserModel[]
|
71
|
+
def create_users(accountId, model)
|
72
|
+
path = "/api/v2/accounts/#{accountId}/users"
|
73
|
+
|
74
|
+
post(path, model)
|
75
|
+
end
|
76
|
+
|
77
|
+
|
78
|
+
# Delete a single account
|
79
|
+
#
|
80
|
+
# # For Registrar Use Only
|
81
|
+
# This API is for use by Avalara Registrar administrative users only.
|
82
|
+
#
|
83
|
+
# Delete an account.
|
84
|
+
# Deleting an account will delete all companies and all account level users attached to this account.
|
85
|
+
#
|
86
|
+
# @param int id The ID of the account you wish to delete.
|
87
|
+
# @return ErrorDetail[]
|
88
|
+
def delete_account(id)
|
89
|
+
path = "/api/v2/accounts/#{id}"
|
90
|
+
|
91
|
+
delete(path)
|
92
|
+
end
|
93
|
+
|
94
|
+
|
95
|
+
# Delete a single subscription
|
96
|
+
#
|
97
|
+
# # For Registrar Use Only
|
98
|
+
# This API is for use by Avalara Registrar administrative users only.
|
99
|
+
#
|
100
|
+
# Mark the existing account identified by this URL as deleted.
|
101
|
+
#
|
102
|
+
# @param int accountId The ID of the account that owns this subscription.
|
103
|
+
# @param int id The ID of the subscription you wish to delete.
|
104
|
+
# @return ErrorDetail[]
|
105
|
+
def delete_subscription(accountId, id)
|
106
|
+
path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
|
107
|
+
|
108
|
+
delete(path)
|
109
|
+
end
|
110
|
+
|
111
|
+
|
112
|
+
# Delete a single user
|
113
|
+
#
|
114
|
+
# # For Registrar Use Only
|
115
|
+
# This API is for use by Avalara Registrar administrative users only.
|
116
|
+
#
|
117
|
+
# Mark the user object identified by this URL as deleted.
|
118
|
+
#
|
119
|
+
# @param int id The ID of the user you wish to delete.
|
120
|
+
# @param int accountId The accountID of the user you wish to delete.
|
121
|
+
# @return ErrorDetail[]
|
122
|
+
def delete_user(id, accountId)
|
123
|
+
path = "/api/v2/accounts/#{accountId}/users/#{id}"
|
124
|
+
|
125
|
+
delete(path)
|
126
|
+
end
|
127
|
+
|
128
|
+
|
129
|
+
# Retrieve all accounts
|
130
|
+
#
|
131
|
+
# # For Registrar Use Only
|
132
|
+
# This API is for use by Avalara Registrar administrative users only.
|
133
|
+
#
|
134
|
+
# Get multiple account objects.
|
135
|
+
# Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
136
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
137
|
+
# You may specify one or more of the following values in the `$include` parameter to fetch additional nested data, using commas to separate multiple values:
|
138
|
+
#
|
139
|
+
# * Subscriptions
|
140
|
+
# * Users
|
141
|
+
#
|
142
|
+
# For more information about filtering in REST, please see the documentation at http://developer.avalara.com/avatax/filtering-in-rest/ .
|
143
|
+
#
|
144
|
+
# @param string include A comma separated list of child objects to return underneath the primary object.
|
145
|
+
# @param string filter A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
146
|
+
# @param int top If nonzero, return no more than this number of results. Used with $skip to provide pagination for large datasets.
|
147
|
+
# @param int skip If nonzero, skip this number of results before returning data. Used with $top to provide pagination for large datasets.
|
148
|
+
# @param string orderBy A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
149
|
+
# @return FetchResult
|
150
|
+
def query_accounts(options={})
|
151
|
+
path = "/api/v2/accounts"
|
152
|
+
|
153
|
+
get(path, options)
|
154
|
+
end
|
155
|
+
|
156
|
+
|
157
|
+
# Reset a user's password programmatically
|
158
|
+
#
|
159
|
+
# # For Registrar Use Only
|
160
|
+
# This API is for use by Avalara Registrar administrative users only.
|
161
|
+
#
|
162
|
+
# Allows a system admin to reset the password for a specific user via the API.
|
163
|
+
# This API is only available for Avalara Registrar Admins, and can be used to reset the password of any
|
164
|
+
# user based on internal Avalara business processes.
|
165
|
+
#
|
166
|
+
# @param int userId The unique ID of the user whose password will be changed
|
167
|
+
# @param SetPasswordModel model The new password for this user
|
168
|
+
# @return string
|
169
|
+
def reset_password(userId, model)
|
170
|
+
path = "/api/v2/passwords/#{userId}/reset"
|
171
|
+
|
172
|
+
post(path, model)
|
173
|
+
end
|
174
|
+
|
175
|
+
|
176
|
+
# Update a single account
|
177
|
+
#
|
178
|
+
# # For Registrar Use Only
|
179
|
+
# This API is for use by Avalara Registrar administrative users only.
|
180
|
+
#
|
181
|
+
# Replace an existing account object with an updated account object.
|
182
|
+
#
|
183
|
+
# @param int id The ID of the account you wish to update.
|
184
|
+
# @param AccountModel model The account object you wish to update.
|
185
|
+
# @return AccountModel
|
186
|
+
def update_account(id, model)
|
187
|
+
path = "/api/v2/accounts/#{id}"
|
188
|
+
|
189
|
+
put(path, model)
|
190
|
+
end
|
191
|
+
|
192
|
+
|
193
|
+
# Update a single subscription
|
194
|
+
#
|
195
|
+
# # For Registrar Use Only
|
196
|
+
# This API is for use by Avalara Registrar administrative users only.
|
197
|
+
#
|
198
|
+
# Replace the existing subscription object at this URL with an updated object.
|
199
|
+
# A 'subscription' indicates a licensed subscription to a named Avalara service.
|
200
|
+
# To request or remove subscriptions, please contact Avalara sales or your customer account manager.
|
201
|
+
# All data from the existing object will be replaced with data in the object you PUT.
|
202
|
+
# To set a field's value to null, you may either set its value to null or omit that field from the object you post.
|
203
|
+
#
|
204
|
+
# @param int accountId The ID of the account that this subscription belongs to.
|
205
|
+
# @param int id The ID of the subscription you wish to update
|
206
|
+
# @param SubscriptionModel model The subscription you wish to update.
|
207
|
+
# @return SubscriptionModel
|
208
|
+
def update_subscription(accountId, id, model)
|
209
|
+
path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
|
210
|
+
|
211
|
+
put(path, model)
|
212
|
+
end
|
213
|
+
|
214
|
+
end
|
215
|
+
end
|
216
|
+
end
|
@@ -0,0 +1,137 @@
|
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module Settings
|
4
|
+
|
5
|
+
|
6
|
+
# Create a new setting
|
7
|
+
#
|
8
|
+
# Create one or more new setting objects attached to this company.
|
9
|
+
# A 'setting' is a piece of user-defined data that can be attached to a company, and it provides you the ability to store information
|
10
|
+
# not defined or managed by Avalara.
|
11
|
+
# You may create, update, and delete your own settings objects as required, and there is no mandatory data format for the 'name' and
|
12
|
+
# 'value' data fields.
|
13
|
+
# To ensure correct operation of other programs or connectors, please create a new GUID for your application and use that value for
|
14
|
+
# the 'set' data field.
|
15
|
+
#
|
16
|
+
# @param int companyId The ID of the company that owns this setting.
|
17
|
+
# @param SettingModel[] model The setting you wish to create.
|
18
|
+
# @return SettingModel[]
|
19
|
+
def create_settings(companyId, model)
|
20
|
+
path = "/api/v2/companies/#{companyId}/settings"
|
21
|
+
|
22
|
+
post(path, model)
|
23
|
+
end
|
24
|
+
|
25
|
+
|
26
|
+
# Delete a single setting
|
27
|
+
#
|
28
|
+
# Mark the setting object at this URL as deleted.
|
29
|
+
#
|
30
|
+
# @param int companyId The ID of the company that owns this setting.
|
31
|
+
# @param int id The ID of the setting you wish to delete.
|
32
|
+
# @return ErrorDetail[]
|
33
|
+
def delete_setting(companyId, id)
|
34
|
+
path = "/api/v2/companies/#{companyId}/settings/#{id}"
|
35
|
+
|
36
|
+
delete(path)
|
37
|
+
end
|
38
|
+
|
39
|
+
|
40
|
+
# Retrieve a single setting
|
41
|
+
#
|
42
|
+
# Get a single setting object by its unique ID.
|
43
|
+
# A 'setting' is a piece of user-defined data that can be attached to a company, and it provides you the ability to store information
|
44
|
+
# not defined or managed by Avalara.
|
45
|
+
# You may create, update, and delete your own settings objects as required, and there is no mandatory data format for the 'name' and
|
46
|
+
# 'value' data fields.
|
47
|
+
# To ensure correct operation of other programs or connectors, please create a new GUID for your application and use that value for
|
48
|
+
# the 'set' data field.
|
49
|
+
#
|
50
|
+
# @param int companyId The ID of the company that owns this setting
|
51
|
+
# @param int id The primary key of this setting
|
52
|
+
# @return SettingModel
|
53
|
+
def get_setting(companyId, id)
|
54
|
+
path = "/api/v2/companies/#{companyId}/settings/#{id}"
|
55
|
+
|
56
|
+
get(path)
|
57
|
+
end
|
58
|
+
|
59
|
+
|
60
|
+
# Retrieve all settings for this company
|
61
|
+
#
|
62
|
+
# List all setting objects attached to this company.
|
63
|
+
# A 'setting' is a piece of user-defined data that can be attached to a company, and it provides you the ability to store information
|
64
|
+
# not defined or managed by Avalara.
|
65
|
+
# You may create, update, and delete your own settings objects as required, and there is no mandatory data format for the 'name' and
|
66
|
+
# 'value' data fields.
|
67
|
+
# To ensure correct operation of other programs or connectors, please create a new GUID for your application and use that value for
|
68
|
+
# the 'set' data field.
|
69
|
+
#
|
70
|
+
# Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
71
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
72
|
+
#
|
73
|
+
# @param int companyId The ID of the company that owns these settings
|
74
|
+
# @param string filter A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
75
|
+
# @param string include A comma separated list of child objects to return underneath the primary object.
|
76
|
+
# @param int top If nonzero, return no more than this number of results. Used with $skip to provide pagination for large datasets.
|
77
|
+
# @param int skip If nonzero, skip this number of results before returning data. Used with $top to provide pagination for large datasets.
|
78
|
+
# @param string orderBy A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
79
|
+
# @return FetchResult
|
80
|
+
def list_settings_by_company(companyId, options={})
|
81
|
+
path = "/api/v2/companies/#{companyId}/settings"
|
82
|
+
|
83
|
+
get(path, options)
|
84
|
+
end
|
85
|
+
|
86
|
+
|
87
|
+
# Retrieve all settings
|
88
|
+
#
|
89
|
+
# Get multiple setting objects across all companies.
|
90
|
+
# A 'setting' is a piece of user-defined data that can be attached to a company, and it provides you the ability to store information
|
91
|
+
# not defined or managed by Avalara.
|
92
|
+
# You may create, update, and delete your own settings objects as required, and there is no mandatory data format for the 'name' and
|
93
|
+
# 'value' data fields.
|
94
|
+
# To ensure correct operation of other programs or connectors, please create a new GUID for your application and use that value for
|
95
|
+
# the 'set' data field.
|
96
|
+
#
|
97
|
+
# Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
98
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
99
|
+
#
|
100
|
+
# @param string filter A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
101
|
+
# @param string include A comma separated list of child objects to return underneath the primary object.
|
102
|
+
# @param int top If nonzero, return no more than this number of results. Used with $skip to provide pagination for large datasets.
|
103
|
+
# @param int skip If nonzero, skip this number of results before returning data. Used with $top to provide pagination for large datasets.
|
104
|
+
# @param string orderBy A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
105
|
+
# @return FetchResult
|
106
|
+
def query_settings(options={})
|
107
|
+
path = "/api/v2/settings"
|
108
|
+
|
109
|
+
get(path, options)
|
110
|
+
end
|
111
|
+
|
112
|
+
|
113
|
+
# Update a single setting
|
114
|
+
#
|
115
|
+
# Replace the existing setting object at this URL with an updated object.
|
116
|
+
# A 'setting' is a piece of user-defined data that can be attached to a company, and it provides you the ability to store information
|
117
|
+
# not defined or managed by Avalara.
|
118
|
+
# You may create, update, and delete your own settings objects as required, and there is no mandatory data format for the 'name' and
|
119
|
+
# 'value' data fields.
|
120
|
+
# To ensure correct operation of other programs or connectors, please create a new GUID for your application and use that value for
|
121
|
+
# the 'set' data field.
|
122
|
+
# All data from the existing object will be replaced with data in the object you PUT.
|
123
|
+
# To set a field's value to null, you may either set its value to null or omit that field from the object you post.
|
124
|
+
#
|
125
|
+
# @param int companyId The ID of the company that this setting belongs to.
|
126
|
+
# @param int id The ID of the setting you wish to update
|
127
|
+
# @param SettingModel model The setting you wish to update.
|
128
|
+
# @return SettingModel
|
129
|
+
def update_setting(companyId, id, model)
|
130
|
+
path = "/api/v2/companies/#{companyId}/settings/#{id}"
|
131
|
+
|
132
|
+
put(path, model)
|
133
|
+
end
|
134
|
+
|
135
|
+
end
|
136
|
+
end
|
137
|
+
end
|
@@ -0,0 +1,66 @@
|
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module Subscriptions
|
4
|
+
|
5
|
+
|
6
|
+
# Retrieve a single subscription
|
7
|
+
#
|
8
|
+
# Get the subscription object identified by this URL.
|
9
|
+
# A 'subscription' indicates a licensed subscription to a named Avalara service.
|
10
|
+
# To request or remove subscriptions, please contact Avalara sales or your customer account manager.
|
11
|
+
#
|
12
|
+
# @param int accountId The ID of the account that owns this subscription
|
13
|
+
# @param int id The primary key of this subscription
|
14
|
+
# @return SubscriptionModel
|
15
|
+
def get_subscription(accountId, id)
|
16
|
+
path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
|
17
|
+
|
18
|
+
get(path)
|
19
|
+
end
|
20
|
+
|
21
|
+
|
22
|
+
# Retrieve subscriptions for this account
|
23
|
+
#
|
24
|
+
# List all subscription objects attached to this account.
|
25
|
+
# A 'subscription' indicates a licensed subscription to a named Avalara service.
|
26
|
+
# To request or remove subscriptions, please contact Avalara sales or your customer account manager.
|
27
|
+
#
|
28
|
+
# Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
29
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
30
|
+
#
|
31
|
+
# @param int accountId The ID of the account that owns these subscriptions
|
32
|
+
# @param string filter A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
33
|
+
# @param int top If nonzero, return no more than this number of results. Used with $skip to provide pagination for large datasets.
|
34
|
+
# @param int skip If nonzero, skip this number of results before returning data. Used with $top to provide pagination for large datasets.
|
35
|
+
# @param string orderBy A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
36
|
+
# @return FetchResult
|
37
|
+
def list_subscriptions_by_account(accountId, options={})
|
38
|
+
path = "/api/v2/accounts/#{accountId}/subscriptions"
|
39
|
+
|
40
|
+
get(path, options)
|
41
|
+
end
|
42
|
+
|
43
|
+
|
44
|
+
# Retrieve all subscriptions
|
45
|
+
#
|
46
|
+
# Get multiple subscription objects across all accounts.
|
47
|
+
# A 'subscription' indicates a licensed subscription to a named Avalara service.
|
48
|
+
# To request or remove subscriptions, please contact Avalara sales or your customer account manager.
|
49
|
+
#
|
50
|
+
# Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
51
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
52
|
+
#
|
53
|
+
# @param string filter A filter statement to identify specific records to retrieve. For more information on filtering, see [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
|
54
|
+
# @param int top If nonzero, return no more than this number of results. Used with $skip to provide pagination for large datasets.
|
55
|
+
# @param int skip If nonzero, skip this number of results before returning data. Used with $top to provide pagination for large datasets.
|
56
|
+
# @param string orderBy A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
57
|
+
# @return FetchResult
|
58
|
+
def query_subscriptions(options={})
|
59
|
+
path = "/api/v2/subscriptions"
|
60
|
+
|
61
|
+
get(path, options)
|
62
|
+
end
|
63
|
+
|
64
|
+
end
|
65
|
+
end
|
66
|
+
end
|