avatax 21.6.0 → 21.10.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.
Files changed (42) hide show
  1. checksums.yaml +4 -4
  2. data/lib/avatax/client/accounts.rb +83 -83
  3. data/lib/avatax/client/addresses.rb +20 -20
  4. data/lib/avatax/client/advancedrules.rb +41 -41
  5. data/lib/avatax/client/avafileforms.rb +41 -41
  6. data/lib/avatax/client/batches.rb +62 -62
  7. data/lib/avatax/client/certexpressinvites.rb +27 -27
  8. data/lib/avatax/client/certificates.rb +111 -111
  9. data/lib/avatax/client/companies.rb +153 -153
  10. data/lib/avatax/client/contacts.rb +48 -48
  11. data/lib/avatax/client/customers.rb +97 -97
  12. data/lib/avatax/client/datasources.rb +48 -48
  13. data/lib/avatax/client/definitions.rb +558 -443
  14. data/lib/avatax/client/distancethresholds.rb +48 -48
  15. data/lib/avatax/client/ecommercetoken.rb +16 -16
  16. data/lib/avatax/client/filingcalendars.rb +41 -20
  17. data/lib/avatax/client/filings.rb +22 -20
  18. data/lib/avatax/client/firmclientlinkages.rb +69 -69
  19. data/lib/avatax/client/free.rb +13 -13
  20. data/lib/avatax/client/fundingrequests.rb +20 -20
  21. data/lib/avatax/client/items.rb +185 -181
  22. data/lib/avatax/client/jurisdictionoverrides.rb +48 -48
  23. data/lib/avatax/client/locations.rb +90 -90
  24. data/lib/avatax/client/multidocument.rb +76 -76
  25. data/lib/avatax/client/nexus.rb +133 -105
  26. data/lib/avatax/client/notices.rb +22 -22
  27. data/lib/avatax/client/notifications.rb +27 -27
  28. data/lib/avatax/client/provisioning.rb +20 -20
  29. data/lib/avatax/client/registrar.rb +85 -75
  30. data/lib/avatax/client/reports.rb +34 -34
  31. data/lib/avatax/client/settings.rb +48 -48
  32. data/lib/avatax/client/subscriptions.rb +27 -27
  33. data/lib/avatax/client/taxcodes.rb +48 -48
  34. data/lib/avatax/client/taxcontent.rb +41 -41
  35. data/lib/avatax/client/taxrules.rb +50 -50
  36. data/lib/avatax/client/transactions.rb +153 -153
  37. data/lib/avatax/client/upcs.rb +48 -48
  38. data/lib/avatax/client/users.rb +62 -62
  39. data/lib/avatax/client/utilities.rb +27 -27
  40. data/lib/avatax/request.rb +11 -3
  41. data/lib/avatax/version.rb +1 -1
  42. metadata +11 -4
@@ -1,10 +1,10 @@
1
- module AvaTax
2
- class Client
3
- module Certificates
4
-
5
-
6
- # Create certificates for this company
7
- #
1
+ module AvaTax
2
+ class Client
3
+ module Certificates
4
+
5
+
6
+ # Create certificates for this company
7
+ #
8
8
  # Record one or more certificates document for this company.
9
9
  #
10
10
  # A certificate is a document stored in either AvaTax Exemptions or CertCapture. The certificate document
@@ -30,16 +30,16 @@ module AvaTax
30
30
  # ### Security Policies
31
31
  #
32
32
  # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
33
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
33
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
34
34
  # @param companyId [Integer] The ID number of the company recording this certificate
35
35
  # @param preValidatedExemptionReason [Boolean] If set to true, the certificate will bypass the human verification process.
36
36
  # @param model [CertificateModel[]] Certificates to be created
37
- # @return [CertificateModel[]]
38
- def create_certificates(companyId, model, options={}) path = "/api/v2/companies/#{companyId}/certificates"
39
- post(path, model, options) end
40
-
41
- # Revoke and delete a certificate
42
- #
37
+ # @return [CertificateModel[]]
38
+ def create_certificates(companyId, model, options={}) path = "/api/v2/companies/#{companyId}/certificates"
39
+ post(path, model, options) end
40
+
41
+ # Revoke and delete a certificate
42
+ #
43
43
  # Revoke the certificate identified by this URL, then delete it.
44
44
  #
