avalara_sdk 25.8.2 → 25.9.0

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 (220) hide show
  1. checksums.yaml +4 -4
  2. data/Gemfile.lock +1 -1
  3. data/README.md +20 -91
  4. data/docs/A1099/V2/CompaniesW9Api.md +18 -18
  5. data/docs/A1099/V2/CompanyBase.md +50 -0
  6. data/docs/A1099/V2/CompanyCreateUpdateRequestModel.md +18 -18
  7. data/docs/A1099/V2/CompanyRequest.md +50 -0
  8. data/docs/A1099/V2/CompanyResponse.md +37 -37
  9. data/docs/A1099/V2/CoveredIndividual.md +56 -0
  10. data/docs/A1099/V2/CreateAndSendW9FormEmailRequest.md +55 -0
  11. data/docs/A1099/V2/CreateCompanyRequest.md +49 -0
  12. data/docs/A1099/V2/CreateIssuerRequest.md +49 -0
  13. data/docs/A1099/V2/EntryStatusResponse.md +20 -0
  14. data/docs/A1099/V2/Form1042S.md +83 -83
  15. data/docs/A1099/V2/Form1095B.md +72 -62
  16. data/docs/A1099/V2/Form1095C.md +112 -0
  17. data/docs/A1099/V2/Form1099Base.md +60 -60
  18. data/docs/A1099/V2/Form1099Div.md +79 -77
  19. data/docs/A1099/V2/Form1099Int.md +76 -74
  20. data/docs/A1099/V2/Form1099K.md +83 -83
  21. data/docs/A1099/V2/Form1099ListRequest.md +20 -0
  22. data/docs/A1099/V2/Form1099Misc.md +79 -77
  23. data/docs/A1099/V2/Form1099Nec.md +64 -64
  24. data/docs/A1099/V2/Form1099R.md +95 -93
  25. data/docs/A1099/V2/Forms1099Api.md +47 -43
  26. data/docs/A1099/V2/FormsW9Api.md +104 -20
  27. data/docs/A1099/V2/Get1099Form200Response.md +19 -19
  28. data/docs/A1099/V2/IntermediaryOrFlowThrough.md +11 -11
  29. data/docs/A1099/V2/IssuerBase.md +46 -0
  30. data/docs/A1099/V2/IssuerCommand.md +16 -16
  31. data/docs/A1099/V2/IssuerRequest.md +46 -0
  32. data/docs/A1099/V2/IssuerResponse.md +35 -35
  33. data/docs/A1099/V2/Issuers1099Api.md +10 -10
  34. data/docs/A1099/V2/JobResponse.md +56 -0
  35. data/docs/A1099/V2/JobsApi.md +91 -0
  36. data/docs/A1099/V2/OfferAndCoverage.md +28 -0
  37. data/docs/A1099/V2/PaginatedQueryResultModelForm1099Base.md +22 -0
  38. data/docs/A1099/V2/PrimaryWithholdingAgent.md +4 -4
  39. data/docs/A1099/V2/StateAndLocalWithholding.md +8 -8
  40. data/docs/A1099/V2/TinMatchStatusResponse.md +1 -1
  41. data/docs/A1099/V2/ValidationError.md +2 -2
  42. data/docs/A1099/V2/W4FormMinimalRequest.md +30 -0
  43. data/docs/A1099/V2/W4FormRequest.md +16 -16
  44. data/docs/A1099/V2/W4FormResponse.md +48 -20
  45. data/docs/A1099/V2/W8BenEFormMinimalRequest.md +28 -0
  46. data/docs/A1099/V2/W8BenEFormRequest.md +15 -15
  47. data/docs/A1099/V2/W8BenEFormResponse.md +96 -68
  48. data/docs/A1099/V2/W8BenFormMinimalRequest.md +28 -0
  49. data/docs/A1099/V2/W8BenFormRequest.md +11 -11
  50. data/docs/A1099/V2/W8BenFormResponse.md +55 -27
  51. data/docs/A1099/V2/W8ImyFormMinimalRequest.md +28 -0
  52. data/docs/A1099/V2/W8ImyFormRequest.md +15 -15
  53. data/docs/A1099/V2/W8ImyFormResponse.md +118 -90
  54. data/docs/A1099/V2/W9FormBaseMinimalRequest.md +24 -0
  55. data/docs/A1099/V2/W9FormBaseRequest.md +7 -7
  56. data/docs/A1099/V2/W9FormBaseResponse.md +6 -6
  57. data/docs/A1099/V2/W9FormMinimalRequest.md +28 -0
  58. data/docs/A1099/V2/W9FormRequest.md +15 -15
  59. data/docs/A1099/V2/W9FormResponse.md +44 -16
  60. data/lib/avalara_sdk/api/A1099/V2/companies_w9_api.rb +27 -27
  61. data/lib/avalara_sdk/api/A1099/V2/forms1099_api.rb +93 -61
  62. data/lib/avalara_sdk/api/A1099/V2/forms_w9_api.rb +157 -19
  63. data/lib/avalara_sdk/api/A1099/V2/issuers1099_api.rb +21 -21
  64. data/lib/avalara_sdk/api/A1099/V2/{jobs1099_api.rb → jobs_api.rb} +9 -9
  65. data/lib/avalara_sdk/api/EInvoicing/V1/data_input_fields_api.rb +1 -1
  66. data/lib/avalara_sdk/api/EInvoicing/V1/documents_api.rb +1 -1
  67. data/lib/avalara_sdk/api/EInvoicing/V1/interop_api.rb +1 -1
  68. data/lib/avalara_sdk/api/EInvoicing/V1/mandates_api.rb +1 -1
  69. data/lib/avalara_sdk/api/EInvoicing/V1/subscriptions_api.rb +1 -1
  70. data/lib/avalara_sdk/api/EInvoicing/V1/tax_identifiers_api.rb +1 -1
  71. data/lib/avalara_sdk/api/EInvoicing/V1/trading_partners_api.rb +1 -1
  72. data/lib/avalara_sdk/api_client.rb +10 -2
  73. data/lib/avalara_sdk/models/A1099/V2/{base_company_model.rb → company_base.rb} +61 -13
  74. data/lib/avalara_sdk/models/A1099/V2/company_create_update_request_model.rb +58 -17
  75. data/lib/avalara_sdk/models/A1099/V2/{company_model.rb → company_request.rb} +62 -64
  76. data/lib/avalara_sdk/models/A1099/V2/company_response.rb +110 -69
  77. data/lib/avalara_sdk/models/A1099/V2/{covered_individual_request.rb → covered_individual.rb} +36 -7
  78. data/lib/avalara_sdk/models/A1099/V2/{i_create_form1099_request.rb → create_and_send_w9_form_email_request.rb} +6 -5
  79. data/lib/avalara_sdk/models/A1099/V2/{error_response_errors_inner.rb → create_company_request.rb} +3 -3
  80. data/lib/avalara_sdk/models/A1099/V2/{i_update_form1099_request.rb → create_issuer_request.rb} +3 -5
  81. data/lib/avalara_sdk/models/A1099/V2/{status_detail.rb → entry_status_response.rb} +20 -18
  82. data/lib/avalara_sdk/models/A1099/V2/error_response.rb +0 -6
  83. data/lib/avalara_sdk/models/A1099/V2/form1042_s.rb +422 -187
  84. data/lib/avalara_sdk/models/A1099/V2/form1095_b.rb +359 -194
  85. data/lib/avalara_sdk/models/A1099/V2/{form1095_b_response.rb → form1095_c.rb} +250 -133
  86. data/lib/avalara_sdk/models/A1099/V2/form1099_base.rb +283 -185
  87. data/lib/avalara_sdk/models/A1099/V2/form1099_div.rb +307 -179
  88. data/lib/avalara_sdk/models/A1099/V2/form1099_int.rb +307 -183
  89. data/lib/avalara_sdk/models/A1099/V2/form1099_k.rb +307 -198
  90. data/lib/avalara_sdk/models/A1099/V2/{http_validation_problem_details.rb → form1099_list_request.rb} +45 -59
  91. data/lib/avalara_sdk/models/A1099/V2/form1099_misc.rb +334 -209
  92. data/lib/avalara_sdk/models/A1099/V2/form1099_nec.rb +297 -192
  93. data/lib/avalara_sdk/models/A1099/V2/form1099_r.rb +437 -282
  94. data/lib/avalara_sdk/models/A1099/V2/get1099_form200_response.rb +9 -9
  95. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through.rb +59 -1
  96. data/lib/avalara_sdk/models/A1099/V2/{intermediary_or_flow_through_request.rb → issuer_base.rb} +119 -46
  97. data/lib/avalara_sdk/models/A1099/V2/issuer_command.rb +42 -23
  98. data/lib/avalara_sdk/models/A1099/V2/{company_response_model.rb → issuer_request.rb} +113 -112
  99. data/lib/avalara_sdk/models/A1099/V2/issuer_response.rb +77 -46
  100. data/lib/avalara_sdk/models/A1099/V2/{job_result.rb → job_response.rb} +102 -42
  101. data/lib/avalara_sdk/models/A1099/V2/{offer_and_coverage_request.rb → offer_and_coverage.rb} +79 -9
  102. data/lib/avalara_sdk/models/A1099/V2/{paginated_query_result_model.rb → paginated_query_result_model_form1099_base.rb} +4 -4
  103. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent.rb +23 -16
  104. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding.rb +8 -0
  105. data/lib/avalara_sdk/models/A1099/V2/validation_error.rb +2 -6
  106. data/lib/avalara_sdk/models/A1099/V2/{attribute.rb → w4_form_minimal_request.rb} +142 -129
  107. data/lib/avalara_sdk/models/A1099/V2/w4_form_request.rb +62 -34
  108. data/lib/avalara_sdk/models/A1099/V2/w4_form_response.rb +191 -15
  109. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_minimal_request.rb +356 -0
  110. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_request.rb +68 -33
  111. data/lib/avalara_sdk/models/A1099/V2/w8_ben_e_form_response.rb +190 -14
  112. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_minimal_request.rb +356 -0
  113. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_request.rb +51 -28
  114. data/lib/avalara_sdk/models/A1099/V2/w8_ben_form_response.rb +191 -15
  115. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_minimal_request.rb +356 -0
  116. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_request.rb +61 -33
  117. data/lib/avalara_sdk/models/A1099/V2/w8_imy_form_response.rb +191 -15
  118. data/lib/avalara_sdk/models/A1099/V2/{problem_details.rb → w9_form_base_minimal_request.rb} +61 -35
  119. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_request.rb +35 -28
  120. data/lib/avalara_sdk/models/A1099/V2/w9_form_base_response.rb +60 -31
  121. data/lib/avalara_sdk/models/A1099/V2/w9_form_minimal_request.rb +356 -0
  122. data/lib/avalara_sdk/models/A1099/V2/w9_form_request.rb +71 -30
  123. data/lib/avalara_sdk/models/A1099/V2/w9_form_response.rb +190 -14
  124. data/lib/avalara_sdk/version.rb +1 -1
  125. data/lib/avalara_sdk.rb +22 -101
  126. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/byebug-11.1.3/gem_make.out +5 -5
  127. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/date-3.4.1/gem_make.out +5 -5
  128. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debase-0.2.9/gem_make.out +5 -5
  129. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/debug-1.10.0/gem_make.out +5 -5
  130. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/erb-5.0.1/gem_make.out +5 -5
  131. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/io-console-0.8.0/gem_make.out +5 -5
  132. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/json-2.12.2/gem_make.out +5 -5
  133. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/prism-1.4.0/gem_make.out +5 -5
  134. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/psych-5.2.6/gem_make.out +5 -5
  135. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/racc-1.8.1/gem_make.out +5 -5
  136. data/vendor/bundle/ruby/3.3.0/extensions/x86_64-linux/3.3.0/stringio-3.1.7/gem_make.out +5 -5
  137. metadata +45 -103
  138. data/lib/avalara_sdk/models/A1099/V2/base_form_list_request.rb +0 -210
  139. data/lib/avalara_sdk/models/A1099/V2/bulk_upsert1099_forms_request.rb +0 -108
  140. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference.rb +0 -403
  141. data/lib/avalara_sdk/models/A1099/V2/covered_individual_reference_response.rb +0 -407
  142. data/lib/avalara_sdk/models/A1099/V2/create1099_form201_response.rb +0 -108
  143. data/lib/avalara_sdk/models/A1099/V2/data.rb +0 -237
  144. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list.rb +0 -238
  145. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item.rb +0 -816
  146. data/lib/avalara_sdk/models/A1099/V2/form1042_s_list_item_response.rb +0 -980
  147. data/lib/avalara_sdk/models/A1099/V2/form1042_s_request.rb +0 -778
  148. data/lib/avalara_sdk/models/A1099/V2/form1042_s_response.rb +0 -619
  149. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list.rb +0 -238
  150. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item.rb +0 -606
  151. data/lib/avalara_sdk/models/A1099/V2/form1095_b_list_item_response.rb +0 -765
  152. data/lib/avalara_sdk/models/A1099/V2/form1095_b_request.rb +0 -627
  153. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list.rb +0 -238
  154. data/lib/avalara_sdk/models/A1099/V2/form1095_c_list_item.rb +0 -662
  155. data/lib/avalara_sdk/models/A1099/V2/form1099_base_response.rb +0 -726
  156. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list.rb +0 -238
  157. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item.rb +0 -747
  158. data/lib/avalara_sdk/models/A1099/V2/form1099_div_list_item_response.rb +0 -931
  159. data/lib/avalara_sdk/models/A1099/V2/form1099_div_request.rb +0 -729
  160. data/lib/avalara_sdk/models/A1099/V2/form1099_div_response.rb +0 -790
  161. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list.rb +0 -238
  162. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item.rb +0 -702
  163. data/lib/avalara_sdk/models/A1099/V2/form1099_int_list_item_response.rb +0 -887
  164. data/lib/avalara_sdk/models/A1099/V2/form1099_int_request.rb +0 -684
  165. data/lib/avalara_sdk/models/A1099/V2/form1099_int_response.rb +0 -773
  166. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list.rb +0 -238
  167. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item.rb +0 -788
  168. data/lib/avalara_sdk/models/A1099/V2/form1099_k_list_item_response.rb +0 -995
  169. data/lib/avalara_sdk/models/A1099/V2/form1099_k_request.rb +0 -770
  170. data/lib/avalara_sdk/models/A1099/V2/form1099_k_response.rb +0 -839
  171. data/lib/avalara_sdk/models/A1099/V2/form1099_list.rb +0 -219
  172. data/lib/avalara_sdk/models/A1099/V2/form1099_list_data_inner.rb +0 -55
  173. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response.rb +0 -220
  174. data/lib/avalara_sdk/models/A1099/V2/form1099_list_response_value_inner.rb +0 -108
  175. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list.rb +0 -238
  176. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item.rb +0 -688
  177. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_list_item_response.rb +0 -886
  178. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_request.rb +0 -670
  179. data/lib/avalara_sdk/models/A1099/V2/form1099_misc_response.rb +0 -754
  180. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list.rb +0 -238
  181. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item.rb +0 -586
  182. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_list_item_response.rb +0 -765
  183. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_request.rb +0 -567
  184. data/lib/avalara_sdk/models/A1099/V2/form1099_nec_response.rb +0 -646
  185. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result.rb +0 -228
  186. data/lib/avalara_sdk/models/A1099/V2/form1099_proccess_result_processed_forms_inner.rb +0 -107
  187. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list.rb +0 -238
  188. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item.rb +0 -763
  189. data/lib/avalara_sdk/models/A1099/V2/form1099_r_list_item_response.rb +0 -942
  190. data/lib/avalara_sdk/models/A1099/V2/form1099_r_request.rb +0 -720
  191. data/lib/avalara_sdk/models/A1099/V2/form1099_r_response.rb +0 -839
  192. data/lib/avalara_sdk/models/A1099/V2/form1099_status_detail_response.rb +0 -223
  193. data/lib/avalara_sdk/models/A1099/V2/form_request_base.rb +0 -502
  194. data/lib/avalara_sdk/models/A1099/V2/form_request_csv_base.rb +0 -475
  195. data/lib/avalara_sdk/models/A1099/V2/form_request_list_item_base.rb +0 -548
  196. data/lib/avalara_sdk/models/A1099/V2/form_request_model.rb +0 -345
  197. data/lib/avalara_sdk/models/A1099/V2/form_response_base.rb +0 -612
  198. data/lib/avalara_sdk/models/A1099/V2/form_single_request_base.rb +0 -530
  199. data/lib/avalara_sdk/models/A1099/V2/included_base.rb +0 -219
  200. data/lib/avalara_sdk/models/A1099/V2/intermediary_or_flow_through_response.rb +0 -311
  201. data/lib/avalara_sdk/models/A1099/V2/link.rb +0 -210
  202. data/lib/avalara_sdk/models/A1099/V2/paginated_w9_forms_model.rb +0 -231
  203. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_request.rb +0 -221
  204. data/lib/avalara_sdk/models/A1099/V2/primary_withholding_agent_response.rb +0 -221
  205. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_request.rb +0 -278
  206. data/lib/avalara_sdk/models/A1099/V2/state_and_local_withholding_response.rb +0 -282
  207. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_app.rb +0 -231
  208. data/lib/avalara_sdk/models/A1099/V2/state_efile_status_detail_response.rb +0 -231
  209. data/lib/avalara_sdk/models/A1099/V2/update1099_form200_response.rb +0 -108
  210. data/lib/avalara_sdk/models/A1099/V2/validation_error_app.rb +0 -229
  211. data/lib/avalara_sdk/models/A1099/V2/validation_error_response.rb +0 -231
  212. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response.rb +0 -233
  213. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner.rb +0 -274
  214. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_addresses_inner.rb +0 -251
  215. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_identifiers_inner.rb +0 -221
  216. data/lib/avalara_sdk/models/EInvoicing/V1/directory_search_response_value_inner_supported_document_types_inner.rb +0 -241
  217. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request.rb +0 -224
  218. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_data_inner.rb +0 -237
  219. data/lib/avalara_sdk/models/EInvoicing/V1/document_fetch_request_metadata.rb +0 -288
  220. data/lib/avalara_sdk/models/EInvoicing/V1/submit_document_data.rb +0 -216
