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
 
@@ -16,25 +16,25 @@ require 'time'
16
16
  module DocSpring
17
17
  # The submission's data and settings.
18
18
  class CreateSubmissionRequest < 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
 
@@ -22,9 +22,12 @@ 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
- # `pdf`: fields placed on an uploaded PDF. `html`: a PDF rendered from HTML and SCSS. It can't be changed after the template is created.
25
+ # `pdf`: fields placed on an uploaded PDF. `html`: a PDF rendered from HTML and SCSS. `docx`: a Word document with tags where the data goes, which makes Word documents or PDFs. `page_designer`: a page design, a PDF laid out in the Page Designer from its `layout`. It can't be changed after the template is created.
26
26
  attr_accessor :template_type
27
27
 
28
+ # 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.
29
+ attr_accessor :output_format
30
+
28
31
  # 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.
29
32
  attr_accessor :parent_folder_id
30
33
 
@@ -43,13 +46,13 @@ module DocSpring
43
46
  # 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.
44
47
  attr_accessor :allow_skipping_optional_fields
45
48
 
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). HTML templates have no visual form, so `web` is the only value they accept.
49
+ # 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`.
47
50
  attr_accessor :default_form_mode
48
51
 
49
52
  # Generate PDFs whose text and check fields stay fillable ("Generate Editable PDFs"). A submission's `editable` overrides it.
50
53
  attr_accessor :editable_submissions
51
54
 
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). 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.
55
+ # 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.
53
56
  attr_accessor :embed_domains
54
57
 
55
58
  # Allow the embedded template editor to change sensitive template settings (webhooks, redirect URL, encryption, public access, expiration and so on).
@@ -61,7 +64,7 @@ module DocSpring
61
64
  # Allow the embedded template editor to replace the template's PDF.
62
65
  attr_accessor :embed_edit_allow_document_replacement
63
66
 
64
- # Encrypt generated PDFs with `encrypt_pdfs_password`.
67
+ # 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.
65
68
  attr_accessor :encrypt_pdfs
66
69
 
67
70
  # The password that opens encrypted PDFs. It's never returned; `has_encrypt_pdfs_password` says if it's set.
@@ -79,7 +82,7 @@ module DocSpring
79
82
  # Add the audit trail to the end of PDFs signed through signature requests.
80
83
  attr_accessor :merge_audit_trail_pdf
81
84
 
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 template's date fields only accept YYYY-MM-DD. Date fields that include a time take RFC 3339 date-times either way.
85
+ # 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.
83
86
  attr_accessor :parse_dates_using_template_date_format
84
87
 
85
88
  # Allow anyone with a submission's ID to download its PDF.
@@ -91,6 +94,27 @@ module DocSpring
91
94
  # Where the web form sends people after they submit it.
92
95
  attr_accessor :redirect_url
93
96
 
97
+ # 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.
98
+ attr_accessor :signature_request_email_attachments
99
+
100
+ # 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.
101
+ attr_accessor :signature_request_from_address
102
+
103
+ # 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.
104
+ attr_accessor :signature_request_include_signing_token
105
+
106
+ # 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.
107
+ attr_accessor :signature_request_from_name
108
+
109
+ # 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.
110
+ attr_accessor :signature_request_notification_emails
111
+
112
+ # 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.
113
+ attr_accessor :signature_request_reply_to
114
+
115
+ # 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.
116
+ attr_accessor :signature_request_signing_url
117
+
94
118
  # 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.
95
119
  attr_accessor :slack_webhook_url
96
120
 
@@ -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,19 +145,22 @@ 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
 
127
- # A PDF template's document: the `fields.key` of a file you uploaded with the presigned upload (GET /uploads/presign). A PDF template needs one of `cache_id`, `document_url` and `document_base64`. To upload the PDF with the request, use POST /templates/upload.
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
+
154
+ # The template's document, a PDF or a Word document (.docx or .odt): the `fields.key` of a file you uploaded with the presigned upload (GET /uploads/presign). PDF and Word templates need one of `cache_id`, `document_url` and `document_base64`. To upload the file with the request, use POST /templates/upload.
128
155
  attr_accessor :cache_id
129
156
 
