avatax 22.10.0 → 22.11.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (49) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +2 -0
  3. data/README.md +1 -1
  4. data/avatax.gemspec +1 -0
  5. data/lib/avatax/api.rb +14 -0
  6. data/lib/avatax/client/accounts.rb +11 -11
  7. data/lib/avatax/client/addresses.rb +2 -2
  8. data/lib/avatax/client/advancedrules.rb +5 -5
  9. data/lib/avatax/client/ageverification.rb +59 -0
  10. data/lib/avatax/client/avafileforms.rb +5 -5
  11. data/lib/avatax/client/batches.rb +8 -8
  12. data/lib/avatax/client/certexpressinvites.rb +3 -3
  13. data/lib/avatax/client/certificates.rb +15 -15
  14. data/lib/avatax/client/companies.rb +22 -22
  15. data/lib/avatax/client/compliance.rb +1 -1
  16. data/lib/avatax/client/contacts.rb +6 -6
  17. data/lib/avatax/client/customers.rb +13 -13
  18. data/lib/avatax/client/datasources.rb +6 -6
  19. data/lib/avatax/client/definitions.rb +71 -71
  20. data/lib/avatax/client/distancethresholds.rb +6 -6
  21. data/lib/avatax/client/ecommercetoken.rb +2 -2
  22. data/lib/avatax/client/firmclientlinkages.rb +9 -9
  23. data/lib/avatax/client/free.rb +1 -1
  24. data/lib/avatax/client/fundingrequests.rb +2 -2
  25. data/lib/avatax/client/items.rb +34 -34
  26. data/lib/avatax/client/jurisdictionoverrides.rb +6 -6
  27. data/lib/avatax/client/locations.rb +12 -12
  28. data/lib/avatax/client/multidocument.rb +10 -10
  29. data/lib/avatax/client/nexus.rb +15 -15
  30. data/lib/avatax/client/notices.rb +4 -4
  31. data/lib/avatax/client/notifications.rb +3 -3
  32. data/lib/avatax/client/provisioning.rb +2 -2
  33. data/lib/avatax/client/registrar.rb +14 -14
  34. data/lib/avatax/client/reports.rb +4 -4
  35. data/lib/avatax/client/settings.rb +6 -6
  36. data/lib/avatax/client/subscriptions.rb +3 -3
  37. data/lib/avatax/client/taxcodes.rb +6 -6
  38. data/lib/avatax/client/taxcontent.rb +5 -5
  39. data/lib/avatax/client/taxrules.rb +6 -6
  40. data/lib/avatax/client/transactions.rb +59 -21
  41. data/lib/avatax/client/upcs.rb +6 -6
  42. data/lib/avatax/client/userdefinedfields.rb +3 -3
  43. data/lib/avatax/client/users.rb +8 -8
  44. data/lib/avatax/client/utilities.rb +3 -3
  45. data/lib/avatax/configuration.rb +4 -1
  46. data/lib/avatax/connection.rb +6 -5
  47. data/lib/avatax/version.rb +1 -1
  48. data/spec/spec_helper.rb +1 -1
  49. metadata +16 -2
@@ -27,7 +27,7 @@ module AvaTax
27
27
  # @param model [TaxRuleModel[]] The tax rule you wish to create.
28
28
  # @return [TaxRuleModel[]]
29
29
  def create_tax_rules(companyId, model) path = "/api/v2/companies/#{companyId}/taxrules"
30
- post(path, model, {}, "22.10.0") end
30
+ post(path, model, {}, "22.11.0") end
31
31
 
32
32
  # Delete a single tax rule
33
33
  #
@@ -53,7 +53,7 @@ module AvaTax
53
53
  # @param id [Integer] The ID of the tax rule you wish to delete.
54
54
  # @return [ErrorDetail[]]
55
55
  def delete_tax_rule(companyId, id) path = "/api/v2/companies/#{companyId}/taxrules/#{id}"
56
- delete(path, {}, "22.10.0") end
56
+ delete(path, {}, "22.11.0") end
57
57
 
58
58
  # Retrieve a single tax rule
59
59
  #
@@ -79,7 +79,7 @@ module AvaTax
79
79
  # @param id [Integer] The primary key of this tax rule
80
80
  # @return [Object]