@@ -10,7 +10,10 @@ require 'date'
10
10
  require 'time'
11
11
 
12
12
  module AvalaraSdk::A1099::V2
13
- class W8BenFormResponse < W9FormBaseResponse
13
+ class W8BenFormResponse
14
+ # The form type (always \"W8Ben\" for this model).
15
+ attr_accessor :type
16
+
14
17
  # The name of the individual or entity associated with the form.
15
18
  attr_accessor :name
16
19
 
@@ -50,7 +53,7 @@ module AvalaraSdk::A1099::V2
50
53
  # The country of the mailing address.
51
54
  attr_accessor :mailing_country
52
55
 
53
- # The type of TIN provided.
56
+ # Tax Identification Number (TIN) type.
54
57
  attr_accessor :tin_type
55
58
 
56
59
  # The taxpayer identification number (TIN).
@@ -89,9 +92,71 @@ module AvalaraSdk::A1099::V2
89
92
  # The capacity in which the signer is signing the form.
90
93
  attr_accessor :signer_capacity
91
94
 
95
+ # The unique identifier for the form.
96
+ attr_accessor :id
97
+
98
+ # The entry status information for the form.
99
+ attr_accessor :entry_status
100
+
101
+ # A reference identifier for the form.
102
+ attr_accessor :reference_id
103
+
104
+ # The ID of the associated company.
105
+ attr_accessor :company_id
106
+
107
+ # The display name associated with the form.
108
+ attr_accessor :display_name
109
+
110
+ # The email address of the individual associated with the form.
111
+ attr_accessor :email
112
+
113
+ # Indicates whether the form is archived.
114
+ attr_accessor :archived
115
+
116
+ # Form ID of previous version.
117
+ attr_accessor :ancestor_id
118
+
119
+ # The signature of the form.
120
+ attr_accessor :signature
121
+
122
+ # The date the form was signed.
123
+ attr_accessor :signed_date
124
+
125
+ # The date when e-delivery was consented.
126
+ attr_accessor :e_delivery_consented_at
127
+
128
+ # The creation date of the form.
129
+ attr_accessor :created_at
130
+
131
+ # The last updated date of the form.
132
+ attr_accessor :updated_at
133
+
134
+ class EnumAttributeValidator
135
+ attr_reader :datatype
136
+ attr_reader :allowable_values
137
+
138
+ def initialize(datatype, allowable_values)
139
+ @allowable_values = allowable_values.map do |value|
140
+ case datatype.to_s
141
+ when /Integer/i
142
+ value.to_i
143
+ when /Float/i
144
+ value.to_f
145
+ else
146
+ value
147
+ end
148
+ end
149
+ end
150
+
151
+ def valid?(value)
152
+ !value || allowable_values.include?(value)
153
+ end
154
+ end
155
+
92
156
  # Attribute mapping from ruby-style variable name to JSON key.
