avatax 20.9.0 → 21.10.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (48) hide show
  1. checksums.yaml +4 -4
  2. data/.vs/slnx.sqlite +0 -0
  3. data/lib/avatax/client/accounts.rb +83 -83
  4. data/lib/avatax/client/addresses.rb +21 -21
  5. data/lib/avatax/client/advancedrules.rb +41 -51
  6. data/lib/avatax/client/avafileforms.rb +41 -41
  7. data/lib/avatax/client/batches.rb +62 -62
  8. data/lib/avatax/client/certexpressinvites.rb +39 -39
  9. data/lib/avatax/client/certificates.rb +163 -163
  10. data/lib/avatax/client/companies.rb +157 -156
  11. data/lib/avatax/client/contacts.rb +48 -48
  12. data/lib/avatax/client/customers.rb +145 -145
  13. data/lib/avatax/client/datasources.rb +48 -48
  14. data/lib/avatax/client/definitions.rb +591 -422
  15. data/lib/avatax/client/distancethresholds.rb +48 -48
  16. data/lib/avatax/client/ecms.rb +26 -31
  17. data/lib/avatax/client/ecommercetoken.rb +17 -17
  18. data/lib/avatax/client/errortransactions.rb +27 -15
  19. data/lib/avatax/client/filingcalendars.rb +48 -12
  20. data/lib/avatax/client/filings.rb +23 -21
  21. data/lib/avatax/client/firmclientlinkages.rb +69 -69
  22. data/lib/avatax/client/free.rb +13 -86
  23. data/lib/avatax/client/fundingrequests.rb +20 -20
  24. data/lib/avatax/client/items.rb +255 -137
  25. data/lib/avatax/client/jurisdictionoverrides.rb +48 -48
  26. data/lib/avatax/client/locations.rb +92 -92
  27. data/lib/avatax/client/multidocument.rb +78 -78
  28. data/lib/avatax/client/nexus.rb +133 -105
  29. data/lib/avatax/client/notices.rb +43 -504
  30. data/lib/avatax/client/notifications.rb +27 -27
  31. data/lib/avatax/client/provisioning.rb +20 -20
  32. data/lib/avatax/client/registrar.rb +85 -75
  33. data/lib/avatax/client/reports.rb +44 -35
  34. data/lib/avatax/client/settings.rb +55 -50
  35. data/lib/avatax/client/subscriptions.rb +27 -27
  36. data/lib/avatax/client/taxcodes.rb +48 -48
  37. data/lib/avatax/client/taxcontent.rb +90 -27
  38. data/lib/avatax/client/taxprofiles.rb +14 -10
  39. data/lib/avatax/client/taxrules.rb +50 -50
  40. data/lib/avatax/client/transactions.rb +155 -155
  41. data/lib/avatax/client/upcs.rb +48 -48
  42. data/lib/avatax/client/users.rb +64 -64
  43. data/lib/avatax/client/utilities.rb +27 -27
  44. data/lib/avatax/configuration.rb +1 -1
  45. data/lib/avatax/request.rb +11 -5
  46. data/lib/avatax/version.rb +1 -1
  47. data/spec/avatax/request_spec.rb +25 -0
  48. metadata +12 -4
@@ -3,516 +3,55 @@ module AvaTax
3
3
  module Notices
4
4
 
5
5
 