81
81
  def get_tax_rule(companyId, id) path = "/api/v2/companies/#{companyId}/taxrules/#{id}"
82
- get(path, {}, "22.10.0") end
82
+ get(path, {}, "22.11.0") end
83
83
 
84
84
  # Retrieve tax rules for this company
85
85
  #
@@ -112,7 +112,7 @@ module AvaTax
112
112
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
113
113
  # @return [FetchResult]
114
114
  def list_tax_rules(companyId, options={}) path = "/api/v2/companies/#{companyId}/taxrules"
115
- get(path, options, "22.10.0") end
115
+ get(path, options, "22.11.0") end
116
116
 
117
117
  # Retrieve all tax rules
118
118
  #
@@ -144,7 +144,7 @@ module AvaTax
144
144
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
145
145
  # @return [FetchResult]
146
146
  def query_tax_rules(options={}) path = "/api/v2/taxrules"
147
- get(path, options, "22.10.0") end
147
+ get(path, options, "22.11.0") end
148
148
 
149
149
  # Update a single tax rule
150
150
  #
@@ -171,7 +171,7 @@ module AvaTax
171
171
  # @param model [Object] The tax rule you wish to update.
172
172
  # @return [Object]
173
173
  def update_tax_rule(companyId, id, model) path = "/api/v2/companies/#{companyId}/taxrules/#{id}"
174
- put(path, model, {}, "22.10.0") end
174
+ put(path, model, {}, "22.11.0") end
175
175
  end
176
176
  end
177
177
  end
@@ -35,7 +35,7 @@ module AvaTax
35
35
  # @param model [Object] information about the transaction and lines to be added
36
36
  # @return [Object]
37
37
  def add_lines(model, options={}) path = "/api/v2/companies/transactions/lines/add"
38
- post(path, model, options, "22.10.0") end
38
+ post(path, model, options, "22.11.0") end
39
39
 
40
40
  # Correct a previously created transaction
41
41
  #
@@ -81,7 +81,7 @@ module AvaTax
81
81
  # @param model [Object] The adjustment you wish to make
82
82
  # @return [Object]
83
83
  def adjust_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/adjust"
84
- post(path, model, options, "22.10.0") end
84
+ post(path, model, options, "22.11.0") end
85
85
 
86
86
  # Get audit information about a transaction
87
87
  #
@@ -118,7 +118,7 @@ module AvaTax
118
118
  # @param transactionCode [String] The code identifying the transaction
119
119
  # @return [Object]
120
120
  def audit_transaction(companyCode, transactionCode) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/audit"
121
- get(path, {}, "22.10.0") end
121
+ get(path, {}, "22.11.0") end
122
122
 
123
123
  # Get audit information about a transaction
124
124
  #
@@ -156,7 +156,7 @@ module AvaTax
156
156
  # @param documentType [String] The document type of the original transaction (See DocumentType::* for a list of allowable values)
157
157
  # @return [Object]
158
158
  def audit_transaction_with_type(companyCode, transactionCode, documentType) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/types/#{documentType}/audit"
159
- get(path, {}, "22.10.0") end
159
+ get(path, {}, "22.11.0") end
160
160
 
161
161
  # Lock a set of documents
162
162
  #
@@ -176,7 +176,7 @@ module AvaTax
176
176
  # @param model [Object] bulk lock request
177
177
  # @return [Object]
178
178
  def bulk_lock_transaction(model) path = "/api/v2/transactions/lock"
179
- post(path, model, {}, "22.10.0") end
179
+ post(path, model, {}, "22.11.0") end
180
180
 
181
181
  # Change a transaction's code
182
182
  #
@@ -222,7 +222,7 @@ module AvaTax
222
222
  # @param model [Object] The code change request you wish to execute
223
223
  # @return [Object]