45
45
  # A certificate is a document stored in either AvaTax Exemptions or CertCapture. The certificate document
@@ -57,15 +57,15 @@ module AvaTax
57
57
  # ### Security Policies
58
58
  #
59
59
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
60
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
60
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
61
61
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
62
62
  # @param id [Integer] The unique ID number of this certificate
63
- # @return [ErrorDetail[]]
64
- def delete_certificate(companyId, id) path = "/api/v2/companies/#{companyId}/certificates/#{id}"
65
- delete(path) end
66
-
67
- # Download an image for this certificate
68
- #
63
+ # @return [ErrorDetail[]]
64
+ def delete_certificate(companyId, id) path = "/api/v2/companies/#{companyId}/certificates/#{id}"
65
+ delete(path) end
66
+
67
+ # Download an image for this certificate
68
+ #
69
69
  # Download an image or PDF file for this certificate.
70
70
  #
71
71
  # This API can be used to download either a single-page preview of the certificate or a full PDF document.
@@ -84,17 +84,17 @@ module AvaTax
84
84
  # ### Security Policies
85
85
  #
86
86
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
87
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
87
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
88
88
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
89
89
  # @param id [Integer] The unique ID number of this certificate
90
90
  # @param page [Integer] If you choose `$type`=`Jpeg`, you must specify which page number to retrieve.
91
91
  # @param type [String] The data format in which to retrieve the certificate image (See CertificatePreviewType::* for a list of allowable values)
