docspring 4.2.0 → 4.4.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 (461) hide show
  1. checksums.yaml +4 -4
  2. data/.github/workflows/release.yml +80 -0
  3. data/.openapi-generator/FILES +84 -0
  4. data/AGENTS.md +2 -2
  5. data/CHANGELOG.md +82 -0
  6. data/Gemfile.lock +4 -3
  7. data/README.md +26 -6
  8. data/docs/AddTemplateFieldsRequest.md +1 -1
  9. data/docs/Client.md +2400 -853
  10. data/docs/CombinedPdfSource.md +1 -1
  11. data/docs/CreateAccountEmailActionRequest.md +54 -0
  12. data/docs/CreateEmailActionRequest.md +50 -0
  13. data/docs/CreateEmailDomainRequest.md +18 -0
  14. data/docs/CreateSubmissionBatchRequest.md +2 -2
  15. data/docs/CreateSubmissionRequest.md +24 -6
  16. data/docs/CreateTemplateRequest.md +29 -11
  17. data/docs/DnsRecordType.md +15 -0
  18. data/docs/EmailAction.md +76 -0
  19. data/docs/EmailActionConditions.md +20 -0
  20. data/docs/EmailActionConditionsInput.md +20 -0
  21. data/docs/EmailActionCustomization.md +36 -0
  22. data/docs/EmailActionDelivery.md +15 -0
  23. data/docs/EmailActionFileFormats.md +15 -0
  24. data/docs/EmailActionList.md +20 -0
  25. data/docs/EmailActionSetting.md +15 -0
  26. data/docs/EmailActionSubmissionType.md +15 -0
  27. data/docs/EmailActionTestEmail.md +18 -0
  28. data/docs/EmailDomain.md +38 -0
  29. data/docs/EmailDomainDnsRecord.md +24 -0
  30. data/docs/EmailDomainDnsRecordPurpose.md +15 -0
  31. data/docs/EmailDomainList.md +20 -0
  32. data/docs/EmailDomainRecordState.md +15 -0
  33. data/docs/EmailDomainState.md +15 -0
  34. data/docs/ErrorInfo.md +12 -6
  35. data/docs/Field.md +1 -1
  36. data/docs/FieldGroup.md +2 -2
  37. data/docs/FieldGroupInput.md +1 -1
  38. data/docs/FieldInput.md +1 -1
  39. data/docs/GenerateSubmissionFilesRequest.md +1 -1
  40. data/docs/GeneratedFile.md +2 -2
  41. data/docs/HtmlEngineOptions.md +1 -1
  42. data/docs/HtmlEngineOptionsInput.md +1 -1
  43. data/docs/SendAccountEmailActionTestEmailRequest.md +18 -0
  44. data/docs/SignatureRequest.md +9 -1
  45. data/docs/SignatureRequestEmailAttachments.md +15 -0
  46. data/docs/SignatureRequestEmailStatus.md +15 -0
  47. data/docs/SignatureRequestInput.md +7 -3
  48. data/docs/SignatureRequestReminders.md +20 -0
  49. data/docs/SigningOrder.md +15 -0
  50. data/docs/Submission.md +8 -6
  51. data/docs/SubmissionAction.md +5 -3
  52. data/docs/SubmissionBatch.md +3 -3
  53. data/docs/SubmissionFiles.md +4 -0
  54. data/docs/SubmissionInput.md +5 -5
  55. data/docs/SubmissionSummary.md +3 -3
  56. data/docs/Template.md +28 -10
  57. data/docs/TemplateDiff.md +2 -2
  58. data/docs/TemplateDocument.md +10 -10
  59. data/docs/TemplateDocumentSummary.md +4 -4
  60. data/docs/TemplatePreview.md +1 -1
  61. data/docs/TemplateSourcePdf.md +1 -1
  62. data/docs/TemplateSummary.md +5 -3
  63. data/docs/UpdateAccountEmailActionRequest.md +54 -0
  64. data/docs/UpdateEmailActionCustomizationRequest.md +46 -0
  65. data/docs/UpdateEmailActionRequest.md +50 -0
  66. data/docs/UpdateTemplateDocumentRequest.md +5 -5
  67. data/docs/UpdateTemplateRequest.md +25 -7
  68. data/docs/ValidateSubmissionRequest.md +24 -6
  69. data/docspring.gemspec +2 -2
  70. data/lib/docspring/api/client.rb +1791 -353
  71. data/lib/docspring/api_client.rb +2 -2
  72. data/lib/docspring/api_error.rb +1 -1
  73. data/lib/docspring/api_model_base.rb +1 -1
  74. data/lib/docspring/configuration.rb +1 -1
  75. data/lib/docspring/models/add_template_fields_request.rb +2 -2
  76. data/lib/docspring/models/ai_field_naming_language.rb +1 -1
  77. data/lib/docspring/models/authentication_check.rb +1 -1
  78. data/lib/docspring/models/barcode_symbology.rb +1 -1
  79. data/lib/docspring/models/check_character.rb +1 -1
  80. data/lib/docspring/models/combined_field_type.rb +1 -1
  81. data/lib/docspring/models/combined_pdf.rb +1 -1
  82. data/lib/docspring/models/combined_pdf_files.rb +1 -1
  83. data/lib/docspring/models/combined_pdf_list.rb +1 -1
  84. data/lib/docspring/models/combined_pdf_source.rb +2 -2
  85. data/lib/docspring/models/combined_pdf_source_input.rb +1 -1
  86. data/lib/docspring/models/combined_pdf_source_pdf.rb +1 -1
  87. data/lib/docspring/models/combined_pdf_source_type.rb +1 -1
  88. data/lib/docspring/models/combined_pdf_state.rb +1 -1
  89. data/lib/docspring/models/copy_template_request.rb +1 -1
  90. data/lib/docspring/models/create_account_email_action_request.rb +388 -0
  91. data/lib/docspring/models/create_combined_pdf_request.rb +1 -1
  92. data/lib/docspring/models/create_custom_file_from_upload_request.rb +1 -1
  93. data/lib/docspring/models/create_email_action_request.rb +364 -0
  94. data/lib/docspring/models/create_email_domain_request.rb +185 -0
  95. data/lib/docspring/models/create_folder_request.rb +1 -1
  96. data/lib/docspring/models/create_signature_request_event_request.rb +1 -1
  97. data/lib/docspring/models/create_signature_request_token_request.rb +1 -1
  98. data/lib/docspring/models/create_submission_batch_request.rb +3 -3
  99. data/lib/docspring/models/create_submission_request.rb +146 -10
  100. data/lib/docspring/models/create_template_preview_request.rb +1 -1
  101. data/lib/docspring/models/create_template_request.rb +123 -13
  102. data/lib/docspring/models/create_webhook_request.rb +1 -1
  103. data/lib/docspring/models/custom_file.rb +1 -1
  104. data/lib/docspring/models/custom_file_list.rb +1 -1
  105. data/lib/docspring/models/custom_file_source_pdf.rb +1 -1
  106. data/lib/docspring/models/dns_record_type.rb +42 -0
  107. data/lib/docspring/models/email_action.rb +790 -0
  108. data/lib/docspring/models/email_action_conditions.rb +219 -0
  109. data/lib/docspring/models/email_action_conditions_input.rb +219 -0
  110. data/lib/docspring/models/email_action_customization.rb +360 -0
  111. data/lib/docspring/models/email_action_delivery.rb +41 -0
  112. data/lib/docspring/models/email_action_file_formats.rb +43 -0
  113. data/lib/docspring/models/email_action_list.rb +200 -0
  114. data/lib/docspring/models/email_action_setting.rb +53 -0
  115. data/lib/docspring/models/email_action_submission_type.rb +42 -0
  116. data/lib/docspring/models/email_action_test_email.rb +185 -0
  117. data/lib/docspring/models/email_domain.rb +423 -0
  118. data/lib/docspring/models/email_domain_dns_record.rb +288 -0
  119. data/lib/docspring/models/email_domain_dns_record_purpose.rb +42 -0
  120. data/lib/docspring/models/email_domain_list.rb +200 -0
  121. data/lib/docspring/models/email_domain_record_state.rb +42 -0
  122. data/lib/docspring/models/email_domain_state.rb +42 -0
  123. data/lib/docspring/models/error_code.rb +4 -2
  124. data/lib/docspring/models/error_detail.rb +1 -1
  125. data/lib/docspring/models/error_info.rb +40 -10
  126. data/lib/docspring/models/error_response.rb +1 -1
  127. data/lib/docspring/models/expiration_interval.rb +1 -1
  128. data/lib/docspring/models/field.rb +3 -3
  129. data/lib/docspring/models/field_comparison_condition.rb +1 -1
  130. data/lib/docspring/models/field_comparison_operator.rb +1 -1
  131. data/lib/docspring/models/field_dependency.rb +1 -1
  132. data/lib/docspring/models/field_dependency_input.rb +1 -1
  133. data/lib/docspring/models/field_display_type.rb +1 -1
  134. data/lib/docspring/models/field_equals_condition.rb +1 -1
  135. data/lib/docspring/models/field_equals_operator.rb +1 -1
  136. data/lib/docspring/models/field_group.rb +3 -3
  137. data/lib/docspring/models/field_group_input.rb +2 -2
  138. data/lib/docspring/models/field_group_type.rb +1 -1
  139. data/lib/docspring/models/field_in_condition.rb +1 -1
  140. data/lib/docspring/models/field_input.rb +3 -3
  141. data/lib/docspring/models/field_override.rb +1 -1
  142. data/lib/docspring/models/field_presence_condition.rb +1 -1
  143. data/lib/docspring/models/field_presence_operator.rb +1 -1
  144. data/lib/docspring/models/field_range_condition.rb +1 -1
  145. data/lib/docspring/models/field_reimport_state.rb +1 -1
  146. data/lib/docspring/models/field_setup_logic.rb +1 -1
  147. data/lib/docspring/models/field_setup_naming.rb +1 -1
  148. data/lib/docspring/models/field_setup_source.rb +1 -1
  149. data/lib/docspring/models/field_type.rb +1 -1
  150. data/lib/docspring/models/folder.rb +1 -1
  151. data/lib/docspring/models/folder_list.rb +1 -1
  152. data/lib/docspring/models/generate_files_format.rb +5 -2
  153. data/lib/docspring/models/generate_submission_files_request.rb +2 -2
  154. data/lib/docspring/models/generated_file.rb +4 -4
  155. data/lib/docspring/models/generated_file_state.rb +1 -1
  156. data/lib/docspring/models/html_engine_options.rb +2 -2
  157. data/lib/docspring/models/html_engine_options_input.rb +2 -2
  158. data/lib/docspring/models/image_gravity.rb +1 -1
  159. data/lib/docspring/models/image_scale_type.rb +1 -1
  160. data/lib/docspring/models/model_code_language.rb +3 -2
  161. data/lib/docspring/models/move_folder_request.rb +1 -1
  162. data/lib/docspring/models/move_template_request.rb +1 -1
  163. data/lib/docspring/models/number_condition_type.rb +1 -1
  164. data/lib/docspring/models/output_format.rb +4 -2
  165. data/lib/docspring/models/page_format.rb +1 -1
  166. data/lib/docspring/models/page_image.rb +1 -1
  167. data/lib/docspring/models/page_images.rb +1 -1
  168. data/lib/docspring/models/predefined_field.rb +1 -1
  169. data/lib/docspring/models/predefined_field_input.rb +1 -1
  170. data/lib/docspring/models/publish_template_version_request.rb +1 -1
  171. data/lib/docspring/models/remove_template_fields_request.rb +1 -1
  172. data/lib/docspring/models/rename_folder_request.rb +1 -1
  173. data/lib/docspring/models/reorder_template_fields_request.rb +1 -1
  174. data/lib/docspring/models/restore_template_version_request.rb +1 -1
  175. data/lib/docspring/models/send_account_email_action_test_email_request.rb +168 -0
  176. data/lib/docspring/models/shape_type.rb +1 -1
  177. data/lib/docspring/models/signature_request.rb +69 -3
  178. data/lib/docspring/models/signature_request_auth_second_factor_type.rb +1 -1
  179. data/lib/docspring/models/signature_request_auth_type.rb +1 -1
  180. data/lib/docspring/models/signature_request_email_attachments.rb +41 -0
  181. data/lib/docspring/models/signature_request_email_status.rb +47 -0
  182. data/lib/docspring/models/signature_request_event.rb +1 -1
  183. data/lib/docspring/models/signature_request_event_type.rb +4 -2
  184. data/lib/docspring/models/signature_request_input.rb +26 -23
  185. data/lib/docspring/models/signature_request_message_type.rb +1 -1
  186. data/lib/docspring/models/signature_request_reminders.rb +212 -0
  187. data/lib/docspring/models/signature_request_state.rb +1 -1
  188. data/lib/docspring/models/signature_request_token.rb +1 -1
  189. data/lib/docspring/models/signature_request_token_type.rb +1 -1
  190. data/lib/docspring/models/signing_order.rb +41 -0
  191. data/lib/docspring/models/string_condition_type.rb +9 -2
  192. data/lib/docspring/models/submission.rb +36 -9
  193. data/lib/docspring/models/submission_action.rb +19 -6
  194. data/lib/docspring/models/submission_action_state.rb +1 -1
  195. data/lib/docspring/models/submission_action_type.rb +1 -1
  196. data/lib/docspring/models/submission_batch.rb +5 -5
  197. data/lib/docspring/models/submission_batch_state.rb +1 -1
  198. data/lib/docspring/models/submission_files.rb +22 -2
  199. data/lib/docspring/models/submission_input.rb +6 -6
  200. data/lib/docspring/models/submission_list.rb +1 -1
  201. data/lib/docspring/models/submission_source.rb +1 -1
  202. data/lib/docspring/models/submission_source_pdf.rb +1 -1
  203. data/lib/docspring/models/submission_state.rb +1 -1
  204. data/lib/docspring/models/submission_summary.rb +4 -4
  205. data/lib/docspring/models/submission_validation.rb +1 -1
  206. data/lib/docspring/models/template.rb +175 -12
  207. data/lib/docspring/models/template_actor.rb +1 -1
  208. data/lib/docspring/models/template_actor_type.rb +1 -1
  209. data/lib/docspring/models/template_defaults.rb +1 -1
  210. data/lib/docspring/models/template_defaults_input.rb +1 -1
  211. data/lib/docspring/models/template_diff.rb +3 -3
  212. data/lib/docspring/models/template_diff_summary.rb +1 -1
  213. data/lib/docspring/models/template_document.rb +12 -12
  214. data/lib/docspring/models/template_document_state.rb +4 -2
  215. data/lib/docspring/models/template_document_summary.rb +6 -6
  216. data/lib/docspring/models/template_field_change.rb +1 -1
  217. data/lib/docspring/models/template_field_changes.rb +1 -1
  218. data/lib/docspring/models/template_field_dependency.rb +1 -1
  219. data/lib/docspring/models/template_field_dependency_action.rb +1 -1
  220. data/lib/docspring/models/template_field_dependency_condition.rb +1 -1
  221. data/lib/docspring/models/template_field_dependency_condition_input.rb +1 -1
  222. data/lib/docspring/models/template_field_dependency_input.rb +1 -1
  223. data/lib/docspring/models/template_field_dependency_match.rb +1 -1
  224. data/lib/docspring/models/template_field_dependency_operator.rb +1 -1
  225. data/lib/docspring/models/template_field_logic_status.rb +1 -1
  226. data/lib/docspring/models/template_field_move.rb +1 -1
  227. data/lib/docspring/models/template_fields.rb +1 -1
  228. data/lib/docspring/models/template_form_mode.rb +1 -1
  229. data/lib/docspring/models/template_model_code.rb +1 -1
  230. data/lib/docspring/models/template_page_ai_error.rb +1 -1
  231. data/lib/docspring/models/template_page_ai_naming_status.rb +1 -1
  232. data/lib/docspring/models/template_page_fields_status.rb +1 -1
  233. data/lib/docspring/models/template_page_image_status.rb +1 -1
  234. data/lib/docspring/models/template_page_images.rb +1 -1
  235. data/lib/docspring/models/template_page_processing_status.rb +1 -1
  236. data/lib/docspring/models/template_preview.rb +3 -3
  237. data/lib/docspring/models/template_preview_state.rb +1 -1
  238. data/lib/docspring/models/template_source_pdf.rb +2 -2
  239. data/lib/docspring/models/template_summary.rb +32 -5
  240. data/lib/docspring/models/template_summary_list.rb +1 -1
  241. data/lib/docspring/models/template_type.rb +4 -2
  242. data/lib/docspring/models/template_version.rb +1 -1
  243. data/lib/docspring/models/template_version_type.rb +1 -1
  244. data/lib/docspring/models/text_alignment.rb +1 -1
  245. data/lib/docspring/models/text_overflow.rb +1 -1
  246. data/lib/docspring/models/text_vertical_alignment.rb +1 -1
  247. data/lib/docspring/models/typeface.rb +1 -1
  248. data/lib/docspring/models/update_account_email_action_request.rb +388 -0
  249. data/lib/docspring/models/update_email_action_customization_request.rb +343 -0
  250. data/lib/docspring/models/update_email_action_request.rb +364 -0
  251. data/lib/docspring/models/update_signature_request_request.rb +1 -1
  252. data/lib/docspring/models/update_template_document_request.rb +7 -7
  253. data/lib/docspring/models/update_template_fields_request.rb +1 -1
  254. data/lib/docspring/models/update_template_request.rb +121 -11
  255. data/lib/docspring/models/update_webhook_request.rb +1 -1
  256. data/lib/docspring/models/upload_method.rb +1 -1
  257. data/lib/docspring/models/upload_presign.rb +1 -1
  258. data/lib/docspring/models/url_source_pdf.rb +1 -1
  259. data/lib/docspring/models/validate_submission_request.rb +146 -10
  260. data/lib/docspring/models/webhook.rb +1 -1
  261. data/lib/docspring/models/webhook_event_type.rb +4 -2
  262. data/lib/docspring/models/webhook_list.rb +1 -1
  263. data/lib/docspring/models/webhook_mode.rb +1 -1
  264. data/lib/docspring/request_schemas.json +1692 -109
  265. data/lib/docspring/request_validator.rb +4 -0
  266. data/lib/docspring/version.rb +2 -2
  267. data/lib/docspring.rb +29 -1
  268. data/spec/api/client_spec.rb +328 -39
  269. data/spec/models/add_template_fields_request_spec.rb +1 -1
  270. data/spec/models/ai_field_naming_language_spec.rb +1 -1
  271. data/spec/models/authentication_check_spec.rb +1 -1
  272. data/spec/models/barcode_symbology_spec.rb +1 -1
  273. data/spec/models/check_character_spec.rb +1 -1
  274. data/spec/models/combined_field_type_spec.rb +1 -1
  275. data/spec/models/combined_pdf_files_spec.rb +1 -1
  276. data/spec/models/combined_pdf_list_spec.rb +1 -1
  277. data/spec/models/combined_pdf_source_input_spec.rb +1 -1
  278. data/spec/models/combined_pdf_source_pdf_spec.rb +1 -1
  279. data/spec/models/combined_pdf_source_spec.rb +1 -1
  280. data/spec/models/combined_pdf_source_type_spec.rb +1 -1
  281. data/spec/models/combined_pdf_spec.rb +1 -1
  282. data/spec/models/combined_pdf_state_spec.rb +1 -1
  283. data/spec/models/copy_template_request_spec.rb +1 -1
  284. data/spec/models/create_account_email_action_request_spec.rb +144 -0
  285. data/spec/models/create_combined_pdf_request_spec.rb +1 -1
  286. data/spec/models/create_custom_file_from_upload_request_spec.rb +1 -1
  287. data/spec/models/create_email_action_request_spec.rb +132 -0
  288. data/spec/models/create_email_domain_request_spec.rb +36 -0
  289. data/spec/models/create_folder_request_spec.rb +1 -1
  290. data/spec/models/create_signature_request_event_request_spec.rb +1 -1
  291. data/spec/models/create_signature_request_token_request_spec.rb +1 -1
  292. data/spec/models/create_submission_batch_request_spec.rb +1 -1
  293. data/spec/models/create_submission_request_spec.rb +55 -1
  294. data/spec/models/create_template_preview_request_spec.rb +1 -1
  295. data/spec/models/create_template_request_spec.rb +55 -1
  296. data/spec/models/create_webhook_request_spec.rb +1 -1
  297. data/spec/models/custom_file_list_spec.rb +1 -1
  298. data/spec/models/custom_file_source_pdf_spec.rb +1 -1
  299. data/spec/models/custom_file_spec.rb +1 -1
  300. data/spec/models/dns_record_type_spec.rb +30 -0
  301. data/spec/models/email_action_conditions_input_spec.rb +42 -0
  302. data/spec/models/email_action_conditions_spec.rb +42 -0
  303. data/spec/models/email_action_customization_spec.rb +90 -0
  304. data/spec/models/email_action_delivery_spec.rb +30 -0
  305. data/spec/models/email_action_file_formats_spec.rb +30 -0
  306. data/spec/models/email_action_list_spec.rb +42 -0
  307. data/spec/models/email_action_setting_spec.rb +30 -0
  308. data/spec/models/email_action_spec.rb +210 -0
  309. data/spec/models/email_action_submission_type_spec.rb +30 -0
  310. data/spec/models/email_action_test_email_spec.rb +36 -0
  311. data/spec/models/email_domain_dns_record_purpose_spec.rb +30 -0
  312. data/spec/models/email_domain_dns_record_spec.rb +54 -0
  313. data/spec/models/email_domain_list_spec.rb +42 -0
  314. data/spec/models/email_domain_record_state_spec.rb +30 -0
  315. data/spec/models/email_domain_spec.rb +96 -0
  316. data/spec/models/email_domain_state_spec.rb +30 -0
  317. data/spec/models/error_code_spec.rb +1 -1
  318. data/spec/models/error_detail_spec.rb +1 -1
  319. data/spec/models/error_info_spec.rb +19 -1
  320. data/spec/models/error_response_spec.rb +1 -1
  321. data/spec/models/expiration_interval_spec.rb +1 -1
  322. data/spec/models/field_comparison_condition_spec.rb +1 -1
  323. data/spec/models/field_comparison_operator_spec.rb +1 -1
  324. data/spec/models/field_dependency_input_spec.rb +1 -1
  325. data/spec/models/field_dependency_spec.rb +1 -1
  326. data/spec/models/field_display_type_spec.rb +1 -1
  327. data/spec/models/field_equals_condition_spec.rb +1 -1
  328. data/spec/models/field_equals_operator_spec.rb +1 -1
  329. data/spec/models/field_group_input_spec.rb +1 -1
  330. data/spec/models/field_group_spec.rb +1 -1
  331. data/spec/models/field_group_type_spec.rb +1 -1
  332. data/spec/models/field_in_condition_spec.rb +1 -1
  333. data/spec/models/field_input_spec.rb +1 -1
  334. data/spec/models/field_override_spec.rb +1 -1
  335. data/spec/models/field_presence_condition_spec.rb +1 -1
  336. data/spec/models/field_presence_operator_spec.rb +1 -1
  337. data/spec/models/field_range_condition_spec.rb +1 -1
  338. data/spec/models/field_reimport_state_spec.rb +1 -1
  339. data/spec/models/field_setup_logic_spec.rb +1 -1
  340. data/spec/models/field_setup_naming_spec.rb +1 -1
  341. data/spec/models/field_setup_source_spec.rb +1 -1
  342. data/spec/models/field_spec.rb +1 -1
  343. data/spec/models/field_type_spec.rb +1 -1
  344. data/spec/models/folder_list_spec.rb +1 -1
  345. data/spec/models/folder_spec.rb +1 -1
  346. data/spec/models/generate_files_format_spec.rb +1 -1
  347. data/spec/models/generate_submission_files_request_spec.rb +1 -1
  348. data/spec/models/generated_file_spec.rb +1 -1
  349. data/spec/models/generated_file_state_spec.rb +1 -1
  350. data/spec/models/html_engine_options_input_spec.rb +1 -1
  351. data/spec/models/html_engine_options_spec.rb +1 -1
  352. data/spec/models/image_gravity_spec.rb +1 -1
  353. data/spec/models/image_scale_type_spec.rb +1 -1
  354. data/spec/models/model_code_language_spec.rb +1 -1
  355. data/spec/models/move_folder_request_spec.rb +1 -1
  356. data/spec/models/move_template_request_spec.rb +1 -1
  357. data/spec/models/number_condition_type_spec.rb +1 -1
  358. data/spec/models/output_format_spec.rb +1 -1
  359. data/spec/models/page_format_spec.rb +1 -1
  360. data/spec/models/page_image_spec.rb +1 -1
  361. data/spec/models/page_images_spec.rb +1 -1
  362. data/spec/models/predefined_field_input_spec.rb +1 -1
  363. data/spec/models/predefined_field_spec.rb +1 -1
  364. data/spec/models/publish_template_version_request_spec.rb +1 -1
  365. data/spec/models/remove_template_fields_request_spec.rb +1 -1
  366. data/spec/models/rename_folder_request_spec.rb +1 -1
  367. data/spec/models/reorder_template_fields_request_spec.rb +1 -1
  368. data/spec/models/restore_template_version_request_spec.rb +1 -1
  369. data/spec/models/send_account_email_action_test_email_request_spec.rb +36 -0
  370. data/spec/models/shape_type_spec.rb +1 -1
  371. data/spec/models/signature_request_auth_second_factor_type_spec.rb +1 -1
  372. data/spec/models/signature_request_auth_type_spec.rb +1 -1
  373. data/spec/models/signature_request_email_attachments_spec.rb +30 -0
  374. data/spec/models/signature_request_email_status_spec.rb +30 -0
  375. data/spec/models/signature_request_event_spec.rb +1 -1
  376. data/spec/models/signature_request_event_type_spec.rb +1 -1
  377. data/spec/models/signature_request_input_spec.rb +13 -1
  378. data/spec/models/signature_request_message_type_spec.rb +1 -1
  379. data/spec/models/signature_request_reminders_spec.rb +42 -0
  380. data/spec/models/signature_request_spec.rb +25 -1
  381. data/spec/models/signature_request_state_spec.rb +1 -1
  382. data/spec/models/signature_request_token_spec.rb +1 -1
  383. data/spec/models/signature_request_token_type_spec.rb +1 -1
  384. data/spec/models/signing_order_spec.rb +30 -0
  385. data/spec/models/string_condition_type_spec.rb +1 -1
  386. data/spec/models/submission_action_spec.rb +7 -1
  387. data/spec/models/submission_action_state_spec.rb +1 -1
  388. data/spec/models/submission_action_type_spec.rb +1 -1
  389. data/spec/models/submission_batch_spec.rb +1 -1
  390. data/spec/models/submission_batch_state_spec.rb +1 -1
  391. data/spec/models/submission_files_spec.rb +13 -1
  392. data/spec/models/submission_input_spec.rb +1 -1
  393. data/spec/models/submission_list_spec.rb +1 -1
  394. data/spec/models/submission_source_pdf_spec.rb +1 -1
  395. data/spec/models/submission_source_spec.rb +1 -1
  396. data/spec/models/submission_spec.rb +7 -1
  397. data/spec/models/submission_state_spec.rb +1 -1
  398. data/spec/models/submission_summary_spec.rb +1 -1
  399. data/spec/models/submission_validation_spec.rb +1 -1
  400. data/spec/models/template_actor_spec.rb +1 -1
  401. data/spec/models/template_actor_type_spec.rb +1 -1
  402. data/spec/models/template_defaults_input_spec.rb +1 -1
  403. data/spec/models/template_defaults_spec.rb +1 -1
  404. data/spec/models/template_diff_spec.rb +1 -1
  405. data/spec/models/template_diff_summary_spec.rb +1 -1
  406. data/spec/models/template_document_spec.rb +1 -1
  407. data/spec/models/template_document_state_spec.rb +1 -1
  408. data/spec/models/template_document_summary_spec.rb +1 -1
  409. data/spec/models/template_field_change_spec.rb +1 -1
  410. data/spec/models/template_field_changes_spec.rb +1 -1
  411. data/spec/models/template_field_dependency_action_spec.rb +1 -1
  412. data/spec/models/template_field_dependency_condition_input_spec.rb +1 -1
  413. data/spec/models/template_field_dependency_condition_spec.rb +1 -1
  414. data/spec/models/template_field_dependency_input_spec.rb +1 -1
  415. data/spec/models/template_field_dependency_match_spec.rb +1 -1
  416. data/spec/models/template_field_dependency_operator_spec.rb +1 -1
  417. data/spec/models/template_field_dependency_spec.rb +1 -1
  418. data/spec/models/template_field_logic_status_spec.rb +1 -1
  419. data/spec/models/template_field_move_spec.rb +1 -1
  420. data/spec/models/template_fields_spec.rb +1 -1
  421. data/spec/models/template_form_mode_spec.rb +1 -1
  422. data/spec/models/template_model_code_spec.rb +1 -1
  423. data/spec/models/template_page_ai_error_spec.rb +1 -1
  424. data/spec/models/template_page_ai_naming_status_spec.rb +1 -1
  425. data/spec/models/template_page_fields_status_spec.rb +1 -1
  426. data/spec/models/template_page_image_status_spec.rb +1 -1
  427. data/spec/models/template_page_images_spec.rb +1 -1
  428. data/spec/models/template_page_processing_status_spec.rb +1 -1
  429. data/spec/models/template_preview_spec.rb +1 -1
  430. data/spec/models/template_preview_state_spec.rb +1 -1
  431. data/spec/models/template_source_pdf_spec.rb +1 -1
  432. data/spec/models/template_spec.rb +55 -1
  433. data/spec/models/template_summary_list_spec.rb +1 -1
  434. data/spec/models/template_summary_spec.rb +7 -1
  435. data/spec/models/template_type_spec.rb +1 -1
  436. data/spec/models/template_version_spec.rb +1 -1
  437. data/spec/models/template_version_type_spec.rb +1 -1
  438. data/spec/models/text_alignment_spec.rb +1 -1
  439. data/spec/models/text_overflow_spec.rb +1 -1
  440. data/spec/models/text_vertical_alignment_spec.rb +1 -1
  441. data/spec/models/typeface_spec.rb +1 -1
  442. data/spec/models/update_account_email_action_request_spec.rb +144 -0
  443. data/spec/models/update_email_action_customization_request_spec.rb +120 -0
  444. data/spec/models/update_email_action_request_spec.rb +132 -0
  445. data/spec/models/update_signature_request_request_spec.rb +1 -1
  446. data/spec/models/update_template_document_request_spec.rb +1 -1
  447. data/spec/models/update_template_fields_request_spec.rb +1 -1
  448. data/spec/models/update_template_request_spec.rb +55 -1
  449. data/spec/models/update_webhook_request_spec.rb +1 -1
  450. data/spec/models/upload_method_spec.rb +1 -1
  451. data/spec/models/upload_presign_spec.rb +1 -1
  452. data/spec/models/url_source_pdf_spec.rb +1 -1
  453. data/spec/models/validate_submission_request_spec.rb +55 -1
  454. data/spec/models/webhook_event_type_spec.rb +1 -1
  455. data/spec/models/webhook_list_spec.rb +1 -1
  456. data/spec/models/webhook_mode_spec.rb +1 -1
  457. data/spec/models/webhook_spec.rb +1 -1
  458. data/spec/spec_helper.rb +1 -1
  459. metadata +117 -5
  460. data/.gitlab-ci.yml +0 -26
  461. data/.travis.yml +0 -11
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -22,6 +22,9 @@ module DocSpring
22
22
  # Shown under the template's name at the top of its hosted forms, and used as their meta description. Not shown on embedded forms or signature requests.