130
- # An https:// link to the template's PDF (up to 100 MB), instead of `cache_id`. DocSpring downloads it after responding, following redirects to other https:// links: the template's `document.state` is `downloading` until then (sync.api hosts wait for it). If it can't be downloaded, the state is `download_failed` and `document.error_message` says why.
157
+ # An https:// link to the template's document, instead of `cache_id`: a PDF template's PDF (up to 100 MB) or a Word template's Word document (.docx or .odt, up to 50 MB). DocSpring downloads it after responding, following redirects to other https:// links: the template's `document.state` is `downloading` until then, and `converting` while an .odt is converted (sync.api hosts wait for both). If it can't be downloaded, the state is `download_failed` and `document.error_message` says why.
131
158
  attr_accessor :document_url
132
159
 
133
- # The template's PDF, encoded as base64 (a `data:` URI works too), instead of `cache_id`. Up to 7 MB before it's encoded: send a larger file with `cache_id` or `document_url`.
160
+ # The template's document (a PDF, or a Word template's Word document), encoded as base64 (a `data:` URI works too), instead of `cache_id`. Line breaks and spaces in it are ignored. Up to 7 MB before it's encoded: send a larger file with `cache_id` or `document_url`.
134
161
  attr_accessor :document_base64
135
162
 
136
- # The PDF's file name, for a `cache_id` (presigned uploads don't send one) or `document_base64`. A `document_url`'s is the last part of its path unless you set it.
163
+ # The file's name, for a `cache_id` (presigned uploads don't send one) or `document_base64`. A `document_url`'s is the last part of its path unless you set it.
137
164
  attr_accessor :filename
138
165
 
139
166
  # Set up the PDF's fields as DocSpring's "Automatically detect fields" upload option does: import or detect the fields, name them with AI, and set up conditional logic. `field_source`, `field_naming` and `field_logic` choose how. Default false. `document.page_processing_statuses` and `document.field_logic_status` show how it's going, and `document.state` becomes `processed` once every page's fields are set up.
@@ -176,6 +203,7 @@ module DocSpring
176
203
  :'name' => :'name',
177
204
  :'description' => :'description',
178
205
  :'template_type' => :'template_type',
206
+ :'output_format' => :'output_format',
179
207
  :'parent_folder_id' => :'parent_folder_id',
180
208
  :'locked' => :'locked',
181
209
  :'add_signature_request_submission_id_footers' => :'add_signature_request_submission_id_footers',
@@ -198,6 +226,13 @@ module DocSpring
198
226
  :'public_submissions' => :'public_submissions',
199
227
  :'public_web_form' => :'public_web_form',
200
228
  :'redirect_url' => :'redirect_url',
229
+ :'signature_request_email_attachments' => :'signature_request_email_attachments',
230
+ :'signature_request_from_address' => :'signature_request_from_address',
231
+ :'signature_request_include_signing_token' => :'signature_request_include_signing_token',
232
+ :'signature_request_from_name' => :'signature_request_from_name',
233
+ :'signature_request_notification_emails' => :'signature_request_notification_emails',
234
+ :'signature_request_reply_to' => :'signature_request_reply_to',
235
+ :'signature_request_signing_url' => :'signature_request_signing_url',
201
236
  :'slack_webhook_url' => :'slack_webhook_url',
202
237
  :'defaults' => :'defaults',
203
238
  :'field_dependencies' => :'field_dependencies',
@@ -209,6 +244,7 @@ module DocSpring
209
244
  :'footer_html' => :'footer_html',
210
245
  :'html_engine_options' => :'html_engine_options',
211
246
  :'html_escape_data' => :'html_escape_data',
247
+ :'layout' => :'layout',
212
248
  :'cache_id' => :'cache_id',
213
249
  :'document_url' => :'document_url',
214
250
  :'document_base64' => :'document_base64',
@@ -236,6 +272,7 @@ module DocSpring
236
272
  :'name' => :'String',
237
273
  :'description' => :'String',
238
274
  :'template_type' => :'TemplateType',
275
+ :'output_format' => :'OutputFormat',
239
276
  :'parent_folder_id' => :'String',
240
277
  :'locked' => :'Boolean',
241
278
  :'add_signature_request_submission_id_footers' => :'Boolean',
@@ -258,6 +295,13 @@ module DocSpring
258
295
  :'public_submissions' => :'Boolean',
259
296
  :'public_web_form' => :'Boolean',
260
297
  :'redirect_url' => :'String',