224
224
  def change_transaction_code(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/changecode"
225
- post(path, model, options, "22.10.0") end
225
+ post(path, model, options, "22.11.0") end
226
226
 
227
227
  # Commit a transaction for reporting
228
228
  #
@@ -266,7 +266,7 @@ module AvaTax
266
266
  # @param model [Object] The commit request you wish to execute
267
267
  # @return [Object]
268
268
  def commit_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/commit"
269
- post(path, model, options, "22.10.0") end
269
+ post(path, model, options, "22.11.0") end
270
270
 
271
271
  # Create or adjust a transaction
272
272
  #
@@ -313,7 +313,7 @@ module AvaTax
313
313
  # @param model [Object] The transaction you wish to create or adjust
314
314
  # @return [Object]
315
315
  def create_or_adjust_transaction(model, options={}) path = "/api/v2/transactions/createoradjust"
316
- post(path, model, options, "22.10.0") end
316
+ post(path, model, options, "22.11.0") end
317
317
 
318
318
  # Create a new transaction
319
319
  #
@@ -367,7 +367,7 @@ module AvaTax
367
367
  # @param model [Object] The transaction you wish to create
368
368
  # @return [Object]
369
369
  def create_transaction(model, options={}) path = "/api/v2/transactions/create"
370
- post(path, model, options, "22.10.0") end
370
+ post(path, model, options, "22.11.0") end
371
371
 
372
372
  # Remove lines from an existing unlocked transaction
373
373
  #
@@ -398,7 +398,19 @@ module AvaTax
398
398
  # @param model [Object] information about the transaction and lines to be removed
399
399
  # @return [Object]
400
400
  def delete_lines(model, options={}) path = "/api/v2/companies/transactions/lines/delete"
401
- post(path, model, options, "22.10.0") end
401
+ post(path, model, options, "22.11.0") end
402
+
403
+ # Fetches the Variance data generated for all the transactions done by Company.
404
+ #
405
+ # ### Security Policies
406
+ #
407
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
408
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro, BasicReturns.
409
+ # Swagger Name: AvaTaxClient
410
+ # @param companyCode [String]
411
+ # @return [Object]
412
+ def get_all_variance_report_by_company_code(companyCode) path = "/api/v2/companies/#{companyCode}/AllVariance"
413
+ get(path, {}, "22.11.0") end
402
414
 
403
415
  # Retrieve a single transaction by code
404
416
  #
@@ -440,7 +452,7 @@ module AvaTax
440
452
  # @param include [String] Specifies objects to include in this fetch call
441
453
  # @return [Object]
442
454
  def get_transaction_by_code(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}"
443
- get(path, options, "22.10.0") end
455
+ get(path, options, "22.11.0") end
444
456
 
445
457
  # Retrieve a single transaction by code
446
458
  #
@@ -465,7 +477,7 @@ module AvaTax
465
477
  # @param include [String] Specifies objects to include in this fetch call
466
478
  # @return [Object]
467
479
  def get_transaction_by_code_and_type(companyCode, transactionCode, documentType, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/types/#{documentType}"
468
- get(path, options, "22.10.0") end
480
+ get(path, options, "22.11.0") end
469
481
 
470
482
  # Retrieve a single transaction by ID
471
483
  #
@@ -495,7 +507,20 @@ module AvaTax
495
507
  # @param include [String] Specifies objects to include in this fetch call
496
508
  # @return [Object]
497
509
  def get_transaction_by_id(id, options={}) path = "/api/v2/transactions/#{id}"
498
- get(path, options, "22.10.0") end
510
+ get(path, options, "22.11.0") end
511
+
512
+ # Fetches the Variance data generated for particular Company by transaction ID
513
+ #
514
+ # ### Security Policies
515
+ #
516
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
517
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro, BasicReturns.
518
+ # Swagger Name: AvaTaxClient
519
+ # @param companyCode [String]
520
+ # @param transactionId [String]
521
+ # @return [Object]
522
+ def get_variance_report_by_company_code_by_transaction_id(companyCode, transactionId) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionId}/variance"
523
+ get(path, {}, "22.11.0") end
499
524
 
500
525
  # Retrieve all transactions
501
526
  #
@@ -543,7 +568,7 @@ module AvaTax
543
568
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
544
569
  # @return [FetchResult]
545
570
  def list_transactions_by_company(companyCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions"
546
- get(path, options, "22.10.0") end
571
+ get(path, options, "22.11.0") end
547
572
 
548
573
  # Lock a single transaction
549
574
  #
@@ -589,7 +614,7 @@ module AvaTax
589
614
  # @param model [Object] The lock request you wish to execute
590
615
  # @return [Object]
591
616
  def lock_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/lock"
592
- post(path, model, options, "22.10.0") end
617
+ post(path, model, options, "22.11.0") end
593
618
 
594
619
  # Create a refund for a transaction
595
620
  #
@@ -646,7 +671,7 @@ module AvaTax
646
671
  # @param model [Object] Information about the refund to create
647
672
  # @return [Object]
648
673
  def refund_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/refund"
649
- post(path, model, options, "22.10.0") end
674
+ post(path, model, options, "22.11.0") end
650
675
 
651
676
  # Perform multiple actions on a transaction
652
677
  #
@@ -690,7 +715,7 @@ module AvaTax
690
715
  # @param model [Object] The data from an external system to reconcile against AvaTax
691
716
  # @return [Object]
692
717
  def settle_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/settle"
693
- post(path, model, options, "22.10.0") end
718
+ post(path, model, options, "22.11.0") end
694
719
 
695
720
  # Uncommit a transaction for reporting
696
721
  #
@@ -728,7 +753,7 @@ module AvaTax
728
753
  # @param include [String] Specifies objects to include in this fetch call
729
754
  # @return [Object]
730
755
  def uncommit_transaction(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/uncommit"
731
- post(path, options, "22.10.0") end
756
+ post(path, options, "22.11.0") end
732
757
 
733
758
  # Unvoids a transaction
734
759
  #
@@ -763,7 +788,20 @@ module AvaTax
763
788
  # @param include [String] Specifies objects to include in this fetch call
764
789
  # @return [Object]
765
790
  def unvoid_transaction(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/unvoid"
766
- post(path, options, "22.10.0") end
791
+ post(path, options, "22.11.0") end
792
+
793
+ # Generates the Variance report which will capture the difference between "Tax Calculated by Avalara" Vs "Actual Tax" paid at custom clearance at line / header level.
794
+ #
795
+ # ### Security Policies
796
+ #
797
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, BatchServiceAdmin, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
798
+ # * This API depends on the following active services:*Required* (all): AvaTaxPro, BasicReturns.
799
+ # Swagger Name: AvaTaxClient
800
+ # @param companyCode [String]
801
+ # @param model [VarianceRequestModel[]]
802
+ # @return [Object]
803
+ def variance_report(companyCode, model) path = "/api/v2/companies/#{companyCode}/variance"
804
+ post(path, model, {}, "22.11.0") end
767
805
 
768
806
  # Verify a transaction
769
807
  #
@@ -806,7 +844,7 @@ module AvaTax
806
844
  # @param model [Object] The data from an external system to reconcile against AvaTax
807
845
  # @return [Object]
808
846
  def verify_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/verify"
809
- post(path, model, options, "22.10.0") end
847
+ post(path, model, options, "22.11.0") end
810
848
 
811
849
  # Void a transaction
812
850
  #
@@ -851,7 +889,7 @@ module AvaTax
851
889
  # @param model [Object] The void request you wish to execute. To void a transaction the code must be set to 'DocVoided'
852
890
  # @return [Object]
853
891
  def void_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/void"
854
- post(path, model, options, "22.10.0") end
892
+ post(path, model, options, "22.11.0") end
855
893
  end
856
894
  end
857
895
  end
@@ -17,7 +17,7 @@ module AvaTax
17
17
  # @param model [UPCModel[]] The UPC you wish to create.
18
18
  # @return [UPCModel[]]
19
19
  def create_u_p_cs(companyId, model) path = "/api/v2/companies/#{companyId}/upcs"
20
- post(path, model, {}, "22.10.0") end
20
+ post(path, model, {}, "22.11.0") end
21
21
 
22
22
  # Delete a single UPC
23
23
  #
@@ -32,7 +32,7 @@ module AvaTax
32
32
  # @param id [Integer] The ID of the UPC you wish to delete.
33
33
  # @return [ErrorDetail[]]
34
34
  def delete_u_p_c(companyId, id) path = "/api/v2/companies/#{companyId}/upcs/#{id}"
35
- delete(path, {}, "22.10.0") end
35
+ delete(path, {}, "22.11.0") end
36
36
 
37
37
  # Retrieve a single UPC
38
38
  #
@@ -48,7 +48,7 @@ module AvaTax
48
48
  # @param id [Integer] The primary key of this UPC
49
49
  # @return [Object]
50
50
  def get_u_p_c(companyId, id) path = "/api/v2/companies/#{companyId}/upcs/#{id}"
51
- get(path, {}, "22.10.0") end
51
+ get(path, {}, "22.11.0") end
52
52
 
53
53
  # Retrieve UPCs for this company
54
54
  #
@@ -71,7 +71,7 @@ module AvaTax
71
71
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
72
72
  # @return [FetchResult]
73
73
  def list_u_p_cs_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/upcs"
74
- get(path, options, "22.10.0") end
74
+ get(path, options, "22.11.0") end
75
75
 
76
76
  # Retrieve all UPCs
77
77
  #
@@ -93,7 +93,7 @@ module AvaTax
93
93
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
94
94
  # @return [FetchResult]
95
95
  def query_u_p_cs(options={}) path = "/api/v2/upcs"
96
- get(path, options, "22.10.0") end
96
+ get(path, options, "22.11.0") end
97
97
 
98
98
  # Update a single UPC
99
99
  #
@@ -112,7 +112,7 @@ module AvaTax
112
112
  # @param model [Object] The UPC you wish to update.
113
113
  # @return [Object]
114
114
  def update_u_p_c(companyId, id, model) path = "/api/v2/companies/#{companyId}/upcs/#{id}"
115
- put(path, model, {}, "22.10.0") end
115
+ put(path, model, {}, "22.11.0") end
116
116
  end
117
117
  end
118
118
  end
@@ -16,7 +16,7 @@ module AvaTax
16
16
  # @param id [Integer] The id of the User Defined Field you wish to delete.
17
17
  # @return [ErrorDetail[]]
18
18
  def delete_user_defined_field(companyId, id) path = "/api/v2/companies/#{companyId}/userdefinedfields/#{id}"
19
- delete(path, {}, "22.10.0") end
19
+ delete(path, {}, "22.11.0") end
20
20
 
21
21
  #
22
22
  #
@@ -30,7 +30,7 @@ module AvaTax
30
30
  # @param allowDefaults [Boolean] If true this will add defaulted UDFs to the list that are not named yet
31
31
  # @return [FetchResult]
32
32
  def list_user_defined_fields_by_company_id(companyId, options={}) path = "/api/v2/companies/#{companyId}/userdefinedfields"
33
- get(path, options, "22.10.0") end
33
+ get(path, options, "22.11.0") end
34
34
 
35
35
  # Update a User Defined Field identified by id for a company
36
36
  #
@@ -46,7 +46,7 @@ module AvaTax
46
46
  # @param model [Object]
47
47
  # @return [Object]
48
48
  def update_user_defined_field(companyId, model, options={}) path = "/api/v2/companies/#{companyId}/userdefinedfields"
49
- post(path, model, options, "22.10.0") end
49
+ post(path, model, options, "22.11.0") end
50
50
  end
51
51
  end
52
52
  end
@@ -20,7 +20,7 @@ module AvaTax
20
20
  # @param model [Object] An object containing your current password and the new password.
21
21
  # @return [String]
22
22
  def change_password(model) path = "/api/v2/passwords"
23
- put(path, model, {}, "22.10.0") end
23
+ put(path, model, {}, "22.11.0") end
24
24
 
25
25
  # Create new users
26
26
  #
@@ -42,7 +42,7 @@ module AvaTax
42
42
  # @param model [UserModel[]] The user or array of users you wish to create.
43
43
  # @return [UserModel[]]
44
44
  def create_users(accountId, model) path = "/api/v2/accounts/#{accountId}/users"
45
- post(path, model, {}, "22.10.0") end
45
+ post(path, model, {}, "22.11.0") end
46
46
 
47
47
  # Delete a single user
48
48
  #
@@ -61,7 +61,7 @@ module AvaTax
61
61
  # @param accountId [Integer] The accountID of the user you wish to delete.
62
62
  # @return [ErrorDetail[]]
63
63
  def delete_user(id, accountId) path = "/api/v2/accounts/#{accountId}/users/#{id}"
64
- delete(path, {}, "22.10.0") end
64
+ delete(path, {}, "22.11.0") end
65
65
 
66
66
  # Retrieve a single user
67
67
  #
@@ -81,7 +81,7 @@ module AvaTax
81
81
  # @param include [String] Optional fetch commands.
82
82
  # @return [Object]
83
83
  def get_user(id, accountId, options={}) path = "/api/v2/accounts/#{accountId}/users/#{id}"
84
- get(path, options, "22.10.0") end
84
+ get(path, options, "22.11.0") end
85
85
 
86
86
  # Retrieve all entitlements for a single user
87
87
  #
@@ -109,7 +109,7 @@ module AvaTax
109
109
  # @param accountId [Integer] The accountID of the user you wish to get.
110
110
  # @return [Object]
111
111
  def get_user_entitlements(id, accountId) path = "/api/v2/accounts/#{accountId}/users/#{id}/entitlements"
112
- get(path, {}, "22.10.0") end
112
+ get(path, {}, "22.11.0") end
113
113
 
114
114
  # Retrieve users for this account
115
115
  #
@@ -138,7 +138,7 @@ module AvaTax
138
138
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
139
139
  # @return [FetchResult]
140
140
  def list_users_by_account(accountId, options={}) path = "/api/v2/accounts/#{accountId}/users"
141
- get(path, options, "22.10.0") end
141
+ get(path, options, "22.11.0") end
142
142
 
143
143
  # Retrieve all users
144
144
  #
@@ -168,7 +168,7 @@ module AvaTax
168
168
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
169
169
  # @return [FetchResult]
170
170
  def query_users(options={}) path = "/api/v2/users"
171
- get(path, options, "22.10.0") end
171
+ get(path, options, "22.11.0") end
172
172
 
173
173
  # Update a single user
174
174
  #
@@ -186,7 +186,7 @@ module AvaTax
186
186
  # @param model [Object] The user object you wish to update.
187
187
  # @return [Object]
188
188
  def update_user(id, accountId, model) path = "/api/v2/accounts/#{accountId}/users/#{id}"
189
- put(path, model, {}, "22.10.0") end
189
+ put(path, model, {}, "22.11.0") end
190
190
  end
191
191
  end
192
192
  end
@@ -17,7 +17,7 @@ module AvaTax
17
17
  # @param serviceTypeId [String] The service to check
18
18
  # @return [Object]
19
19
  def get_my_subscription(serviceTypeId) path = "/api/v2/utilities/subscriptions/#{serviceTypeId}"
20
- get(path, {}, "22.10.0") end
20
+ get(path, {}, "22.11.0") end
21
21
 
22
22
  # List all services to which the current user is subscribed
23
23
  #
@@ -32,7 +32,7 @@ module AvaTax
32
32
  # Swagger Name: AvaTaxClient
33
33
  # @return [FetchResult]
34
34
  def list_my_subscriptions() path = "/api/v2/utilities/subscriptions"
35
- get(path, {}, "22.10.0") end
35
+ get(path, {}, "22.11.0") end
36
36
 
37
37
  # Tests connectivity and version of the service
38
38
  #
@@ -59,7 +59,7 @@ module AvaTax
59
59
  # Swagger Name: AvaTaxClient
60
60
  # @return [Object]
61
61
  def ping() path = "/api/v2/utilities/ping"
62
- get(path, {}, "22.10.0") end
62
+ get(path, {}, "22.11.0") end
63
63
  end
64
64
  end
65
65
  end
@@ -19,7 +19,8 @@ module AvaTax
19
19
  :custom_logger_options,
20
20
  :proxy,
21
21
  :faraday_response,
22
- :response_big_decimal_conversion
22
+ :response_big_decimal_conversion,
23
+ :log_request_and_response_info
23
24
  ].freeze
24
25
 
25
26
  DEFAULT_APP_NAME = nil
@@ -36,6 +37,7 @@ module AvaTax
36
37
  DEFAULT_PROXY = nil
37
38
  DEFAULT_FARADAY_RESPONSE = false
38
39
  DEFAULT_RESPONSE_BIG_DECIMAL_CONVERSION = false
40
+ DEFAULT_LOG_REQUEST_AND_RESPONSE_INFO = false
39
41
 
40
42
  attr_accessor *VALID_OPTIONS_KEYS
41
43
 
@@ -70,6 +72,7 @@ module AvaTax
70
72
  self.proxy = DEFAULT_PROXY
71
73
  self.faraday_response = DEFAULT_FARADAY_RESPONSE
72
74
  self.response_big_decimal_conversion = DEFAULT_RESPONSE_BIG_DECIMAL_CONVERSION
75
+ self.log_request_and_response_info = DEFAULT_LOG_REQUEST_AND_RESPONSE_INFO
73
76
  end
74
77
 
75
78
  end
@@ -4,8 +4,8 @@ module AvaTax
4
4
 
5
5
  module Connection
6
6
  private
7
- AUTHORIZATION_FILTER_REGEX = /(Authorization\:\ \"Basic\ )(\w+)\=/
8
- REMOVED_LABEL = '\1[REMOVED]'
7
+ AUTHORIZATION_FILTER_REGEX = /(Authorization)([^&]+)/
8
+ REMOVED_LABEL = '\1 [REMOVED]'
9
9
 
10
10
  def connection
11
11
  client_id = "#{app_name};#{app_version};RubySdk;API_VERSION;#{machine_name}"
@@ -26,7 +26,7 @@ module AvaTax
26
26
  bigdecimal_load: :bigdecimal
27
27
  }
28
28
  end
29
-
29
+ faraday.request :instrumentation
30
30
  faraday.response :json, content_type: /\bjson$/
31
31
  faraday.request :basic_auth, username, password
32
32
 
@@ -34,14 +34,15 @@ module AvaTax
34
34
  # see https://github.com/lostisland/faraday/blob/main/docs/middleware/request/authentication.md
35
35
  # faraday.request :authorization, :basic, username, password
36
36
 
37
+ default_logger_options = { headers: true, bodies: log_request_and_response_info }
37
38
  if logger
38
- faraday.response :logger do |logger|
39
+ faraday.response :logger, nil, default_logger_options do |logger|
39
40
  logger.filter(AUTHORIZATION_FILTER_REGEX, REMOVED_LABEL)
40
41
  end
41
42
  end
42
43
 
43
44
  if custom_logger
44
- faraday.response :logger, custom_logger, custom_logger_options do |logger|
45
+ faraday.response :logger, custom_logger, default_logger_options.merge(custom_logger_options) do |logger|
45
46
  logger.filter(AUTHORIZATION_FILTER_REGEX, REMOVED_LABEL)
46
47
  end
47
48
  end
@@ -1,3 +1,3 @@
1
1
  module AvaTax
2
- VERSION = '22.10.0'.freeze unless defined?(::AvaTax::VERSION)
2
+ VERSION = '22.11.0'.freeze unless defined?(::AvaTax::VERSION)
3
3
  end
data/spec/spec_helper.rb CHANGED
@@ -16,7 +16,7 @@ AvaTax.configure do |config|
16
16
  end
17
17
  end
18
18
 
19
- client = AvaTax::Client.new()
19
+ client = AvaTax::Client.new({ :logger => true, :log_request_and_response_info => true })
20
20
  companies = client.query_companies
21
21
 
22
22
  RSpec.configure do |config|
metadata CHANGED
@@ -1,14 +1,14 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: avatax
3
3
  version: !ruby/object:Gem::Version
4
- version: 22.10.0
4
+ version: 22.11.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Marcus Vorwaller
8
8
  autorequire:
9
9
  bindir: bin
10
10
  cert_chain: []
11
- date: 2022-10-06 00:00:00.000000000 Z
11
+ date: 2022-11-03 00:00:00.000000000 Z
12
12
  dependencies:
13
13
  - !ruby/object:Gem::Dependency
14
14
  name: rake
@@ -94,6 +94,20 @@ dependencies:
94
94
  - - ">="
95
95
  - !ruby/object:Gem::Version
96
96
  version: 1.0.3
97
+ - !ruby/object:Gem::Dependency
98
+ name: activesupport
99
+ requirement: !ruby/object:Gem::Requirement
100
+ requirements:
101
+ - - "~>"
102
+ - !ruby/object:Gem::Version
103
+ version: 6.1.7
104
+ type: :runtime
105
+ prerelease: false
106
+ version_requirements: !ruby/object:Gem::Requirement
107
+ requirements:
108
+ - - "~>"
109
+ - !ruby/object:Gem::Version
110
+ version: 6.1.7
97
111
  description: A Ruby wrapper for the AvaTax REST and Search APIs
98
112
  email:
99
113
  - marcus.vorwaller@avalara.com