23
23
  attr_accessor :description
24
24
 
25
+ # What each submission makes unless its request sets `output_formats`: `docx` (a Word document), `odt` (an OpenDocument file, converted from the Word document) or `pdf`. A Word template's is chosen when it's created; other templates always make PDFs. A Word template that encrypts its PDFs makes PDFs, because Word documents and OpenDocument files can't be password-protected.
26
+ attr_accessor :output_format
27
+
25
28
  # The ID of the folder the template is in. Null for a template at the root. Setting it moves the template and all of its published versions.
26
29
  attr_accessor :parent_folder_id
27
30
 
@@ -40,13 +43,13 @@ module DocSpring
40
43
  # Visual forms and signature request forms show the Continue button as soon as the required fields are filled in, without visiting each optional field. The `allowSkippingOptionalFields` embed option overrides it.
41
44
  attr_accessor :allow_skipping_optional_fields
42
45
 
43
- # The hosted form that /templates/{template_id}/form shows when its URL has no `mode` parameter: `web` (the web form), `visual` (the visual form, where fields are filled in on the PDF) or `dual` (both, in tabs). HTML templates have no visual form, so `web` is the only value they accept.
46
+ # The hosted form that /templates/{template_id}/form shows when its URL has no `mode` parameter: `web` (the web form), `visual` (the visual form, where fields are filled in on the PDF) or `dual` (both, in tabs). Only PDF templates have a visual form, so other templates accept only `web`.
44
47
  attr_accessor :default_form_mode
