avatax 20.7.0 → 20.7.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. checksums.yaml +4 -4
  2. data/lib/avatax/client/accounts.rb +22 -55
  3. data/lib/avatax/client/addresses.rb +4 -10
  4. data/lib/avatax/client/advancedrules.rb +12 -30
  5. data/lib/avatax/client/avafileforms.rb +10 -25
  6. data/lib/avatax/client/batches.rb +16 -40
  7. data/lib/avatax/client/certexpressinvites.rb +6 -15
  8. data/lib/avatax/client/certificates.rb +30 -75
  9. data/lib/avatax/client/companies.rb +32 -80
  10. data/lib/avatax/client/compliance.rb +2 -5
  11. data/lib/avatax/client/contacts.rb +12 -30
  12. data/lib/avatax/client/customers.rb +26 -65
  13. data/lib/avatax/client/datasources.rb +12 -30
  14. data/lib/avatax/client/definitions.rb +118 -295
  15. data/lib/avatax/client/distancethresholds.rb +12 -30
  16. data/lib/avatax/client/filingcalendars.rb +2 -5
  17. data/lib/avatax/client/filings.rb +2 -5
  18. data/lib/avatax/client/firmclientlinkages.rb +18 -45
  19. data/lib/avatax/client/free.rb +6 -15
  20. data/lib/avatax/client/fundingrequests.rb +4 -10
  21. data/lib/avatax/client/items.rb +38 -95
  22. data/lib/avatax/client/jurisdictionoverrides.rb +12 -30
  23. data/lib/avatax/client/locations.rb +14 -35
  24. data/lib/avatax/client/multidocument.rb +20 -50
  25. data/lib/avatax/client/nexus.rb +16 -40
  26. data/lib/avatax/client/notifications.rb +6 -15
  27. data/lib/avatax/client/provisioning.rb +4 -10
  28. data/lib/avatax/client/registrar.rb +20 -50
  29. data/lib/avatax/client/reports.rb +8 -20
  30. data/lib/avatax/client/settings.rb +12 -30
  31. data/lib/avatax/client/subscriptions.rb +6 -15
  32. data/lib/avatax/client/taxcodes.rb +12 -30
  33. data/lib/avatax/client/taxcontent.rb +6 -15
  34. data/lib/avatax/client/taxrules.rb +12 -30
  35. data/lib/avatax/client/transactions.rb +42 -105
  36. data/lib/avatax/client/upcs.rb +12 -30
  37. data/lib/avatax/client/users.rb +16 -40
  38. data/lib/avatax/client/utilities.rb +6 -15
  39. data/lib/avatax/version.rb +1 -1
  40. metadata +2 -2
@@ -27,11 +27,8 @@ module AvaTax
27
27
  # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request access to [Provisioning:RequestNewAccount].
28
28
  # @param model [Object] Information about the account you wish to create and the selected product offerings.
29
29
  # @return [Object]
30
- def request_new_account(model)
31
- path = "/api/v2/accounts/request"
32
- post(path, model)
33
- end
34
-
30
+ def request_new_account(model) path = "/api/v2/accounts/request"
31
+ post(path, model) end
35
32
 
36
33
  # Request a new entitilement to an existing customer
37
34
  #
@@ -46,11 +43,8 @@ module AvaTax
46
43
  # @param id [Integer] The avatax account id of the customer
47
44
  # @param offer [String] The offer to be added to an already existing customer
48
45
  # @return [Object]
49
- def request_new_entitlement(id, offer)
50
- path = "/api/v2/accounts/#{id}/entitlements/#{offer}"
51
- post(path)
52
- end
53
-
46
+ def request_new_entitlement(id, offer) path = "/api/v2/accounts/#{id}/entitlements/#{offer}"
47
+ post(path) end
54
48
  end
55
49
  end
56
50
  end
@@ -16,11 +16,8 @@ module AvaTax
16
16
  # * This API requires one of the following user roles: FirmAdmin, Registrar, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin.
17
17
  # @param model [Object] The account you wish to create.
18
18
  # @return [AccountModel[]]
19
- def create_account(model)
20
- path = "/api/v2/accounts"
21
- post(path, model)
22
- end
23
-
19
+ def create_account(model) path = "/api/v2/accounts"
20
+ post(path, model) end
24
21
 
25
22
  # Create new notifications.
26
23
  #
@@ -44,11 +41,8 @@ module AvaTax
44
41
  # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request access to [NotificationsAPI:Create].