93
157
  def self.attribute_map
94
158
  {
159
+ :'type' => :'type',
95
160
  :'name' => :'name',
96
161
  :'citizenship_country' => :'citizenshipCountry',
97
162
  :'residence_address' => :'residenceAddress',
@@ -117,18 +182,32 @@ module AvalaraSdk::A1099::V2
117
182
  :'withholding_rate' => :'withholdingRate',
118
183
  :'income_type' => :'incomeType',
119
184
  :'signer_name' => :'signerName',
120
- :'signer_capacity' => :'signerCapacity'
185
+ :'signer_capacity' => :'signerCapacity',
186
+ :'id' => :'id',
187
+ :'entry_status' => :'entryStatus',
188
+ :'reference_id' => :'referenceId',
189
+ :'company_id' => :'companyId',
190
+ :'display_name' => :'displayName',
191
+ :'email' => :'email',
192
+ :'archived' => :'archived',
193
+ :'ancestor_id' => :'ancestorId',
194
+ :'signature' => :'signature',
195
+ :'signed_date' => :'signedDate',
196
+ :'e_delivery_consented_at' => :'eDeliveryConsentedAt',
197
+ :'created_at' => :'createdAt',
198
+ :'updated_at' => :'updatedAt'
121
199
  }
122
200
  end