45
48
 
46
49
  # Generate PDFs whose text and check fields stay fillable ("Generate Editable PDFs"). A submission's `editable` overrides it.
47
50
  attr_accessor :editable_submissions
48
51
 
49
- # The sites that can embed the template's live signature requests and its embedded template editor: a host such as `app.example.com`, with an optional leading wildcard (`*.example.com`), port (`localhost:3000`) or scheme (`https://app.example.com`; without one, `http` and `https` both work). Browsers open a live signature request in a frame only on these sites (and DocSpring's), so with an empty list it can't be embedded anywhere; a test signature request can be embedded on any site. The embedded template editor loads only for a page on one of these sites (by its Referer or Origin header), and on any site when the list is empty. Forms embedded on a page (Visual Forms JS and the simple form) aren't restricted.
52
+ # The sites that can embed the template's live signature requests and its embedded template editor: a host such as `app.example.com`, with an optional leading wildcard (`*.example.com`), port (`localhost:3000`) or scheme (`https://app.example.com`; without one, `http` and `https` both work), without a path. Browsers open a live signature request in a frame only on these sites (and DocSpring's), so with an empty list it can't be embedded anywhere; a test signature request can be embedded on any site. The embedded template editor loads only for a page on one of these sites (by its Referer or Origin header), and on any site when the list is empty. Forms embedded on a page (Visual Forms JS and the simple form) aren't restricted.
50
53
  attr_accessor :embed_domains
