avatax 22.2.0 → 22.5.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (46) hide show
  1. checksums.yaml +4 -4
  2. data/lib/avatax/client/accounts.rb +11 -11
  3. data/lib/avatax/client/addresses.rb +2 -2
  4. data/lib/avatax/client/advancedrules.rb +5 -5
  5. data/lib/avatax/client/avafileforms.rb +5 -5
  6. data/lib/avatax/client/batches.rb +8 -8
  7. data/lib/avatax/client/certexpressinvites.rb +3 -3
  8. data/lib/avatax/client/certificates.rb +15 -15
  9. data/lib/avatax/client/companies.rb +22 -22
  10. data/lib/avatax/client/compliance.rb +1 -1
  11. data/lib/avatax/client/contacts.rb +6 -6
  12. data/lib/avatax/client/customers.rb +13 -13
  13. data/lib/avatax/client/datasources.rb +6 -6
  14. data/lib/avatax/client/definitions.rb +75 -72
  15. data/lib/avatax/client/distancethresholds.rb +6 -6
  16. data/lib/avatax/client/ecommercetoken.rb +2 -2
  17. data/lib/avatax/client/filingcalendars.rb +3 -3
  18. data/lib/avatax/client/filings.rb +2 -2
  19. data/lib/avatax/client/firmclientlinkages.rb +9 -9
  20. data/lib/avatax/client/free.rb +1 -1
  21. data/lib/avatax/client/fundingrequests.rb +2 -2
  22. data/lib/avatax/client/items.rb +189 -28
  23. data/lib/avatax/client/jurisdictionoverrides.rb +6 -6
  24. data/lib/avatax/client/locations.rb +12 -12
  25. data/lib/avatax/client/multidocument.rb +10 -10
  26. data/lib/avatax/client/nexus.rb +15 -15
  27. data/lib/avatax/client/notices.rb +4 -4
  28. data/lib/avatax/client/notifications.rb +3 -3
  29. data/lib/avatax/client/provisioning.rb +2 -2
  30. data/lib/avatax/client/registrar.rb +11 -22
  31. data/lib/avatax/client/reports.rb +4 -4
  32. data/lib/avatax/client/settings.rb +6 -6
  33. data/lib/avatax/client/shippingverification.rb +25 -9
  34. data/lib/avatax/client/subscriptions.rb +3 -3
  35. data/lib/avatax/client/taxcodes.rb +6 -6
  36. data/lib/avatax/client/taxcontent.rb +5 -5
  37. data/lib/avatax/client/taxrules.rb +6 -6
  38. data/lib/avatax/client/transactions.rb +22 -23
  39. data/lib/avatax/client/upcs.rb +6 -6
  40. data/lib/avatax/client/userdefinedfields.rb +3 -3
  41. data/lib/avatax/client/users.rb +8 -8
  42. data/lib/avatax/client/utilities.rb +3 -3
  43. data/lib/avatax/connection.rb +5 -1
  44. data/lib/avatax/request.rb +10 -9
  45. data/lib/avatax/version.rb +1 -1
  46. metadata +2 -2
@@ -10,9 +10,13 @@ module AvaTax
10
10
  # @param companyCode [String] The company code of the company that recorded the transaction
11
11
  # @param transactionCode [String] The transaction code to retrieve
12
12
  # @param documentType [String] (Optional): The document type of the transaction to operate on. If omitted, defaults to "SalesInvoice"
13
+ # @param api-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2
14
+ # @param x-avalara-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2. Header takes precendence if both header and query parameters are present.
13
15
  # @return []
