avatax 21.6.0 → 21.10.0

Sign up to get free protection for your applications and to get access to all the features.
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 Items
4
-
5
-
6
- # Delete all classifications for an item
7
- #
1
+ module AvaTax
2
+ class Client
3
+ module Items
4
+
5
+
6
+ # Delete all classifications for an item
7
+ #
8
8
  # Delete all the classifications for a given item.
9
9
  #
10
10
  # A classification is the code for a product in a particular tax system. Classifications enable an item to be used in multiple tax systems which may have different tax rates for a product.
@@ -13,15 +13,15 @@ module AvaTax
13
13
  #
14
14
  # ### Security Policies
15
15
  #
16
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
16
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
17
17
  # @param companyId [Integer] The ID of the company that owns this item.
18
18
  # @param itemId [Integer] The ID of the item you wish to delete the classifications.
19
- # @return [ErrorDetail[]]
20
- def batch_delete_item_classifications(companyId, itemId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications"
21
- delete(path) end
22
-
23
- # Delete all parameters for an item
24
- #
19
+ # @return [ErrorDetail[]]
20
+ def batch_delete_item_classifications(companyId, itemId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications"
21
+ delete(path) end
22
+
23
+ # Delete all parameters for an item
24
+ #
25
25
  # Delete all the parameters for a given item.
26
26
  #
27
27
  # Some items can be taxed differently depending on the properties of that item, such as the item grade or by a particular measurement of that item. In AvaTax, these tax-affecting properties are called "parameters".
@@ -32,15 +32,15 @@ module AvaTax
32
32
  #
33
33
  # ### Security Policies
34
34
  #
35
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
35
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
36
36
  # @param companyId [Integer] The ID of the company that owns this item.
37
37
  # @param itemId [Integer] The ID of the item you wish to delete the parameters.
38
- # @return [ErrorDetail[]]
39
- def batch_delete_item_parameters(companyId, itemId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters"
40
- delete(path) end
41
-
42
- # Bulk upload items from a product catalog
43
- #
38
+ # @return [ErrorDetail[]]
39
+ def batch_delete_item_parameters(companyId, itemId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters"
40
+ delete(path) end
41
+
42
+ # Bulk upload items from a product catalog
43
+ #
44
44
  # Create/Update one or more item objects attached to this company.
45
45
  #
46
46
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -53,15 +53,15 @@ module AvaTax
53
53
  #
54
54
  # ### Security Policies
55
55
  #
56
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
56
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
57
57
  # @param companyId [Integer] The ID of the company that owns this items.
58
58
  # @param model [Object] The items you wish to upload.
59
- # @return [Object]
60
- def bulk_upload_items(companyId, model) path = "/api/v2/companies/#{companyId}/items/upload"
61
- post(path, model) end
62
-
63
- # Add classifications to an item.
64
- #
59
+ # @return [Object]
60
+ def bulk_upload_items(companyId, model) path = "/api/v2/companies/#{companyId}/items/upload"
61
+ post(path, model) end
62
+
63
+ # Add classifications to an item.
64
+ #
65
65
  # Add classifications to an item.
66
66
  #
67
67
  # A classification is the code for a product in a particular tax system. Classifications enable an item to be used in multiple tax systems which may have different tax rates for a product.
@@ -72,16 +72,16 @@ module AvaTax
72
72
  #
73
73
  # ### Security Policies
74
74
  #
75
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
75
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
76
76
  # @param companyId [Integer] The company id.
77
77
  # @param itemId [Integer] The item id.
78
78
  # @param model [ItemClassificationInputModel[]] The item classifications you wish to create.
79
- # @return [ItemClassificationOutputModel[]]
80
- def create_item_classifications(companyId, itemId, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications"
81
- post(path, model) end
82
-
83
- # Add parameters to an item.
84
- #
79
+ # @return [ItemClassificationOutputModel[]]
80
+ def create_item_classifications(companyId, itemId, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications"
81
+ post(path, model) end
82
+
83
+ # Add parameters to an item.
84
+ #
85
85
  # Add parameters to an item.
86
86
  #
87
87
  # Some items can be taxed differently depending on the properties of that item, such as the item grade or by a particular measurement of that item. In AvaTax, these tax-affecting properties are called "parameters".
@@ -96,16 +96,16 @@ module AvaTax
96
96
  #
97
97
  # ### Security Policies
98
98
  #
99
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
99
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
100
100
  # @param companyId [Integer] The ID of the company that owns this item parameter.
101
101
  # @param itemId [Integer] The item id.
102
102
  # @param model [ItemParameterModel[]] The item parameters you wish to create.
103
- # @return [ItemParameterModel[]]
104
- def create_item_parameters(companyId, itemId, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters"
105
- post(path, model) end
106
-
107
- # Create a new item
108
- #
103
+ # @return [ItemParameterModel[]]
104
+ def create_item_parameters(companyId, itemId, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters"
105
+ post(path, model) end
106
+
107
+ # Create a new item
108
+ #
109
109
  # Creates one or more new item objects attached to this company.
110
110
  #
111
111
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -118,31 +118,31 @@ module AvaTax
118
118
  #
119
119
  # ### Security Policies
120
120
  #
121
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
121
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
122
122
  # @param companyId [Integer] The ID of the company that owns this item.
123
123
  # @param model [ItemModel[]] The item you wish to create.
124
- # @return [ItemModel[]]
125
- def create_items(companyId, model) path = "/api/v2/companies/#{companyId}/items"
126
- post(path, model) end
127
-
128
- # Create tags for a item
129
- #
124
+ # @return [ItemModel[]]
125
+ def create_items(companyId, model) path = "/api/v2/companies/#{companyId}/items"
126
+ post(path, model) end
127
+
128
+ # Create tags for a item
129
+ #
130
130
  # Creates one or more new `Tag` objects attached to this Item.
131
131
  #
132
132
  # Item tags puts multiple labels for an item. So that item can be easily grouped by these tags.
133
133
  #
134
134
  # ### Security Policies
135
135
  #
136
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
136
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
137
137
  # @param companyId [Integer] The ID of the company that defined these items
138
138
  # @param itemId [Integer] The ID of the item as defined by the company that owns this tag.
139
139
  # @param model [ItemTagDetailModel[]] Tags you wish to associate with the Item
140
- # @return [ItemTagDetailModel[]]
141
- def create_item_tags(companyId, itemId, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags"
142
- post(path, model) end
143
-
144
- # Delete a single item
145
- #
140
+ # @return [ItemTagDetailModel[]]
141
+ def create_item_tags(companyId, itemId, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags"
142
+ post(path, model) end
143
+
144
+ # Delete a single item
145
+ #
146
146
  # Deletes the item object at this URL.
147
147
  #
148
148
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -155,15 +155,15 @@ module AvaTax
155
155
  #
156
156
  # ### Security Policies
157
157
  #
158
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
158
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
159
159
  # @param companyId [Integer] The ID of the company that owns this item.
160
160
  # @param id [Integer] The ID of the item you wish to delete.
161
- # @return [ErrorDetail[]]
162
- def delete_item(companyId, id) path = "/api/v2/companies/#{companyId}/items/#{id}"
163
- delete(path) end
164
-
165
- # Delete a single item classification.
166
- #
161
+ # @return [ErrorDetail[]]
162
+ def delete_item(companyId, id) path = "/api/v2/companies/#{companyId}/items/#{id}"
163
+ delete(path) end
164
+
165
+ # Delete a single item classification.
166
+ #
167
167
  # Delete a single item classification.
168
168
  #
169
169
  # A classification is the code for a product in a particular tax system. Classifications enable an item to be used in multiple tax systems which may have different tax rates for a product.
@@ -172,16 +172,16 @@ module AvaTax
172
172
  #
173
173
  # ### Security Policies
174
174
  #
175
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
175
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
176
176
  # @param companyId [Integer] The company id.
177
177
  # @param itemId [Integer] The item id.
178
178
  # @param id [Integer] The item classification id.
179
- # @return [ErrorDetail[]]
180
- def delete_item_classification(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications/#{id}"
181
- delete(path) end
182
-
183
- # Delete a single item parameter
184
- #
179
+ # @return [ErrorDetail[]]
180
+ def delete_item_classification(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications/#{id}"
181
+ delete(path) end
182
+
183
+ # Delete a single item parameter
184
+ #
185
185
  # Delete a single item parameter.
186
186
  #
187
187
  # Some items can be taxed differently depending on the properties of that item, such as the item grade or by a particular measurement of that item. In AvaTax, these tax-affecting properties are called "parameters".
@@ -192,47 +192,47 @@ module AvaTax
192
192
  #
193
193
  # ### Security Policies
194
194
  #
195
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
195
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
196
196
  # @param companyId [Integer] The company id
197
197
  # @param itemId [Integer] The item id
198
198
  # @param id [Integer] The parameter id
199
- # @return [ErrorDetail[]]
200
- def delete_item_parameter(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters/#{id}"
201
- delete(path) end
202
-
203
- # Delete item tag by id
204
- #
199
+ # @return [ErrorDetail[]]
200
+ def delete_item_parameter(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters/#{id}"
201
+ delete(path) end
202
+
203
+ # Delete item tag by id
204
+ #
205
205
  # Deletes the `Tag` object of an Item at this URL.
206
206
  #
207
207
  # Item tags puts multiple labels for an item. So that item can be easily grouped by these tags.
208
208
  #
209
209
  # ### Security Policies
210
210
  #
211
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
211
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
212
212
  # @param companyId [Integer] The ID of the company that defined these items
213
213
  # @param itemId [Integer] The ID of the item as defined by the company that owns this tag.
214
214
  # @param itemTagDetailId [Integer] The ID of the item tag detail you wish to delete.
215
- # @return [ErrorDetail[]]
216
- def delete_item_tag(companyId, itemId, itemTagDetailId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags/#{itemTagDetailId}"
217
- delete(path) end
218
-
219
- # Delete all item tags
220
- #
215
+ # @return [ErrorDetail[]]
216
+ def delete_item_tag(companyId, itemId, itemTagDetailId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags/#{itemTagDetailId}"
217
+ delete(path) end
218
+
219
+ # Delete all item tags
220
+ #
221
221
  # Deletes all `Tags` objects of an Item at this URL.
222
222
  #
223
223
  # Item tags puts multiple labels for an item. So that item can be easily grouped by these tags.
224
224
  #
225
225
  # ### Security Policies
226
226
  #
227
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
227
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
228
228
  # @param companyId [Integer] The ID of the company that defined these items.
229
229
  # @param itemId [Integer] The ID of the item as defined by the company that owns this tag.
230
- # @return [ErrorDetail[]]
231
- def delete_item_tags(companyId, itemId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags"
232
- delete(path) end
233
-
234
- # Retrieve a single item
235
- #
230
+ # @return [ErrorDetail[]]
231
+ def delete_item_tags(companyId, itemId) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags"
232
+ delete(path) end
233
+
234
+ # Retrieve a single item
235
+ #
236
236
  # Get the `Item` object identified by this URL.
237
237
  #
238
238
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -243,16 +243,16 @@ module AvaTax
243
243
  #
244
244
  # ### Security Policies
245
245
  #
246
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
246
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
247
247
  # @param companyId [Integer] The ID of the company that owns this item object
248
248
  # @param id [Integer] The primary key of this item
249
249
  # @param include [String] A comma separated list of additional data to retrieve.
250
- # @return [Object]
251
- def get_item(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/items/#{id}"
252
- get(path, options) end
253
-
254
- # Retrieve a single item classification.
255
- #
250
+ # @return [Object]
251
+ def get_item(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/items/#{id}"
252
+ get(path, options) end
253
+
254
+ # Retrieve a single item classification.
255
+ #
256
256
  # Retrieve a single item classification.
257
257
  #
258
258
  # A classification is the code for a product in a particular tax system. Classifications enable an item to be used in multiple tax systems which may have different tax rates for a product.
@@ -261,16 +261,16 @@ module AvaTax
261
261
  #
262
262
  # ### Security Policies
263
263
  #
264
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
264
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
265
265
  # @param companyId [Integer] The company id.
266
266
  # @param itemId [Integer] The item id.
267
267
  # @param id [Integer] The item classification id.
268
- # @return [Object]
269
- def get_item_classification(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications/#{id}"
270
- get(path) end
271
-
272
- # Retrieve a single item parameter
273
- #
268
+ # @return [Object]
269
+ def get_item_classification(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications/#{id}"
270
+ get(path) end
271
+
272
+ # Retrieve a single item parameter
273
+ #
274
274
  # Retrieve a single item parameter.
275
275
  #
276
276
  # Some items can be taxed differently depending on the properties of that item, such as the item grade or by a particular measurement of that item. In AvaTax, these tax-affecting properties are called "parameters".
@@ -281,34 +281,34 @@ module AvaTax
281
281
  #
282
282
  # ### Security Policies
283
283
  #
284
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
284
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
285
285
  # @param companyId [Integer] The company id
286
286
  # @param itemId [Integer] The item id
287
287
  # @param id [Integer] The parameter id
288
- # @return [Object]
289
- def get_item_parameter(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters/#{id}"
290
- get(path) end
291
-
292
- # Retrieve tags for an item
293
- #
288
+ # @return [Object]
289
+ def get_item_parameter(companyId, itemId, id) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters/#{id}"
290
+ get(path) end
291
+
292
+ # Retrieve tags for an item
293
+ #
294
294
  # Get the `Tag` objects of an Item identified by this URL.
295
295
  #
296
296
  # Item tags puts multiple labels for an item. So that item can be easily grouped by these tags.
297
297
  #
298
298
  # ### Security Policies
299
299
  #
300
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
300
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
301
301
  # @param companyId [Integer] The ID of the company that defined these items
302
302
  # @param itemId [Integer] The ID of the item as defined by the company that owns this tag.
303
303
  # @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:* tagName
304
304
  # @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.
305
305
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
306
- # @return [FetchResult]
307
- def get_item_tags(companyId, itemId, options={}) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags"
308
- get(path, options) end
309
-
310
- # Retrieve classifications for an item.
311
- #
306
+ # @return [FetchResult]
307
+ def get_item_tags(companyId, itemId, options={}) path = "/api/v2/companies/#{companyId}/items/#{itemId}/tags"
308
+ get(path, options) end
309
+
310
+ # Retrieve classifications for an item.
311
+ #
312
312
  # List classifications for an item.
313
313
  #
314
314
  # A classification is the code for a product in a particular tax system. Classifications enable an item to be used in multiple tax systems which may have different tax rates for a product.
@@ -320,19 +320,19 @@ module AvaTax
320
320
  #
321
321
  # ### Security Policies
322
322
  #
323
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
323
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
324
324
  # @param companyId [Integer] The company id.
325
325
  # @param itemId [Integer] The item id.
326
326
  # @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:* productCode, systemCode
327
327
  # @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.
328
328
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
329
329
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
330
- # @return [FetchResult]
331
- def list_item_classifications(companyId, itemId, options={}) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications"
332
- get(path, options) end
333
-
334
- # Retrieve parameters for an item
335
- #
330
+ # @return [FetchResult]
331
+ def list_item_classifications(companyId, itemId, options={}) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications"
332
+ get(path, options) end
333
+
334
+ # Retrieve parameters for an item
335
+ #
336
336
  # List parameters for an item.
337
337
  #
338
338
  # Some items can be taxed differently depending on the properties of that item, such as the item grade or by a particular measurement of that item. In AvaTax, these tax-affecting properties are called "parameters".
@@ -346,19 +346,19 @@ module AvaTax
346
346
  #
347
347
  # ### Security Policies
348
348
  #
349
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
349
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
350
350
  # @param companyId [Integer] The company id
351
351
  # @param itemId [Integer] The item id
352
352
  # @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, isNeededForCalculation, isNeededForReturns, isNeededForClassification
353
353
  # @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.
354
354
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
355
355
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
356
- # @return [FetchResult]
357
- def list_item_parameters(companyId, itemId, options={}) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters"
358
- get(path, options) end
359
-
360
- # Retrieve items for this company
361
- #
356
+ # @return [FetchResult]
357
+ def list_item_parameters(companyId, itemId, options={}) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters"
358
+ get(path, options) end
359
+
360
+ # Retrieve items for this company
361
+ #
362
362
  # List all items defined for the current company.
363
363
  #
364
364
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -371,26 +371,30 @@ module AvaTax
371
371
  #
372
372
  # Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
373
373
  #
374
+ # You may specify Tag Name in the `tagName` query parameter if you want to filter items on the basis of tagName
375
+ #
374
376
  # 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:
375
377
  #
376
378
  # * Parameters
377
379
  # * Classifications
380
+ # * Tags
378
381
  #
379
382
  # ### Security Policies
380
383
  #
381
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
384
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
382
385
  # @param companyId [Integer] The ID of the company that defined these items
383
386
  # @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:* taxCode, classifications, parameters, tags
384
387
  # @param include [String] A comma separated list of additional data to retrieve.
385
388
  # @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.
386
389
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
387
390
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
388
- # @return [FetchResult]
389
- def list_items_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/items"
390
- get(path, options) end
391
-
392
- # Retrieve all items
393
- #
391
+ # @param tagName [String] Tag Name on the basis of which you want to filter Items
392
+ # @return [FetchResult]
393
+ def list_items_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/items"
394
+ get(path, options) end
395
+
396
+ # Retrieve all items
397
+ #
394
398
  # Get multiple item objects across all companies.
395
399
  #
396
400
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -405,18 +409,18 @@ module AvaTax
405
409
  #
406
410
  # ### Security Policies
407
411
  #
408
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
412
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
409
413
  # @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:* taxCode, classifications, parameters, tags
410
414
  # @param include [String] A comma separated list of additional data to retrieve.
411
415
  # @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.
412
416
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
413
417
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
414
- # @return [FetchResult]
415
- def query_items(options={}) path = "/api/v2/items"
416
- get(path, options) end
417
-
418
- # Retrieve all items associated with given tag
419
- #
418
+ # @return [FetchResult]
419
+ def query_items(options={}) path = "/api/v2/items"
420
+ get(path, options) end
421
+
422
+ # Retrieve all items associated with given tag
423
+ #
420
424
  # Get multiple item objects associated with given tag.
421
425
  #
422
426
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -431,7 +435,7 @@ module AvaTax
431
435
  #
432
436
  # ### Security Policies
433
437
  #
434
- # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
438
+ # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
435
439
  # @param companyId [Integer] The ID of the company that defined these items.
436
440
  # @param tag [String] The master tag to be associated with item.
437
441
  # @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:* taxCode, classifications, parameters, tags
@@ -439,12 +443,12 @@ module AvaTax
439
443
  # @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.
440
444
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
441
445
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
442
- # @return [FetchResult]
443
- def query_items_by_tag(companyId, tag, options={}) path = "/api/v2/companies/#{companyId}/items/bytags/#{tag}"
444
- get(path, options) end
445
-
446
- # Sync items from a product catalog
447
- #
446
+ # @return [FetchResult]
447
+ def query_items_by_tag(companyId, tag, options={}) path = "/api/v2/companies/#{companyId}/items/bytags/#{tag}"
448
+ get(path, options) end
449
+
450
+ # Sync items from a product catalog
451
+ #
448
452
  # Syncs a list of items with AvaTax without waiting for them to be created. It is ideal for syncing large product catalogs
449
453
  # with AvaTax.
450
454
  #
@@ -460,15 +464,15 @@ module AvaTax
460
464
  #
461
465
  # ### Security Policies
462
466
  #
463
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
467
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
464
468
  # @param companyId [Integer] The ID of the company that owns this item.
465
469
  # @param model [Object] The request object.
466
- # @return [Object]
467
- def sync_items(companyId, model) path = "/api/v2/companies/#{companyId}/items/sync"
468
- post(path, model) end
469
-
470
- # Update a single item
471
- #
470
+ # @return [Object]
471
+ def sync_items(companyId, model) path = "/api/v2/companies/#{companyId}/items/sync"
472
+ post(path, model) end
473
+
474
+ # Update a single item
475
+ #
472
476
  # Replace the existing `Item` object at this URL with an updated object.
473
477
  #
474
478
  # Items are a way of separating your tax calculation process from your tax configuration details. If you choose, you
@@ -484,16 +488,16 @@ module AvaTax
484
488
  #
485
489
  # ### Security Policies
486
490
  #
487
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
491
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
488
492
  # @param companyId [Integer] The ID of the company that this item belongs to.
489
493
  # @param id [Integer] The ID of the item you wish to update
490
494
  # @param model [Object] The item object you wish to update.
491
- # @return [Object]
492
- def update_item(companyId, id, model) path = "/api/v2/companies/#{companyId}/items/#{id}"
493
- put(path, model) end
494
-
495
- # Update an item classification.
496
- #
495
+ # @return [Object]
496
+ def update_item(companyId, id, model) path = "/api/v2/companies/#{companyId}/items/#{id}"
497
+ put(path, model) end
498
+
499
+ # Update an item classification.
500
+ #
497
501
  # Update an item classification.
498
502
  #
499
503
  # A classification is the code for a product in a particular tax system. Classifications enable an item to be used in multiple tax systems which may have different tax rates for a product.
@@ -504,17 +508,17 @@ module AvaTax
504
508
  #
505
509
  # ### Security Policies
506
510
  #
507
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
511
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
508
512
  # @param companyId [Integer] The company id.
509
513
  # @param itemId [Integer] The item id.
510
514
  # @param id [Integer] The item classification id.
511
515
  # @param model [Object] The item object you wish to update.
512
- # @return [Object]
513
- def update_item_classification(companyId, itemId, id, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications/#{id}"
514
- put(path, model) end
515
-
516
- # Update an item parameter
517
- #
516
+ # @return [Object]
517
+ def update_item_classification(companyId, itemId, id, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/classifications/#{id}"
518
+ put(path, model) end
519
+
520
+ # Update an item parameter
521
+ #
518
522
  # Update an item parameter.
519
523
  #
520
524
  # Some items can be taxed differently depending on the properties of that item, such as the item grade or by a particular measurement of that item. In AvaTax, these tax-affecting properties are called "parameters".
@@ -525,14 +529,14 @@ module AvaTax
525
529
  #
526
530
  # ### Security Policies
527
531
  #
528
- # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
532
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, CSPTester, SSTAdmin, TechnicalSupportAdmin.
529
533
  # @param companyId [Integer] The company id.
530
534
  # @param itemId [Integer] The item id
531
535
  # @param id [Integer] The item parameter id
532
536
  # @param model [Object] The item object you wish to update.
533
- # @return [Object]
534
- def update_item_parameter(companyId, itemId, id, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters/#{id}"
535
- put(path, model) end
536
- end
537
- end
537
+ # @return [Object]
538
+ def update_item_parameter(companyId, itemId, id, model) path = "/api/v2/companies/#{companyId}/items/#{itemId}/parameters/#{id}"
539
+ put(path, model) end
540
+ end
541
+ end
538
542
  end