51
54
 
52
55
  # Allow the embedded template editor to change sensitive template settings (webhooks, redirect URL, encryption, public access, expiration and so on).
@@ -58,7 +61,7 @@ module DocSpring
58
61
  # Allow the embedded template editor to replace the template's PDF.
59
62
  attr_accessor :embed_edit_allow_document_replacement
60
63
 
61
- # Encrypt generated PDFs with `encrypt_pdfs_password`.
64
+ # Encrypt generated PDFs with `encrypt_pdfs_password`. A Word template can only encrypt its PDFs when its `output_format` is `pdf`, because Word documents and OpenDocument files can't be password-protected.
62
65
  attr_accessor :encrypt_pdfs
63
66
 
64
67
  # The password that opens encrypted PDFs. It's never returned; `has_encrypt_pdfs_password` says if it's set.
@@ -76,7 +79,7 @@ module DocSpring
76
79
  # Add the audit trail to the end of PDFs signed through signature requests.
77
80
  attr_accessor :merge_audit_trail_pdf
78
81
 
79
- # Date fields also accept NN/NN/YYYY dates (with slashes, dashes or dots), read in the order of the template's default date format: month first for %m/%d/%Y, day first for %d/%m/%Y. When false, date fields only accept YYYY-MM-DD. Applies to PDF templates: an HTML template's date fields only accept YYYY-MM-DD. Date fields that include a time take RFC 3339 date-times either way.
82
+ # Date fields also accept NN/NN/YYYY dates (with slashes, dashes or dots), read in the order of the template's default date format: month first for %m/%d/%Y, day first for %d/%m/%Y. When false, date fields only accept YYYY-MM-DD. Applies to PDF templates: an HTML or Word template's date fields only accept YYYY-MM-DD. Date fields that include a time take RFC 3339 date-times either way.
80
83
  attr_accessor :parse_dates_using_template_date_format