123
201
 
124
- # Returns all the JSON keys this model knows about, including the ones defined in its parent(s)
202
+ # Returns all the JSON keys this model knows about
125
203
  def self.acceptable_attributes
126
- attribute_map.values.concat(superclass.acceptable_attributes)
204
+ attribute_map.values
127
205
  end
128
206
 
129
207
  # Attribute type mapping.
130
208
  def self.openapi_types
131
209
  {
210
+ :'type' => :'String',
132
211
  :'name' => :'String',
133
212
  :'citizenship_country' => :'String',
134
213
  :'residence_address' => :'String',
@@ -154,7 +233,20 @@ module AvalaraSdk::A1099::V2
154
233
  :'withholding_rate' => :'String',
155
234
  :'income_type' => :'String',
156
235
  :'signer_name' => :'String',
157
- :'signer_capacity' => :'String'
236
+ :'signer_capacity' => :'String',
237
+ :'id' => :'String',
238
+ :'entry_status' => :'EntryStatusResponse',
239
+ :'reference_id' => :'String',
240
+ :'company_id' => :'String',
241
+ :'display_name' => :'String',
242
+ :'email' => :'String',
243
+ :'archived' => :'Boolean',
244
+ :'ancestor_id' => :'String',
245
+ :'signature' => :'String',
246
+ :'signed_date' => :'Time',
247
+ :'e_delivery_consented_at' => :'Time',
248
+ :'created_at' => :'Time',
249
+ :'updated_at' => :'Time'
158
250
  }