298
+ :'signature_request_email_attachments' => :'SignatureRequestEmailAttachments',
299
+ :'signature_request_from_address' => :'String',
300
+ :'signature_request_include_signing_token' => :'Boolean',
301
+ :'signature_request_from_name' => :'String',
302
+ :'signature_request_notification_emails' => :'Array<String>',
303
+ :'signature_request_reply_to' => :'String',
304
+ :'signature_request_signing_url' => :'String',
261
305
  :'slack_webhook_url' => :'String',
262
306
  :'defaults' => :'TemplateDefaultsInput',
263
307
  :'field_dependencies' => :'Array<TemplateFieldDependencyInput>',
@@ -269,6 +313,7 @@ module DocSpring
269
313
  :'footer_html' => :'String',
270
314
  :'html_engine_options' => :'HtmlEngineOptionsInput',
271
315
  :'html_escape_data' => :'Boolean',
316
+ :'layout' => :'Hash<String, Object>',
272
317
  :'cache_id' => :'String',
273
318
  :'document_url' => :'String',
274
319
  :'document_base64' => :'String',
@@ -287,6 +332,11 @@ module DocSpring
287
332
  :'parent_folder_id',
288
333
  :'encrypt_pdfs_password',
289
334
  :'redirect_url',
335
+ :'signature_request_email_attachments',
336
+ :'signature_request_from_address',
337
+ :'signature_request_from_name',
338
+ :'signature_request_reply_to',
339
+ :'signature_request_signing_url',
290
340
  :'slack_webhook_url',
291
341
  :'predefined_fields_sample_data',
292
342
  :'html',
@@ -294,6 +344,7 @@ module DocSpring
294
344
  :'header_html',
295
345
  :'footer_html',
296
346
  :'html_engine_options',
347
+ :'layout',
297
348
  ])
298
349
  end
299
350
 
@@ -337,6 +388,10 @@ module DocSpring
337
388
  self.template_type = nil
338
389
  end
339
390
 
391
+ if attributes.key?(:'output_format')
392
+ self.output_format = attributes[:'output_format']
393
+ end
394
+
340
395
  if attributes.key?(:'parent_folder_id')
341
396
  self.parent_folder_id = attributes[:'parent_folder_id']
342
397
  end
@@ -427,6 +482,36 @@ module DocSpring
427
482
  self.redirect_url = attributes[:'redirect_url']
428
483
  end
429
484
 
485
+ if attributes.key?(:'signature_request_email_attachments')
486
+ self.signature_request_email_attachments = attributes[:'signature_request_email_attachments']
487
+ end
488
+
489
+ if attributes.key?(:'signature_request_from_address')
490
+ self.signature_request_from_address = attributes[:'signature_request_from_address']
491
+ end
492
+
493
+ if attributes.key?(:'signature_request_include_signing_token')
494
+ self.signature_request_include_signing_token = attributes[:'signature_request_include_signing_token']
495
+ end
496
+
497
+ if attributes.key?(:'signature_request_from_name')
498
+ self.signature_request_from_name = attributes[:'signature_request_from_name']
499
+ end
500
+
501
+ if attributes.key?(:'signature_request_notification_emails')
502
+ if (value = attributes[:'signature_request_notification_emails']).is_a?(Array)
503
+ self.signature_request_notification_emails = value
504
+ end
505
+ end
506
+
507
+ if attributes.key?(:'signature_request_reply_to')
508
+ self.signature_request_reply_to = attributes[:'signature_request_reply_to']
509
+ end
510
+
511
+ if attributes.key?(:'signature_request_signing_url')
512
+ self.signature_request_signing_url = attributes[:'signature_request_signing_url']
513
+ end
514
+
430
515
  if attributes.key?(:'slack_webhook_url')
431
516
  self.slack_webhook_url = attributes[:'slack_webhook_url']
432
517
  end
@@ -477,6 +562,12 @@ module DocSpring
477
562
  self.html_escape_data = attributes[:'html_escape_data']
478
563
  end
479
564
 
565
+ if attributes.key?(:'layout')
566
+ if (value = attributes[:'layout']).is_a?(Hash) || value.nil?
567
+ self.layout = value
568
+ end
569
+ end
570
+
480
571
  if attributes.key?(:'cache_id')
481
572
  self.cache_id = attributes[:'cache_id']
482
573
  end
@@ -540,6 +631,16 @@ module DocSpring
540
631
  @template_type = template_type
541
632
  end