81
84
 
82
85
  # Allow anyone with a submission's ID to download its PDF.
@@ -88,6 +91,27 @@ module DocSpring
88
91
  # Where the web form sends people after they submit it.
89
92
  attr_accessor :redirect_url
90
93
 
94
+ # How DocSpring's completed emails send the signed PDF to your signers and CCs: `attachment` (attached, or a download link when it's too big to attach) or `link` (a download link). Null uses your account's rule: a link if your account has signed a BAA, otherwise attached. PDF templates only. A signature request uses the value it had when the request was created.
95
+ attr_accessor :signature_request_email_attachments
96
+
97
+ # The address DocSpring's emails to your signers come from: an address at one of your verified email domains, on the Growth plan or higher. Null sends them from DocSpring's shared address, with "via DocSpring" after the sender name. PDF templates only.
98
+ attr_accessor :signature_request_from_address
99
+
100
+ # Puts a signing token in `signature_request_signing_url`, as `{{ token_id }}` and `{{ token_secret }}`, so your page can open the signing form without creating a token itself. The email then carries a credential: anyone who has it can open the form and sign. PDF templates only.
101
+ attr_accessor :signature_request_include_signing_token
102
+
103
+ # The sender name on the emails DocSpring sends your signers, as in "Acme via DocSpring". It can't contain an email address, a website or quotes. Null uses your account's name. PDF templates only.
104
+ attr_accessor :signature_request_from_name
105
+
106
+ # Who DocSpring tells when a signature request's document is completed or declined, or an email bounces or can't be sent: members of your DocSpring team or addresses at your verified email domains. Empty means your account's owner. A submission's `notification_emails` replaces them. PDF templates only.
107
+ attr_accessor :signature_request_notification_emails
108
+
109
+ # Where your signers' replies to DocSpring's emails go: a member of your DocSpring team or an address at one of your verified email domains. Null means your account's owner. A submission's `reply_to` replaces it. PDF templates only.
110
+ attr_accessor :signature_request_reply_to
111
+
112
+ # A page on your own site that the button in DocSpring's email to a signer opens, instead of DocSpring's signing page: an https URL on one of your verified email domains or a subdomain of one, on the Growth plan or higher. It must include `{{ signature_request_id }}`. Your page authenticates the signer, creates a token for the signature request, and opens the signing form with it. Null links to DocSpring's signing page. PDF templates only.
113
+ attr_accessor :signature_request_signing_url
114
+
91
115
  # A Slack incoming webhook URL that is notified about the template's submissions. It's never returned; `has_slack_webhook_url` says if it's set.
92
116
  attr_accessor :slack_webhook_url
93
117
 
@@ -106,7 +130,7 @@ module DocSpring
106
130
  # Sample submission data that sets `predefined_fields`: each value becomes a predefined field, with a type that fits it (`string`, `number`, `boolean`, `date`, `email` or `url`) and `required_in_template` true. Nested objects and arrays become names with `/`, such as `customer/email`. Without `predefined_fields` in the same request, it replaces them; with them, it adds to them and sets the types of the ones it has values for.
107
131
  attr_accessor :predefined_fields_sample_data
108
132
 
109
- # The HTML of an HTML template, as a Liquid template. Null for PDF templates.
133
+ # The HTML of an HTML template, as a Liquid template. Null for other templates.
110
134
  attr_accessor :html
111
135
 
112
136
  # The SCSS of an HTML template.
@@ -121,9 +145,12 @@ module DocSpring
121
145
  # Null resets the options to their defaults.
122
146
  attr_accessor :html_engine_options
123
147
 
124
- # Whether an HTML template HTML-escapes the values it prints. When true, `{{ value }}` prints a value as text, so a `<` or `&` in it is printed as that character, and `{{ value | raw }}` prints a value as HTML. New HTML templates default to true. Templates created before October 2026, or with API v1, default to false, which prints every value as HTML. Null for PDF templates.
148
+ # Whether an HTML template HTML-escapes the values it prints. When true, `{{ value }}` prints a value as text, so a `<` or `&` in it is printed as that character, and `{{ value | raw }}` prints a value as HTML. New HTML templates default to true. Templates created before October 2026, or with API v1, default to false, which prints every value as HTML. Null for other templates.
125
149
  attr_accessor :html_escape_data
126
150
 
151
+ # A page design's layout: its page setup, its sections and the elements placed in them, in the Page Designer layout format (https://docspring.com/docs/page-designer/layout-format/). Its JSON Schema is at https://docspring.com/schemas/page-designer/layout.v1.json. Null for other templates. Setting it replaces the whole layout, and DocSpring adds a field for each value it reads. Left out when a page design is created, it starts with an empty page.
152
+ attr_accessor :layout
153
+
127
154
  class EnumAttributeValidator
128
155
  attr_reader :datatype
129
156
  attr_reader :allowable_values
@@ -151,6 +178,7 @@ module DocSpring
151
178
  {
152
179
  :'name' => :'name',
153
180
  :'description' => :'description',
181
+ :'output_format' => :'output_format',
154
182
  :'parent_folder_id' => :'parent_folder_id',
155
183
  :'locked' => :'locked',
156
184
  :'add_signature_request_submission_id_footers' => :'add_signature_request_submission_id_footers',
@@ -173,6 +201,13 @@ module DocSpring
173
201
  :'public_submissions' => :'public_submissions',
174
202
  :'public_web_form' => :'public_web_form',
175
203
  :'redirect_url' => :'redirect_url',
204
+ :'signature_request_email_attachments' => :'signature_request_email_attachments',
205
+ :'signature_request_from_address' => :'signature_request_from_address',
206
+ :'signature_request_include_signing_token' => :'signature_request_include_signing_token',
207
+ :'signature_request_from_name' => :'signature_request_from_name',
208
+ :'signature_request_notification_emails' => :'signature_request_notification_emails',
209
+ :'signature_request_reply_to' => :'signature_request_reply_to',
210
+ :'signature_request_signing_url' => :'signature_request_signing_url',
176
211
  :'slack_webhook_url' => :'slack_webhook_url',
177
212
  :'defaults' => :'defaults',
178
213
  :'field_dependencies' => :'field_dependencies',
@@ -184,7 +219,8 @@ module DocSpring
184
219
  :'header_html' => :'header_html',
185
220
  :'footer_html' => :'footer_html',
186
221
  :'html_engine_options' => :'html_engine_options',
187
- :'html_escape_data' => :'html_escape_data'
222
+ :'html_escape_data' => :'html_escape_data',
223
+ :'layout' => :'layout'
188
224
  }