45
42
  # @param model [NotificationModel[]] The notifications you wish to create.
46
43
  # @return [NotificationModel[]]
47
- def create_notifications(model)
48
- path = "/api/v2/notifications"
49
- post(path, model)
50
- end
51
-
44
+ def create_notifications(model) path = "/api/v2/notifications"
45
+ post(path, model) end
52
46
 
53
47
  # Create a new subscription
54
48
  #
@@ -64,11 +58,8 @@ module AvaTax
64
58
  # @param accountId [Integer] The ID of the account that owns this subscription.
65
59
  # @param model [SubscriptionModel[]] The subscription you wish to create.
66
60
  # @return [SubscriptionModel[]]
67
- def create_subscriptions(accountId, model)
68
- path = "/api/v2/accounts/#{accountId}/subscriptions"
69
- post(path, model)
70
- end
71
-
61
+ def create_subscriptions(accountId, model) path = "/api/v2/accounts/#{accountId}/subscriptions"
62
+ post(path, model) end
72
63
 
73
64
  # Delete a single account
74
65
  #
@@ -83,11 +74,8 @@ module AvaTax
83
74
  # * This API requires the user role SystemAdmin.
84
75
  # @param id [Integer] The ID of the account you wish to delete.
85
76
  # @return [ErrorDetail[]]
86
- def delete_account(id)
87
- path = "/api/v2/accounts/#{id}"
88
- delete(path)
89
- end
90
-
77
+ def delete_account(id) path = "/api/v2/accounts/#{id}"
78
+ delete(path) end
91
79
 
92
80
  # Delete a single notification.
93
81
  #
@@ -108,11 +96,8 @@ module AvaTax
108
96
  # * This API is available by invitation only. To request access to this feature, please speak to a business development manager and request access to [NotificationsAPI:Create].
109
97
  # @param id [Integer] The id of the notification you wish to delete.
110
98
  # @return [ErrorDetail[]]
111
- def delete_notification(id)
112
- path = "/api/v2/notifications/#{id}"
113
- delete(path)
114
- end
115
-
99
+ def delete_notification(id) path = "/api/v2/notifications/#{id}"
100
+ delete(path) end
116
101
 
117
102
  # Delete a single subscription
118
103
  #
@@ -127,11 +112,8 @@ module AvaTax
127
112
  # @param accountId [Integer] The ID of the account that owns this subscription.
128
113
  # @param id [Integer] The ID of the subscription you wish to delete.
129
114
  # @return [ErrorDetail[]]
130
- def delete_subscription(accountId, id)
131
- path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
132
- delete(path)
133
- end
134
-
115
+ def delete_subscription(accountId, id) path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
116
+ delete(path) end
135
117
 
136
118
  # Reset a user's password programmatically
137
119
  #
@@ -150,11 +132,8 @@ module AvaTax
150
132
  # @param unmigrateFromAi [Boolean] If user's password was migrated to AI, undo this.
151
133
  # @param model [Object] The new password for this user
152
134
  # @return [String]
153
- def reset_password(userId, model, options={})
154
- path = "/api/v2/passwords/#{userId}/reset"
155
- post(path, model, options)
156
- end
157
-
135
+ def reset_password(userId, model, options={}) path = "/api/v2/passwords/#{userId}/reset"
136
+ post(path, model, options) end
158
137
 
159
138
  # Update a single account
160
139
  #
@@ -169,11 +148,8 @@ module AvaTax
169
148
  # @param id [Integer] The ID of the account you wish to update.
170
149
  # @param model [Object] The account object you wish to update.
171
150
  # @return [Object]
172
- def update_account(id, model)
173
- path = "/api/v2/accounts/#{id}"
174
- put(path, model)
175
- end
176
-
151
+ def update_account(id, model) path = "/api/v2/accounts/#{id}"
152
+ put(path, model) end
177
153
 
178
154
  # Update a single notification.
179
155
  #
@@ -195,11 +171,8 @@ module AvaTax
195
171
  # @param id [Integer] The id of the notification you wish to update.
196
172
  # @param model [Object] The notification object you wish to update.
197
173
  # @return [Object]
198
- def update_notification(id, model)
199
- path = "/api/v2/notifications/#{id}"
200
- put(path, model)
201
- end
202
-
174
+ def update_notification(id, model) path = "/api/v2/notifications/#{id}"
175
+ put(path, model) end
203
176
 
204
177
  # Update a single subscription