14
- def deregister_shipment(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/registration"
15
- delete(path, options, "") end
16
+ def deregister_shipment(companyCode, transactionCode, options={}, x_avalara_version="") path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/registration"
17
+ headers= Hash.new
18
+ headers["x-avalara-version"]=x_avalara_version if !(x_avalara_version.nil? || x_avalara_version.empty?);
19
+ delete(path, options, "", headers) end
16
20
 
17
21
  # Registers the transaction so that it may be included when evaluating regulations that span multiple transactions.
18
22
  #
@@ -21,9 +25,13 @@ module AvaTax
21
25
  # @param companyCode [String] The company code of the company that recorded the transaction
22
26
  # @param transactionCode [String] The transaction code to retrieve
23
27
  # @param documentType [String] (Optional): The document type of the transaction to operate on. If omitted, defaults to "SalesInvoice"
28
+ # @param api-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2
29
+ # @param x-avalara-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2. Header takes precendence if both header and query parameters are present.
24
30
  # @return []
25
- def register_shipment(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/registration"
26
- put(path, options, "") end
31
+ def register_shipment(companyCode, transactionCode, options={}, x_avalara_version="") path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/registration"
32
+ headers= Hash.new
33
+ headers["x-avalara-version"]=x_avalara_version if !(x_avalara_version.nil? || x_avalara_version.empty?);
34
+ put(path, options, "", headers) end
27
35
 
28
36
  # Evaluates a transaction against a set of direct-to-consumer shipping regulations and, if compliant, registers the transaction so that it may be included when evaluating regulations that span multiple transactions.
29
37
  #
@@ -32,9 +40,13 @@ module AvaTax
32
40
  # @param companyCode [String] The company code of the company that recorded the transaction
33
41
  # @param transactionCode [String] The transaction code to retrieve
34
42
  # @param documentType [String] (Optional): The document type of the transaction to operate on. If omitted, defaults to "SalesInvoice"
43
+ # @param api-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2
44
+ # @param x-avalara-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2. Header takes precendence if both header and query parameters are present.
35
45
  # @return [Object]
36
- def register_shipment_if_compliant(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/registerIfCompliant"
37
- put(path, options, "") end
46
+ def register_shipment_if_compliant(companyCode, transactionCode, options={}, x_avalara_version="") path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/registerIfCompliant"
47
+ headers= Hash.new
48
+ headers["x-avalara-version"]=x_avalara_version if !(x_avalara_version.nil? || x_avalara_version.empty?);
49
+ put(path, options, "", headers) end
38
50
 
39
51
  # Evaluates a transaction against a set of direct-to-consumer shipping regulations.
40
52
  #
@@ -44,13 +56,13 @@ module AvaTax
44
56
  # * A parameter with the name *RecipientName* must be specified and the value must be the name of the recipient.
45
57
  # * Each alcohol line must include a *ContainerSize* parameter that describes the volume of a single container. Use the *unit* field to specify one of the following units: '*Litre*', '*Millilitre*', '*gallon (US fluid)*', '*quart (US fluid)*', '*ounce (fluid US customary)*'
46
58
  # * Each alcohol line must include a *PackSize* parameter that describes the number of containers in a pack. Specify *Count* in the *unit* field.
59
+ # * Each alcohol line must include a *AlcoholContent* parameter that describes the alcohol percentage by volume of the item. Specify *Percentage* in the *unit* field. If unable to provide this parameter, use version 2.1 of the API.
47
60
  #
48
61
  # Optionally, the transaction and its lines may use the following parameters:
49
62
  # * The *ShipDate* parameter may be used if the date of shipment is different than the date of the transaction. The value should be ISO-8601 compliant (e.g. 2020-07-21).
50
63
  # * The *RecipientDOB* parameter may be used to evaluate age restrictions. The value should be ISO-8601 compliant (e.g. 2020-07-21).
51
64
  # * The *PurchaserDOB* parameter may be used to evaluate age restrictions. The value should be ISO-8601 compliant (e.g. 2020-07-21).
52
65
  # * The *SalesLocation* parameter may be used to describe whether the sale was made *OnSite* or *OffSite*. *OffSite* is the default value.
53
- # * The *AlcoholContent* parameter may be used to describe the alcohol percentage by volume of the item. Specify *Percentage* in the *unit* field.
54
66
  #
55
67
  # **Security Policies**
56
68
  # This API depends on all of the following active subscriptions: *AvaAlcohol, AutoAddress, AvaTaxPro*
@@ -58,9 +70,13 @@ module AvaTax
58
70
  # @param companyCode [String] The company code of the company that recorded the transaction
59
71
  # @param transactionCode [String] The transaction code to retrieve
60
72
  # @param documentType [String] (Optional): The document type of the transaction to operate on. If omitted, defaults to "SalesInvoice"
73
+ # @param api-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2
74
+ # @param x-avalara-version [String] (Optional): API version that should satisfy the request. If omitted, defaults to 2.2. Header takes precendence if both header and query parameters are present.
61
75
  # @return [Object]
62
- def verify_shipment(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/verify"
63
- get(path, options, "") end
76
+ def verify_shipment(companyCode, transactionCode, options={}, x_avalara_version="") path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/shipment/verify"
77
+ headers= Hash.new
78
+ headers["x-avalara-version"]=x_avalara_version if !(x_avalara_version.nil? || x_avalara_version.empty?);
79
+ get(path, options, "", headers) end
64
80
  end
65
81
  end
66
82
  end
@@ -17,7 +17,7 @@ module AvaTax
17
17
  # @param id [Integer] The primary key of this subscription
18
18
  # @return [Object]
19
19
  def get_subscription(accountId, id) path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
20
- get(path, {}, "22.2.0") end
20
+ get(path, {}, "22.5.0") end
21
21
 
22
22
  # Retrieve subscriptions for this account
23
23
  #
@@ -39,7 +39,7 @@ module AvaTax
39
39
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
40
40
  # @return [FetchResult]
41
41
  def list_subscriptions_by_account(accountId, options={}) path = "/api/v2/accounts/#{accountId}/subscriptions"
42
- get(path, options, "22.2.0") end
42
+ get(path, options, "22.5.0") end
43
43
 
44
44
  # Retrieve all subscriptions
45
45
  #
@@ -60,7 +60,7 @@ module AvaTax
60
60
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
61
61
  # @return [FetchResult]
62
62
  def query_subscriptions(options={}) path = "/api/v2/subscriptions"
63
- get(path, options, "22.2.0") end
63
+ get(path, options, "22.5.0") end
64
64
  end
65
65
  end
66
66
  end
@@ -19,7 +19,7 @@ module AvaTax
19
19
  # @param model [TaxCodeModel[]] The tax code you wish to create.
20
20
  # @return [TaxCodeModel[]]
21
21
  def create_tax_codes(companyId, model) path = "/api/v2/companies/#{companyId}/taxcodes"
22
- post(path, model, {}, "22.2.0") end
22
+ post(path, model, {}, "22.5.0") end
23
23
 
24
24
  # Delete a single tax code
25
25
  #
@@ -33,7 +33,7 @@ module AvaTax
33
33
  # @param id [Integer] The ID of the tax code you wish to delete.
34
34
  # @return [ErrorDetail[]]
35
35
  def delete_tax_code(companyId, id) path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
36
- delete(path, {}, "22.2.0") end
36
+ delete(path, {}, "22.5.0") end
37
37
 
38
38
  # Retrieve a single tax code
39
39
  #
@@ -51,7 +51,7 @@ module AvaTax
51
51
  # @param id [Integer] The primary key of this tax code
52
52
  # @return [Object]
53
53
  def get_tax_code(companyId, id) path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
54
- get(path, {}, "22.2.0") end
54
+ get(path, {}, "22.5.0") end
55
55
 
56
56
  # Retrieve tax codes for this company
57
57
  #
@@ -76,7 +76,7 @@ module AvaTax
76
76
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
77
77
  # @return [FetchResult]
78
78
  def list_tax_codes_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/taxcodes"
79
- get(path, options, "22.2.0") end
79
+ get(path, options, "22.5.0") end
80
80
 
81
81
  # Retrieve all tax codes
82
82
  #
@@ -100,7 +100,7 @@ module AvaTax
100
100
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
101
101
  # @return [FetchResult]
102
102
  def query_tax_codes(options={}) path = "/api/v2/taxcodes"
103
- get(path, options, "22.2.0") end
103
+ get(path, options, "22.5.0") end
104
104
 
105
105
  # Update a single tax code
106
106
  #
@@ -121,7 +121,7 @@ module AvaTax
121
121
  # @param model [Object] The tax code you wish to update.
122
122
  # @return [Object]
123
123
  def update_tax_code(companyId, id, model) path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
124
- put(path, model, {}, "22.2.0") end
124
+ put(path, model, {}, "22.5.0") end
125
125
  end
126
126
  end
127
127
  end
@@ -37,7 +37,7 @@ module AvaTax
37
37
  # @param model [Object] Parameters about the desired file format and report format, specifying which company, locations and TaxCodes to include.
38
38
  # @return [Object]
39
39
  def build_tax_content_file(model) path = "/api/v2/pointofsaledata/build"
40
- post(path, model, {}, "22.2.0") end
40
+ post(path, model, {}, "22.5.0") end
41
41
 
42
42
  # Build a tax content file for a single location
43
43
  #
@@ -78,7 +78,7 @@ module AvaTax
78
78
  # @param includeJurisCodes [Boolean] When true, the file will include jurisdiction codes in the result.
79
79
  # @return [Object]
80
80
  def build_tax_content_file_for_location(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/locations/#{id}/pointofsaledata"
81
- get(path, options, "22.2.0") end
81
+ get(path, options, "22.5.0") end
82
82
 
83
83
  # Download a file listing tax rates by postal code
84
84
  #
@@ -131,7 +131,7 @@ module AvaTax
131
131
  # @param region [String] A two character region code which limits results to a specific region.
132
132
  # @return [Object]
133
133
  def download_tax_rates_by_zip_code(date, options={}) path = "/api/v2/taxratesbyzipcode/download/#{date}"
134
- get(path, options, "22.2.0") end
134
+ get(path, options, "22.5.0") end
135
135
 
136
136
  # Sales tax rates for a specified address
137
137
  #
@@ -165,7 +165,7 @@ module AvaTax
165
165
  # @param country [String] Name or ISO 3166 code identifying the country. This field supports many different country identifiers: * Two character ISO 3166 codes * Three character ISO 3166 codes * Fully spelled out names of the country in ISO supported languages * Common alternative spellings for many countries For a full list of all supported codes and names, please see the Definitions API `ListCountries`.
166
166
  # @return [Object]
167
167
  def tax_rates_by_address(options={}) path = "/api/v2/taxrates/byaddress"
168
- get(path, options, "22.2.0") end
168
+ get(path, options, "22.5.0") end
169
169
 
170
170
  # Sales tax rates for a specified country and postal code. This API is only available for US postal codes.
171
171
  #
@@ -196,7 +196,7 @@ module AvaTax
196
196
  # @param postalCode [String] The postal code of the location.
197
197
  # @return [Object]
198
198
  def tax_rates_by_postal_code(options={}) path = "/api/v2/taxrates/bypostalcode"
199
- get(path, options, "22.2.0") end
199
+ get(path, options, "22.5.0") end
200
200
  end
201
201
  end
202
202
  end
@@ -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.2.0") end
30
+ post(path, model, {}, "22.5.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.2.0") end
56
+ delete(path, {}, "22.5.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.2.0") end
82
+ get(path, {}, "22.5.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.2.0") end
115
+ get(path, options, "22.5.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.2.0") end
147
+ get(path, options, "22.5.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.2.0") end
174
+ put(path, model, {}, "22.5.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.2.0") end
38
+ post(path, model, options, "22.5.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.2.0") end
84
+ post(path, model, options, "22.5.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.2.0") end
121
+ get(path, {}, "22.5.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.2.0") end
159
+ get(path, {}, "22.5.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.2.0") end
179
+ post(path, model, {}, "22.5.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.2.0") end
225
+ post(path, model, options, "22.5.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.2.0") end
269
+ post(path, model, options, "22.5.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.2.0") end
316
+ post(path, model, options, "22.5.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.2.0") end
370
+ post(path, model, options, "22.5.0") end
371
371
 
372
372
  # Remove lines from an existing unlocked transaction
373
373
  #
@@ -398,7 +398,7 @@ 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.2.0") end
401
+ post(path, model, options, "22.5.0") end
402
402
 
403
403
  # Retrieve a single transaction by code
404
404
  #
@@ -440,7 +440,7 @@ module AvaTax
440
440
  # @param include [String] Specifies objects to include in this fetch call
441
441
  # @return [Object]
442
442
  def get_transaction_by_code(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}"
443
- get(path, options, "22.2.0") end
443
+ get(path, options, "22.5.0") end
444
444
 
445
445
  # Retrieve a single transaction by code
446
446
  #
@@ -465,14 +465,13 @@ module AvaTax
465
465
  # @param include [String] Specifies objects to include in this fetch call
466
466
  # @return [Object]
467
467
  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.2.0") end
468
+ get(path, options, "22.5.0") end
469
469
 
470
470
  # Retrieve a single transaction by ID
471
471
  #
472
472
  # Get the unique transaction identified by this URL.
473
473
  #
474
- # This endpoint retrieves the exact transaction identified by this ID number even if that transaction was later adjusted
475
- # by using the `AdjustTransaction` endpoint.
474
+ # This endpoint retrieves the exact transaction identified by this ID number, as long as it is the most version of the transaction.
476
475
  #
477
476
  # A transaction represents a unique potentially taxable action that your company has recorded, and transactions include actions like
478
477
  # sales, purchases, inventory transfer, and returns (also called refunds).
@@ -496,7 +495,7 @@ module AvaTax
496
495
  # @param include [String] Specifies objects to include in this fetch call
497
496
  # @return [Object]
498
497
  def get_transaction_by_id(id, options={}) path = "/api/v2/transactions/#{id}"
499
- get(path, options, "22.2.0") end
498
+ get(path, options, "22.5.0") end
500
499
 
501
500
  # Retrieve all transactions
502
501
  #
@@ -544,7 +543,7 @@ module AvaTax
544
543
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
545
544
  # @return [FetchResult]
546
545
  def list_transactions_by_company(companyCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions"
547
- get(path, options, "22.2.0") end
546
+ get(path, options, "22.5.0") end
548
547
 
549
548
  # Lock a single transaction
550
549
  #
@@ -590,7 +589,7 @@ module AvaTax
590
589
  # @param model [Object] The lock request you wish to execute
591
590
  # @return [Object]
592
591
  def lock_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/lock"
593
- post(path, model, options, "22.2.0") end
592
+ post(path, model, options, "22.5.0") end
594
593
 
595
594
  # Create a refund for a transaction
596
595
  #
@@ -647,7 +646,7 @@ module AvaTax
647
646
  # @param model [Object] Information about the refund to create
648
647
  # @return [Object]
649
648
  def refund_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/refund"
650
- post(path, model, options, "22.2.0") end
649
+ post(path, model, options, "22.5.0") end
651
650
 
652
651
  # Perform multiple actions on a transaction
653
652
  #
@@ -691,7 +690,7 @@ module AvaTax
691
690
  # @param model [Object] The data from an external system to reconcile against AvaTax
692
691
  # @return [Object]
693
692
  def settle_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/settle"
694
- post(path, model, options, "22.2.0") end
693
+ post(path, model, options, "22.5.0") end
695
694
 
696
695
  # Uncommit a transaction for reporting
697
696
  #
@@ -729,7 +728,7 @@ module AvaTax
729
728
  # @param include [String] Specifies objects to include in this fetch call
730
729
  # @return [Object]
731
730
  def uncommit_transaction(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/uncommit"
732
- post(path, options, "22.2.0") end
731
+ post(path, options, "22.5.0") end
733
732
 
734
733
  # Unvoids a transaction
735
734
  #
@@ -764,7 +763,7 @@ module AvaTax
764
763
  # @param include [String] Specifies objects to include in this fetch call
765
764
  # @return [Object]
766
765
  def unvoid_transaction(companyCode, transactionCode, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/unvoid"
767
- post(path, options, "22.2.0") end
766
+ post(path, options, "22.5.0") end
768
767
 
769
768
  # Verify a transaction
770
769
  #
@@ -807,7 +806,7 @@ module AvaTax
807
806
  # @param model [Object] The data from an external system to reconcile against AvaTax
808
807
  # @return [Object]
809
808
  def verify_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/verify"
810
- post(path, model, options, "22.2.0") end
809
+ post(path, model, options, "22.5.0") end
811
810
 
812
811
  # Void a transaction
813
812
  #
@@ -852,7 +851,7 @@ module AvaTax
852
851
  # @param model [Object] The void request you wish to execute. To void a transaction the code must be set to 'DocVoided'
853
852
  # @return [Object]
854
853
  def void_transaction(companyCode, transactionCode, model, options={}) path = "/api/v2/companies/#{companyCode}/transactions/#{transactionCode}/void"
855
- post(path, model, options, "22.2.0") end
854
+ post(path, model, options, "22.5.0") end
856
855
  end
857
856
  end
858
857
  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.2.0") end
20
+ post(path, model, {}, "22.5.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.2.0") end
35
+ delete(path, {}, "22.5.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.2.0") end
51
+ get(path, {}, "22.5.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.2.0") end
74
+ get(path, options, "22.5.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.2.0") end
96
+ get(path, options, "22.5.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.2.0") end
115
+ put(path, model, {}, "22.5.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.2.0") end
19
+ delete(path, {}, "22.5.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.2.0") end
33
+ get(path, options, "22.5.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.2.0") end
49
+ post(path, model, options, "22.5.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.2.0") end
23
+ put(path, model, {}, "22.5.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.2.0") end
45
+ post(path, model, {}, "22.5.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.2.0") end
64
+ delete(path, {}, "22.5.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.2.0") end
84
+ get(path, options, "22.5.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.2.0") end
112
+ get(path, {}, "22.5.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.2.0") end
141
+ get(path, options, "22.5.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.2.0") end
171
+ get(path, options, "22.5.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.2.0") end
189
+ put(path, model, {}, "22.5.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.2.0") end
20
+ get(path, {}, "22.5.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.2.0") end
35
+ get(path, {}, "22.5.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.2.0") end
62
+ get(path, {}, "22.5.0") end
63
63
  end
64
64
  end
65
65
  end
@@ -28,7 +28,11 @@ module AvaTax
28
28
  end
29
29
 
30
30
  faraday.response :json, content_type: /\bjson$/
31
- faraday.basic_auth(username, password)
31
+ faraday.request :basic_auth, username, password
32
+
33
+ # TODO: use the following after upgrading to faraday 2.0
34
+ # see https://github.com/lostisland/faraday/blob/main/docs/middleware/request/authentication.md
35
+ # faraday.request :authorization, :basic, username, password
32
36
 
33
37
  if logger
34
38
  faraday.response :logger do |logger|