189
225
  end
190
226
 
@@ -203,6 +239,7 @@ module DocSpring
203
239
  {
204
240
  :'name' => :'String',
205
241
  :'description' => :'String',
242
+ :'output_format' => :'OutputFormat',
206
243
  :'parent_folder_id' => :'String',
207
244
  :'locked' => :'Boolean',
208
245
  :'add_signature_request_submission_id_footers' => :'Boolean',
@@ -225,6 +262,13 @@ module DocSpring
225
262
  :'public_submissions' => :'Boolean',
226
263
  :'public_web_form' => :'Boolean',
227
264
  :'redirect_url' => :'String',
265
+ :'signature_request_email_attachments' => :'SignatureRequestEmailAttachments',
266
+ :'signature_request_from_address' => :'String',
267
+ :'signature_request_include_signing_token' => :'Boolean',
268
+ :'signature_request_from_name' => :'String',
269
+ :'signature_request_notification_emails' => :'Array<String>',
270
+ :'signature_request_reply_to' => :'String',
271
+ :'signature_request_signing_url' => :'String',
228
272
  :'slack_webhook_url' => :'String',
229
273
  :'defaults' => :'TemplateDefaultsInput',
230
274
  :'field_dependencies' => :'Array<TemplateFieldDependencyInput>',
@@ -236,7 +280,8 @@ module DocSpring
236
280
  :'header_html' => :'String',
237
281
  :'footer_html' => :'String',
238
282
  :'html_engine_options' => :'HtmlEngineOptionsInput',
239
- :'html_escape_data' => :'Boolean'
283
+ :'html_escape_data' => :'Boolean',
284
+ :'layout' => :'Hash<String, Object>'
240
285
  }
241
286
  end
242
287
 
@@ -247,6 +292,11 @@ module DocSpring
247
292
  :'parent_folder_id',
248
293
  :'encrypt_pdfs_password',
249
294
  :'redirect_url',
295
+ :'signature_request_email_attachments',
296
+ :'signature_request_from_address',
297
+ :'signature_request_from_name',
298
+ :'signature_request_reply_to',
299
+ :'signature_request_signing_url',
250
300
  :'slack_webhook_url',
251
301
  :'predefined_fields_sample_data',
252
302
  :'html',
@@ -254,6 +304,7 @@ module DocSpring
254
304
  :'header_html',
255
305
  :'footer_html',
256
306
  :'html_engine_options',
307
+ :'layout'
257
308
  ])
258
309
  end
259
310
 
@@ -291,6 +342,10 @@ module DocSpring
291
342
  self.description = attributes[:'description']
292
343
  end
293
344
 
345
+ if attributes.key?(:'output_format')
346
+ self.output_format = attributes[:'output_format']
347
+ end
348
+
294
349
  if attributes.key?(:'parent_folder_id')
295
350
  self.parent_folder_id = attributes[:'parent_folder_id']
296
351
  end
@@ -381,6 +436,36 @@ module DocSpring
381
436
  self.redirect_url = attributes[:'redirect_url']
382
437
  end
383
438
 
439
+ if attributes.key?(:'signature_request_email_attachments')
440
+ self.signature_request_email_attachments = attributes[:'signature_request_email_attachments']
441
+ end
442
+
443
+ if attributes.key?(:'signature_request_from_address')
444
+ self.signature_request_from_address = attributes[:'signature_request_from_address']
445
+ end
446
+
447
+ if attributes.key?(:'signature_request_include_signing_token')
448
+ self.signature_request_include_signing_token = attributes[:'signature_request_include_signing_token']
449
+ end
450
+
451
+ if attributes.key?(:'signature_request_from_name')
452
+ self.signature_request_from_name = attributes[:'signature_request_from_name']
453
+ end
454
+
455
+ if attributes.key?(:'signature_request_notification_emails')
456
+ if (value = attributes[:'signature_request_notification_emails']).is_a?(Array)
457
+ self.signature_request_notification_emails = value
458
+ end
459
+ end
460
+
461
+ if attributes.key?(:'signature_request_reply_to')
462
+ self.signature_request_reply_to = attributes[:'signature_request_reply_to']
463
+ end
464
+
465
+ if attributes.key?(:'signature_request_signing_url')
466
+ self.signature_request_signing_url = attributes[:'signature_request_signing_url']
467
+ end
468
+
384
469
  if attributes.key?(:'slack_webhook_url')
385
470
  self.slack_webhook_url = attributes[:'slack_webhook_url']
386
471
  end
@@ -436,6 +521,12 @@ module DocSpring
436
521
  if attributes.key?(:'html_escape_data')
437
522
  self.html_escape_data = attributes[:'html_escape_data']
438
523
  end
524
+
525
+ if attributes.key?(:'layout')
526
+ if (value = attributes[:'layout']).is_a?(Hash) || value.nil?
527
+ self.layout = value
528
+ end
529
+ end
439
530
  end
440
531
 
441
532
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -453,6 +544,16 @@ module DocSpring
453
544
  true
454
545
  end
455
546
 
547
+ # Custom attribute writer method with validation
548
+ # @param [Object] signature_request_notification_emails Value to be assigned
549
+ def signature_request_notification_emails=(signature_request_notification_emails)
550
+ if signature_request_notification_emails.nil?
551
+ fail ArgumentError, 'signature_request_notification_emails cannot be nil'
552
+ end
553
+
554
+ @signature_request_notification_emails = signature_request_notification_emails
555
+ end
556
+
456
557
  # Checks equality by comparing each attribute.
457
558
  # @param [Object] Object to be compared
458
559
  def ==(o)
@@ -460,6 +561,7 @@ module DocSpring
460
561
  self.class == o.class &&
461
562
  name == o.name &&
462
563
  description == o.description &&
564
+ output_format == o.output_format &&
463
565
  parent_folder_id == o.parent_folder_id &&
464
566
  locked == o.locked &&
465
567
  add_signature_request_submission_id_footers == o.add_signature_request_submission_id_footers &&
@@ -482,6 +584,13 @@ module DocSpring
482
584
  public_submissions == o.public_submissions &&
483
585
  public_web_form == o.public_web_form &&
484
586
  redirect_url == o.redirect_url &&
587
+ signature_request_email_attachments == o.signature_request_email_attachments &&
588
+ signature_request_from_address == o.signature_request_from_address &&
589
+ signature_request_include_signing_token == o.signature_request_include_signing_token &&
590
+ signature_request_from_name == o.signature_request_from_name &&
591
+ signature_request_notification_emails == o.signature_request_notification_emails &&
592
+ signature_request_reply_to == o.signature_request_reply_to &&
593
+ signature_request_signing_url == o.signature_request_signing_url &&
485
594
  slack_webhook_url == o.slack_webhook_url &&
486
595
  defaults == o.defaults &&
487
596
  field_dependencies == o.field_dependencies &&
@@ -493,7 +602,8 @@ module DocSpring
493
602
  header_html == o.header_html &&
494
603
  footer_html == o.footer_html &&
495
604
  html_engine_options == o.html_engine_options &&
496
- html_escape_data == o.html_escape_data
605
+ html_escape_data == o.html_escape_data &&
606
+ layout == o.layout
497
607
  end
498
608
 
499
609
  # @see the `==` method
@@ -505,7 +615,7 @@ module DocSpring
505
615
  # Calculates hash code according to all attributes.
506
616
  # @return [Integer] Hash code
507
617
  def hash