205
178
  #
@@ -219,11 +192,8 @@ module AvaTax
219
192
  # @param id [Integer] The ID of the subscription you wish to update
220
193
  # @param model [Object] The subscription you wish to update.
221
194
  # @return [Object]
222
- def update_subscription(accountId, id, model)
223
- path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
224
- put(path, model)
225
- end
226
-
195
+ def update_subscription(accountId, id, model) path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
196
+ put(path, model) end
227
197
  end
228
198
  end
229
199
  end
@@ -25,11 +25,8 @@ module AvaTax
25
25
  # * This API requires one of the following user roles: AccountAdmin, AccountUser, CompanyAdmin, CompanyUser, CSPAdmin, CSPTester, ProStoresOperator, SiteAdmin, SSTAdmin, SystemAdmin, TechnicalSupportAdmin, TechnicalSupportUser.
26
26
  # @param id [Integer] The unique ID number of this report
27
27
  # @return [Object]
28
- def download_report(id)
29
- path = "/api/v2/reports/#{id}/attachment"
30
- get(path)
31
- end
32
-
28
+ def download_report(id) path = "/api/v2/reports/#{id}/attachment"
29
+ get(path) end
33
30
 
34
31
  # Retrieve a single report
35
32
  #
@@ -46,11 +43,8 @@ module AvaTax
46
43
  # This API call returns information about any report type.
47
44
  # @param id [Integer] The unique ID number of the report to retrieve
48
45
  # @return [Object]
49
- def get_report(id)
50
- path = "/api/v2/reports/#{id}"
51
- get(path)
52
- end
53
-
46
+ def get_report(id) path = "/api/v2/reports/#{id}"
47
+ get(path) end
54
48
 
55
49
  # Initiate an ExportDocumentLine report task
56
50
  #
@@ -72,11 +66,8 @@ module AvaTax
72
66
  # @param companyId [Integer] The unique ID number of the company to report on.
73
67
  # @param model [Object] Options that may be configured to customize the report.
74
68
  # @return [ReportModel[]]
75
- def initiate_export_document_line_report(companyId, model)
76
- path = "/api/v2/companies/#{companyId}/reports/exportdocumentline/initiate"
77
- post(path, model)
78
- end
79
-
69
+ def initiate_export_document_line_report(companyId, model) path = "/api/v2/companies/#{companyId}/reports/exportdocumentline/initiate"
70
+ post(path, model) end
80
71
 
81
72
  # List all report tasks for account
82
73
  #
@@ -100,11 +91,8 @@ module AvaTax
100
91
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
101
92
  # @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.
102
93
  # @return [FetchResult]
103
- def list_reports(options={})
104
- path = "/api/v2/reports"
105
- get(path, options)
106
- end
107
-
94
+ def list_reports(options={}) path = "/api/v2/reports"
95
+ get(path, options) end
108
96
  end
109
97
  end
110
98
  end
@@ -22,11 +22,8 @@ module AvaTax
22
22
  # @param companyId [Integer] The ID of the company that owns this setting.
23
23
  # @param model [SettingModel[]] The setting you wish to create.
24
24
  # @return [SettingModel[]]
25
- def create_settings(companyId, model)
26
- path = "/api/v2/companies/#{companyId}/settings"
27
- post(path, model)
28
- end
29
-
25
+ def create_settings(companyId, model) path = "/api/v2/companies/#{companyId}/settings"
26
+ post(path, model) end
30
27
 
31
28
  # Delete a single setting
32
29
  #
@@ -47,11 +44,8 @@ module AvaTax
47
44
  # @param companyId [Integer] The ID of the company that owns this setting.
48
45
  # @param id [Integer] The ID of the setting you wish to delete.
49
46
  # @return [ErrorDetail[]]
50
- def delete_setting(companyId, id)
51
- path = "/api/v2/companies/#{companyId}/settings/#{id}"
52
- delete(path)
53
- end
54
-
47
+ def delete_setting(companyId, id) path = "/api/v2/companies/#{companyId}/settings/#{id}"
48
+ delete(path) end
55
49
 
56
50
  # Retrieve a single setting
57
51
  #
@@ -72,11 +66,8 @@ module AvaTax
72
66
  # @param companyId [Integer] The ID of the company that owns this setting
73
67
  # @param id [Integer] The primary key of this setting
74
68
  # @return [Object]
