signwell_sdk 0.0.1.pre.alpha.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 (227) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +24 -0
  4. data/README.md +398 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/signwell_sdk/client.rb +72 -0
  7. data/lib/signwell_sdk/errors.rb +228 -0
  8. data/lib/signwell_sdk/file_part.rb +58 -0
  9. data/lib/signwell_sdk/internal/transport/base_client.rb +573 -0
  10. data/lib/signwell_sdk/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/signwell_sdk/internal/type/array_of.rb +168 -0
  12. data/lib/signwell_sdk/internal/type/base_model.rb +531 -0
  13. data/lib/signwell_sdk/internal/type/base_page.rb +55 -0
  14. data/lib/signwell_sdk/internal/type/boolean.rb +77 -0
  15. data/lib/signwell_sdk/internal/type/converter.rb +327 -0
  16. data/lib/signwell_sdk/internal/type/enum.rb +156 -0
  17. data/lib/signwell_sdk/internal/type/file_input.rb +111 -0
  18. data/lib/signwell_sdk/internal/type/hash_of.rb +188 -0
  19. data/lib/signwell_sdk/internal/type/request_parameters.rb +42 -0
  20. data/lib/signwell_sdk/internal/type/union.rb +243 -0
  21. data/lib/signwell_sdk/internal/type/unknown.rb +81 -0
  22. data/lib/signwell_sdk/internal/util.rb +920 -0
  23. data/lib/signwell_sdk/internal.rb +20 -0
  24. data/lib/signwell_sdk/models/attachment_request_info.rb +34 -0
  25. data/lib/signwell_sdk/models/checkbox_group_info.rb +66 -0
  26. data/lib/signwell_sdk/models/checkbox_validation.rb +18 -0
  27. data/lib/signwell_sdk/models/copied_contact_info.rb +34 -0
  28. data/lib/signwell_sdk/models/date_format.rb +20 -0
  29. data/lib/signwell_sdk/models/field_type.rb +29 -0
  30. data/lib/signwell_sdk/models/file_info.rb +26 -0
  31. data/lib/signwell_sdk/models/label_info.rb +26 -0
  32. data/lib/signwell_sdk/models/text_validation.rb +25 -0
  33. data/lib/signwell_sdk/models/v1/api_application_delete_params.rb +16 -0
  34. data/lib/signwell_sdk/models/v1/api_application_retrieve_params.rb +16 -0
  35. data/lib/signwell_sdk/models/v1/attachment_request.rb +38 -0
  36. data/lib/signwell_sdk/models/v1/bulk_send_create_params.rb +107 -0
  37. data/lib/signwell_sdk/models/v1/bulk_send_list_params.rb +55 -0
  38. data/lib/signwell_sdk/models/v1/bulk_send_retrieve_csv_template_params.rb +39 -0
  39. data/lib/signwell_sdk/models/v1/bulk_send_retrieve_documents_params.rb +32 -0
  40. data/lib/signwell_sdk/models/v1/bulk_send_retrieve_params.rb +16 -0
  41. data/lib/signwell_sdk/models/v1/bulk_send_validate_csv_params.rb +39 -0
  42. data/lib/signwell_sdk/models/v1/checkbox_group.rb +80 -0
  43. data/lib/signwell_sdk/models/v1/copied_contact.rb +26 -0
  44. data/lib/signwell_sdk/models/v1/document.rb +543 -0
  45. data/lib/signwell_sdk/models/v1/document_create_from_template_params.rb +740 -0
  46. data/lib/signwell_sdk/models/v1/document_create_from_template_response.rb +500 -0
  47. data/lib/signwell_sdk/models/v1/document_create_params.rb +620 -0
  48. data/lib/signwell_sdk/models/v1/document_delete_params.rb +16 -0
  49. data/lib/signwell_sdk/models/v1/document_file.rb +34 -0
  50. data/lib/signwell_sdk/models/v1/document_list_params.rb +32 -0
  51. data/lib/signwell_sdk/models/v1/document_list_response.rb +50 -0
  52. data/lib/signwell_sdk/models/v1/document_remind_params.rb +49 -0
  53. data/lib/signwell_sdk/models/v1/document_retrieve_completed_pdf_params.rb +55 -0
  54. data/lib/signwell_sdk/models/v1/document_retrieve_completed_pdf_response.rb +22 -0
  55. data/lib/signwell_sdk/models/v1/document_retrieve_params.rb +16 -0
  56. data/lib/signwell_sdk/models/v1/document_send_params.rb +198 -0
  57. data/lib/signwell_sdk/models/v1/document_template.rb +503 -0
  58. data/lib/signwell_sdk/models/v1/document_template_create_params.rb +599 -0
  59. data/lib/signwell_sdk/models/v1/document_template_delete_params.rb +16 -0
  60. data/lib/signwell_sdk/models/v1/document_template_list_params.rb +32 -0
  61. data/lib/signwell_sdk/models/v1/document_template_list_response.rb +50 -0
  62. data/lib/signwell_sdk/models/v1/document_template_retrieve_params.rb +16 -0
  63. data/lib/signwell_sdk/models/v1/document_template_update_params.rb +162 -0
  64. data/lib/signwell_sdk/models/v1/hook_create_params.rb +32 -0
  65. data/lib/signwell_sdk/models/v1/hook_delete_params.rb +16 -0
  66. data/lib/signwell_sdk/models/v1/hook_list_params.rb +16 -0
  67. data/lib/signwell_sdk/models/v1/label.rb +22 -0
  68. data/lib/signwell_sdk/models/v1/template_checkbox_group.rb +80 -0
  69. data/lib/signwell_sdk/models/v1_me_params.rb +14 -0
  70. data/lib/signwell_sdk/models.rb +63 -0
  71. data/lib/signwell_sdk/request_options.rb +77 -0
  72. data/lib/signwell_sdk/resources/v1/api_applications.rb +59 -0
  73. data/lib/signwell_sdk/resources/v1/bulk_sends.rb +198 -0
  74. data/lib/signwell_sdk/resources/v1/document_templates.rb +204 -0
  75. data/lib/signwell_sdk/resources/v1/documents.rb +372 -0
  76. data/lib/signwell_sdk/resources/v1/hooks.rb +78 -0
  77. data/lib/signwell_sdk/resources/v1.rb +47 -0
  78. data/lib/signwell_sdk/version.rb +5 -0
  79. data/lib/signwell_sdk.rb +107 -0
  80. data/manifest.yaml +17 -0
  81. data/rbi/signwell_sdk/client.rbi +49 -0
  82. data/rbi/signwell_sdk/errors.rbi +205 -0
  83. data/rbi/signwell_sdk/file_part.rbi +37 -0
  84. data/rbi/signwell_sdk/internal/transport/base_client.rbi +302 -0
  85. data/rbi/signwell_sdk/internal/transport/pooled_net_requester.rbi +84 -0
  86. data/rbi/signwell_sdk/internal/type/array_of.rbi +104 -0
  87. data/rbi/signwell_sdk/internal/type/base_model.rbi +308 -0
  88. data/rbi/signwell_sdk/internal/type/base_page.rbi +43 -0
  89. data/rbi/signwell_sdk/internal/type/boolean.rbi +58 -0
  90. data/rbi/signwell_sdk/internal/type/converter.rbi +216 -0
  91. data/rbi/signwell_sdk/internal/type/enum.rbi +82 -0
  92. data/rbi/signwell_sdk/internal/type/file_input.rbi +59 -0
  93. data/rbi/signwell_sdk/internal/type/hash_of.rbi +104 -0
  94. data/rbi/signwell_sdk/internal/type/request_parameters.rbi +31 -0
  95. data/rbi/signwell_sdk/internal/type/union.rbi +128 -0
  96. data/rbi/signwell_sdk/internal/type/unknown.rbi +58 -0
  97. data/rbi/signwell_sdk/internal/util.rbi +487 -0
  98. data/rbi/signwell_sdk/internal.rbi +18 -0
  99. data/rbi/signwell_sdk/models/attachment_request_info.rbi +52 -0
  100. data/rbi/signwell_sdk/models/checkbox_group_info.rbi +89 -0
  101. data/rbi/signwell_sdk/models/checkbox_validation.rbi +27 -0
  102. data/rbi/signwell_sdk/models/copied_contact_info.rbi +50 -0
  103. data/rbi/signwell_sdk/models/date_format.rbi +26 -0
  104. data/rbi/signwell_sdk/models/field_type.rbi +41 -0
  105. data/rbi/signwell_sdk/models/file_info.rbi +36 -0
  106. data/rbi/signwell_sdk/models/label_info.rbi +40 -0
  107. data/rbi/signwell_sdk/models/text_validation.rbi +44 -0
  108. data/rbi/signwell_sdk/models/v1/api_application_delete_params.rbi +34 -0
  109. data/rbi/signwell_sdk/models/v1/api_application_retrieve_params.rbi +34 -0
  110. data/rbi/signwell_sdk/models/v1/attachment_request.rbi +59 -0
  111. data/rbi/signwell_sdk/models/v1/bulk_send_create_params.rbi +160 -0
  112. data/rbi/signwell_sdk/models/v1/bulk_send_list_params.rbi +92 -0
  113. data/rbi/signwell_sdk/models/v1/bulk_send_retrieve_csv_template_params.rbi +67 -0
  114. data/rbi/signwell_sdk/models/v1/bulk_send_retrieve_documents_params.rbi +62 -0
  115. data/rbi/signwell_sdk/models/v1/bulk_send_retrieve_params.rbi +34 -0
  116. data/rbi/signwell_sdk/models/v1/bulk_send_validate_csv_params.rbi +64 -0
  117. data/rbi/signwell_sdk/models/v1/checkbox_group.rbi +121 -0
  118. data/rbi/signwell_sdk/models/v1/copied_contact.rbi +41 -0
  119. data/rbi/signwell_sdk/models/v1/document.rbi +833 -0
  120. data/rbi/signwell_sdk/models/v1/document_create_from_template_params.rbi +1270 -0
  121. data/rbi/signwell_sdk/models/v1/document_create_from_template_response.rbi +856 -0
  122. data/rbi/signwell_sdk/models/v1/document_create_params.rbi +1019 -0
  123. data/rbi/signwell_sdk/models/v1/document_delete_params.rbi +34 -0
  124. data/rbi/signwell_sdk/models/v1/document_file.rbi +55 -0
  125. data/rbi/signwell_sdk/models/v1/document_list_params.rbi +62 -0
  126. data/rbi/signwell_sdk/models/v1/document_list_response.rbi +71 -0
  127. data/rbi/signwell_sdk/models/v1/document_remind_params.rbi +107 -0
  128. data/rbi/signwell_sdk/models/v1/document_retrieve_completed_pdf_params.rbi +123 -0
  129. data/rbi/signwell_sdk/models/v1/document_retrieve_completed_pdf_response.rbi +34 -0
  130. data/rbi/signwell_sdk/models/v1/document_retrieve_params.rbi +34 -0
  131. data/rbi/signwell_sdk/models/v1/document_send_params.rbi +307 -0
  132. data/rbi/signwell_sdk/models/v1/document_template.rbi +830 -0
  133. data/rbi/signwell_sdk/models/v1/document_template_create_params.rbi +1050 -0
  134. data/rbi/signwell_sdk/models/v1/document_template_delete_params.rbi +34 -0
  135. data/rbi/signwell_sdk/models/v1/document_template_list_params.rbi +62 -0
  136. data/rbi/signwell_sdk/models/v1/document_template_list_response.rbi +71 -0
  137. data/rbi/signwell_sdk/models/v1/document_template_retrieve_params.rbi +34 -0
  138. data/rbi/signwell_sdk/models/v1/document_template_update_params.rbi +257 -0
  139. data/rbi/signwell_sdk/models/v1/hook_create_params.rbi +59 -0
  140. data/rbi/signwell_sdk/models/v1/hook_delete_params.rbi +34 -0
  141. data/rbi/signwell_sdk/models/v1/hook_list_params.rbi +34 -0
  142. data/rbi/signwell_sdk/models/v1/label.rbi +29 -0
  143. data/rbi/signwell_sdk/models/v1/template_checkbox_group.rbi +121 -0
  144. data/rbi/signwell_sdk/models/v1_me_params.rbi +27 -0
  145. data/rbi/signwell_sdk/models.rbi +25 -0
  146. data/rbi/signwell_sdk/request_options.rbi +59 -0
  147. data/rbi/signwell_sdk/resources/v1/api_applications.rbi +45 -0
  148. data/rbi/signwell_sdk/resources/v1/bulk_sends.rbi +173 -0
  149. data/rbi/signwell_sdk/resources/v1/document_templates.rbi +276 -0
  150. data/rbi/signwell_sdk/resources/v1/documents.rbi +527 -0
  151. data/rbi/signwell_sdk/resources/v1/hooks.rbi +52 -0
  152. data/rbi/signwell_sdk/resources/v1.rbi +32 -0
  153. data/rbi/signwell_sdk/version.rbi +5 -0
  154. data/sig/signwell_sdk/client.rbs +26 -0
  155. data/sig/signwell_sdk/errors.rbs +117 -0
  156. data/sig/signwell_sdk/file_part.rbs +21 -0
  157. data/sig/signwell_sdk/internal/transport/base_client.rbs +133 -0
  158. data/sig/signwell_sdk/internal/transport/pooled_net_requester.rbs +48 -0
  159. data/sig/signwell_sdk/internal/type/array_of.rbs +48 -0
  160. data/sig/signwell_sdk/internal/type/base_model.rbs +102 -0
  161. data/sig/signwell_sdk/internal/type/base_page.rbs +24 -0
  162. data/sig/signwell_sdk/internal/type/boolean.rbs +26 -0
  163. data/sig/signwell_sdk/internal/type/converter.rbs +79 -0
  164. data/sig/signwell_sdk/internal/type/enum.rbs +32 -0
  165. data/sig/signwell_sdk/internal/type/file_input.rbs +25 -0
  166. data/sig/signwell_sdk/internal/type/hash_of.rbs +48 -0
  167. data/sig/signwell_sdk/internal/type/request_parameters.rbs +19 -0
  168. data/sig/signwell_sdk/internal/type/union.rbs +52 -0
  169. data/sig/signwell_sdk/internal/type/unknown.rbs +26 -0
  170. data/sig/signwell_sdk/internal/util.rbs +185 -0
  171. data/sig/signwell_sdk/internal.rbs +9 -0
  172. data/sig/signwell_sdk/models/attachment_request_info.rbs +19 -0
  173. data/sig/signwell_sdk/models/checkbox_group_info.rbs +52 -0
  174. data/sig/signwell_sdk/models/checkbox_validation.rbs +16 -0
  175. data/sig/signwell_sdk/models/copied_contact_info.rbs +21 -0
  176. data/sig/signwell_sdk/models/date_format.rbs +22 -0
  177. data/sig/signwell_sdk/models/field_type.rbs +42 -0
  178. data/sig/signwell_sdk/models/file_info.rbs +15 -0
  179. data/sig/signwell_sdk/models/label_info.rbs +19 -0
  180. data/sig/signwell_sdk/models/text_validation.rbs +34 -0
  181. data/sig/signwell_sdk/models/v1/api_application_delete_params.rbs +17 -0
  182. data/sig/signwell_sdk/models/v1/api_application_retrieve_params.rbs +17 -0
  183. data/sig/signwell_sdk/models/v1/attachment_request.rbs +26 -0
  184. data/sig/signwell_sdk/models/v1/bulk_send_create_params.rbs +89 -0
  185. data/sig/signwell_sdk/models/v1/bulk_send_list_params.rbs +51 -0
  186. data/sig/signwell_sdk/models/v1/bulk_send_retrieve_csv_template_params.rbs +32 -0
  187. data/sig/signwell_sdk/models/v1/bulk_send_retrieve_documents_params.rbs +34 -0
  188. data/sig/signwell_sdk/models/v1/bulk_send_retrieve_params.rbs +17 -0
  189. data/sig/signwell_sdk/models/v1/bulk_send_validate_csv_params.rbs +30 -0
  190. data/sig/signwell_sdk/models/v1/checkbox_group.rbs +69 -0
  191. data/sig/signwell_sdk/models/v1/copied_contact.rbs +19 -0
  192. data/sig/signwell_sdk/models/v1/document.rbs +563 -0
  193. data/sig/signwell_sdk/models/v1/document_create_from_template_params.rbs +570 -0
  194. data/sig/signwell_sdk/models/v1/document_create_from_template_response.rbs +518 -0
  195. data/sig/signwell_sdk/models/v1/document_create_params.rbs +473 -0
  196. data/sig/signwell_sdk/models/v1/document_delete_params.rbs +17 -0
  197. data/sig/signwell_sdk/models/v1/document_file.rbs +32 -0
  198. data/sig/signwell_sdk/models/v1/document_list_params.rbs +34 -0
  199. data/sig/signwell_sdk/models/v1/document_list_response.rbs +47 -0
  200. data/sig/signwell_sdk/models/v1/document_remind_params.rbs +48 -0
  201. data/sig/signwell_sdk/models/v1/document_retrieve_completed_pdf_params.rbs +57 -0
  202. data/sig/signwell_sdk/models/v1/document_retrieve_completed_pdf_response.rbs +15 -0
  203. data/sig/signwell_sdk/models/v1/document_retrieve_params.rbs +17 -0
  204. data/sig/signwell_sdk/models/v1/document_send_params.rbs +160 -0
  205. data/sig/signwell_sdk/models/v1/document_template.rbs +530 -0
  206. data/sig/signwell_sdk/models/v1/document_template_create_params.rbs +459 -0
  207. data/sig/signwell_sdk/models/v1/document_template_delete_params.rbs +17 -0
  208. data/sig/signwell_sdk/models/v1/document_template_list_params.rbs +34 -0
  209. data/sig/signwell_sdk/models/v1/document_template_list_response.rbs +47 -0
  210. data/sig/signwell_sdk/models/v1/document_template_retrieve_params.rbs +17 -0
  211. data/sig/signwell_sdk/models/v1/document_template_update_params.rbs +132 -0
  212. data/sig/signwell_sdk/models/v1/hook_create_params.rbs +32 -0
  213. data/sig/signwell_sdk/models/v1/hook_delete_params.rbs +17 -0
  214. data/sig/signwell_sdk/models/v1/hook_list_params.rbs +17 -0
  215. data/sig/signwell_sdk/models/v1/label.rbs +15 -0
  216. data/sig/signwell_sdk/models/v1/template_checkbox_group.rbs +69 -0
  217. data/sig/signwell_sdk/models/v1_me_params.rbs +14 -0
  218. data/sig/signwell_sdk/models.rbs +23 -0
  219. data/sig/signwell_sdk/request_options.rbs +36 -0
  220. data/sig/signwell_sdk/resources/v1/api_applications.rbs +19 -0
  221. data/sig/signwell_sdk/resources/v1/bulk_sends.rbs +55 -0
  222. data/sig/signwell_sdk/resources/v1/document_templates.rbs +71 -0
  223. data/sig/signwell_sdk/resources/v1/documents.rbs +130 -0
  224. data/sig/signwell_sdk/resources/v1/hooks.rbs +22 -0
  225. data/sig/signwell_sdk/resources/v1.rbs +19 -0
  226. data/sig/signwell_sdk/version.rbs +3 -0
  227. metadata +298 -0