508
- [name, description, parent_folder_id, locked, add_signature_request_submission_id_footers, ai_field_naming_language, allow_additional_properties, allow_skipping_optional_fields, default_form_mode, editable_submissions, embed_domains, embed_edit_allow_settings, embed_edit_allow_versioning, embed_edit_allow_document_replacement, encrypt_pdfs, encrypt_pdfs_password, expire_submissions, expire_after, expiration_interval, merge_audit_trail_pdf, parse_dates_using_template_date_format, public_submissions, public_web_form, redirect_url, slack_webhook_url, defaults, field_dependencies, field_groups, predefined_fields, predefined_fields_sample_data, html, scss, header_html, footer_html, html_engine_options, html_escape_data].hash
618
+ [name, description, output_format, parent_folder_id, locked, add_signature_request_submission_id_footers, ai_field_naming_language, allow_additional_properties, allow_skipping_optional_fields, default_form_mode, editable_submissions, embed_domains, embed_edit_allow_settings, embed_edit_allow_versioning, embed_edit_allow_document_replacement, encrypt_pdfs, encrypt_pdfs_password, expire_submissions, expire_after, expiration_interval, merge_audit_trail_pdf, parse_dates_using_template_date_format, public_submissions, public_web_form, redirect_url, signature_request_email_attachments, signature_request_from_address, signature_request_include_signing_token, signature_request_from_name, signature_request_notification_emails, signature_request_reply_to, signature_request_signing_url, slack_webhook_url, defaults, field_dependencies, field_groups, predefined_fields, predefined_fields_sample_data, html, scss, header_html, footer_html, html_engine_options, html_escape_data, layout].hash
509
619
  end
510
620
 
511
621
  # Builds the object from hash
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -16,25 +16,25 @@ require 'time'
16
16
  module DocSpring
17
17
  # The submission's data and settings.
18
18
  class ValidateSubmissionRequest < ApiModelBase
19
- # Test PDFs have a watermark and are free. Live PDFs use credits. Submissions made with a test API token are always test submissions.
19
+ # Test PDFs have a watermark and are free. Live PDFs use credits. Submissions made with a test API token are always test submissions, and the demo API token's are always live.
20
20
  attr_accessor :test
21
21
 
22
22
  # `true` keeps the PDF's text and check fields fillable, and `false` flattens every field. Left out, the template decides: its `editable_submissions` setting, or each field's own Editable option. A response shows the template's setting when the request left this out. Can't be `true` with `signature_requests`.
23
23
  attr_accessor :editable
24
24
 
25
- # The values of the template's fields, by field name. Required for a PDF template, unless `signature_requests` collects the values.
25
+ # The values of the template's fields, by field name. Required for PDF templates, Word templates and page designs, unless `signature_requests` collects them (PDF templates only).
26
26
  attr_accessor :data
27
27
 
28
28
  # Your own data about the submission, such as an ID from your app. It isn't printed on the PDF. Two keys also change the PDF: `pdf_filename` names its file (`files.pdf.filename`, and its download), and `pdf_title` is its title in the PDF's document properties (and an HTML template's `<title>`, unless its HTML has one). Without `pdf_title`, the title is the template's name. In `pdf_filename`, a `.pdf` ending is removed, each run of characters other than letters, digits, `-`, `_` and `.` becomes one `_`, and the first 128 characters are kept, then `.pdf` is added. Without it, the file is named after the submission's ID (`sub_1234567890abcdef01.pdf`).
29
29
  attr_accessor :metadata
30
30
 
31
- # A password that the PDF needs to be opened with. It's never returned; `has_password` says if it's set.
31
+ # A password that the PDF needs to be opened with. It's never returned; `has_password` says if it's set. Word documents and OpenDocument files can't be password-protected, so a submission with a password can't make them.
32
32
  attr_accessor :password
33
33
 
34
- # What the submission makes: `pdf`, and `png` (an image of each page of the PDF, up to 100 pages) when you ask for it. Default `["pdf"]`. POST /submissions/{submission_id}/generate_files adds `png` to a processed submission.
34
+ # What the submission makes: `pdf`, `docx` (a Word document, from a Word template), `odt` (an OpenDocument file, the format LibreOffice uses, converted from a Word template's Word document), and `png` (an image of each page of the PDF, up to 100 pages, which adds `pdf`) when you ask for it. Default `["pdf"]`, or a Word template's `output_format`. POST /submissions/{submission_id}/generate_files adds `png`, and a Word template's submission's `pdf`, `docx` or `odt`, to a processed submission.
35
35
  attr_accessor :output_formats
36
36
 
37
- # Seconds after the PDF is generated until the submission expires, up to 10 years (315360000). Default the template's expiration setting. A submission that isn't processed, such as one with invalid data, is kept for at least 48 hours.
37
+ # Seconds after the PDF is generated until the submission expires, up to 10 years (315360000). Default the template's expiration setting. A submission that isn't processed, such as one with invalid data, is kept for at least 48 hours. The demo API token's submissions expire within an hour: up to 3600, and that's their default.
38
38
  attr_accessor :expires_in
39
39
 
40
40
  # Changes to field settings for this submission only, by field name, such as `{"name": {"required": false, "font_size": 9}}`. A setting that identifies the field (`id`, `name`, `type`), that only the template sets (such as `description`), or that doesn't apply to the field's type and display type (such as `check_character` on a field displayed as text) is a 422. With `signature_requests`, `editable: true` is a 422, and a `default` for a signature or initials field makes the submission `invalid_data`.
@@ -49,6 +49,55 @@ module DocSpring
49
49
  # The people who sign the PDF, and fill in their fields first. The PDF is generated once every signature request is completed. PDF templates only. Without `role`s, the first signature request is `Signer 1`, the second `Signer 2`, and so on. To leave a signer out, give every signature request its `role` and leave that one's out. Only the signers sign: a value for a signature or initials field in `data` makes the submission `invalid_data`.
50
50
  attr_accessor :signature_requests
51
51
 
52
+ # Whether DocSpring emails the signers their signing links, and sends the reminders and the completed document. Default true. Each signature request's own `send_email` overrides it. A test submission only emails your DocSpring team: every other address is a 422. `true` needs `signature_requests`. DocSpring doesn't email the signers of a form library template: leave `send_email` out, and send them their links yourself.
53
+ attr_accessor :send_email
54
+
55
+ # `parallel` (the default): everyone can sign at once. `sequential`: people sign one step at a time (`signing_step`), and DocSpring emails each step when the one before it is done. Needs `signature_requests`.
56
+ attr_accessor :signing_order
57
+
58
+ # The subject of the emails that ask people to sign. You can use `{{ signer.name }}`, `{{ signer.email }}`, `{{ document.name }}`, `{{ sender.name }}` and `{{ account.name }}`. Default "<sender> sent you <document> to sign" when you leave it out (a blank subject is a 422). Links and web addresses are shown as plain text (`example[.]com`).
59
+ attr_accessor :email_subject
60
+
61
+ # A message for the people who sign, shown above the signing button. It takes the same variables as `email_subject`. Links and web addresses are shown as plain text. Leave it out for none: a blank message is a 422.
62
+ attr_accessor :email_message
63
+
64
+ # People who get a copy of the completed document. They don't sign.
65
+ attr_accessor :cc
66
+
67
+ # Where replies to the emails go: a member of your DocSpring team, or an address at one of your verified email domains. Leave it out for the template's reply-to address (the account owner when it has none).
68
+ attr_accessor :reply_to
69
+
70
+ # Who DocSpring tells when the document is completed or declined, or an email bounces or can't be sent: members of your DocSpring team or addresses at your verified email domains. Leave it out for the template's notification addresses (the account owner when it has none); an empty list means the account owner.
71
+ attr_accessor :notification_emails
72
+
73
+ # Also email `notification_emails` each time someone signs. Default false.
74
+ attr_accessor :notify_when_signed
75
+
76
+ # Remind people who haven't signed: every `interval_days` days, up to `max_count` times. Each reminder has a new signing link. Without it, DocSpring sends no reminders.
77
+ attr_accessor :reminders
78
+
79
+ class EnumAttributeValidator
80
+ attr_reader :datatype
81
+ attr_reader :allowable_values
82
+
83
+ def initialize(datatype, allowable_values)
84
+ @allowable_values = allowable_values.map do |value|
85
+ case datatype.to_s
86
+ when /Integer/i
87
+ value.to_i
88
+ when /Float/i
89
+ value.to_f
90
+ else
91
+ value
92
+ end
93
+ end
94
+ end
95
+
96
+ def valid?(value)
97
+ !value || allowable_values.include?(value)
98
+ end
99
+ end
100
+
52
101
  # Attribute mapping from ruby-style variable name to JSON key.
53
102
  def self.attribute_map
54
103
  {
@@ -62,7 +111,16 @@ module DocSpring
62
111
  :'field_overrides' => :'field_overrides',
63
112
  :'html' => :'html',
64
113
  :'css' => :'css',
65
- :'signature_requests' => :'signature_requests'
114
+ :'signature_requests' => :'signature_requests',
115
+ :'send_email' => :'send_email',
116
+ :'signing_order' => :'signing_order',
117
+ :'email_subject' => :'email_subject',
118
+ :'email_message' => :'email_message',
119
+ :'cc' => :'cc',
120
+ :'reply_to' => :'reply_to',
121
+ :'notification_emails' => :'notification_emails',
122
+ :'notify_when_signed' => :'notify_when_signed',
123
+ :'reminders' => :'reminders'
66
124
  }