75
- def get_setting(companyId, id)
76
- path = "/api/v2/companies/#{companyId}/settings/#{id}"
77
- get(path)
78
- end
79
-
69
+ def get_setting(companyId, id) path = "/api/v2/companies/#{companyId}/settings/#{id}"
70
+ get(path) end
80
71
 
81
72
  # Retrieve all settings for this company
82
73
  #
@@ -104,11 +95,8 @@ module AvaTax
104
95
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
105
96
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
106
97
  # @return [FetchResult]
107
- def list_settings_by_company(companyId, options={})
108
- path = "/api/v2/companies/#{companyId}/settings"
109
- get(path, options)
110
- end
111
-
98
+ def list_settings_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/settings"
99
+ get(path, options) end
112
100
 
113
101
  # Retrieve all settings
114
102
  #
@@ -135,11 +123,8 @@ module AvaTax
135
123
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
136
124
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
137
125
  # @return [FetchResult]
138
- def query_settings(options={})
139
- path = "/api/v2/settings"
140
- get(path, options)
141
- end
142
-
126
+ def query_settings(options={}) path = "/api/v2/settings"
127
+ get(path, options) end
143
128
 
144
129
  # Update a single setting
145
130
  #
@@ -165,11 +150,8 @@ module AvaTax
165
150
  # @param id [Integer] The ID of the setting you wish to update
166
151
  # @param model [Object] The setting you wish to update.
167
152
  # @return [Object]
168
- def update_setting(companyId, id, model)
169
- path = "/api/v2/companies/#{companyId}/settings/#{id}"
170
- put(path, model)
171
- end
172
-
153
+ def update_setting(companyId, id, model) path = "/api/v2/companies/#{companyId}/settings/#{id}"
154
+ put(path, model) end
173
155
  end
174
156
  end
175
157
  end
@@ -15,11 +15,8 @@ module AvaTax
15
15
  # @param accountId [Integer] The ID of the account that owns this subscription
16
16
  # @param id [Integer] The primary key of this subscription
17
17
  # @return [Object]
18
- def get_subscription(accountId, id)
19
- path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
20
- get(path)
21
- end
22
-
18
+ def get_subscription(accountId, id) path = "/api/v2/accounts/#{accountId}/subscriptions/#{id}"
19
+ get(path) end
23
20
 
24
21
  # Retrieve subscriptions for this account
25
22
  #
@@ -39,11 +36,8 @@ module AvaTax
39
36
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
40
37
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
41
38
  # @return [FetchResult]
42
- def list_subscriptions_by_account(accountId, options={})
43
- path = "/api/v2/accounts/#{accountId}/subscriptions"
44
- get(path, options)
45
- end
46
-
39
+ def list_subscriptions_by_account(accountId, options={}) path = "/api/v2/accounts/#{accountId}/subscriptions"
40
+ get(path, options) end
47
41
 
48
42
  # Retrieve all subscriptions
49
43
  #
@@ -62,11 +56,8 @@ module AvaTax
62
56
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
63
57
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
64
58
  # @return [FetchResult]
65
- def query_subscriptions(options={})
66
- path = "/api/v2/subscriptions"
67
- get(path, options)
68
- end
69
-
59
+ def query_subscriptions(options={}) path = "/api/v2/subscriptions"
60
+ get(path, options) end
70
61
  end
71
62
  end
72
63
  end
@@ -17,11 +17,8 @@ module AvaTax
17
17
  # @param companyId [Integer] The ID of the company that owns this tax code.
18
18
  # @param model [TaxCodeModel[]] The tax code you wish to create.
19
19
  # @return [TaxCodeModel[]]
20
- def create_tax_codes(companyId, model)
21
- path = "/api/v2/companies/#{companyId}/taxcodes"
22
- post(path, model)
23
- end
24
-
20
+ def create_tax_codes(companyId, model) path = "/api/v2/companies/#{companyId}/taxcodes"
21
+ post(path, model) end
25
22
 
26
23
  # Delete a single tax code
27
24
  #
@@ -33,11 +30,8 @@ module AvaTax
33
30
  # @param companyId [Integer] The ID of the company that owns this tax code.
34
31
  # @param id [Integer] The ID of the tax code you wish to delete.
35
32
  # @return [ErrorDetail[]]
36
- def delete_tax_code(companyId, id)
37
- path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
38
- delete(path)
39
- end
40
-
33
+ def delete_tax_code(companyId, id) path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
34
+ delete(path) end
41
35
 
42
36
  # Retrieve a single tax code
43
37
  #