6
- # Create a new notice comment.
7
- #
8
- # This API is available by invitation only.
9
- # 'Notice comments' are updates by the notice team on the work to be done and that has been done so far on a notice.
10
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
11
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
12
- #
13
- # ### Security Policies
14
- #
15
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
16
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
17
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
18
- # @param companyId [Integer] The ID of the company that owns this notice.
19
- # @param id [Integer] The ID of the tax notice we are adding the comment for.
20
- # @param model [NoticeCommentModel[]] The notice comments you wish to create.
21
- # @return [NoticeCommentModel[]]
22
- def create_notice_comment(companyId, id, model)
23
- path = "/api/v2/companies/#{companyId}/notices/#{id}/comments"
24
- post(path, model)
25
- end
26
-
27
-
28
- # Create a new notice finance details.
29
- #
30
- # This API is available by invitation only.
31
- # 'Notice finance details' is the categorical breakdown of the total charge levied by the tax authority on our customer,
32
- # as broken down in our "notice log" found in Workflow. Main examples of the categories are 'Tax Due', 'Interest', 'Penalty', 'Total Abated'.
33
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
34
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
35
- #
36
- # ### Security Policies
37
- #
38
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
39
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
40
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
41
- # @param companyId [Integer] The ID of the company that owns this notice.
42
- # @param id [Integer] The ID of the notice added to the finance details.
43
- # @param model [NoticeFinanceModel[]] The notice finance details you wish to create.
44
- # @return [NoticeFinanceModel[]]
45
- def create_notice_finance_details(companyId, id, model)
46
- path = "/api/v2/companies/#{companyId}/notices/#{id}/financedetails"
47
- post(path, model)
48
- end
49
-
50
-
51
- # Create a new notice responsibility.
52
- #
53
- # This API is available by invitation only.
54
- # 'Notice comments' are updates by the notice team on the work to be done and that has been done so far on a notice.
55
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
56
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
57
- #
58
- # ### Security Policies
59
- #
60
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
61
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
62
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
63
- # @param companyId [Integer] The ID of the company that owns this notice.
64
- # @param id [Integer] The ID of the tax notice we are adding the responsibility for.
65
- # @param model [NoticeResponsibilityDetailModel[]] The notice responsibilities you wish to create.
66
- # @return [NoticeResponsibilityDetailModel[]]
67
- def create_notice_responsibilities(companyId, id, model)
68
- path = "/api/v2/companies/#{companyId}/notices/#{id}/responsibilities"
69
- post(path, model)
70
- end
71
-
72
-
73
- # Create a new notice root cause.
74
- #
75
- # This API is available by invitation only.
76
- # 'Notice root causes' are are those who are responsible for the notice.
77
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
78
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
79
- #
80
- # ### Security Policies
81
- #
82
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
83
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
84
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
85
- # @param companyId [Integer] The ID of the company that owns this notice.
86
- # @param id [Integer] The ID of the tax notice we are adding the responsibility for.
87
- # @param model [NoticeRootCauseDetailModel[]] The notice root causes you wish to create.
88
- # @return [NoticeRootCauseDetailModel[]]
89
- def create_notice_root_causes(companyId, id, model)
90
- path = "/api/v2/companies/#{companyId}/notices/#{id}/rootcauses"
91
- post(path, model)
92
- end
93
-
94
-
95
- # Create a new notice.
96
- #
97
- # This API is available by invitation only.
98
- # Create one or more new notice objects.
99
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
100
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
101
- #
102
- # ### Security Policies
103
- #
104
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
105
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
106
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
107
- # @param companyId [Integer] The ID of the company that owns this notice.
108
- # @param model [NoticeModel[]] The notice object you wish to create.
109
- # @return [NoticeModel[]]
110
- def create_notices(companyId, model)
111
- path = "/api/v2/companies/#{companyId}/notices"
112
- post(path, model)
113
- end
114
-
115
-
116
- # Delete a single notice.
117
- #
118
- # This API is available by invitation only.
119
- # 'Notice comments' are updates by the notice team on the work to be done and that has been done so far on a notice.
120
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
121
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
122
- #
123
- # ### Security Policies
124
- #
125
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
126
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
127
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
128
- # @param companyId [Integer] The ID of the company that owns this notice.
129
- # @param id [Integer] The ID of the notice you wish to delete the finance detail from.
130
- # @param commentDetailsId [Integer] The ID of the comment you wish to delete.
131
- # @return [ErrorDetail[]]
132
- def delete_comment_details(companyId, id, commentDetailsId)
133
- path = "/api/v2/companies/#{companyId}/notices/#{id}/commentdetails/#{commentdetailsid}"
134
- delete(path)
135
- end
136
-
137
-
138
- # Delete a single notice.
139
- #
140
- # This API is available by invitation only.
141
- # 'Notice finance details' is the categorical breakdown of the total charge levied by the tax authority on our customer,
142
- # as broken down in our "notice log" found in Workflow. Main examples of the categories are 'Tax Due', 'Interest', 'Penalty', 'Total Abated'.
143
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
144
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
145
- #
146
- # ### Security Policies
147
- #
148
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
149
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
150
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
151
- # @param companyId [Integer] The ID of the company that owns this notice.
152
- # @param id [Integer] The ID of the notice you wish to delete the finance detail from.
153
- # @param financeDetailsId [Integer] The ID of the finance detail you wish to delete.
154
- # @return [ErrorDetail[]]
155
- def delete_finance_details(companyId, id, financeDetailsId)
156
- path = "/api/v2/companies/#{companyId}/notices/#{id}/financedetails/#{financedetailsid}"
157
- delete(path)
158
- end
159
-
160
-
161
- # Delete a single notice.
162
- #
163
- # This API is available by invitation only.
164
- # Mark the existing notice object at this URL as deleted.
165
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
166
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
167
- #
168
- # ### Security Policies
169
- #
170
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
171
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
172
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
173
- # @param companyId [Integer] The ID of the company that owns this notice.
174
- # @param id [Integer] The ID of the notice you wish to delete.
175
- # @return [ErrorDetail[]]
176
- def delete_notice(companyId, id)
177
- path = "/api/v2/companies/#{companyId}/notices/#{id}"
178
- delete(path)
179
- end
180
-
181
-
182
- # Delete a single responsibility
183
- #
184
- # This API is available by invitation only.
185
- # Mark the existing notice object at this URL as deleted.
186
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
187
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
188
- #
189
- # ### Security Policies
190
- #
191
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
192
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
193
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
194
- # @param companyId [Integer] The ID of the company that owns this notice.
195
- # @param noticeId [Integer] The ID of the notice you wish to delete.
196
- # @param id [Integer] The ID of the responsibility you wish to delete.
197
- # @return [ErrorDetail[]]
198
- def delete_responsibilities(companyId, noticeId, id)
199
- path = "/api/v2/companies/#{companyId}/notices/#{noticeId}/responsibilities/#{id}"
200
- delete(path)
201
- end
202
-
203
-
204
- # Delete a single root cause.
205
- #
206
- # This API is available by invitation only.
207
- # Mark the existing notice object at this URL as deleted.
208
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
209
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
210
- #
211
- # ### Security Policies
212
- #
213
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
214
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
215
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
216
- # @param companyId [Integer] The ID of the company that owns this notice.
217
- # @param noticeId [Integer] The ID of the notice you wish to delete.
218
- # @param id [Integer] The ID of the root cause you wish to delete.
219
- # @return [ErrorDetail[]]
220
- def delete_root_causes(companyId, noticeId, id)
221
- path = "/api/v2/companies/#{companyId}/notices/#{noticeId}/rootcauses/#{id}"
222
- delete(path)
223
- end
224
-
225
-
226
- # Retrieve a single attachment
227
- #
228
- # This API is available by invitation only.
229
- # Get the file attachment identified by this URL.
230
- #
231
- # ### Security Policies
232
- #
233
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
234
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
235
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
236
- # @param companyId [Integer] The ID of the company for this attachment.
237
- # @param id [Integer] The ResourceFileId of the attachment to download.
6
+ # Creates a new tax notice responsibility type.
7
+ #
8
+ # This API is available by invitation only and only available for users with Compliance admin access.
9
+ #
10
+ # ### Security Policies
11
+ #
12
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
13
+ # * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
14
+ # @param model [Object] The responsibility type to create
238
15
  # @return [Object]