159
251
  end
160
252
 
@@ -177,7 +269,13 @@ module AvalaraSdk::A1099::V2
177
269
  :'withholding_rate',
178
270
  :'income_type',
179
271
  :'signer_name',
180
- :'signer_capacity'
272
+ :'signer_capacity',
273
+ :'reference_id',
274
+ :'email',
275
+ :'ancestor_id',
276
+ :'signature',
277
+ :'signed_date',
278
+ :'e_delivery_consented_at',
181
279
  ])
182
280
  end
183
281
 
@@ -203,8 +301,9 @@ module AvalaraSdk::A1099::V2
203
301
  h[k.to_sym] = v
204
302
  }
205
303
 
206
- # call parent's initialize
207
- super(attributes)
304
+ if attributes.key?(:'type')
305
+ self.type = attributes[:'type']
306
+ end
208
307
 
209
308
  if attributes.key?(:'name')
210
309
  self.name = attributes[:'name']
@@ -309,13 +408,65 @@ module AvalaraSdk::A1099::V2
309
408
  if attributes.key?(:'signer_capacity')
310
409
  self.signer_capacity = attributes[:'signer_capacity']
311
410
  end
411
+
412
+ if attributes.key?(:'id')
413
+ self.id = attributes[:'id']
414
+ end
415
+
416
+ if attributes.key?(:'entry_status')
417
+ self.entry_status = attributes[:'entry_status']
418
+ end
419
+
420
+ if attributes.key?(:'reference_id')
421
+ self.reference_id = attributes[:'reference_id']
422
+ end
423
+
424
+ if attributes.key?(:'company_id')
425
+ self.company_id = attributes[:'company_id']
426
+ end
427
+
428
+ if attributes.key?(:'display_name')
429
+ self.display_name = attributes[:'display_name']
430
+ end
431
+
432
+ if attributes.key?(:'email')
433
+ self.email = attributes[:'email']
434
+ end
435
+
436
+ if attributes.key?(:'archived')
437
+ self.archived = attributes[:'archived']
438
+ end
439
+
440
+ if attributes.key?(:'ancestor_id')
441
+ self.ancestor_id = attributes[:'ancestor_id']
442
+ end
443
+
444
+ if attributes.key?(:'signature')
445
+ self.signature = attributes[:'signature']
446
+ end
447
+
448
+ if attributes.key?(:'signed_date')
449
+ self.signed_date = attributes[:'signed_date']
450
+ end
451
+
452
+ if attributes.key?(:'e_delivery_consented_at')
453
+ self.e_delivery_consented_at = attributes[:'e_delivery_consented_at']
454
+ end
455
+
456
+ if attributes.key?(:'created_at')
457
+ self.created_at = attributes[:'created_at']
458
+ end
459
+
460
+ if attributes.key?(:'updated_at')
461
+ self.updated_at = attributes[:'updated_at']
462
+ end
312
463
  end
313
464
 
314
465
  # Show invalid properties with the reasons. Usually used together with valid?
315
466
  # @return Array for valid properties with the reasons
316
467
  def list_invalid_properties
317
468
  warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
318
- invalid_properties = super
469
+ invalid_properties = Array.new
319
470
  invalid_properties
320
471
  end
321
472
 
@@ -323,7 +474,19 @@ module AvalaraSdk::A1099::V2
323
474
  # @return true if the model is valid
324
475
  def valid?
325
476
  warn '[DEPRECATED] the `valid?` method is obsolete'
326
- true && super
477
+ type_validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
478
+ return false unless type_validator.valid?(@type)
479
+ true
480
+ end
481
+
482
+ # Custom attribute writer method checking allowed values (enum).
483
+ # @param [Object] type Object to be assigned
484
+ def type=(type)
485
+ validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
486
+ unless validator.valid?(type)
487
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
488
+ end
489
+ @type = type
327
490
  end