@@ -53,11 +47,8 @@ module AvaTax
53
47
  # @param companyId [Integer] The ID of the company that owns this tax code
54
48
  # @param id [Integer] The primary key of this tax code
55
49
  # @return [Object]
56
- def get_tax_code(companyId, id)
57
- path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
58
- get(path)
59
- end
60
-
50
+ def get_tax_code(companyId, id) path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
51
+ get(path) end
61
52
 
62
53
  # Retrieve tax codes for this company
63
54
  #
@@ -80,11 +71,8 @@ module AvaTax
80
71
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
81
72
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
82
73
  # @return [FetchResult]
83
- def list_tax_codes_by_company(companyId, options={})
84
- path = "/api/v2/companies/#{companyId}/taxcodes"
85
- get(path, options)
86
- end
87
-
74
+ def list_tax_codes_by_company(companyId, options={}) path = "/api/v2/companies/#{companyId}/taxcodes"
75
+ get(path, options) end
88
76
 
89
77
  # Retrieve all tax codes
90
78
  #
@@ -106,11 +94,8 @@ module AvaTax
106
94
  # @param skip [Integer] If nonzero, skip this number of results before returning data. Used with `$top` to provide pagination for large datasets.
107
95
  # @param orderBy [String] A comma separated list of sort statements in the format `(fieldname) [ASC|DESC]`, for example `id ASC`.
108
96
  # @return [FetchResult]
109
- def query_tax_codes(options={})
110
- path = "/api/v2/taxcodes"
111
- get(path, options)
112
- end
113
-
97
+ def query_tax_codes(options={}) path = "/api/v2/taxcodes"
98
+ get(path, options) end
114
99
 
115
100
  # Update a single tax code
116
101
  #
@@ -129,11 +114,8 @@ module AvaTax
129
114
  # @param id [Integer] The ID of the tax code you wish to update
130
115
  # @param model [Object] The tax code you wish to update.
131
116
  # @return [Object]
132
- def update_tax_code(companyId, id, model)
133
- path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
134
- put(path, model)
135
- end
136
-
117
+ def update_tax_code(companyId, id, model) path = "/api/v2/companies/#{companyId}/taxcodes/#{id}"
118
+ put(path, model) end
137
119
  end
138
120
  end
139
121
  end
@@ -35,11 +35,8 @@ module AvaTax
35
35
  # * This API depends on the following active services<br />*Required* (all): AvaTaxPro.
36
36
  # @param model [Object] Parameters about the desired file format and report format, specifying which company, locations and TaxCodes to include.
37
37
  # @return [Object]
38
- def build_tax_content_file(model)
39
- path = "/api/v2/pointofsaledata/build"
40
- post(path, model)
41
- end
42
-
38
+ def build_tax_content_file(model) path = "/api/v2/pointofsaledata/build"
39
+ post(path, model) end
43
40
 
44
41
  # Build a tax content file for a single location
45
42
  #
@@ -78,11 +75,8 @@ module AvaTax
78
75
  # @param partnerId [String] If specified, requests a custom partner-formatted version of the file. (See PointOfSalePartnerId::* for a list of allowable values)
79
76
  # @param includeJurisCodes [Boolean] When true, the file will include jurisdiction codes in the result.
80
77
  # @return [Object]
81
- def build_tax_content_file_for_location(companyId, id, options={})
82
- path = "/api/v2/companies/#{companyId}/locations/#{id}/pointofsaledata"
83
- get(path, options)
84
- end
85
-
78
+ def build_tax_content_file_for_location(companyId, id, options={}) path = "/api/v2/companies/#{companyId}/locations/#{id}/pointofsaledata"
79
+ get(path, options) end
86
80
 
87
81
  # Download a file listing tax rates by postal code
88
82
  #
@@ -133,11 +127,8 @@ module AvaTax
133
127
  # @param date [DateTime] The date for which point-of-sale data would be calculated (today by default). Example input: 2016-12-31
134
128
  # @param region [String] A two character region code which limits results to a specific region.
135
129
  # @return [Object]
136
- def download_tax_rates_by_zip_code(date, options={})
137
- path = "/api/v2/taxratesbyzipcode/download/#{date}"
138
- get(path, options)
139
- end
140
-
130
+ def download_tax_rates_by_zip_code(date, options={}) path = "/api/v2/taxratesbyzipcode/download/#{date}"
131
+ get(path, options) end
141
132
  end
142
133
  end
143
134
  end