239
- def download_notice_attachment(companyId, id)
240
- path = "/api/v2/companies/#{companyId}/notices/files/#{id}/attachment"
241
- get(path)
242
- end
243
-
244
-
245
- # Retrieve a single notice.
246
- #
247
- # This API is available by invitation only.
248
- # Get the tax notice object identified by this URL.
249
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
250
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
251
- #
252
- # ### Security Policies
253
- #
254
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
255
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
256
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
257
- # @param companyId [Integer] The ID of the company for this notice.
258
- # @param id [Integer] The ID of this notice.
16
+ def create_notice_responsibility_type(model) path = "/api/v2/notices/responsibilities"
17
+ post(path, model) end
18
+
19
+ # Creates a new tax notice root cause type.
20
+ #
21
+ # This API is available by invitation only and only available for users with Compliance admin access.
22
+ #
23
+ # ### Security Policies
24
+ #
25
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
26
+ # * This API depends on the following active services:*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
27
+ # @param model [Object] The root cause type to create
259
28
  # @return [Object]
260
- def get_notice(companyId, id)
261
- path = "/api/v2/companies/#{companyId}/notices/#{id}"
262
- get(path)
263
- end
264
-
29
+ def create_notice_root_cause_type(model) path = "/api/v2/notices/rootcauses"
30
+ post(path, model) end
265
31
 