67
125
  end
68
126
 
@@ -89,7 +147,16 @@ module DocSpring
89
147
  :'field_overrides' => :'Hash<String, FieldOverride>',
90
148
  :'html' => :'String',
91
149
  :'css' => :'String',
92
- :'signature_requests' => :'Array<SignatureRequestInput>'
150
+ :'signature_requests' => :'Array<SignatureRequestInput>',
151
+ :'send_email' => :'Boolean',
152
+ :'signing_order' => :'SigningOrder',
153
+ :'email_subject' => :'String',
154
+ :'email_message' => :'String',
155
+ :'cc' => :'Array<String>',
156
+ :'reply_to' => :'String',
157
+ :'notification_emails' => :'Array<String>',
158
+ :'notify_when_signed' => :'Boolean',
159
+ :'reminders' => :'SignatureRequestReminders'
93
160
  }
94
161
  end
95
162
 
@@ -178,6 +245,46 @@ module DocSpring
178
245
  self.signature_requests = value
179
246
  end
180
247
  end
248
+
249
+ if attributes.key?(:'send_email')
250
+ self.send_email = attributes[:'send_email']
251
+ end
252
+
253
+ if attributes.key?(:'signing_order')
254
+ self.signing_order = attributes[:'signing_order']
255
+ end
256
+
257
+ if attributes.key?(:'email_subject')
258
+ self.email_subject = attributes[:'email_subject']
259
+ end
260
+
261
+ if attributes.key?(:'email_message')
262
+ self.email_message = attributes[:'email_message']
263
+ end
264
+
265
+ if attributes.key?(:'cc')
266
+ if (value = attributes[:'cc']).is_a?(Array)
267
+ self.cc = value
268
+ end
269
+ end
270
+
271
+ if attributes.key?(:'reply_to')
272
+ self.reply_to = attributes[:'reply_to']
273
+ end
274
+
275
+ if attributes.key?(:'notification_emails')
276
+ if (value = attributes[:'notification_emails']).is_a?(Array)
277
+ self.notification_emails = value
278
+ end
279
+ end
280
+
281
+ if attributes.key?(:'notify_when_signed')
282
+ self.notify_when_signed = attributes[:'notify_when_signed']
283
+ end
284
+
285
+ if attributes.key?(:'reminders')
286
+ self.reminders = attributes[:'reminders']
287
+ end
181
288
  end
182
289
 
183
290
  # Show invalid properties with the reasons. Usually used together with valid?
@@ -205,6 +312,26 @@ module DocSpring
205
312
  @output_formats = output_formats
206
313
  end
207
314
 
315
+ # Custom attribute writer method with validation
316
+ # @param [Object] cc Value to be assigned
317
+ def cc=(cc)
318
+ if cc.nil?
319
+ fail ArgumentError, 'cc cannot be nil'
320
+ end
321
+
322
+ @cc = cc
323
+ end
324
+
325
+ # Custom attribute writer method with validation
326
+ # @param [Object] notification_emails Value to be assigned
327
+ def notification_emails=(notification_emails)
328
+ if notification_emails.nil?
329
+ fail ArgumentError, 'notification_emails cannot be nil'
330
+ end
331
+
332
+ @notification_emails = notification_emails
333
+ end
334
+
208
335
  # Checks equality by comparing each attribute.
209
336
  # @param [Object] Object to be compared
210
337
  def ==(o)
@@ -220,7 +347,16 @@ module DocSpring
220
347
  field_overrides == o.field_overrides &&
221
348
  html == o.html &&
222
349
  css == o.css &&
223
- signature_requests == o.signature_requests
350
+ signature_requests == o.signature_requests &&
351
+ send_email == o.send_email &&
352
+ signing_order == o.signing_order &&
353
+ email_subject == o.email_subject &&
354
+ email_message == o.email_message &&
355
+ cc == o.cc &&
356
+ reply_to == o.reply_to &&
357
+ notification_emails == o.notification_emails &&
358
+ notify_when_signed == o.notify_when_signed &&
359
+ reminders == o.reminders
224
360
  end
225
361
 
226
362
  # @see the `==` method
@@ -232,7 +368,7 @@ module DocSpring
232
368
  # Calculates hash code according to all attributes.
233
369
  # @return [Integer] Hash code
234
370
  def hash
235
- [test, editable, data, metadata, password, output_formats, expires_in, field_overrides, html, css, signature_requests].hash
371
+ [test, editable, data, metadata, password, output_formats, expires_in, field_overrides, html, css, signature_requests, send_email, signing_order, email_subject, email_message, cc, reply_to, notification_emails, notify_when_signed, reminders].hash
236
372
  end
237
373
 
238
374
  # Builds the object from hash
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -18,9 +18,11 @@ module DocSpring
18
18
  SUBMISSION_PROCESSED = "submission.processed".freeze
19
19
  SUBMISSION_FAILED = "submission.failed".freeze
20
20
  SUBMISSION_DECLINED = "submission.declined".freeze
21
+ SIGNATURE_REQUEST_SENT = "signature_request.sent".freeze
21
22
  SIGNATURE_REQUEST_VIEWED = "signature_request.viewed".freeze
22
23
  SIGNATURE_REQUEST_COMPLETED = "signature_request.completed".freeze
23
24
  SIGNATURE_REQUEST_DECLINED = "signature_request.declined".freeze
25
+ SIGNATURE_REQUEST_EMAIL_BOUNCED = "signature_request.email_bounced".freeze
24
26
  COMBINED_PDF_PROCESSED = "combined_pdf.processed".freeze
25
27
  COMBINED_PDF_FAILED = "combined_pdf.failed".freeze
26
28
  SUBMISSION_BATCH_PROCESSED = "submission_batch.processed".freeze
@@ -42,7 +44,7 @@ module DocSpring
42
44
  FOLDER_DELETED = "folder.deleted".freeze
43
45
 
44
46
  def self.all_vars
45
- @all_vars ||= [SUBMISSION_PROCESSED, SUBMISSION_FAILED, SUBMISSION_DECLINED, SIGNATURE_REQUEST_VIEWED, SIGNATURE_REQUEST_COMPLETED, SIGNATURE_REQUEST_DECLINED, COMBINED_PDF_PROCESSED, COMBINED_PDF_FAILED, SUBMISSION_BATCH_PROCESSED, SUBMISSION_BATCH_FAILED, SUBMISSION_CREATED, SUBMISSION_UPDATED, SUBMISSION_EXPIRED, SIGNATURE_REQUEST_UPDATED, COMBINED_PDF_EXPIRED, TEMPLATE_CREATED, TEMPLATE_UPDATED, TEMPLATE_DELETED, WEBHOOK_CREATED, WEBHOOK_UPDATED, WEBHOOK_DELETED, CUSTOM_FILE_CREATED, FOLDER_CREATED, FOLDER_UPDATED, FOLDER_DELETED].freeze
47
+ @all_vars ||= [SUBMISSION_PROCESSED, SUBMISSION_FAILED, SUBMISSION_DECLINED, SIGNATURE_REQUEST_SENT, SIGNATURE_REQUEST_VIEWED, SIGNATURE_REQUEST_COMPLETED, SIGNATURE_REQUEST_DECLINED, SIGNATURE_REQUEST_EMAIL_BOUNCED, COMBINED_PDF_PROCESSED, COMBINED_PDF_FAILED, SUBMISSION_BATCH_PROCESSED, SUBMISSION_BATCH_FAILED, SUBMISSION_CREATED, SUBMISSION_UPDATED, SUBMISSION_EXPIRED, SIGNATURE_REQUEST_UPDATED, COMBINED_PDF_EXPIRED, TEMPLATE_CREATED, TEMPLATE_UPDATED, TEMPLATE_DELETED, WEBHOOK_CREATED, WEBHOOK_UPDATED, WEBHOOK_DELETED, CUSTOM_FILE_CREATED, FOLDER_CREATED, FOLDER_UPDATED, FOLDER_DELETED].freeze
46
48
  end
47
49
 
48
50
  # Builds the enum from string
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7
 
@@ -1,7 +1,7 @@
1
1
  =begin
2
2
  #DocSpring API
3
3
 
4
- #Use DocSpring's API to programmatically fill out PDF forms, convert HTML to PDFs, merge PDFs, or request legally binding e-signatures.
4
+ #Use DocSpring's API to fill PDF forms, generate PDFs and Word documents from HTML or Word templates, merge PDFs, and request legally binding e-signatures.
5
5
 
6
6
  The version of the OpenAPI document: v2
7
7