avatax 21.8.0 → 22.2.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 +4 -4
- data/.gitignore +55 -55
- data/.rspec +1 -1
- data/.travis.yml +18 -18
- data/.vs/VSWorkspaceState.json +5 -5
- data/.yardopts +4 -4
- data/Gemfile +2 -2
- data/LICENSE +201 -201
- data/README.md +98 -98
- data/Rakefile +9 -9
- data/avatax.gemspec +38 -38
- data/example/avatax.rb +47 -47
- data/example/credentials.example.yaml +5 -5
- data/lib/avatax/api.rb +27 -27
- data/lib/avatax/client/accounts.rb +94 -83
- data/lib/avatax/client/addresses.rb +22 -20
- data/lib/avatax/client/advancedrules.rb +46 -41
- data/lib/avatax/client/ageverification.rb +29 -0
- data/lib/avatax/client/avafileforms.rb +46 -41
- data/lib/avatax/client/batches.rb +70 -62
- data/lib/avatax/client/certexpressinvites.rb +30 -27
- data/lib/avatax/client/certificates.rb +126 -111
- data/lib/avatax/client/companies.rb +192 -152
- data/lib/avatax/client/compliance.rb +25 -14
- data/lib/avatax/client/contacts.rb +54 -48
- data/lib/avatax/client/customers.rb +110 -97
- data/lib/avatax/client/datasources.rb +54 -48
- data/lib/avatax/client/definitions.rb +620 -446
- data/lib/avatax/client/distancethresholds.rb +54 -48
- data/lib/avatax/client/ecms.rb +73 -73
- data/lib/avatax/client/ecommercetoken.rb +20 -18
- data/lib/avatax/client/errortransactions.rb +61 -61
- data/lib/avatax/client/filingcalendars.rb +44 -20
- data/lib/avatax/client/filings.rb +24 -20
- data/lib/avatax/client/firmclientlinkages.rb +78 -69
- data/lib/avatax/client/free.rb +14 -13
- data/lib/avatax/client/fundingrequests.rb +22 -20
- data/lib/avatax/client/items.rb +206 -181
- data/lib/avatax/client/jurisdictionoverrides.rb +54 -48
- data/lib/avatax/client/locations.rb +102 -90
- data/lib/avatax/client/multidocument.rb +86 -76
- data/lib/avatax/client/nexus.rb +146 -103
- data/lib/avatax/client/notices.rb +30 -26
- data/lib/avatax/client/notifications.rb +30 -27
- data/lib/avatax/client/onboarding.rb +55 -55
- data/lib/avatax/client/pointofsale.rb +21 -21
- data/lib/avatax/client/provisioning.rb +22 -20
- data/lib/avatax/client/registrar.rb +94 -83
- data/lib/avatax/client/reports.rb +38 -34
- data/lib/avatax/client/settings.rb +54 -48
- data/lib/avatax/client/shippingverification.rb +66 -0
- data/lib/avatax/client/subscriptions.rb +30 -27
- data/lib/avatax/client/taxcodes.rb +54 -48
- data/lib/avatax/client/taxcontent.rb +46 -41
- data/lib/avatax/client/taxprofiles.rb +42 -42
- data/lib/avatax/client/taxrules.rb +56 -50
- data/lib/avatax/client/transactions.rb +174 -153
- data/lib/avatax/client/upcs.rb +54 -48
- data/lib/avatax/client/userdefinedfields.rb +52 -0
- data/lib/avatax/client/users.rb +70 -62
- data/lib/avatax/client/utilities.rb +30 -27
- data/lib/avatax/client.rb +37 -35
- data/lib/avatax/configuration.rb +76 -76
- data/lib/avatax/connection.rb +49 -49
- data/lib/avatax/request.rb +51 -42
- data/lib/avatax/version.rb +3 -3
- data/lib/avatax.rb +26 -26
- data/spec/avatax/client/accounts_spec.rb +13 -13
- data/spec/avatax/client/transactions_spec.rb +80 -80
- data/spec/avatax/request_spec.rb +25 -25
- data/spec/avatax_spec.rb +45 -45
- data/spec/credentials.yaml.example +4 -4
- data/spec/fixtures/accounts.json +15 -15
- data/spec/spec_helper.rb +27 -27
- metadata +9 -13
data/lib/avatax/client/nexus.rb
CHANGED
@@ -1,10 +1,10 @@
|
|
1
|
-
module AvaTax
|
2
|
-
class Client
|
3
|
-
module Nexus
|
4
|
-
|
5
|
-
|
6
|
-
# Create a new nexus
|
7
|
-
#
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module Nexus
|
4
|
+
|
5
|
+
|
6
|
+
# Create a new nexus
|
7
|
+
#
|
8
8
|
# Creates one or more new nexus declarations attached to this company.
|
9
9
|
#
|
10
10
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -27,15 +27,16 @@ module AvaTax
|
|
27
27
|
#
|
28
28
|
# ### Security Policies
|
29
29
|
#
|
30
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
30
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
31
|
+
# Swagger Name: AvaTaxClient
|
31
32
|
# @param companyId [Integer] The ID of the company that owns this nexus.
|
32
33
|
# @param model [NexusModel[]] The nexus you wish to create.
|
33
|
-
# @return [NexusModel[]]
|
34
|
-
def create_nexus(companyId, model) path = "/api/v2/companies/#{companyId}/nexus"
|
35
|
-
post(path, model) end
|
36
|
-
|
37
|
-
# Add parameters to a nexus.
|
38
|
-
#
|
34
|
+
# @return [NexusModel[]]
|
35
|
+
def create_nexus(companyId, model) path = "/api/v2/companies/#{companyId}/nexus"
|
36
|
+
post(path, model, {}, "22.2.0") end
|
37
|
+
|
38
|
+
# Add parameters to a nexus.
|
39
|
+
#
|
39
40
|
# Add parameters to the nexus.
|
40
41
|
# Some tax calculation and reporting are different depending on the properties of the nexus, such as isRemoteSeller. In AvaTax, these tax-affecting properties are called "parameters".
|
41
42
|
#
|
@@ -49,16 +50,17 @@ module AvaTax
|
|
49
50
|
#
|
50
51
|
# ### Security Policies
|
51
52
|
#
|
52
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
53
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
54
|
+
# Swagger Name: AvaTaxClient
|
53
55
|
# @param companyId [Integer] The ID of the company that owns this nexus parameter.
|
54
56
|
# @param nexusId [Integer] The nexus id.
|
55
57
|
# @param model [NexusParameterDetailModel[]] The nexus parameters you wish to create.
|
56
|
-
# @return [NexusParameterDetailModel[]]
|
57
|
-
def create_nexus_parameters(companyId, nexusId, model) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters"
|
58
|
-
post(path, model) end
|
59
|
-
|
60
|
-
# Creates nexus for a list of addresses.
|
61
|
-
#
|
58
|
+
# @return [NexusParameterDetailModel[]]
|
59
|
+
def create_nexus_parameters(companyId, nexusId, model) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters"
|
60
|
+
post(path, model, {}, "22.2.0") end
|
61
|
+
|
62
|
+
# Creates nexus for a list of addresses.
|
63
|
+
#
|
62
64
|
# This call is intended to simplify adding all applicable nexus to a company, for an address or addresses. Calling this
|
63
65
|
# API declares nexus for this company, for the list of addresses provided,
|
64
66
|
# for the date range provided. You may also use this API to extend effective date on an already-declared nexus.
|
@@ -77,15 +79,16 @@ module AvaTax
|
|
77
79
|
#
|
78
80
|
# ### Security Policies
|
79
81
|
#
|
80
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
82
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
83
|
+
# Swagger Name: AvaTaxClient
|
81
84
|
# @param companyId [Integer] The ID of the company that will own this nexus.
|
82
85
|
# @param model [DeclareNexusByAddressModel[]] The nexus you wish to create.
|
83
|
-
# @return [NexusByAddressModel[]]
|
84
|
-
def declare_nexus_by_address(companyId, model) path = "/api/v2/companies/#{companyId}/nexus/byaddress"
|
85
|
-
post(path, model) end
|
86
|
-
|
87
|
-
# Delete a single nexus
|
88
|
-
#
|
86
|
+
# @return [NexusByAddressModel[]]
|
87
|
+
def declare_nexus_by_address(companyId, model) path = "/api/v2/companies/#{companyId}/nexus/byaddress"
|
88
|
+
post(path, model, {}, "22.2.0") end
|
89
|
+
|
90
|
+
# Delete a single nexus
|
91
|
+
#
|
89
92
|
# Marks the existing nexus object at this URL as deleted.
|
90
93
|
#
|
91
94
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -97,16 +100,17 @@ module AvaTax
|
|
97
100
|
#
|
98
101
|
# ### Security Policies
|
99
102
|
#
|
100
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
103
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
104
|
+
# Swagger Name: AvaTaxClient
|
101
105
|
# @param companyId [Integer] The ID of the company that owns this nexus.
|
102
106
|
# @param id [Integer] The ID of the nexus you wish to delete.
|
103
107
|
# @param cascadeDelete [Boolean] If true, deletes all the child nexus if they exist along with parent nexus
|
104
|
-
# @return [ErrorDetail[]]
|
105
|
-
def delete_nexus(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/nexus/#{id}"
|
106
|
-
delete(path, options) end
|
107
|
-
|
108
|
-
# Delete a single nexus parameter
|
109
|
-
#
|
108
|
+
# @return [ErrorDetail[]]
|
109
|
+
def delete_nexus(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/nexus/#{id}"
|
110
|
+
delete(path, options, "22.2.0") end
|
111
|
+
|
112
|
+
# Delete a single nexus parameter
|
113
|
+
#
|
110
114
|
# Delete a single nexus parameter.
|
111
115
|
# Some tax calculation and reporting are different depending on the properties of the nexus, such as isRemoteSeller. In AvaTax, these tax-affecting properties are called "parameters".
|
112
116
|
#
|
@@ -116,16 +120,17 @@ module AvaTax
|
|
116
120
|
#
|
117
121
|
# ### Security Policies
|
118
122
|
#
|
119
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
123
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
124
|
+
# Swagger Name: AvaTaxClient
|
120
125
|
# @param companyId [Integer] The company id
|
121
126
|
# @param nexusId [Integer] The nexus id
|
122
127
|
# @param id [Integer] The parameter id
|
123
|
-
# @return [ErrorDetail[]]
|
124
|
-
def delete_nexus_parameter(companyId, nexusId, id) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters/#{id}"
|
125
|
-
delete(path) end
|
126
|
-
|
127
|
-
# Delete all parameters for an nexus
|
128
|
-
#
|
128
|
+
# @return [ErrorDetail[]]
|
129
|
+
def delete_nexus_parameter(companyId, nexusId, id) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters/#{id}"
|
130
|
+
delete(path, {}, "22.2.0") end
|
131
|
+
|
132
|
+
# Delete all parameters for an nexus
|
133
|
+
#
|
129
134
|
# Delete all the parameters for a given nexus.
|
130
135
|
# Some tax calculation and reporting are different depending on the properties of the nexus, such as isRemoteSeller. In AvaTax, these tax-affecting properties are called "parameters".
|
131
136
|
#
|
@@ -135,15 +140,16 @@ module AvaTax
|
|
135
140
|
#
|
136
141
|
# ### Security Policies
|
137
142
|
#
|
138
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
143
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
144
|
+
# Swagger Name: AvaTaxClient
|
139
145
|
# @param companyId [Integer] The ID of the company that owns this nexus.
|
140
146
|
# @param nexusId [Integer] The ID of the nexus you wish to delete the parameters.
|
141
|
-
# @return [ErrorDetail[]]
|
142
|
-
def delete_nexus_parameters(companyId, nexusId) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters"
|
143
|
-
delete(path) end
|
144
|
-
|
145
|
-
# Retrieve a single nexus
|
146
|
-
#
|
147
|
+
# @return [ErrorDetail[]]
|
148
|
+
def delete_nexus_parameters(companyId, nexusId) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters"
|
149
|
+
delete(path, {}, "22.2.0") end
|
150
|
+
|
151
|
+
# Retrieve a single nexus
|
152
|
+
#
|
147
153
|
# Get the nexus object identified by this URL.
|
148
154
|
#
|
149
155
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -155,16 +161,17 @@ module AvaTax
|
|
155
161
|
#
|
156
162
|
# ### Security Policies
|
157
163
|
#
|
158
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
164
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
165
|
+
# Swagger Name: AvaTaxClient
|
159
166
|
# @param companyId [Integer] The ID of the company that owns this nexus object
|
160
167
|
# @param id [Integer] The primary key of this nexus
|
161
168
|
# @param include [String]
|
162
|
-
# @return [Object]
|
163
|
-
def get_nexus(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/nexus/#{id}"
|
164
|
-
get(path, options) end
|
165
|
-
|
166
|
-
# List company nexus related to a tax form
|
167
|
-
#
|
169
|
+
# @return [Object]
|
170
|
+
def get_nexus(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/nexus/#{id}"
|
171
|
+
get(path, options, "22.2.0") end
|
172
|
+
|
173
|
+
# List company nexus related to a tax form
|
174
|
+
#
|
168
175
|
# Retrieves a list of nexus related to a tax form.
|
169
176
|
#
|
170
177
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -180,16 +187,17 @@ module AvaTax
|
|
180
187
|
#
|
181
188
|
# ### Security Policies
|
182
189
|
#
|
183
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
190
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
191
|
+
# Swagger Name: AvaTaxClient
|
184
192
|
# @param companyId [Integer] The ID of the company that owns this nexus object
|
185
193
|
# @param formCode [String] The form code that we are looking up the nexus for
|
186
194
|
# @param include [String]
|
187
|
-
# @return [Object]
|
188
|
-
def get_nexus_by_form_code(companyId, formCode, options={}) path = "/api/v2/companies/#{companyId}/nexus/byform/#{formCode}"
|
189
|
-
get(path, options) end
|
190
|
-
|
191
|
-
# Retrieve a single nexus parameter
|
192
|
-
#
|
195
|
+
# @return [Object]
|
196
|
+
def get_nexus_by_form_code(companyId, formCode, options={}) path = "/api/v2/companies/#{companyId}/nexus/byform/#{formCode}"
|
197
|
+
get(path, options, "22.2.0") end
|
198
|
+
|
199
|
+
# Retrieve a single nexus parameter
|
200
|
+
#
|
193
201
|
# Retrieve a single nexus parameter.
|
194
202
|
# Some tax calculation and reporting are different depending on the properties of the nexus, such as isRemoteSeller.In AvaTax, these tax-affecting properties are called "parameters".
|
195
203
|
#
|
@@ -199,16 +207,17 @@ module AvaTax
|
|
199
207
|
#
|
200
208
|
# ### Security Policies
|
201
209
|
#
|
202
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
210
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
211
|
+
# Swagger Name: AvaTaxClient
|
203
212
|
# @param companyId [Integer] The company id
|
204
213
|
# @param nexusId [Integer] The nexus id
|
205
214
|
# @param id [Integer] The parameter id
|
206
|
-
# @return [Object]
|
207
|
-
def get_nexus_parameter(companyId, nexusId, id) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters/#{id}"
|
208
|
-
get(path) end
|
209
|
-
|
210
|
-
# Retrieve nexus for this company
|
211
|
-
#
|
215
|
+
# @return [Object]
|
216
|
+
def get_nexus_parameter(companyId, nexusId, id) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters/#{id}"
|
217
|
+
get(path, {}, "22.2.0") end
|
218
|
+
|
219
|
+
# Retrieve nexus for this company
|
220
|
+
#
|
212
221
|
# List all nexus objects defined for this company.
|
213
222
|
#
|
214
223
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -223,19 +232,49 @@ module AvaTax
|
|
223
232
|
#
|
224
233
|
# ### Security Policies
|
225
234
|
#
|
226
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
235
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
236
|
+
# Swagger Name: AvaTaxClient
|
227
237
|
# @param companyId [Integer] The ID of the company that owns these nexus objects
|
228
238
|
# @param filter [String] 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/).<br />*Not filterable:* streamlinedSalesTax, isSSTActive, taxTypeGroup, taxAuthorityId, taxName, parameters, taxableNexus
|
229
239
|
# @param include [String] A comma separated list of additional data to retrieve.
|
230
240
|
# @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
|
231
241
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
232
242
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
233
|
-
# @return [FetchResult]
|
234
|
-
def list_nexus_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/nexus"
|
235
|
-
get(path, options) end
|
236
|
-
|
237
|
-
# Retrieve
|
243
|
+
# @return [FetchResult]
|
244
|
+
def list_nexus_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/nexus"
|
245
|
+
get(path, options, "22.2.0") end
|
246
|
+
|
247
|
+
# Retrieve nexus for this company By TaxTypeGroup
|
248
|
+
#
|
249
|
+
# List all nexus objects defined for this company filtered by TaxTypeGroup.
|
250
|
+
#
|
251
|
+
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
252
|
+
# taxes. The legal requirements for nexus may vary per country and per jurisdiction; please seek advice from your
|
253
|
+
# accountant or lawyer prior to declaring nexus.
|
238
254
|
#
|
255
|
+
# 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/) .
|
256
|
+
# Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
|
257
|
+
# 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:
|
258
|
+
#
|
259
|
+
# * Parameters
|
260
|
+
#
|
261
|
+
# ### Security Policies
|
262
|
+
#
|
263
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
264
|
+
# Swagger Name: AvaTaxClient
|
265
|
+
# @param companyId [Integer] The ID of the company that owns these nexus objects
|
266
|
+
# @param taxTypeGroup [String] Name of TaxTypeGroup to filter by
|
267
|
+
# @param filter [String] 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/).<br />*Not filterable:* streamlinedSalesTax, isSSTActive, taxTypeGroup, taxAuthorityId, taxName, parameters, taxableNexus
|
268
|
+
# @param include [String] A comma separated list of additional data to retrieve.
|
269
|
+
# @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
|
270
|
+
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
271
|
+
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
272
|
+
# @return [FetchResult]
|
273
|
+
def list_nexus_by_company_and_tax_type_group(companyId, taxTypeGroup, options={}) path = "/api/v2/companies/#{companyId}/nexus/byTaxTypeGroup/#{taxTypeGroup}"
|
274
|
+
get(path, options, "22.2.0") end
|
275
|
+
|
276
|
+
# Retrieve parameters for a nexus
|
277
|
+
#
|
239
278
|
# List parameters for a nexus.
|
240
279
|
# Some tax calculation and reporting are different depending on the properties of the nexus, such as isRemoteSeller. In AvaTax, these tax-affecting properties are called "parameters".
|
241
280
|
#
|
@@ -248,19 +287,20 @@ module AvaTax
|
|
248
287
|
#
|
249
288
|
# ### Security Policies
|
250
289
|
#
|
251
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
290
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
291
|
+
# Swagger Name: AvaTaxClient
|
252
292
|
# @param companyId [Integer] The company id
|
253
293
|
# @param nexusId [Integer] The nexus id
|
254
294
|
# @param filter [String] 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/).<br />*Not filterable:* name, unit
|
255
295
|
# @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
|
256
296
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
257
297
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
258
|
-
# @return [FetchResult]
|
259
|
-
def list_nexus_parameters(companyId, nexusId, options={}) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters"
|
260
|
-
get(path, options) end
|
261
|
-
|
262
|
-
# Retrieve all nexus
|
263
|
-
#
|
298
|
+
# @return [FetchResult]
|
299
|
+
def list_nexus_parameters(companyId, nexusId, options={}) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters"
|
300
|
+
get(path, options, "22.2.0") end
|
301
|
+
|
302
|
+
# Retrieve all nexus
|
303
|
+
#
|
264
304
|
# Get multiple nexus objects across all companies.
|
265
305
|
#
|
266
306
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -275,18 +315,19 @@ module AvaTax
|
|
275
315
|
#
|
276
316
|
# ### Security Policies
|
277
317
|
#
|
278
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
318
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
|
319
|
+
# Swagger Name: AvaTaxClient
|
279
320
|
# @param filter [String] 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/).<br />*Not filterable:* streamlinedSalesTax, isSSTActive, taxTypeGroup, taxAuthorityId, taxName, parameters, taxableNexus
|
280
321
|
# @param include [String] A comma separated list of additional data to retrieve.
|
281
322
|
# @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
|
282
323
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
283
324
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
284
|
-
# @return [FetchResult]
|
285
|
-
def query_nexus(options={}) path = "/api/v2/nexus"
|
286
|
-
get(path, options) end
|
287
|
-
|
288
|
-
# Update a single nexus
|
289
|
-
#
|
325
|
+
# @return [FetchResult]
|
326
|
+
def query_nexus(options={}) path = "/api/v2/nexus"
|
327
|
+
get(path, options, "22.2.0") end
|
328
|
+
|
329
|
+
# Update a single nexus
|
330
|
+
#
|
290
331
|
# Replace the existing nexus declaration object at this URL with an updated object.
|
291
332
|
#
|
292
333
|
# The concept of Nexus indicates a place where your company is legally obligated to collect and remit transactional
|
@@ -309,16 +350,17 @@ module AvaTax
|
|
309
350
|
#
|
310
351
|
# ### Security Policies
|
311
352
|
#
|
312
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
353
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
354
|
+
# Swagger Name: AvaTaxClient
|
313
355
|
# @param companyId [Integer] The ID of the company that this nexus belongs to.
|
314
356
|
# @param id [Integer] The ID of the nexus you wish to update
|
315
357
|
# @param model [Object] The nexus object you wish to update.
|
316
|
-
# @return [Object]
|
317
|
-
def update_nexus(companyId, id, model) path = "/api/v2/companies/#{companyId}/nexus/#{id}"
|
318
|
-
put(path, model) end
|
319
|
-
|
320
|
-
# Update an nexus parameter
|
321
|
-
#
|
358
|
+
# @return [Object]
|
359
|
+
def update_nexus(companyId, id, model) path = "/api/v2/companies/#{companyId}/nexus/#{id}"
|
360
|
+
put(path, model, {}, "22.2.0") end
|
361
|
+
|
362
|
+
# Update an nexus parameter
|
363
|
+
#
|
322
364
|
# Update an nexus parameter.
|
323
365
|
#
|
324
366
|
# Some tax calculation and reporting are different depending on the properties of the nexus, such as isRemoteSeller. In AvaTax, these tax-affecting properties are called "parameters".
|
@@ -329,14 +371,15 @@ module AvaTax
|
|
329
371
|
#
|
330
372
|
# ### Security Policies
|
331
373
|
#
|
332
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
374
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
|
375
|
+
# Swagger Name: AvaTaxClient
|
333
376
|
# @param companyId [Integer] The company id.
|
334
377
|
# @param nexusId [Integer] The nexus id
|
335
378
|
# @param id [Integer] The nexus parameter id
|
336
379
|
# @param model [Object] The nexus object you wish to update.
|
337
|
-
# @return [Object]
|
338
|
-
def update_nexus_parameter(companyId, nexusId, id, model) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters/#{id}"
|
339
|
-
put(path, model) end
|
340
|
-
end
|
341
|
-
end
|
380
|
+
# @return [Object]
|
381
|
+
def update_nexus_parameter(companyId, nexusId, id, model) path = "/api/v2/companies/#{companyId}/nexus/#{nexusId}/parameters/#{id}"
|
382
|
+
put(path, model, {}, "22.2.0") end
|
383
|
+
end
|
384
|
+
end
|
342
385
|
end
|
@@ -5,53 +5,57 @@ module AvaTax
|
|
5
5
|
|
6
6
|
# Creates a new tax notice responsibility type.
|
7
7
|
#
|
8
|
-
# This API is available by invitation only and only available for users with Compliance admin access.
|
9
|
-
#
|
10
|
-
# ### Security Policies
|
11
|
-
#
|
12
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
8
|
+
# This API is available by invitation only and only available for users with Compliance admin access.
|
9
|
+
#
|
10
|
+
# ### Security Policies
|
11
|
+
#
|
12
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
13
13
|
# * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
|
14
|
-
#
|
14
|
+
# Swagger Name: AvaTaxClient
|
15
|
+
# @param model [Object] The responsibility type to create
|
15
16
|
# @return [Object]
|
16
17
|
def create_notice_responsibility_type(model) path = "/api/v2/notices/responsibilities"
|
17
|
-
post(path, model) end
|
18
|
+
post(path, model, {}, "22.2.0") end
|
18
19
|
|
19
20
|
# Creates a new tax notice root cause type.
|
20
21
|
#
|
21
|
-
# This API is available by invitation only and only available for users with Compliance admin access.
|
22
|
-
#
|
23
|
-
# ### Security Policies
|
24
|
-
#
|
25
|
-
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
22
|
+
# This API is available by invitation only and only available for users with Compliance admin access.
|
23
|
+
#
|
24
|
+
# ### Security Policies
|
25
|
+
#
|
26
|
+
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
26
27
|
# * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
|
27
|
-
#
|
28
|
+
# Swagger Name: AvaTaxClient
|
29
|
+
# @param model [Object] The root cause type to create
|
28
30
|
# @return [Object]
|
29
31
|
def create_notice_root_cause_type(model) path = "/api/v2/notices/rootcauses"
|
30
|
-
post(path, model) end
|
32
|
+
post(path, model, {}, "22.2.0") end
|
31
33
|
|
32
34
|
# Delete a tax notice responsibility type.
|
33
35
|
#
|
34
|
-
# This API is available by invitation only and only available for users with Compliance admin access.
|
35
|
-
#
|
36
|
-
# ### Security Policies
|
37
|
-
#
|
36
|
+
# This API is available by invitation only and only available for users with Compliance admin access.
|
37
|
+
#
|
38
|
+
# ### Security Policies
|
39
|
+
#
|
38
40
|
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
39
|
-
#
|
41
|
+
# Swagger Name: AvaTaxClient
|
42
|
+
# @param responsibilityId [Integer] The unique ID of the responsibility type
|
40
43
|
# @return [ErrorDetail[]]
|
41
44
|
def delete_notice_responsibility_type(responsibilityId) path = "/api/v2/notices/responsibilities/#{responsibilityId}"
|
42
|
-
delete(path) end
|
45
|
+
delete(path, {}, "22.2.0") end
|
43
46
|
|
44
47
|
# Delete a tax notice root cause type.
|
45
48
|
#
|
46
|
-
# This API is available by invitation only and only available for users with Compliance admin access.
|
47
|
-
#
|
48
|
-
# ### Security Policies
|
49
|
-
#
|
49
|
+
# This API is available by invitation only and only available for users with Compliance admin access.
|
50
|
+
#
|
51
|
+
# ### Security Policies
|
52
|
+
#
|
50
53
|
# * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
51
|
-
#
|
54
|
+
# Swagger Name: AvaTaxClient
|
55
|
+
# @param rootCauseId [Integer] The unique ID of the root cause type
|
52
56
|
# @return [ErrorDetail[]]
|
53
57
|
def delete_notice_root_cause_type(rootCauseId) path = "/api/v2/notices/rootcauses/#{rootCauseId}"
|
54
|
-
delete(path) end
|
58
|
+
delete(path, {}, "22.2.0") end
|
55
59
|
end
|
56
60
|
end
|
57
61
|
end
|
@@ -1,10 +1,10 @@
|
|
1
|
-
module AvaTax
|
2
|
-
class Client
|
3
|
-
module Notifications
|
4
|
-
|
5
|
-
|
6
|
-
# Mark a single notification as dismissed.
|
7
|
-
#
|
1
|
+
module AvaTax
|
2
|
+
class Client
|
3
|
+
module Notifications
|
4
|
+
|
5
|
+
|
6
|
+
# Mark a single notification as dismissed.
|
7
|
+
#
|
8
8
|
# Marks the notification identified by this URL as dismissed.
|
9
9
|
#
|
10
10
|
# A notification is a message from Avalara that may have relevance to your business. You may want
|
@@ -22,14 +22,15 @@ module AvaTax
|
|
22
22
|
#
|
23
23
|
# ### Security Policies
|
24
24
|
#
|
25
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
25
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
26
|
+
# Swagger Name: AvaTaxClient
|
26
27
|
# @param id [Integer] The id of the notification you wish to mark as dismissed.
|
27
|
-
# @return [Object]
|
28
|
-
def dismiss_notification(id) path = "/api/v2/notifications/#{id}/dismiss"
|
29
|
-
put(path) end
|
30
|
-
|
31
|
-
# Retrieve a single notification.
|
32
|
-
#
|
28
|
+
# @return [Object]
|
29
|
+
def dismiss_notification(id) path = "/api/v2/notifications/#{id}/dismiss"
|
30
|
+
put(path, {}, "22.2.0") end
|
31
|
+
|
32
|
+
# Retrieve a single notification.
|
33
|
+
#
|
33
34
|
# Retrieve a single notification by its unique ID number.
|
34
35
|
#
|
35
36
|
# A notification is a message from Avalara that may have relevance to your business. You may want
|
@@ -41,14 +42,15 @@ module AvaTax
|
|
41
42
|
#
|
42
43
|
# ### Security Policies
|
43
44
|
#
|
44
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
45
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
46
|
+
# Swagger Name: AvaTaxClient
|
45
47
|
# @param id [Integer] The id of the notification to retrieve.
|
46
|
-
# @return [Object]
|
47
|
-
def get_notification(id) path = "/api/v2/notifications/#{id}"
|
48
|
-
get(path) end
|
49
|
-
|
50
|
-
# List all notifications.
|
51
|
-
#
|
48
|
+
# @return [Object]
|
49
|
+
def get_notification(id) path = "/api/v2/notifications/#{id}"
|
50
|
+
get(path, {}, "22.2.0") end
|
51
|
+
|
52
|
+
# List all notifications.
|
53
|
+
#
|
52
54
|
# List all notifications.
|
53
55
|
#
|
54
56
|
# A notification is a message from Avalara that may have relevance to your business. You may want
|
@@ -63,14 +65,15 @@ module AvaTax
|
|
63
65
|
#
|
64
66
|
# ### Security Policies
|
65
67
|
#
|
66
|
-
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
68
|
+
# * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
|
69
|
+
# Swagger Name: AvaTaxClient
|
67
70
|
# @param filter [String] 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/).
|
68
71
|
# @param top [Integer] If nonzero, return no more than this number of results. Used with `$skip` to provide pagination for large datasets. Unless otherwise specified, the maximum number of records that can be returned from an API call is 1,000 records.
|
69
72
|
# @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
|
70
73
|
# @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
|
71
|
-
# @return [FetchResult]
|
72
|
-
def list_notifications(options={}) path = "/api/v2/notifications"
|
73
|
-
get(path, options) end
|
74
|
-
end
|
75
|
-
end
|
74
|
+
# @return [FetchResult]
|
75
|
+
def list_notifications(options={}) path = "/api/v2/notifications"
|
76
|
+
get(path, options, "22.2.0") end
|
77
|
+
end
|
78
|
+
end
|
76
79
|
end
|