92
- # @return [Object]
93
- def download_certificate_image(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attachment"
94
- get(path, options) end
95
-
96
- # Retrieve a single certificate
97
- #
92
+ # @return [Object]
93
+ def download_certificate_image(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attachment"
94
+ get(path, options) end
95
+
96
+ # Retrieve a single certificate
97
+ #
98
98
  # Get the current certificate identified by this URL.
99
99
  #
100
100
  # A certificate is a document stored in either AvaTax Exemptions or CertCapture. The certificate document
@@ -116,16 +116,16 @@ module AvaTax
116
116
  # ### Security Policies
117
117
  #
118
118
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
119
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
119
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
120
120
  # @param companyId [Integer] The ID number of the company that recorded this certificate
121
121
  # @param id [Integer] The unique ID number of this certificate
122
122
  # @param include [String] OPTIONAL: A comma separated list of special fetch options. You can specify one or more of the following: * customers - Retrieves the list of customers linked to the certificate. * po_numbers - Retrieves all PO numbers tied to the certificate. * attributes - Retrieves all attributes applied to the certificate.
123
- # @return [Object]
124
- def get_certificate(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/certificates/#{id}"
125
- get(path, options) end
126
-
127
- # Check a company's exemption certificate status.
128
- #
123
+ # @return [Object]
124
+ def get_certificate(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/certificates/#{id}"
125
+ get(path, options) end
126
+
127
+ # Check a company's exemption certificate status.
128
+ #
129
129
  # Checks whether this company is configured to use exemption certificates in AvaTax.
130
130
  #
131
131
  # Exemption certificates are tracked through a different auditable data store than the one that
@@ -137,14 +137,14 @@ module AvaTax
137
137
  # ### Security Policies
138
138
  #
139
139
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
140
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
140
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
141
141
  # @param companyId [Integer] The company ID to check
142
- # @return [Object]
143
- def get_certificate_setup(companyId) path = "/api/v2/companies/#{companyId}/certificates/setup"
144
- get(path) end
145
-
146
- # Link attributes to a certificate
147
- #
142
+ # @return [Object]
143
+ def get_certificate_setup(companyId) path = "/api/v2/companies/#{companyId}/certificates/setup"
144
+ get(path) end
145
+
146
+ # Link attributes to a certificate
147
+ #
148
148
  # Link one or many attributes to a certificate.
149
149
  #
150
150
  # A certificate may have multiple attributes that control its behavior. You may link or unlink attributes to a
@@ -163,16 +163,16 @@ module AvaTax
163
163
  # ### Security Policies
164
164
  #
165
165
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
166
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
166
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
167
167
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
168
168
  # @param id [Integer] The unique ID number of this certificate
169
169
  # @param model [CertificateAttributeModel[]] The list of attributes to link to this certificate.
170
- # @return [FetchResult]
171
- def link_attributes_to_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attributes/link"
172
- post(path, model) end
173
-
174
- # Link customers to a certificate
175
- #
170
+ # @return [FetchResult]
171
+ def link_attributes_to_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attributes/link"
172
+ post(path, model) end
173
+
174
+ # Link customers to a certificate
175
+ #
176
176
  # Link one or more customers to an existing certificate.
177
177
  #
178
178
  # Customers and certificates must be linked before a customer can make use of a certificate to obtain
@@ -192,16 +192,16 @@ module AvaTax
192
192
  # ### Security Policies
193
193
  #
194
194
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
195
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
195
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
196
196
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
197
197
  # @param id [Integer] The unique ID number of this certificate
198
198
  # @param model [Object] The list of customers needed be added to the Certificate for exemption
199
- # @return [FetchResult]
200
- def link_customers_to_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/customers/link"
201
- post(path, model) end
202
-
203
- # List all attributes applied to this certificate
204
- #
199
+ # @return [FetchResult]
200
+ def link_customers_to_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/customers/link"
201
+ post(path, model) end
202
+
203
+ # List all attributes applied to this certificate
204
+ #
205
205
  # Retrieve the list of attributes that are linked to this certificate.
206
206
  #
207
207
  # A certificate may have multiple attributes that control its behavior. You may link or unlink attributes to a
@@ -220,15 +220,15 @@ module AvaTax
220
220
  # ### Security Policies
221
221
  #
222
222
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
223
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
223
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
224
224
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
225
225
  # @param id [Integer] The unique ID number of this certificate
226
- # @return [FetchResult]
227
- def list_attributes_for_certificate(companyId, id) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attributes"
228
- get(path) end
229
-
230
- # List customers linked to this certificate
231
- #
226
+ # @return [FetchResult]
227
+ def list_attributes_for_certificate(companyId, id) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attributes"
228
+ get(path) end
229
+
230
+ # List customers linked to this certificate
231
+ #
232
232
  # List all customers linked to this certificate.
233
233
  #
234
234
  # Customers must be linked to a certificate in order to make use of its tax exemption features. You
@@ -247,16 +247,16 @@ module AvaTax
247
247
  # ### Security Policies
248
248
  #
249
249
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
250
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
250
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
251
251
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
252
252
  # @param id [Integer] The unique ID number of this certificate
253
253
  # @param include [String] OPTIONAL: A comma separated list of special fetch options. No options are currently available when fetching customers.
254
- # @return [FetchResult]
255
- def list_customers_for_certificate(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/certificates/#{id}/customers"
256
- get(path, options) end
257
-
258
- # List all certificates for a company
259
- #
254
+ # @return [FetchResult]
255
+ def list_customers_for_certificate(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/certificates/#{id}/customers"
256
+ get(path, options) end
257
+
258
+ # List all certificates for a company
259
+ #
260
260
  # List all certificates recorded by a company
261
261
  #
262
262
  # A certificate is a document stored in either AvaTax Exemptions or CertCapture. The certificate document
@@ -278,19 +278,19 @@ module AvaTax
278
278
  # ### Security Policies
279
279
  #
280
280
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
281
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
281
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
282
282
  # @param companyId [Integer] The ID number of the company to search
283
283
  # @param include [String] OPTIONAL: A comma separated list of special fetch options. You can specify one or more of the following: * customers - Retrieves the list of customers linked to the certificate. * po_numbers - Retrieves all PO numbers tied to the certificate. * attributes - Retrieves all attributes applied to the certificate.
284
284
  # @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:* exemptionNumber, status, ecmsId, ecmsStatus, pdf, pages
285
285
  # @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.
286
286
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
287
287
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
288
- # @return [FetchResult]
289
- def query_certificates(companyId, options={}) path = "/api/v2/companies/#{companyId}/certificates"
290
- get(path, options) end
291
-
292
- # Request setup of exemption certificates for this company.
293
- #
288
+ # @return [FetchResult]
289
+ def query_certificates(companyId, options={}) path = "/api/v2/companies/#{companyId}/certificates"
290
+ get(path, options) end
291
+
292
+ # Request setup of exemption certificates for this company.
293
+ #
294
294
  # Requests the setup of exemption certificates for this company.
295
295
  #
296
296
  # Exemption certificates are tracked through a different auditable data store than the one that
@@ -304,14 +304,14 @@ module AvaTax
304
304
  # ### Security Policies
305
305
  #
306
306
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
307
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
307
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
308
308
  # @param companyId [Integer]
309
- # @return [Object]
310
- def request_certificate_setup(companyId) path = "/api/v2/companies/#{companyId}/certificates/setup"
311
- post(path) end
312
-
313
- # Unlink attributes from a certificate
314
- #
309
+ # @return [Object]
310
+ def request_certificate_setup(companyId) path = "/api/v2/companies/#{companyId}/certificates/setup"
311
+ post(path) end
312
+
313
+ # Unlink attributes from a certificate
314
+ #
315
315
  # Unlink one or many attributes from a certificate.
316
316
  #
317
317
  # A certificate may have multiple attributes that control its behavior. You may link or unlink attributes to a
@@ -330,16 +330,16 @@ module AvaTax
330
330
  # ### Security Policies
331
331
  #
332
332
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
333
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
333
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
334
334
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
335
335
  # @param id [Integer] The unique ID number of this certificate
336
336
  # @param model [CertificateAttributeModel[]] The list of attributes to unlink from this certificate.
337
- # @return [FetchResult]
338
- def unlink_attributes_from_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attributes/unlink"
339
- post(path, model) end
340
-
341
- # Unlink customers from a certificate
342
- #
337
+ # @return [FetchResult]
338
+ def unlink_attributes_from_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attributes/unlink"
339
+ post(path, model) end
340
+
341
+ # Unlink customers from a certificate
342
+ #
343
343
  # Unlinks one or more customers from a certificate.
344
344
  #
345
345
  # Unlinking a certificate from a customer will prevent the certificate from being used to generate
@@ -360,16 +360,16 @@ module AvaTax
360
360
  # ### Security Policies
361
361
  #
362
362
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
363
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
363
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
364
364
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
365
365
  # @param id [Integer] The unique ID number of this certificate
366
366
  # @param model [Object] The list of customers to unlink from this certificate
367
- # @return [FetchResult]
368
- def unlink_customers_from_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/customers/unlink"
369
- post(path, model) end
370
-
371
- # Update a single certificate
372
- #
367
+ # @return [FetchResult]
368
+ def unlink_customers_from_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}/customers/unlink"
369
+ post(path, model) end
370
+
371
+ # Update a single certificate
372
+ #
373
373
  # Replace the certificate identified by this URL with a new one.
374
374
  #
375
375
  # A certificate is a document stored in either AvaTax Exemptions or CertCapture. The certificate document
@@ -385,16 +385,16 @@ module AvaTax
385
385
  # ### Security Policies
386
386
  #
387
387
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin.
388
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
388
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
389
389
  # @param companyId [Integer] The ID number of the company that recorded this certificate
390
390
  # @param id [Integer] The unique ID number of this certificate
391
391
  # @param model [Object] The new certificate object that will replace the existing one
392
- # @return [Object]
393
- def update_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}"
394
- put(path, model) end
395
-
396
- # Upload an image or PDF attachment for this certificate
397
- #
392
+ # @return [Object]
393
+ def update_certificate(companyId, id, model) path = "/api/v2/companies/#{companyId}/certificates/#{id}"
394
+ put(path, model) end
395
+
396
+ # Upload an image or PDF attachment for this certificate
397
+ #
398
398
  # Upload an image or PDF attachment for this certificate.
399
399
  #
400
400
  # Image attachments can be of the format `PDF`, `JPEG`, `TIFF`, or `PNG`. To upload a multi-page image, please
@@ -413,13 +413,13 @@ module AvaTax
413
413
  # ### Security Policies
414
414
  #
415
415
  # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, CSPTester, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
416
- # * This API depends on the following active services:*Required* (all): AvaTaxPro.
416
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro.
417
417
  # @param companyId [Integer] The unique ID number of the company that recorded this certificate
418
418
  # @param id [Integer] The unique ID number of this certificate
419
419
  # @param file [Object] The exemption certificate file you wanted to upload. Accepted formats are: PDF, JPEG, TIFF, PNG.
420
- # @return [String]
421
- def upload_certificate_image(companyId, id) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attachment"
422
- post(path) end
423
- end
424
- end
420
+ # @return [String]
421
+ def upload_certificate_image(companyId, id) path = "/api/v2/companies/#{companyId}/certificates/#{id}/attachment"
422
+ post(path) end
423
+ end
424
+ end
425
425
  end