328
491
 
329
492
  # Checks equality by comparing each attribute.
@@ -331,6 +494,7 @@ module AvalaraSdk::A1099::V2
331
494
  def ==(o)
332
495
  return true if self.equal?(o)
333
496
  self.class == o.class &&
497
+ type == o.type &&
334
498
  name == o.name &&
335
499
  citizenship_country == o.citizenship_country &&
336
500
  residence_address == o.residence_address &&
@@ -356,7 +520,20 @@ module AvalaraSdk::A1099::V2
356
520
  withholding_rate == o.withholding_rate &&
357
521
  income_type == o.income_type &&
358
522
  signer_name == o.signer_name &&
359
- signer_capacity == o.signer_capacity && super(o)
523
+ signer_capacity == o.signer_capacity &&
524
+ id == o.id &&
525
+ entry_status == o.entry_status &&
526
+ reference_id == o.reference_id &&
527
+ company_id == o.company_id &&
528
+ display_name == o.display_name &&
529
+ email == o.email &&
530
+ archived == o.archived &&
531
+ ancestor_id == o.ancestor_id &&
532
+ signature == o.signature &&
533
+ signed_date == o.signed_date &&
534
+ e_delivery_consented_at == o.e_delivery_consented_at &&
535
+ created_at == o.created_at &&
536
+ updated_at == o.updated_at
360
537
  end
361
538
 
362
539
  # @see the `==` method
@@ -368,7 +545,7 @@ module AvalaraSdk::A1099::V2
368
545
  # Calculates hash code according to all attributes.
369
546
  # @return [Integer] Hash code
370
547
  def hash
371
- [name, citizenship_country, residence_address, residence_city, residence_state, residence_zip, residence_country, residence_is_mailing, mailing_address, mailing_city, mailing_state, mailing_zip, mailing_country, tin_type, tin, foreign_tin_not_required, foreign_tin, reference_number, birthday, treaty_country, treaty_article, treaty_reasons, withholding_rate, income_type, signer_name, signer_capacity].hash
548
+ [type, name, citizenship_country, residence_address, residence_city, residence_state, residence_zip, residence_country, residence_is_mailing, mailing_address, mailing_city, mailing_state, mailing_zip, mailing_country, tin_type, tin, foreign_tin_not_required, foreign_tin, reference_number, birthday, treaty_country, treaty_article, treaty_reasons, withholding_rate, income_type, signer_name, signer_capacity, id, entry_status, reference_id, company_id, display_name, email, archived, ancestor_id, signature, signed_date, e_delivery_consented_at, created_at, updated_at].hash
372
549
  end
373
550
 
374
551
  # Builds the object from hash
@@ -376,7 +553,6 @@ module AvalaraSdk::A1099::V2
376
553
  # @return [Object] Returns the model itself
377
554
  def self.build_from_hash(attributes)
378
555
  return nil unless attributes.is_a?(Hash)
379
- super(attributes)
380
556
  attributes = attributes.transform_keys(&:to_sym)
381
557
  transformed_hash = {}
382
558
  openapi_types.each_pair do |key, type|
@@ -453,7 +629,7 @@ module AvalaraSdk::A1099::V2
453
629
  # Returns the object in the form of hash
454
630
  # @return [Hash] Returns the object in the form of hash
455
631
  def to_hash
456
- hash = super
632
+ hash = {}
457
633
  self.class.attribute_map.each_pair do |attr, param|
458
634
  value = self.send(attr)
459
635
  if value.nil?