@@ -0,0 +1,740 @@
1
+ # frozen_string_literal: true
2
+
3
+ module SignwellSDK
4
+ module Models
5
+ module V1
6
+ # @see SignwellSDK::Resources::V1::Documents#create_from_template
7
+ class DocumentCreateFromTemplateParams < SignwellSDK::Internal::Type::BaseModel
8
+ extend SignwellSDK::Internal::Type::RequestParameters::Converter
9
+ include SignwellSDK::Internal::Type::RequestParameters
10
+
11
+ # @!attribute recipients
12
+ # Document recipients are people that must complete and/or sign a document.
13
+ # Recipients of the document must be assigned to a placeholder of the template.
14
+ # Recipients will inherit all placeholder fields and settings.
15
+ #
16
+ # @return [Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Recipient>]
17
+ required :recipients,
18
+ -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::DocumentCreateFromTemplateParams::Recipient] }
19
+
20
+ # @!attribute allow_decline
21
+ # Whether to allow recipients the option to decline signing a document. If
22
+ # multiple signers are involved in a document, any single recipient can cancel the
23
+ # entire document signing process by declining to sign.
24
+ #
25
+ # @return [Boolean, nil]
26
+ optional :allow_decline, SignwellSDK::Internal::Type::Boolean
27
+
28
+ # @!attribute allow_reassign
29
+ # In some cases a signer is not the right person to sign and may need to reassign
30
+ # their signing responsibilities to another person. This feature allows them to
31
+ # reassign the document to someone else.
32
+ #
33
+ # @return [Boolean, nil]
34
+ optional :allow_reassign, SignwellSDK::Internal::Type::Boolean
35
+
36
+ # @!attribute api_application_id
37
+ # Unique identifier for API Application settings to use. API Applications are
38
+ # optional and mainly used when isolating OAuth apps or for more control over
39
+ # embedded API settings
40
+ #
41
+ # @return [String, nil]
42
+ optional :api_application_id, String
43
+
44
+ # @!attribute apply_signing_order
45
+ # When set to `true` recipients will sign one at a time in the order of the
46
+ # `recipients` collection of this request.
47
+ #
48
+ # @return [Boolean, nil]
49
+ optional :apply_signing_order, SignwellSDK::Internal::Type::Boolean
50
+
51
+ # @!attribute attachment_requests
52
+ # Attachments that a recipient must upload to complete the signing process.
53
+ # Attachment requests are shown after all document fields have been completed.
54
+ #
55
+ # @return [Array<SignwellSDK::Models::V1::AttachmentRequest>, nil]
56
+ optional :attachment_requests,
57
+ -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::AttachmentRequest] }
58
+
59
+ # @!attribute checkbox_groups
60
+ # Checkbox fields that are placed on a document can be grouped with selection
61
+ # requirements. At least 2 checkbox fields in an array of fields must be assigned
62
+ # to the same recipient.
63
+ #
64
+ # @return [Array<SignwellSDK::Models::V1::CheckboxGroup>, nil]
65
+ optional :checkbox_groups, -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::CheckboxGroup] }
66
+
67
+ # @!attribute copied_contacts
68
+ # Copied contacts are emailed the final document once it has been completed by all
69
+ # recipients.
70
+ #
71
+ # @return [Array<SignwellSDK::Models::V1::CopiedContact>, nil]
72
+ optional :copied_contacts, -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::CopiedContact] }
73
+
74
+ # @!attribute custom_requester_email
75
+ # Sets the custom requester email for the document. When set, this is the email
76
+ # used for all email communications, signing notifications, and in the audit file.
77
+ #
78
+ # @return [String, nil]
79
+ optional :custom_requester_email, String
80
+
81
+ # @!attribute custom_requester_name
82
+ # Sets the custom requester name for the document. When set, this is the name used
83
+ # for all email communications, signing notifications, and in the audit file.
84
+ #
85
+ # @return [String, nil]
86
+ optional :custom_requester_name, String
87
+
88
+ # @!attribute decline_redirect_url
89
+ # A URL that recipients are redirected to if the document is declined.
90
+ #
91
+ # @return [String, nil]
92
+ optional :decline_redirect_url, String
93
+
94
+ # @!attribute draft
95
+ # Whether the document can still be updated before sending a signature request. If
96
+ # set to `false` the document is sent for signing as part of this request.
97
+ # Defaults to `false`.
98
+ #
99
+ # @return [Boolean, nil]
100
+ optional :draft, SignwellSDK::Internal::Type::Boolean
101
+
102
+ # @!attribute embedded_signing
103
+ # When set to `true` it enables embedded signing in your website/web application.
104
+ # Embedded functionality works with an iFrame and email authentication is
105
+ # disabled. :embedded_signinig defaults to `false`.
106
+ #
107
+ # @return [Boolean, nil]
108
+ optional :embedded_signing, SignwellSDK::Internal::Type::Boolean
109
+
110
+ # @!attribute embedded_signing_notifications
111
+ # On embedding signing, document owners (and CC'd contacts) do not get a
112
+ # notification email when documents have been completed. Setting this param to
113
+ # `true` will send out those final completed notifications. Default is `false`
114
+ #
115
+ # @return [Boolean, nil]
116
+ optional :embedded_signing_notifications, SignwellSDK::Internal::Type::Boolean
117
+
118
+ # @!attribute expires_in
119
+ # Number of days before the signature request expires. Defaults to the account
120
+ # expiration setting or template expiration (if the document is created from a
121
+ # template).
122
+ #
123
+ # @return [Integer, nil]
124
+ optional :expires_in, Integer
125
+
126
+ # @!attribute fields
127
+ # Fields to be added to any appended files (not existing files). Document fields
128
+ # placed on a document for collecting data or signatures from recipients. Field
129
+ # data should be sent as a 2-dimensional JSON array. One array of fields is needed
130
+ # for each file in the files array. An array of fields can be empty if you have a
131
+ # file that does not contain any fields.
132
+ #
133
+ # @return [Array<Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field>>, nil]
134
+ optional :fields,
135
+ -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::DocumentCreateFromTemplateParams::Field]] }
136
+
137
+ # @!attribute files
138
+ #
139
+ # @return [Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::File>, nil]
140
+ optional :files,
141
+ -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::DocumentCreateFromTemplateParams::File] }
142
+
143
+ # @!attribute labels
144
+ # Labels can be used to organize documents in a way that can make it easy to find
145
+ # using the document search in SignWell. A document can have multiple labels.
146
+ # Updating labels on a document will replace any existing labels for that
147
+ # document.
148
+ #
149
+ # @return [Array<SignwellSDK::Models::V1::Label>, nil]
150
+ optional :labels, -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::Label] }
151
+
152
+ # @!attribute language
153
+ # Sets the language for all recipients on the document and updates all recipient
154
+ # side interactions including the document email and the document itself. Accepted
155
+ # languages: English, Français, Español, Deutsch, Polski, Português, Dansk,
156
+ # Nederlands, Italiano, Русский, Svenska, العربية, Ελληνικά, Türkçe, Slovenčina.
157
+ # Defaults to English. Language should be sent in ISO 639-1 format: en, fr, es,
158
+ # de, pl, pt, da, nl, it, ru, sv, ar, el, tr, sk.
159
+ #
160
+ # @return [String, nil]
161
+ optional :language, String
162
+
163
+ # @!attribute message
164
+ # Email message for the signature request that recipients will see. Defaults to
165
+ # the default system message or a template message (if the document is created
166
+ # from a template).
167
+ #
168
+ # @return [String, nil]
169
+ optional :message, String
170
+
171
+ # @!attribute metadata
172
+ # Optional key-value data that can be associated with the document. If set, will
173
+ # be available every time the document data is returned.
174
+ #
175
+ # @return [Hash{Symbol=>String}, nil]
176
+ optional :metadata, SignwellSDK::Internal::Type::HashOf[String]
177
+
178
+ # @!attribute name
179
+ # The name of the document.
180
+ #
181
+ # @return [String, nil]
182
+ optional :name, String
183
+
184
+ # @!attribute redirect_url
185
+ # A URL that recipients are redirected to after successfully signing a document.
186
+ #
187
+ # @return [String, nil]
188
+ optional :redirect_url, String
189
+
190
+ # @!attribute reminders
191
+ # Whether to send signing reminders to recipients. Reminders are sent on day 3,
192
+ # day 6, and day 10 if set to `true`. Defaults to `true`.
193
+ #
194
+ # @return [Boolean, nil]
195
+ optional :reminders, SignwellSDK::Internal::Type::Boolean
196
+
197
+ # @!attribute subject
198
+ # Email subject for the signature request that recipients will see. Defaults to
199
+ # the default system subject or a template subject (if the document is created
200
+ # from a template).
201
+ #
202
+ # @return [String, nil]
203
+ optional :subject, String
204
+
205
+ # @!attribute template_fields
206
+ # Fields of your template(s) that you can prepopulate with values. Signature and
207
+ # Initials fields cannot be signed through the API.
208
+ #
209
+ # @return [Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::TemplateField>, nil]
210
+ optional :template_fields,
211
+ -> { SignwellSDK::Internal::Type::ArrayOf[SignwellSDK::V1::DocumentCreateFromTemplateParams::TemplateField] }
212
+
213
+ # @!attribute template_id
214
+ # Use when you have to create a document from a single template. Either
215
+ # :template_id or :template_ids must be present in the request, not both.
216
+ #
217
+ # @return [String, nil]
218
+ optional :template_id, String
219
+
220
+ # @!attribute template_ids
221
+ # Use when you have to create a document from multiple templates. Either
222
+ # :template_id or :template_ids must be present in the request, not both.
223
+ #
224
+ # @return [Array<String>, nil]
225
+ optional :template_ids, SignwellSDK::Internal::Type::ArrayOf[String]
226
+
227
+ # @!attribute test_mode
228
+ # Set to `true` to enable Test Mode. Documents created with Test Mode do not count
229
+ # towards API billing and are not legally binding. Defaults to `false`
230
+ #
231
+ # @return [Boolean, nil]
232
+ optional :test_mode, SignwellSDK::Internal::Type::Boolean
233
+
234
+ # @!attribute text_tags
235
+ # An alternative way (if you can’t use the recommended way) of placing fields in
236
+ # specific locations of your document by using special text tags. Useful when
237
+ # changing the content of your files changes the location of fields. See API
238
+ # documentation for “Text Tags” for details. Defaults to false.
239
+ #
240
+ # @return [Boolean, nil]
241
+ optional :text_tags, SignwellSDK::Internal::Type::Boolean
242
+
243
+ # @!attribute with_signature_page
244
+ # When set to `true` the document will have a signature page added to the end, and
245
+ # all signers will be required to add their signature on that page.
246
+ #
247
+ # @return [Boolean, nil]
248
+ optional :with_signature_page, SignwellSDK::Internal::Type::Boolean
249
+
250
+ # @!method initialize(recipients:, allow_decline: nil, allow_reassign: nil, api_application_id: nil, apply_signing_order: nil, attachment_requests: nil, checkbox_groups: nil, copied_contacts: nil, custom_requester_email: nil, custom_requester_name: nil, decline_redirect_url: nil, draft: nil, embedded_signing: nil, embedded_signing_notifications: nil, expires_in: nil, fields: nil, files: nil, labels: nil, language: nil, message: nil, metadata: nil, name: nil, redirect_url: nil, reminders: nil, subject: nil, template_fields: nil, template_id: nil, template_ids: nil, test_mode: nil, text_tags: nil, with_signature_page: nil, request_options: {})
251
+ # Some parameter documentations has been truncated, see
252
+ # {SignwellSDK::Models::V1::DocumentCreateFromTemplateParams} for more details.
253
+ #
254
+ # @param recipients [Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Recipient>] Document recipients are people that must complete and/or sign a document. Recipi
255
+ #
256
+ # @param allow_decline [Boolean] Whether to allow recipients the option to decline signing a document. If multipl
257
+ #
258
+ # @param allow_reassign [Boolean] In some cases a signer is not the right person to sign and may need to reassign
259
+ #
260
+ # @param api_application_id [String] Unique identifier for API Application settings to use. API Applications are opti
261
+ #
262
+ # @param apply_signing_order [Boolean] When set to `true` recipients will sign one at a time in the order of the `recip
263
+ #
264
+ # @param attachment_requests [Array<SignwellSDK::Models::V1::AttachmentRequest>] Attachments that a recipient must upload to complete the signing process. Attach
265
+ #
266
+ # @param checkbox_groups [Array<SignwellSDK::Models::V1::CheckboxGroup>] Checkbox fields that are placed on a document can be grouped with selection requ
267
+ #
268
+ # @param copied_contacts [Array<SignwellSDK::Models::V1::CopiedContact>] Copied contacts are emailed the final document once it has been completed by all
269
+ #
270
+ # @param custom_requester_email [String] Sets the custom requester email for the document. When set, this is the email us
271
+ #
272
+ # @param custom_requester_name [String] Sets the custom requester name for the document. When set, this is the name used
273
+ #
274
+ # @param decline_redirect_url [String] A URL that recipients are redirected to if the document is declined.
275
+ #
276
+ # @param draft [Boolean] Whether the document can still be updated before sending a signature request. If
277
+ #
278
+ # @param embedded_signing [Boolean] When set to `true` it enables embedded signing in your website/web application.
279
+ #
280
+ # @param embedded_signing_notifications [Boolean] On embedding signing, document owners (and CC'd contacts) do not get a notificat
281
+ #
282
+ # @param expires_in [Integer] Number of days before the signature request expires. Defaults to the account exp
283
+ #
284
+ # @param fields [Array<Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field>>] Fields to be added to any appended files (not existing files). Document fields p
285
+ #
286
+ # @param files [Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::File>]
287
+ #
288
+ # @param labels [Array<SignwellSDK::Models::V1::Label>] Labels can be used to organize documents in a way that can make it easy to find
289
+ #
290
+ # @param language [String] Sets the language for all recipients on the document and updates all recipient s
291
+ #
292
+ # @param message [String] Email message for the signature request that recipients will see. Defaults to th
293
+ #
294
+ # @param metadata [Hash{Symbol=>String}] Optional key-value data that can be associated with the document. If set, will b
295
+ #
296
+ # @param name [String] The name of the document.
297
+ #
298
+ # @param redirect_url [String] A URL that recipients are redirected to after successfully signing a document.
299
+ #
300
+ # @param reminders [Boolean] Whether to send signing reminders to recipients. Reminders are sent on day 3, da
301
+ #
302
+ # @param subject [String] Email subject for the signature request that recipients will see. Defaults to th
303
+ #
304
+ # @param template_fields [Array<SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::TemplateField>] Fields of your template(s) that you can prepopulate with values. Signature and I
305
+ #
306
+ # @param template_id [String] Use when you have to create a document from a single template. Either
307
+ # :template\_
308
+ #
309
+ # @param template_ids [Array<String>] Use when you have to create a document from multiple templates. Either :template
310
+ #
311
+ # @param test_mode [Boolean] Set to `true` to enable Test Mode. Documents created with Test Mode do not count
312
+ #
313
+ # @param text_tags [Boolean] An alternative way (if you can’t use the recommended way) of placing fields in s
314
+ #
315
+ # @param with_signature_page [Boolean] When set to `true` the document will have a signature page added to the end, and
316
+ #
317
+ # @param request_options [SignwellSDK::RequestOptions, Hash{Symbol=>Object}]
318
+
319
+ class Recipient < SignwellSDK::Internal::Type::BaseModel
320
+ # @!attribute id
321
+ # A unique identifier that you will give to each recipient. We recommend numbering
322
+ # sequentially from 1 to X. IDs are required for associating recipients to fields
323
+ # and more.
324
+ #
325
+ # @return [String]
326
+ required :id, String
327
+
328
+ # @!attribute email
329
+ # Email address for the recipient.
330
+ #
331
+ # @return [String]
332
+ required :email, String
333
+
334
+ # @!attribute message
335
+ # Email message for the signature request that the recipient will see. Overrides
336
+ # the general message for the template.
337
+ #
338
+ # @return [String, nil]
339
+ optional :message, String
340
+
341
+ # @!attribute name
342
+ # Name of the recipient.
343
+ #
344
+ # @return [String, nil]
345
+ optional :name, String
346
+
347
+ # @!attribute passcode
348
+ # If set, signers assigned with a passcode will be required to enter the passcode
349
+ # before they’re able to view and complete the document.
350
+ #
351
+ # @return [String, nil]
352
+ optional :passcode, String
353
+
354
+ # @!attribute placeholder_name
355
+ # The name of the placeholder you want this recipient assigned to.
356
+ #
357
+ # @return [String, nil]
358
+ optional :placeholder_name, String
359
+
360
+ # @!attribute send_email
361
+ # Applies on when `embedded_signing` is `true`. By default, recipients are not
362
+ # notified through email to sign when doing embedded signing. Setting this to
363
+ # `true` will send a notification email to the recipient. Default is `false`.
364
+ #
365
+ # @return [Boolean, nil]
366
+ optional :send_email, SignwellSDK::Internal::Type::Boolean
367
+
368
+ # @!attribute send_email_delay
369
+ # If `send_email` is `true` recipients will receive a new document notification
370
+ # immediately. In the case of embedded signing, you can delay this notification to
371
+ # only send if the document is not completed within a few minutes. The email
372
+ # notification will not go out if the document is completed before the delay time
373
+ # is over. Valid values are in minutes ranging from `0` to `60`. Defaults to `0`.
374
+ #
375
+ # @return [Integer, nil]
376
+ optional :send_email_delay, Integer
377
+
378
+ # @!attribute subject
379
+ # Email subject for the signature request that the recipient will see. Overrides
380
+ # the general subject for the template.
381
+ #
382
+ # @return [String, nil]
383
+ optional :subject, String
384
+
385
+ # @!method initialize(id:, email:, message: nil, name: nil, passcode: nil, placeholder_name: nil, send_email: nil, send_email_delay: nil, subject: nil)
386
+ # Some parameter documentations has been truncated, see
387
+ # {SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Recipient} for more
388
+ # details.
389
+ #
390
+ # @param id [String] A unique identifier that you will give to each recipient. We recommend numbering
391
+ #
392
+ # @param email [String] Email address for the recipient.
393
+ #
394
+ # @param message [String] Email message for the signature request that the recipient will see. Overrides t
395
+ #
396
+ # @param name [String] Name of the recipient.
397
+ #
398
+ # @param passcode [String] If set, signers assigned with a passcode will be required to enter the passcode
399
+ #
400
+ # @param placeholder_name [String] The name of the placeholder you want this recipient assigned to.
401
+ #
402
+ # @param send_email [Boolean] Applies on when `embedded_signing` is `true`. By default, recipients are not not
403
+ #
404
+ # @param send_email_delay [Integer] If `send_email` is `true` recipients will receive a new document notification im
405
+ #
406
+ # @param subject [String] Email subject for the signature request that the recipient will see. Overrides t
407
+ end
408
+
409
+ class Field < SignwellSDK::Internal::Type::BaseModel
410
+ # @!attribute page
411
+ # The page number within the file. If the page does not exist within the file then
412
+ # the field won't be created.
413
+ #
414
+ # @return [Integer]
415
+ required :page, Integer
416
+
417
+ # @!attribute recipient_id
418
+ # Unique identifier of the recipient assigned to the field. Recipients assigned to
419
+ # fields will be the only ones that will see and be able to complete those fields.
420
+ #
421
+ # @return [String]
422
+ required :recipient_id, String
423
+
424
+ # @!attribute type
425
+ # Field type of the field. Valid field types: initials, signatures, checkbox,
426
+ # date, and text. To autofill fields with contact data, use an autofill field
427
+ # type. To group checkbox fields, enter an api_id for each checkbox and add the
428
+ # checkbox_groups parameter.
429
+ #
430
+ # @return [Symbol, SignwellSDK::Models::FieldType]
431
+ required :type, enum: -> { SignwellSDK::FieldType }
432
+
433
+ # @!attribute x
434
+ # Horizontal value in the coordinates of the field (in pixels). Coordinates are
435
+ # specific to the page where fields are located.
436
+ #
437
+ # @return [Float]
438
+ required :x, Float
439
+
440
+ # @!attribute y_
441
+ # Vertical value in the coordinates of the field (in pixels). Coordinates are
442
+ # specific to the page where fields are located.
443
+ #
444
+ # @return [Float]
445
+ required :y_, Float, api_name: :y
446
+
447
+ # @!attribute allow_other
448
+ # Whether to allow "Other" option with text input (for dropdown/select fields
449
+ # only)
450
+ #
451
+ # @return [Boolean, nil]
452
+ optional :allow_other, SignwellSDK::Internal::Type::Boolean
453
+
454
+ # @!attribute api_id
455
+ # Unique identifier of the field. Useful when needing to reference specific field
456
+ # values or update a document and its fields.
457
+ #
458
+ # @return [String, nil]
459
+ optional :api_id, String
460
+
461
+ # @!attribute date_format
462
+ # Date fields only: date format to use for the field. Valid values: MM/DD/YYYY,
463
+ # DD/MM/YYYY, YYYY/MM/DD, Month DD, YYYY, and MM/DD/YYYY hh:mm:ss a. Defaults to
464
+ # MM/DD/YYYY.
465
+ #
466
+ # @return [Symbol, SignwellSDK::Models::DateFormat, nil]
467
+ optional :date_format, enum: -> { SignwellSDK::DateFormat }
468
+
469
+ # @!attribute default_option
470
+ # Default selected option (for dropdown/select fields only)
471
+ #
472
+ # @return [String, nil]
473
+ optional :default_option, String
474
+
475
+ # @!attribute fixed_width
476
+ # Text fields only: whether the field width will stay fixed and text will display
477
+ # in multiple lines, rather than one long line. If set to `false` the field width
478
+ # will automatically grow horizontally to fit text on one line. Defaults to
479
+ # `false`.
480
+ #
481
+ # @return [Boolean, nil]
482
+ optional :fixed_width, SignwellSDK::Internal::Type::Boolean
483
+
484
+ # @!attribute formula
485
+ # Date fields only (text field formulas coming soon): formulas are a way to
486
+ # prefill fields with calculated future or past dates. Addition, subtraction, and
487
+ # parentheses are allowed. Valid event dates are `created_date`, `sent_date`, and
488
+ # `signed_date`. Valid time periods are `day`, `days`, `week`, `weeks`, `month`,
489
+ # and `months`. Example: `formula: 'sent_date + 10 days'`. Use with
490
+ # `lock_sign_date` if you'd like to make the field readonly and prevent signers
491
+ # from choosing a different date.
492
+ #
493
+ # @return [String, nil]
494
+ optional :formula, String
495
+
496
+ # @!attribute height
497
+ # Height of the field (in pixels). Maximum height varies by field type:
498
+ # Signature/Initials (200px), others (74px). When using text tags if the height is
499
+ # greater than the maximum height, the height will be set to the maximum height.
500
+ #
501
+ # @return [Float, nil]
502
+ optional :height, Float
503
+
504
+ # @!attribute label
505
+ # Text and Date fields only: label that is displayed when the field is empty.
506
+ #
507
+ # @return [String, nil]
508
+ optional :label, String
509
+
510
+ # @!attribute lock_sign_date
511
+ # Date fields only: makes fields readonly and automatically populates with the
512
+ # date the recipient signed. Defaults to `false`.
513
+ #
514
+ # @return [Boolean, nil]
515
+ optional :lock_sign_date, SignwellSDK::Internal::Type::Boolean
516
+
517
+ # @!attribute name
518
+ # Checkbox fields only. At least 2 checkbox fields in an array of fields must be
519
+ # assigned to the same recipient and grouped with selection requirements.
520
+ #
521
+ # @return [String, nil]
522
+ optional :name, String
523
+
524
+ # @!attribute options
525
+ # Array of dropdown options (for dropdown/select fields only)
526
+ #
527
+ # @return [Array<String, SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field::Option::DetailedOption>, nil]
528
+ optional :options,
529
+ -> { SignwellSDK::Internal::Type::ArrayOf[union: SignwellSDK::V1::DocumentCreateFromTemplateParams::Field::Option] }
530
+
531
+ # @!attribute required
532
+ # Whether the field must be completed by the recipient. Defaults to `true` except
533
+ # for checkbox type fields.
534
+ #
535
+ # @return [Boolean, nil]
536
+ optional :required, SignwellSDK::Internal::Type::Boolean
537
+
538
+ # @!attribute validation
539
+ # Text fields only: optional validation for field values. Valid values: numbers,
540
+ # letters, email_address, us_phone_number, us_zip_code, us_ssn, us_age,
541
+ # alphanumeric, us_bank_routing_number, us_bank_account.
542
+ #
543
+ # @return [Symbol, SignwellSDK::Models::TextValidation, nil]
544
+ optional :validation, enum: -> { SignwellSDK::TextValidation }
545
+
546
+ # @!attribute value
547
+ # Varies according to the field type. Text fields accept strings or numbers. Date
548
+ # fields accept Iso8601 date strings. CheckBoxes accept booleans. Signature and
549
+ # Initials fields can't be signed through API requests. Autofill text fields
550
+ # accept strings or numbers.
551
+ #
552
+ # @return [String, Boolean, Float, nil]
553
+ optional :value, union: -> { SignwellSDK::V1::DocumentCreateFromTemplateParams::Field::Value }
554
+
555
+ # @!attribute width
556
+ # Width of the field (in pixels). For text fields, width will auto-grow unless
557
+ # `fixed_width` is true.
558
+ #
559
+ # @return [Float, nil]
560
+ optional :width, Float
561
+
562
+ # @!method initialize(page:, recipient_id:, type:, x:, y_:, allow_other: nil, api_id: nil, date_format: nil, default_option: nil, fixed_width: nil, formula: nil, height: nil, label: nil, lock_sign_date: nil, name: nil, options: nil, required: nil, validation: nil, value: nil, width: nil)
563
+ # Some parameter documentations has been truncated, see
564
+ # {SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field} for more
565
+ # details.
566
+ #
567
+ # @param page [Integer] The page number within the file. If the page does not exist within the file then
568
+ #
569
+ # @param recipient_id [String] Unique identifier of the recipient assigned to the field. Recipients assigned to
570
+ #
571
+ # @param type [Symbol, SignwellSDK::Models::FieldType] Field type of the field. Valid field types: initials, signatures, checkbox, date
572
+ #
573
+ # @param x [Float] Horizontal value in the coordinates of the field (in pixels). Coordinates are sp
574
+ #
575
+ # @param y_ [Float] Vertical value in the coordinates of the field (in pixels). Coordinates are spec
576
+ #
577
+ # @param allow_other [Boolean] Whether to allow "Other" option with text input (for dropdown/select fields only
578
+ #
579
+ # @param api_id [String] Unique identifier of the field. Useful when needing to reference specific field
580
+ #
581
+ # @param date_format [Symbol, SignwellSDK::Models::DateFormat] Date fields only: date format to use for the field. Valid values: MM/DD/YYYY, DD
582
+ #
583
+ # @param default_option [String] Default selected option (for dropdown/select fields only)
584
+ #
585
+ # @param fixed_width [Boolean] Text fields only: whether the field width will stay fixed and text will display
586
+ #
587
+ # @param formula [String] Date fields only (text field formulas coming soon): formulas are a way to prefil
588
+ #
589
+ # @param height [Float] Height of the field (in pixels). Maximum height varies by field type: Signature/
590
+ #
591
+ # @param label [String] Text and Date fields only: label that is displayed when the field is empty.
592
+ #
593
+ # @param lock_sign_date [Boolean] Date fields only: makes fields readonly and automatically populates with the dat
594
+ #
595
+ # @param name [String] Checkbox fields only. At least 2 checkbox fields in an array of fields must be a
596
+ #
597
+ # @param options [Array<String, SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field::Option::DetailedOption>] Array of dropdown options (for dropdown/select fields only)
598
+ #
599
+ # @param required [Boolean] Whether the field must be completed by the recipient. Defaults to `true` except
600
+ #
601
+ # @param validation [Symbol, SignwellSDK::Models::TextValidation] Text fields only: optional validation for field values. Valid values: numbers, l
602
+ #
603
+ # @param value [String, Boolean, Float] Varies according to the field type. Text fields accept strings or numbers. Date
604
+ #
605
+ # @param width [Float] Width of the field (in pixels). For text fields, width will auto-grow unless `fi
606
+
607
+ # A dropdown option - either a simple string or a detailed object with name and
608
+ # optional api_id
609
+ module Option
610
+ extend SignwellSDK::Internal::Type::Union
611
+
612
+ # Simple string option
613
+ variant String
614
+
615
+ # Detailed option object
616
+ variant -> { SignwellSDK::V1::DocumentCreateFromTemplateParams::Field::Option::DetailedOption }
617
+
618
+ class DetailedOption < SignwellSDK::Internal::Type::BaseModel
619
+ # @!attribute name
620
+ # Option display name
621
+ #
622
+ # @return [String]
623
+ required :name, String
624
+
625
+ # @!attribute api_id
626
+ # Unique identifier for the option
627
+ #
628
+ # @return [String, nil]
629
+ optional :api_id, String
630
+
631
+ # @!attribute is_other
632
+ # Whether this is the special "Other" option
633
+ #
634
+ # @return [Boolean, nil]
635
+ optional :is_other, SignwellSDK::Internal::Type::Boolean
636
+
637
+ # @!method initialize(name:, api_id: nil, is_other: nil)
638
+ # Detailed option object
639
+ #
640
+ # @param name [String] Option display name
641
+ #
642
+ # @param api_id [String] Unique identifier for the option
643
+ #
644
+ # @param is_other [Boolean] Whether this is the special "Other" option
645
+ end
646
+
647
+ # @!method self.variants
648
+ # @return [Array(String, SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field::Option::DetailedOption)]
649
+ end
650
+
651
+ # Varies according to the field type. Text fields accept strings or numbers. Date
652
+ # fields accept Iso8601 date strings. CheckBoxes accept booleans. Signature and
653
+ # Initials fields can't be signed through API requests. Autofill text fields
654
+ # accept strings or numbers.
655
+ #
656
+ # @see SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::Field#value
657
+ module Value
658
+ extend SignwellSDK::Internal::Type::Union
659
+
660
+ variant String
661
+
662
+ variant SignwellSDK::Internal::Type::Boolean
663
+
664
+ variant Float
665
+
666
+ # @!method self.variants
667
+ # @return [Array(String, Boolean, Float)]
668
+ end
669
+ end
670
+
671
+ class File < SignwellSDK::Internal::Type::BaseModel
672
+ # @!attribute name
673
+ # Name of the file that will be uploaded.
674
+ #
675
+ # @return [String]
676
+ required :name, String
677
+
678
+ # @!attribute file_base64
679
+ # A RFC 4648 base64 string of the file to be uploaded.
680
+ #
681
+ # @return [String, nil]
682
+ optional :file_base64, String
683
+
684
+ # @!attribute file_url
685
+ # Publicly available URL of the file to be uploaded.
686
+ #
687
+ # @return [String, nil]
688
+ optional :file_url, String
689
+
690
+ # @!method initialize(name:, file_base64: nil, file_url: nil)
691
+ # Additional files to be appended to the document. Will not replace existing files
692
+ # from the template. Document files can be uploaded by specifying a file URL or
693
+ # base64 string. Either `file_url` or `file_base64` must be present (not both).
694
+ # Valid file types are: .pdf, .docx, .jpg, .png, .ppt, .xls, .pages, and .txt.
695
+ #
696
+ # @param name [String] Name of the file that will be uploaded.
697
+ #
698
+ # @param file_base64 [String] A RFC 4648 base64 string of the file to be uploaded.
699
+ #
700
+ # @param file_url [String] Publicly available URL of the file to be uploaded.
701
+ end
702
+
703
+ class TemplateField < SignwellSDK::Internal::Type::BaseModel
704
+ # @!attribute api_id
705
+ # The API ID of the field in your template. This field is case sensitive.
706
+ #
707
+ # @return [String]
708
+ required :api_id, String
709
+
710
+ # @!attribute value
711
+ # TextField value must be a string or a number.
712
+ #
713
+ # @return [String, Boolean, Float]
714
+ required :value, union: -> { SignwellSDK::V1::DocumentCreateFromTemplateParams::TemplateField::Value }
715
+
716
+ # @!method initialize(api_id:, value:)
717
+ # @param api_id [String] The API ID of the field in your template. This field is case sensitive.
718
+ #
719
+ # @param value [String, Boolean, Float] TextField value must be a string or a number.
720
+
721
+ # TextField value must be a string or a number.
722
+ #
723
+ # @see SignwellSDK::Models::V1::DocumentCreateFromTemplateParams::TemplateField#value
724
+ module Value
725
+ extend SignwellSDK::Internal::Type::Union
726
+
727
+ variant String
728
+
729
+ variant SignwellSDK::Internal::Type::Boolean
730
+
731
+ variant Float
732
+
733
+ # @!method self.variants
734
+ # @return [Array(String, Boolean, Float)]
735
+ end
736
+ end
737
+ end
738
+ end
739
+ end
740
+ end