avatax 21.8.0 → 22.2.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (75) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +55 -55
  3. data/.rspec +1 -1
  4. data/.travis.yml +18 -18
  5. data/.vs/VSWorkspaceState.json +5 -5
  6. data/.yardopts +4 -4
  7. data/Gemfile +2 -2
  8. data/LICENSE +201 -201
  9. data/README.md +98 -98
  10. data/Rakefile +9 -9
  11. data/avatax.gemspec +38 -38
  12. data/example/avatax.rb +47 -47
  13. data/example/credentials.example.yaml +5 -5
  14. data/lib/avatax/api.rb +27 -27
  15. data/lib/avatax/client/accounts.rb +94 -83
  16. data/lib/avatax/client/addresses.rb +22 -20
  17. data/lib/avatax/client/advancedrules.rb +46 -41
  18. data/lib/avatax/client/ageverification.rb +29 -0
  19. data/lib/avatax/client/avafileforms.rb +46 -41
  20. data/lib/avatax/client/batches.rb +70 -62
  21. data/lib/avatax/client/certexpressinvites.rb +30 -27
  22. data/lib/avatax/client/certificates.rb +126 -111
  23. data/lib/avatax/client/companies.rb +192 -152
  24. data/lib/avatax/client/compliance.rb +25 -14
  25. data/lib/avatax/client/contacts.rb +54 -48
  26. data/lib/avatax/client/customers.rb +110 -97
  27. data/lib/avatax/client/datasources.rb +54 -48
  28. data/lib/avatax/client/definitions.rb +620 -446
  29. data/lib/avatax/client/distancethresholds.rb +54 -48
  30. data/lib/avatax/client/ecms.rb +73 -73
  31. data/lib/avatax/client/ecommercetoken.rb +20 -18
  32. data/lib/avatax/client/errortransactions.rb +61 -61
  33. data/lib/avatax/client/filingcalendars.rb +44 -20
  34. data/lib/avatax/client/filings.rb +24 -20
  35. data/lib/avatax/client/firmclientlinkages.rb +78 -69
  36. data/lib/avatax/client/free.rb +14 -13
  37. data/lib/avatax/client/fundingrequests.rb +22 -20
  38. data/lib/avatax/client/items.rb +206 -181
  39. data/lib/avatax/client/jurisdictionoverrides.rb +54 -48
  40. data/lib/avatax/client/locations.rb +102 -90
  41. data/lib/avatax/client/multidocument.rb +86 -76
  42. data/lib/avatax/client/nexus.rb +146 -103
  43. data/lib/avatax/client/notices.rb +30 -26
  44. data/lib/avatax/client/notifications.rb +30 -27
  45. data/lib/avatax/client/onboarding.rb +55 -55
  46. data/lib/avatax/client/pointofsale.rb +21 -21
  47. data/lib/avatax/client/provisioning.rb +22 -20
  48. data/lib/avatax/client/registrar.rb +94 -83
  49. data/lib/avatax/client/reports.rb +38 -34
  50. data/lib/avatax/client/settings.rb +54 -48
  51. data/lib/avatax/client/shippingverification.rb +66 -0
  52. data/lib/avatax/client/subscriptions.rb +30 -27
  53. data/lib/avatax/client/taxcodes.rb +54 -48
  54. data/lib/avatax/client/taxcontent.rb +46 -41
  55. data/lib/avatax/client/taxprofiles.rb +42 -42
  56. data/lib/avatax/client/taxrules.rb +56 -50
  57. data/lib/avatax/client/transactions.rb +174 -153
  58. data/lib/avatax/client/upcs.rb +54 -48
  59. data/lib/avatax/client/userdefinedfields.rb +52 -0
  60. data/lib/avatax/client/users.rb +70 -62
  61. data/lib/avatax/client/utilities.rb +30 -27
  62. data/lib/avatax/client.rb +37 -35
  63. data/lib/avatax/configuration.rb +76 -76
  64. data/lib/avatax/connection.rb +49 -49
  65. data/lib/avatax/request.rb +51 -42
  66. data/lib/avatax/version.rb +3 -3
  67. data/lib/avatax.rb +26 -26
  68. data/spec/avatax/client/accounts_spec.rb +13 -13
  69. data/spec/avatax/client/transactions_spec.rb +80 -80
  70. data/spec/avatax/request_spec.rb +25 -25
  71. data/spec/avatax_spec.rb +45 -45
  72. data/spec/credentials.yaml.example +4 -4
  73. data/spec/fixtures/accounts.json +15 -15
  74. data/spec/spec_helper.rb +27 -27
  75. metadata +9 -13
@@ -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 parameters for a nexus
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
- # @param model [Object] The responsibility type to create
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
- # @param model [Object] The root cause type to create
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
- # @param responsibilityId [Integer] The unique ID of the responsibility type
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
- # @param rootCauseId [Integer] The unique ID of the root cause type
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