@@ -0,0 +1,356 @@
1
+ =begin
2
+ #Avalara 1099 & W-9 API Definition
3
+
4
+ ### 🔐 Authentication Generate a **license key** from: *[Avalara Portal](https://www.avalara.com/us/en/signin.html) → Settings → License and API Keys*. [More on authentication methods](https://developer.avalara.com/avatax-dm-combined-erp/common-setup/authentication/authentication-methods/) [Test your credentials](https://developer.avalara.com/avatax/test-credentials/) ## 📘 API & SDK Documentation [Avalara SDK (.NET) on GitHub](https://github.com/avadev/Avalara-SDK-DotNet#avalarasdk--the-unified-c-library-for-next-gen-avalara-services) [Code Examples – 1099 API](https://github.com/avadev/Avalara-SDK-DotNet/blob/main/docs/A1099/V2/Class1099IssuersApi.md#call1099issuersget)
5
+
6
+
7
+ =end
8
+
9
+ require 'date'
10
+ require 'time'
11
+
12
+ module AvalaraSdk::A1099::V2
13
+ class W8ImyFormMinimalRequest
14
+ # The form type (always \"w8imy\" for this model).
15
+ attr_accessor :type
16
+
17
+ # The email address of the individual associated with the form.
18
+ attr_accessor :email
19
+
20
+ # The name of the individual or entity associated with the form.
21
+ attr_accessor :name
22
+
23
+ # A reference number for the form.
24
+ attr_accessor :reference_number
25
+
26
+ # The ID of the associated company. Required when creating a form.
27
+ attr_accessor :company_id
28
+
29
+ # A reference identifier for the form.
30
+ attr_accessor :reference_id
31
+
32
+ class EnumAttributeValidator
33
+ attr_reader :datatype
34
+ attr_reader :allowable_values
35
+
36
+ def initialize(datatype, allowable_values)
37
+ @allowable_values = allowable_values.map do |value|
38
+ case datatype.to_s
39
+ when /Integer/i
40
+ value.to_i
41
+ when /Float/i
42
+ value.to_f
43
+ else
44
+ value
45
+ end
46
+ end
47
+ end
48
+
49
+ def valid?(value)
50
+ !value || allowable_values.include?(value)
51
+ end
52
+ end
53
+
54
+ # Attribute mapping from ruby-style variable name to JSON key.
55
+ def self.attribute_map
56
+ {
57
+ :'type' => :'type',
58
+ :'email' => :'email',
59
+ :'name' => :'name',
60
+ :'reference_number' => :'referenceNumber',
61
+ :'company_id' => :'companyId',
62
+ :'reference_id' => :'referenceId'
63
+ }
64
+ end
65
+
66
+ # Returns all the JSON keys this model knows about
67
+ def self.acceptable_attributes
68
+ attribute_map.values
69
+ end
70
+
71
+ # Attribute type mapping.
72
+ def self.openapi_types
73
+ {
74
+ :'type' => :'String',
75
+ :'email' => :'String',
76
+ :'name' => :'String',
77
+ :'reference_number' => :'String',
78
+ :'company_id' => :'String',
79
+ :'reference_id' => :'String'
80
+ }
81
+ end
82
+
83
+ # List of attributes with nullable: true
84
+ def self.openapi_nullable
85
+ Set.new([
86
+ :'reference_number',
87
+ :'reference_id'
88
+ ])
89
+ end
90
+
91
+ # List of class defined in allOf (OpenAPI v3)
92
+ def self.openapi_all_of
93
+ [
94
+ :'W9FormBaseMinimalRequest'
95
+ ]
96
+ end
97
+
98
+ # Initializes the object
99
+ # @param [Hash] attributes Model attributes in the form of hash
100
+ def initialize(attributes = {})
101
+ if (!attributes.is_a?(Hash))
102
+ fail ArgumentError, "The input argument (attributes) must be a hash in `AvalaraSdk::A1099::V2::W8ImyFormMinimalRequest` initialize method"
103
+ end
104
+
105
+ # check to see if the attribute exists and convert string to symbol for hash key
106
+ attributes = attributes.each_with_object({}) { |(k, v), h|
107
+ if (!self.class.attribute_map.key?(k.to_sym))
108
+ fail ArgumentError, "`#{k}` is not a valid attribute in `AvalaraSdk::A1099::V2::W8ImyFormMinimalRequest`. Please check the name to make sure it's valid. List of attributes: " + self.class.attribute_map.keys.inspect
109
+ end
110
+ h[k.to_sym] = v
111
+ }
112
+
113
+ if attributes.key?(:'type')
114
+ self.type = attributes[:'type']
115
+ end
116
+
117
+ if attributes.key?(:'email')
118
+ self.email = attributes[:'email']
119
+ else
120
+ self.email = nil
121
+ end
122
+
123
+ if attributes.key?(:'name')
124
+ self.name = attributes[:'name']
125
+ else
126
+ self.name = nil
127
+ end
128
+
129
+ if attributes.key?(:'reference_number')
130
+ self.reference_number = attributes[:'reference_number']
131
+ end
132
+
133
+ if attributes.key?(:'company_id')
134
+ self.company_id = attributes[:'company_id']
135
+ end
136
+
137
+ if attributes.key?(:'reference_id')
138
+ self.reference_id = attributes[:'reference_id']
139
+ end
140
+ end
141
+
142
+ # Show invalid properties with the reasons. Usually used together with valid?
143
+ # @return Array for valid properties with the reasons
144
+ def list_invalid_properties
145
+ warn '[DEPRECATED] the `list_invalid_properties` method is obsolete'
146
+ invalid_properties = Array.new
147
+ if @email.nil?
148
+ invalid_properties.push('invalid value for "email", email cannot be nil.')
149
+ end
150
+
151
+ if @email.to_s.length < 1
152
+ invalid_properties.push('invalid value for "email", the character length must be great than or equal to 1.')
153
+ end
154
+
155
+ if @name.nil?
156
+ invalid_properties.push('invalid value for "name", name cannot be nil.')
157
+ end
158
+
159
+ if @name.to_s.length < 1
160
+ invalid_properties.push('invalid value for "name", the character length must be great than or equal to 1.')
161
+ end
162
+
163
+ invalid_properties
164
+ end
165
+
166
+ # Check to see if the all the properties in the model are valid
167
+ # @return true if the model is valid
168
+ def valid?
169
+ warn '[DEPRECATED] the `valid?` method is obsolete'
170
+ type_validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
171
+ return false unless type_validator.valid?(@type)
172
+ return false if @email.nil?
173
+ return false if @email.to_s.length < 1
174
+ return false if @name.nil?
175
+ return false if @name.to_s.length < 1
176
+ true
177
+ end
178
+
179
+ # Custom attribute writer method checking allowed values (enum).
180
+ # @param [Object] type Object to be assigned
181
+ def type=(type)
182
+ validator = EnumAttributeValidator.new('String', ["W4", "W8Ben", "W8BenE", "W8Imy", "W9"])
183
+ unless validator.valid?(type)
184
+ fail ArgumentError, "invalid value for \"type\", must be one of #{validator.allowable_values}."
185
+ end
186
+ @type = type
187
+ end
188
+
189
+ # Custom attribute writer method with validation
190
+ # @param [Object] email Value to be assigned
191
+ def email=(email)
192
+ if email.nil?
193
+ fail ArgumentError, 'email cannot be nil'
194
+ end
195
+
196
+ if email.to_s.length < 1
197
+ fail ArgumentError, 'invalid value for "email", the character length must be great than or equal to 1.'
198
+ end
199
+
200
+ @email = email
201
+ end
202
+
203
+ # Custom attribute writer method with validation
204
+ # @param [Object] name Value to be assigned
205
+ def name=(name)
206
+ if name.nil?
207
+ fail ArgumentError, 'name cannot be nil'
208
+ end
209
+
210
+ if name.to_s.length < 1
211
+ fail ArgumentError, 'invalid value for "name", the character length must be great than or equal to 1.'
212
+ end
213
+
214
+ @name = name
215
+ end
216
+
217
+ # Checks equality by comparing each attribute.
218
+ # @param [Object] Object to be compared
219
+ def ==(o)
220
+ return true if self.equal?(o)
221
+ self.class == o.class &&
222
+ type == o.type &&
223
+ email == o.email &&
224
+ name == o.name &&
225
+ reference_number == o.reference_number &&
226
+ company_id == o.company_id &&
227
+ reference_id == o.reference_id
228
+ end
229
+
230
+ # @see the `==` method
231
+ # @param [Object] Object to be compared
232
+ def eql?(o)
233
+ self == o
234
+ end
235
+
236
+ # Calculates hash code according to all attributes.
237
+ # @return [Integer] Hash code
238
+ def hash
239
+ [type, email, name, reference_number, company_id, reference_id].hash
240
+ end
241
+
242
+ # Builds the object from hash
243
+ # @param [Hash] attributes Model attributes in the form of hash
244
+ # @return [Object] Returns the model itself
245
+ def self.build_from_hash(attributes)
246
+ return nil unless attributes.is_a?(Hash)
247
+ attributes = attributes.transform_keys(&:to_sym)
248
+ transformed_hash = {}
249
+ openapi_types.each_pair do |key, type|
250
+ if attributes.key?(attribute_map[key]) && attributes[attribute_map[key]].nil?
251
+ transformed_hash["#{key}"] = nil
252
+ elsif type =~ /\AArray<(.*)>/i
253
+ # check to ensure the input is an array given that the attribute
254
+ # is documented as an array but the input is not
255
+ if attributes[attribute_map[key]].is_a?(Array)
256
+ transformed_hash["#{key}"] = attributes[attribute_map[key]].map { |v| _deserialize($1, v) }
257
+ end
258
+ elsif !attributes[attribute_map[key]].nil?
259
+ transformed_hash["#{key}"] = _deserialize(type, attributes[attribute_map[key]])
260
+ end
261
+ end
262
+ new(transformed_hash)
263
+ end
264
+
265
+ # Deserializes the data based on type
266
+ # @param string type Data type
267
+ # @param string value Value to be deserialized
268
+ # @return [Object] Deserialized data
269
+ def self._deserialize(type, value)
270
+ case type.to_sym
271
+ when :Time
272
+ Time.parse(value)
273
+ when :Date
274
+ Date.parse(value)
275
+ when :String
276
+ value.to_s
277
+ when :Integer
278
+ value.to_i
279
+ when :Float
280
+ value.to_f
281
+ when :Boolean
282
+ if value.to_s =~ /\A(true|t|yes|y|1)\z/i
283
+ true
284
+ else
285
+ false
286
+ end
287
+ when :Object
288
+ # generic object (usually a Hash), return directly
289
+ value
290
+ when /\AArray<(?<inner_type>.+)>\z/
291
+ inner_type = Regexp.last_match[:inner_type]
292
+ value.map { |v| _deserialize(inner_type, v) }
293
+ when /\AHash<(?<k_type>.+?), (?<v_type>.+)>\z/
294
+ k_type = Regexp.last_match[:k_type]
295
+ v_type = Regexp.last_match[:v_type]
296
+ {}.tap do |hash|
297
+ value.each do |k, v|
298
+ hash[_deserialize(k_type, k)] = _deserialize(v_type, v)
299
+ end
300
+ end
301
+ else # model
302
+ # models (e.g. Pet) or oneOf
303
+ klass = AvalaraSdk::A1099::V2.const_get(type)
304
+ klass.respond_to?(:openapi_any_of) || klass.respond_to?(:openapi_one_of) ? klass.build(value) : klass.build_from_hash(value)
305
+ end
306
+ end
307
+
308
+ # Returns the string representation of the object
309
+ # @return [String] String presentation of the object
310
+ def to_s
311
+ to_hash.to_s
312
+ end
313
+
314
+ # to_body is an alias to to_hash (backward compatibility)
315
+ # @return [Hash] Returns the object in the form of hash
316
+ def to_body
317
+ to_hash
318
+ end
319
+
320
+ # Returns the object in the form of hash
321
+ # @return [Hash] Returns the object in the form of hash
322
+ def to_hash
323
+ hash = {}
324
+ self.class.attribute_map.each_pair do |attr, param|
325
+ value = self.send(attr)
326
+ if value.nil?
327
+ is_nullable = self.class.openapi_nullable.include?(attr)
328
+ next if !is_nullable || (is_nullable && !instance_variable_defined?(:"@#{attr}"))
329
+ end
330
+
331
+ hash[param] = _to_hash(value)
332
+ end
333
+ hash
334
+ end
335
+
336
+ # Outputs non-array value in the form of hash
337
+ # For object, use to_hash. Otherwise, just return the value
338
+ # @param [Object] value Any valid value
339
+ # @return [Hash] Returns the value in the form of hash
340
+ def _to_hash(value)
341
+ if value.is_a?(Array)
342
+ value.compact.map { |v| _to_hash(v) }
343
+ elsif value.is_a?(Hash)
344
+ {}.tap do |hash|
345
+ value.each { |k, v| hash[k] = _to_hash(v) }
346
+ end
347
+ elsif value.respond_to? :to_hash
348
+ value.to_hash
349
+ else
350
+ value
351
+ end
352
+ end
353
+
354
+ end
355
+
356
+ end