266
- # Retrieve notice comments for a specific notice.
32
+ # Delete a tax notice responsibility type.
267
33
  #
268
- # This API is available by invitation only.
269
- # 'Notice comments' are updates by the notice team on the work to be done and that has been done so far on a notice.
270
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
271
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
272
- #
273
- # ### Security Policies
274
- #
275
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
276
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
277
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
278
- # @param id [Integer] The ID of the notice.
279
- # @param companyId [Integer] The ID of the company that owns these notices.
280
- # @return [FetchResult]
281
- def get_notice_comments(id, companyId)
282
- path = "/api/v2/companies/#{companyId}/notices/#{id}/comments"
283
- get(path)
284
- end
285
-
286
-
287
- # Retrieve notice finance details for a specific notice.
288
- #
289
- # This API is available by invitation only.
290
- # 'Notice finance details' is the categorical breakdown of the total charge levied by the tax authority on our customer,
291
- # as broken down in our "notice log" found in Workflow. Main examples of the categories are 'Tax Due', 'Interest', 'Penalty', 'Total Abated'.
292
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
293
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
294
- #
295
- # ### Security Policies
296
- #
297
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
298
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
299
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
300
- # @param id [Integer] The ID of the company that owns these notices.
301
- # @param companyId [Integer] The ID of the company that owns these notices.
302
- # @return [FetchResult]
303
- def get_notice_finance_details(id, companyId)
304
- path = "/api/v2/companies/#{companyId}/notices/#{id}/financedetails"
305
- get(path)
306
- end
307
-
308
-
309
- # Retrieve notice responsibilities for a specific notice.
310
- #
311
- # This API is available by invitation only.
312
- # 'Notice responsibilities' are are those who are responsible for the notice.
313
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
314
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
315
- #
316
- # ### Security Policies
317
- #
318
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
319
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
320
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
321
- # @param id [Integer] The ID of the notice.
322
- # @param companyId [Integer] The ID of the company that owns these notices.
323
- # @return [FetchResult]
324
- def get_notice_responsibilities(id, companyId)
325
- path = "/api/v2/companies/#{companyId}/notices/#{id}/responsibilities"
326
- get(path)
327
- end
328
-
329
-
330
- # Retrieve notice root causes for a specific notice.
331
- #
332
- # This API is available by invitation only.
333
- # 'Notice root causes' are are those who are responsible for the notice.
334
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
335
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
336
- #
337
- # ### Security Policies
338
- #
339
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
340
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
341
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
342
- # @param id [Integer] The ID of the notice.
343
- # @param companyId [Integer] The ID of the company that owns these notices.
344
- # @return [FetchResult]
345
- def get_notice_root_causes(id, companyId)
346
- path = "/api/v2/companies/#{companyId}/notices/#{id}/rootcauses"
347
- get(path)
348
- end
349
-
350
-
351
- # Retrieve notices for a company.
352
- #
353
- # This API is available by invitation only.
354
- # List all tax notice objects assigned to this company.
355
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
356
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
357
- #
358
- # Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
359
- # Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
360
- #
361
- # ### Security Policies
362
- #
363
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
364
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
365
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
366
- # @param companyId [Integer] The ID of the company that owns these notices.
367
- # @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:* status, totalRemit, ticketReferenceNo, ticketReferenceUrl, reason, type, createdByUserName, documentReference, jurisdictionName, jurisdictionType, comments, finances, responsibility, rootCause
368
- # @param include [String] A comma separated list of additional data to retrieve.
369
- # @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.
370
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
371
- # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
372
- # @return [FetchResult]
373
- def list_notices_by_company(companyId, options={})
374
- path = "/api/v2/companies/#{companyId}/notices"
375
- get(path, options)
376
- end
377
-
378
-
379
- # Retrieve all notices.
380
- #
381
- # This API is available by invitation only.
382
- #
383
- # This API is deprecated - please use POST `/api/v2/notices/query` API.
384
- #
385
- # Get multiple notice objects across all companies.
386
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
387
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
388
- #
389
- # Search for specific objects using the criteria in the `$filter` parameter; full documentation is available on [Filtering in REST](http://developer.avalara.com/avatax/filtering-in-rest/) .
390
- # Paginate your results using the `$top`, `$skip`, and `$orderby` parameters.
391
- #
392
- # ### Security Policies
393
- #
394
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
395
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
396
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
397
- # @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:* status, totalRemit, ticketReferenceNo, ticketReferenceUrl, reason, type, createdByUserName, documentReference, jurisdictionName, jurisdictionType, comments, finances, responsibility, rootCause
398
- # @param include [String] A comma separated list of additional data to retrieve.
399
- # @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.
400
- # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
401
- # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
402
- # @return [FetchResult]
403
- def query_notices(options={})
404
- path = "/api/v2/notices"
405
- get(path, options)
406
- end
407
-
408
-
409
- # Retrieve all notices.
410
- #
411
- # This API is available by invitation only.
412
- #
413
- # This API is intended to replace the GET `/api/v2/notices` API. The fetch request object is posted on the body of the request instead of the URI, so it's not limited by a set number of characters.
414
- # The documentation of the GET API shows how filtering, sorting and pagination works.
415
- #
416
- # ### Security Policies
417
- #
418
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
419
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
420
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
421
- # @param model [Object] Query object to filter, sort and paginate the filing calendars.
422
- # @return [FetchResult]
423
- def query_notices_post(model)
424
- path = "/api/v2/notices/query"
425
- post(path, model)
426
- end
427
-
428
-
429
- # Update a single notice finance detail.
430
- #
431
- # This API is available by invitation only.
432
- # All data from the existing object will be replaced with data in the object you PUT.
433
- # To set a field's value to null, you may either set its value to null or omit that field from the object you post.
434
- #
435
- # ### Security Policies
436
- #
437
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
438
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
439
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
440
- # @param companyId [Integer] The ID of the company that this notice finance detail belongs to.
441
- # @param noticeid [Integer] The ID of the notice finance detail you wish to update.
442
- # @param financeDetailsId [Integer] The ID of the finance detail you wish to delete.
443
- # @param model [Object] The notice finance detail object you wish to update.
444
- # @return [Object]
445
- def update_finance_details(companyId, noticeid, financeDetailsId, model)
446
- path = "/api/v2/companies/#{companyId}/notices/#{noticeid}/financedetails/#{financedetailsid}"
447
- put(path, model)
448
- end
449
-
450
-
451
- # Update a single notice.
452
- #
453
- # This API is available by invitation only.
454
- # Replace the existing notice object at this URL with an updated object.
455
- # A 'notice' represents a letter sent to a business by a tax authority regarding tax filing issues. Avalara
456
- # Returns customers often receive support and assistance from the Compliance Notices team in handling notices received by taxing authorities.
457
- # All data from the existing object will be replaced with data in the object you PUT.
458
- # To set a field's value to null, you may either set its value to null or omit that field from the object you post.
459
- #
460
- # ### Security Policies
461
- #
462
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
463
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
464
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
465
- # @param companyId [Integer] The ID of the company that this notice belongs to.
466
- # @param id [Integer] The ID of the notice you wish to update.
467
- # @param model [Object] The notice object you wish to update.
468
- # @return [Object]
469
- def update_notice(companyId, id, model)
470
- path = "/api/v2/companies/#{companyId}/notices/#{id}"
471
- put(path, model)
472
- end
473
-
474
-
475
- # Update a single notice comment.
476
- #
477
- # This API is available by invitation only.
478
- # All data from the existing object will be replaced with data in the object you PUT.
479
- # To set a field's value to null, you may either set its value to null or omit that field from the object you post.
480
- #
481
- # ### Security Policies
482
- #
483
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
484
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
485
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
486
- # @param companyId [Integer] The ID of the company that this notice comment belongs to.
487
- # @param noticeid [Integer] The ID of the notice you wish to update.
488
- # @param commentDetailsId [Integer] The ID of the comment you wish to update.
489
- # @param model [Object] The notice comment object you wish to update.
490
- # @return [Object]
491
- def update_notice_comments(companyId, noticeid, commentDetailsId, model)
492
- path = "/api/v2/companies/#{companyId}/notices/#{noticeid}/commentdetails/#{commentdetailsid}"
493
- put(path, model)
494
- end
495
-
34
+ # This API is available by invitation only and only available for users with Compliance admin access.
35
+ #
36
+ # ### Security Policies
37
+ #
38
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
39
+ # @param responsibilityId [Integer] The unique ID of the responsibility type
40
+ # @return [ErrorDetail[]]
41
+ def delete_notice_responsibility_type(responsibilityId) path = "/api/v2/notices/responsibilities/#{responsibilityId}"
42
+ delete(path) end
496
43
 