542
633
 
634
+ # Custom attribute writer method with validation
635
+ # @param [Object] signature_request_notification_emails Value to be assigned
636
+ def signature_request_notification_emails=(signature_request_notification_emails)
637
+ if signature_request_notification_emails.nil?
638
+ fail ArgumentError, 'signature_request_notification_emails cannot be nil'
639
+ end
640
+
641
+ @signature_request_notification_emails = signature_request_notification_emails
642
+ end
643
+
543
644
  # Checks equality by comparing each attribute.
544
645
  # @param [Object] Object to be compared
545
646
  def ==(o)
@@ -548,6 +649,7 @@ module DocSpring
548
649
  name == o.name &&
549
650
  description == o.description &&
550
651
  template_type == o.template_type &&
652
+ output_format == o.output_format &&
551
653
  parent_folder_id == o.parent_folder_id &&
552
654
  locked == o.locked &&
553
655
  add_signature_request_submission_id_footers == o.add_signature_request_submission_id_footers &&
@@ -570,6 +672,13 @@ module DocSpring
570
672
  public_submissions == o.public_submissions &&
571
673
  public_web_form == o.public_web_form &&
572
674
  redirect_url == o.redirect_url &&
675
+ signature_request_email_attachments == o.signature_request_email_attachments &&
676
+ signature_request_from_address == o.signature_request_from_address &&
677
+ signature_request_include_signing_token == o.signature_request_include_signing_token &&
678
+ signature_request_from_name == o.signature_request_from_name &&
679
+ signature_request_notification_emails == o.signature_request_notification_emails &&
680
+ signature_request_reply_to == o.signature_request_reply_to &&
681
+ signature_request_signing_url == o.signature_request_signing_url &&
573
682
  slack_webhook_url == o.slack_webhook_url &&
574
683
  defaults == o.defaults &&
575
684
  field_dependencies == o.field_dependencies &&
@@ -581,6 +690,7 @@ module DocSpring
581
690
  footer_html == o.footer_html &&
582
691
  html_engine_options == o.html_engine_options &&
583
692
  html_escape_data == o.html_escape_data &&
693
+ layout == o.layout &&
584
694
  cache_id == o.cache_id &&
585
695
  document_url == o.document_url &&
586
696
  document_base64 == o.document_base64 &&
@@ -600,7 +710,7 @@ module DocSpring
600
710
  # Calculates hash code according to all attributes.
601
711
  # @return [Integer] Hash code
602
712
  def hash
603
- [name, description, template_type, 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, predefined_fields, predefined_fields_sample_data, html, scss, header_html, footer_html, html_engine_options, html_escape_data, cache_id, document_url, document_base64, filename, detect_fields, field_source, field_naming, field_logic].hash
713
+ [name, description, template_type, 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, predefined_fields, predefined_fields_sample_data, html, scss, header_html, footer_html, html_engine_options, html_escape_data, layout, cache_id, document_url, document_base64, filename, detect_fields, field_source, field_naming, field_logic].hash
604
714
  end
605
715
 
606
716
  # 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
 
@@ -0,0 +1,42 @@
1
+ =begin
2
+ #DocSpring API
3
+
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
+
6
+ The version of the OpenAPI document: v2
7
+
8
+ Generated by: https://openapi-generator.tech
9
+ Generator version: 7.26.0-DOCSPRING
10
+
11
+ =end
12
+
13
+ require 'date'
14
+ require 'time'
15
+
16
+ module DocSpring
17
+ class DnsRecordType
18
+ CNAME = "CNAME".freeze
19
+ MX = "MX".freeze
20
+ TXT = "TXT".freeze
21
+
22
+ def self.all_vars
23
+ @all_vars ||= [CNAME, MX, TXT].freeze
24
+ end
25
+
26
+ # Builds the enum from string
27
+ # @param [String] The enum value in the form of the string
28
+ # @return [String] The enum value
29
+ def self.build_from_hash(value)
30
+ new.build_from_hash(value)
31
+ end
32
+
33
+ # Builds the enum from string
34
+ # @param [String] The enum value in the form of the string
35
+ # @return [String] The enum value
36
+ def build_from_hash(value)
37
+ # Only responses are built from hashes, and a value added to the API after this client was released is kept as it
38
+ # is: the constants are the values this client knows
39
+ value
40
+ end
41
+ end
42
+ end