497
- # Retrieve a single attachment
498
- #
499
- # This API is available by invitation only.
500
- #
501
- # Uploads a file attachment for a tax notice.
502
- #
503
- # ### Security Policies
44
+ # Delete a tax notice root cause type.
504
45
  #
505
- # * This API requires one of the following user roles: AccountAdmin, AccountOperator, AccountUser, CompanyAdmin, CompanyUser, Compliance Operator, Compliance Root User, Compliance Temp User, ComplianceAdmin, ComplianceUser, CSPAdmin, CSPTester, FirmAdmin, FirmUser, ProStoresOperator, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, SystemOperator, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
506
- # * This API depends on the following active services<br />*Returns* (at least one of): Mrs, MRSComplianceManager, AvaTaxCsp.<br />*Firm Managed* (for accounts managed by a firm): ARA, ARAManaged.
507
- # * This API is available by invitation only.<br />*Exempt security roles*: ComplianceRootUser, ComplianceAdmin, ComplianceUser, TechnicalSupportAdmin, TechnicalSupportUser.
508
- # @param companyId [Integer] The ID of the company for this attachment.
509
- # @param model [Object] The upload request.
510
- # @return [Object]
511
- def upload_attachment(companyId, model)
512
- path = "/api/v2/companies/#{companyId}/notices/files/attachment"
513
- post(path, model)
514
- end
515
-
46
+ # This API is available by invitation only and only available for users with Compliance admin access.
47
+ #
48
+ # ### Security Policies
49
+ #
50
+ # * This API requires one of the following user roles: AccountAdmin, CompanyAdmin, Compliance Root User, ComplianceAdmin, ComplianceUser, CSPTester, FirmAdmin, FirmUser, SSTAdmin, TechnicalSupportAdmin, TechnicalSupportUser, TreasuryAdmin, TreasuryUser.
51
+ # @param rootCauseId [Integer] The unique ID of the root cause type
52
+ # @return [ErrorDetail[]]
53
+ def delete_notice_root_cause_type(rootCauseId) path = "/api/v2/notices/rootcauses/#{rootCauseId}"
54
+ delete(path) end
516
55
  end
517
56
  end
518
57
  end