@epilot/sdk 2.0.0-beta.2 → 2.0.0-beta.4

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 (196) hide show
  1. package/README.md +1 -0
  2. package/definitions/access-token-runtime.json +1 -0
  3. package/definitions/access-token.json +663 -0
  4. package/definitions/address-runtime.json +1 -0
  5. package/definitions/address-suggestions-runtime.json +1 -0
  6. package/definitions/address-suggestions.json +582 -0
  7. package/definitions/address.json +578 -0
  8. package/definitions/ai-agents-runtime.json +1 -0
  9. package/definitions/ai-agents.json +1711 -0
  10. package/definitions/app-runtime.json +1 -0
  11. package/definitions/app.json +4443 -0
  12. package/definitions/audit-logs-runtime.json +1 -0
  13. package/definitions/audit-logs.json +305 -0
  14. package/definitions/automation-runtime.json +1 -0
  15. package/definitions/automation.json +4850 -0
  16. package/definitions/billing-runtime.json +1 -0
  17. package/definitions/billing.json +837 -0
  18. package/definitions/blueprint-manifest-runtime.json +1 -0
  19. package/definitions/blueprint-manifest.json +3376 -0
  20. package/definitions/consent-runtime.json +1 -0
  21. package/definitions/consent.json +344 -0
  22. package/definitions/customer-portal-runtime.json +1 -0
  23. package/definitions/customer-portal.json +15000 -0
  24. package/definitions/dashboard-runtime.json +1 -0
  25. package/definitions/dashboard.json +484 -0
  26. package/definitions/data-management-runtime.json +1 -0
  27. package/definitions/data-management.json +962 -0
  28. package/definitions/deduplication-runtime.json +1 -0
  29. package/definitions/deduplication.json +183 -0
  30. package/definitions/design-runtime.json +1 -0
  31. package/definitions/design.json +1423 -0
  32. package/definitions/document-runtime.json +1 -0
  33. package/definitions/document.json +758 -0
  34. package/definitions/email-settings-runtime.json +1 -0
  35. package/definitions/email-settings.json +2627 -0
  36. package/definitions/email-template-runtime.json +1 -0
  37. package/definitions/email-template.json +1419 -0
  38. package/definitions/entity-mapping-runtime.json +1 -0
  39. package/definitions/entity-mapping.json +1642 -0
  40. package/definitions/entity-runtime.json +1 -0
  41. package/definitions/entity.json +10074 -0
  42. package/definitions/environments-runtime.json +1 -0
  43. package/definitions/environments.json +363 -0
  44. package/definitions/erp-integration-runtime.json +1 -0
  45. package/definitions/erp-integration.json +5845 -0
  46. package/definitions/event-catalog-runtime.json +1 -0
  47. package/definitions/event-catalog.json +1051 -0
  48. package/definitions/file-runtime.json +1 -0
  49. package/definitions/file.json +2842 -0
  50. package/definitions/iban-runtime.json +1 -0
  51. package/definitions/iban.json +132 -0
  52. package/definitions/journey-runtime.json +1 -0
  53. package/definitions/journey.json +2341 -0
  54. package/definitions/kanban-runtime.json +1 -0
  55. package/definitions/kanban.json +929 -0
  56. package/definitions/message-runtime.json +1 -0
  57. package/definitions/message.json +2660 -0
  58. package/definitions/metering-runtime.json +1 -0
  59. package/definitions/metering.json +2321 -0
  60. package/definitions/notes-runtime.json +1 -0
  61. package/definitions/notes.json +1531 -0
  62. package/definitions/notification-runtime.json +1 -0
  63. package/definitions/notification.json +1425 -0
  64. package/definitions/organization-runtime.json +1 -0
  65. package/definitions/organization.json +629 -0
  66. package/definitions/partner-directory-runtime.json +1 -0
  67. package/definitions/partner-directory.json +1718 -0
  68. package/definitions/permissions-runtime.json +1 -0
  69. package/definitions/permissions.json +1480 -0
  70. package/definitions/pricing-runtime.json +1 -0
  71. package/definitions/pricing-tier-runtime.json +1 -0
  72. package/definitions/pricing-tier.json +105 -0
  73. package/definitions/pricing.json +9884 -0
  74. package/definitions/purpose-runtime.json +1 -0
  75. package/definitions/purpose.json +524 -0
  76. package/definitions/sandbox-runtime.json +1 -0
  77. package/definitions/sandbox.json +453 -0
  78. package/definitions/submission-runtime.json +1 -0
  79. package/definitions/submission.json +313 -0
  80. package/definitions/targeting-runtime.json +1 -0
  81. package/definitions/targeting.json +1474 -0
  82. package/definitions/template-variables-runtime.json +1 -0
  83. package/definitions/template-variables.json +1408 -0
  84. package/definitions/user-runtime.json +1 -0
  85. package/definitions/user.json +2408 -0
  86. package/definitions/validation-rules-runtime.json +1 -0
  87. package/definitions/validation-rules.json +1491 -0
  88. package/definitions/webhooks-runtime.json +1 -0
  89. package/definitions/webhooks.json +1525 -0
  90. package/definitions/workflow-definition-runtime.json +1 -0
  91. package/definitions/workflow-definition.json +3417 -0
  92. package/definitions/workflow-runtime.json +1 -0
  93. package/definitions/workflow.json +4106 -0
  94. package/dist/apis/access-token.cjs +13 -84
  95. package/dist/apis/access-token.js +11 -82
  96. package/dist/apis/address-suggestions.cjs +13 -127
  97. package/dist/apis/address-suggestions.js +11 -125
  98. package/dist/apis/address.cjs +13 -79
  99. package/dist/apis/address.js +11 -77
  100. package/dist/apis/ai-agents.cjs +13 -210
  101. package/dist/apis/ai-agents.js +11 -208
  102. package/dist/apis/app.cjs +13 -568
  103. package/dist/apis/app.js +11 -566
  104. package/dist/apis/audit-logs.cjs +13 -50
  105. package/dist/apis/audit-logs.js +11 -48
  106. package/dist/apis/automation.cjs +13 -277
  107. package/dist/apis/automation.js +11 -275
  108. package/dist/apis/billing.cjs +13 -170
  109. package/dist/apis/billing.js +11 -168
  110. package/dist/apis/blueprint-manifest.cjs +13 -499
  111. package/dist/apis/blueprint-manifest.js +11 -497
  112. package/dist/apis/consent.cjs +13 -79
  113. package/dist/apis/consent.js +11 -77
  114. package/dist/apis/customer-portal.cjs +13 -2247
  115. package/dist/apis/customer-portal.js +11 -2245
  116. package/dist/apis/dashboard.cjs +41 -0
  117. package/dist/apis/dashboard.d.cts +18 -0
  118. package/dist/apis/dashboard.d.ts +18 -0
  119. package/dist/apis/dashboard.js +41 -0
  120. package/dist/apis/data-management.cjs +13 -235
  121. package/dist/apis/data-management.js +11 -233
  122. package/dist/apis/deduplication.cjs +13 -37
  123. package/dist/apis/deduplication.js +11 -35
  124. package/dist/apis/design.cjs +13 -214
  125. package/dist/apis/design.js +11 -212
  126. package/dist/apis/document.cjs +13 -73
  127. package/dist/apis/document.js +11 -71
  128. package/dist/apis/email-settings.cjs +13 -528
  129. package/dist/apis/email-settings.js +11 -526
  130. package/dist/apis/email-template.cjs +13 -117
  131. package/dist/apis/email-template.js +11 -115
  132. package/dist/apis/entity-mapping.cjs +13 -210
  133. package/dist/apis/entity-mapping.js +11 -208
  134. package/dist/apis/entity.cjs +13 -1595
  135. package/dist/apis/entity.js +11 -1593
  136. package/dist/apis/environments.cjs +13 -66
  137. package/dist/apis/environments.js +11 -64
  138. package/dist/apis/erp-integration.cjs +13 -581
  139. package/dist/apis/erp-integration.js +11 -579
  140. package/dist/apis/event-catalog.cjs +13 -125
  141. package/dist/apis/event-catalog.js +11 -123
  142. package/dist/apis/file.cjs +13 -568
  143. package/dist/apis/file.js +11 -566
  144. package/dist/apis/iban.cjs +13 -38
  145. package/dist/apis/iban.js +11 -36
  146. package/dist/apis/journey.cjs +13 -265
  147. package/dist/apis/journey.js +11 -263
  148. package/dist/apis/kanban.cjs +13 -159
  149. package/dist/apis/kanban.js +11 -157
  150. package/dist/apis/message.cjs +13 -668
  151. package/dist/apis/message.js +11 -666
  152. package/dist/apis/metering.cjs +13 -394
  153. package/dist/apis/metering.js +11 -392
  154. package/dist/apis/notes.cjs +13 -214
  155. package/dist/apis/notes.js +11 -212
  156. package/dist/apis/notification.cjs +13 -232
  157. package/dist/apis/notification.js +11 -230
  158. package/dist/apis/organization.cjs +13 -113
  159. package/dist/apis/organization.js +11 -111
  160. package/dist/apis/partner-directory.cjs +13 -277
  161. package/dist/apis/partner-directory.js +11 -275
  162. package/dist/apis/permissions.cjs +13 -173
  163. package/dist/apis/permissions.js +11 -171
  164. package/dist/apis/pricing-tier.cjs +14 -32
  165. package/dist/apis/pricing-tier.js +11 -29
  166. package/dist/apis/pricing.cjs +13 -434
  167. package/dist/apis/pricing.js +11 -432
  168. package/dist/apis/purpose.cjs +13 -175
  169. package/dist/apis/purpose.js +11 -173
  170. package/dist/apis/sandbox.cjs +13 -95
  171. package/dist/apis/sandbox.js +11 -93
  172. package/dist/apis/submission.cjs +13 -50
  173. package/dist/apis/submission.js +11 -48
  174. package/dist/apis/targeting.cjs +13 -270
  175. package/dist/apis/targeting.js +11 -268
  176. package/dist/apis/template-variables.cjs +13 -154
  177. package/dist/apis/template-variables.js +11 -152
  178. package/dist/apis/user.cjs +13 -483
  179. package/dist/apis/user.js +11 -481
  180. package/dist/apis/validation-rules.cjs +13 -115
  181. package/dist/apis/validation-rules.js +11 -113
  182. package/dist/apis/webhooks.cjs +13 -247
  183. package/dist/apis/webhooks.js +11 -245
  184. package/dist/apis/workflow-definition.cjs +13 -337
  185. package/dist/apis/workflow-definition.js +11 -335
  186. package/dist/apis/workflow.cjs +13 -397
  187. package/dist/apis/workflow.js +11 -395
  188. package/dist/{chunk-D7ICL3AM.cjs → chunk-5LXNSDG2.cjs} +51 -2
  189. package/dist/{chunk-DGCGLG7G.js → chunk-QMQNMCOC.js} +49 -0
  190. package/dist/dashboard.d-AE3RQ6zo.d.cts +440 -0
  191. package/dist/dashboard.d-AE3RQ6zo.d.ts +440 -0
  192. package/dist/index.cjs +60 -53
  193. package/dist/index.d.cts +70 -68
  194. package/dist/index.d.ts +70 -68
  195. package/dist/index.js +57 -50
  196. package/package.json +55 -3
@@ -0,0 +1,758 @@
1
+ {
2
+ "openapi": "3.0.2",
3
+ "info": {
4
+ "title": "Document API",
5
+ "version": "1.0.0",
6
+ "description": "A document generation API that allows you to generate documents from templates with variables.\n\n[Feature Documentation](https://docs.epilot.io/docs/files/document-generation)\n"
7
+ },
8
+ "tags": [
9
+ {
10
+ "name": "Documents",
11
+ "description": "Document Generation"
12
+ }
13
+ ],
14
+ "security": [
15
+ {
16
+ "EpilotAuth": []
17
+ }
18
+ ],
19
+ "paths": {
20
+ "/v2/documents:meta": {
21
+ "post": {
22
+ "operationId": "getTemplateMeta",
23
+ "summary": "getTemplateMeta",
24
+ "description": "Get metadata for a document template\n\nSupported input document types:\n- .docx\n",
25
+ "tags": [
26
+ "Documents"
27
+ ],
28
+ "requestBody": {
29
+ "content": {
30
+ "application/json": {
31
+ "schema": {
32
+ "$ref": "#/components/schemas/DocumentMetaRequest"
33
+ }
34
+ }
35
+ }
36
+ },
37
+ "responses": {
38
+ "200": {
39
+ "description": "Document metadata",
40
+ "content": {
41
+ "application/json": {
42
+ "schema": {
43
+ "$ref": "#/components/schemas/DocumentMetaResponse"
44
+ }
45
+ }
46
+ }
47
+ },
48
+ "400": {
49
+ "description": "Bad request",
50
+ "content": {
51
+ "application/json": {
52
+ "schema": {
53
+ "$ref": "#/components/schemas/ErrorOutput"
54
+ }
55
+ }
56
+ }
57
+ },
58
+ "403": {
59
+ "description": "Forbidden",
60
+ "content": {
61
+ "application/json": {
62
+ "schema": {
63
+ "$ref": "#/components/schemas/ErrorOutput"
64
+ }
65
+ }
66
+ }
67
+ },
68
+ "415": {
69
+ "description": "Unsupported media type",
70
+ "content": {
71
+ "application/json": {
72
+ "schema": {
73
+ "$ref": "#/components/schemas/ErrorOutput"
74
+ }
75
+ }
76
+ }
77
+ }
78
+ }
79
+ }
80
+ },
81
+ "/v2/documents:generate": {
82
+ "post": {
83
+ "operationId": "generateDocumentV2",
84
+ "summary": "generateDocumentV2",
85
+ "description": "Generates documents from templates with variables.\n\nSupported document types as input:\n- .docx\n- .ics\n\nSupported document types as output:\n- .pdf\n- .docx but limited to only text based variables\n- .ics\n\nUses [Template Variables API](https://docs.epilot.io/api/template-variables) to replace variables in the input document.\n",
86
+ "parameters": [
87
+ {
88
+ "in": "query",
89
+ "name": "job_id",
90
+ "description": "Job ID for tracking the status of document generation action",
91
+ "schema": {
92
+ "type": "string"
93
+ }
94
+ },
95
+ {
96
+ "in": "query",
97
+ "name": "mode",
98
+ "description": "Type of mode used for document generation flow:\n- partial_generation will have a intermediate step for users to validate and replace the variable values before generating the final document.\n- full_generation, goes through all the steps for the full generation of final document\n",
99
+ "schema": {
100
+ "type": "string",
101
+ "enum": [
102
+ "partial_generation",
103
+ "full_generation"
104
+ ],
105
+ "default": "full_generation"
106
+ }
107
+ },
108
+ {
109
+ "in": "query",
110
+ "name": "preview_mode",
111
+ "description": "Type of mode used for document generation preview:\n- open - preview_url provides a link to open the file in a browser\n- download - preview_url provides a link to download the file\n",
112
+ "schema": {
113
+ "type": "string",
114
+ "enum": [
115
+ "open",
116
+ "download"
117
+ ],
118
+ "default": "open"
119
+ }
120
+ }
121
+ ],
122
+ "tags": [
123
+ "Documents"
124
+ ],
125
+ "requestBody": {
126
+ "content": {
127
+ "application/json": {
128
+ "schema": {
129
+ "$ref": "#/components/schemas/DocumentGenerationV2Request"
130
+ }
131
+ }
132
+ }
133
+ },
134
+ "responses": {
135
+ "200": {
136
+ "description": "Generated document output",
137
+ "content": {
138
+ "application/json": {
139
+ "schema": {
140
+ "$ref": "#/components/schemas/DocumentGenerationV2Response"
141
+ }
142
+ }
143
+ }
144
+ }
145
+ }
146
+ }
147
+ },
148
+ "/v2/documents:convert": {
149
+ "post": {
150
+ "operationId": "convertDocument",
151
+ "summary": "convertDocument",
152
+ "description": "Converts a document to a different format.\n\nSupported input document types:\n- .docx\n\nSupported output document types:\n- .pdf\n",
153
+ "tags": [
154
+ "Documents"
155
+ ],
156
+ "requestBody": {
157
+ "content": {
158
+ "application/json": {
159
+ "schema": {
160
+ "$ref": "#/components/schemas/ConvertDocumentRequest"
161
+ }
162
+ }
163
+ }
164
+ },
165
+ "responses": {
166
+ "200": {
167
+ "description": "Conversion job output",
168
+ "content": {
169
+ "application/json": {
170
+ "schema": {
171
+ "$ref": "#/components/schemas/ConvertDocumentResponse"
172
+ }
173
+ }
174
+ }
175
+ }
176
+ }
177
+ }
178
+ }
179
+ },
180
+ "components": {
181
+ "securitySchemes": {
182
+ "EpilotAuth": {
183
+ "type": "http",
184
+ "scheme": "bearer",
185
+ "description": "Authorization header with epilot OAuth2 bearer token",
186
+ "bearerFormat": "JWT"
187
+ }
188
+ },
189
+ "schemas": {
190
+ "S3Reference": {
191
+ "type": "object",
192
+ "properties": {
193
+ "bucket": {
194
+ "type": "string",
195
+ "example": "document-api-prod"
196
+ },
197
+ "key": {
198
+ "type": "string",
199
+ "example": "uploads/my-template.pdf"
200
+ }
201
+ },
202
+ "required": [
203
+ "bucket",
204
+ "key"
205
+ ]
206
+ },
207
+ "ErrorOutput": {
208
+ "type": "object",
209
+ "properties": {
210
+ "error_message": {
211
+ "description": "Error message",
212
+ "type": "string"
213
+ },
214
+ "error_code": {
215
+ "$ref": "#/components/schemas/ErrorCode"
216
+ },
217
+ "error_details": {
218
+ "anyOf": [
219
+ {
220
+ "$ref": "#/components/schemas/InvalidCustomVariableErrorDetails"
221
+ },
222
+ {
223
+ "$ref": "#/components/schemas/InternalErrorDetails"
224
+ },
225
+ {
226
+ "$ref": "#/components/schemas/DocxTemplaterErrorDetails"
227
+ }
228
+ ]
229
+ }
230
+ }
231
+ },
232
+ "InvalidCustomVariableErrorDetails": {
233
+ "description": "Error details for invalid custom variables. This error will appear under 'PARSE_ERROR' error code.",
234
+ "type": "array",
235
+ "items": {
236
+ "$ref": "#/components/schemas/InvalidCustomVariableErrorDetail"
237
+ }
238
+ },
239
+ "InvalidCustomVariableErrorDetail": {
240
+ "type": "object",
241
+ "additionalProperties": true,
242
+ "properties": {
243
+ "explanation": {
244
+ "description": "Explanation for the error",
245
+ "type": "string"
246
+ },
247
+ "context": {
248
+ "description": "Context for the error",
249
+ "type": "object",
250
+ "properties": {
251
+ "invalid_variables": {
252
+ "description": "List of invalid variables",
253
+ "type": "array",
254
+ "items": {
255
+ "type": "object",
256
+ "description": "Invalid variable",
257
+ "properties": {
258
+ "variable": {
259
+ "description": "Variable name",
260
+ "type": "string"
261
+ },
262
+ "error": {
263
+ "description": "Explanation for the error",
264
+ "type": "string"
265
+ }
266
+ }
267
+ }
268
+ }
269
+ }
270
+ }
271
+ }
272
+ },
273
+ "InternalErrorDetails": {
274
+ "description": "Error details for internal error. This error will appear under 'INTERNAL_ERROR' error code.",
275
+ "type": "array",
276
+ "items": {
277
+ "type": "object",
278
+ "properties": {
279
+ "items": {
280
+ "$ref": "#/components/schemas/InternalErrorDetail"
281
+ }
282
+ }
283
+ }
284
+ },
285
+ "InternalErrorDetail": {
286
+ "type": "object",
287
+ "description": "Internal error detail",
288
+ "properties": {
289
+ "name": {
290
+ "description": "Name of the error",
291
+ "type": "string"
292
+ },
293
+ "message": {
294
+ "description": "Error message",
295
+ "type": "string"
296
+ },
297
+ "stack": {
298
+ "description": "Stack trace",
299
+ "type": "string"
300
+ },
301
+ "cause": {
302
+ "description": "Cause of the error",
303
+ "type": "string"
304
+ }
305
+ }
306
+ },
307
+ "DocxTemplaterErrorDetails": {
308
+ "description": "Error details for DocxTemplater error. This error will appear under 'PARSE_ERROR' error code.\nSee https://docxtemplater.com/docs/errors/#error-schema for more details.\n",
309
+ "type": "array",
310
+ "items": {
311
+ "$ref": "#/components/schemas/DocxTemplaterErrorDetail"
312
+ }
313
+ },
314
+ "DocxTemplaterErrorDetail": {
315
+ "type": "object",
316
+ "description": "DocxTemplater error detail",
317
+ "properties": {
318
+ "id": {
319
+ "description": "Id of the error",
320
+ "type": "string"
321
+ },
322
+ "context": {
323
+ "description": "Context of the error",
324
+ "type": "string"
325
+ },
326
+ "explanation": {
327
+ "description": "Explanation of the error",
328
+ "type": "string"
329
+ }
330
+ }
331
+ },
332
+ "ErrorCode": {
333
+ "description": "Error codes for document generation:\n- PARSE_ERROR - Error while parsing the document. Normally related with a bad template using the wrong DocxTemplater syntax.\n- DOC_TO_PDF_CONVERT_ERROR - Error while converting the document to PDF. Normally related with a ConvertAPI failure.\n- INTERNAL_ERROR - Internal error. Please contact support.\n- INVALID_TEMPLATE_FORMAT - Invalid template format (only .docx is supported). This can happen due to a bad word file or an unsupported file extension.\n",
334
+ "type": "string",
335
+ "enum": [
336
+ "PARSE_ERROR",
337
+ "DOC_TO_PDF_CONVERT_ERROR",
338
+ "INTERNAL_ERROR",
339
+ "INVALID_TEMPLATE_FORMAT"
340
+ ]
341
+ },
342
+ "TemplateSettings": {
343
+ "type": "object",
344
+ "description": "Template Settings for document generation",
345
+ "properties": {
346
+ "custom_margins": {
347
+ "description": "Custom margins for the document",
348
+ "type": "object",
349
+ "properties": {
350
+ "top": {
351
+ "description": "Top margin in cm",
352
+ "type": "number",
353
+ "example": 2.54
354
+ },
355
+ "bottom": {
356
+ "description": "Bottom margin in cm",
357
+ "type": "number",
358
+ "example": 2.54
359
+ }
360
+ }
361
+ },
362
+ "suggested_margins": {
363
+ "description": "Suggested margins for the document",
364
+ "type": "object",
365
+ "properties": {
366
+ "top": {
367
+ "description": "Top margin in cm",
368
+ "type": "number",
369
+ "example": 2.54
370
+ },
371
+ "bottom": {
372
+ "description": "Bottom margin in cm",
373
+ "type": "number",
374
+ "example": 2.54
375
+ }
376
+ }
377
+ },
378
+ "display_margin_guidelines": {
379
+ "description": "Display margin guidelines (applicable to partial generation only)",
380
+ "type": "boolean",
381
+ "example": true
382
+ },
383
+ "enable_data_table_margin_autofix": {
384
+ "description": "Enable data table margin autofix",
385
+ "type": "boolean",
386
+ "example": false
387
+ },
388
+ "template_with_datatable": {
389
+ "description": "A flag that indicates whether the template has 1 or more data tables in it",
390
+ "type": "boolean",
391
+ "example": false
392
+ },
393
+ "enabled_template_settings_persistence": {
394
+ "description": "Enables the persistance of template settings",
395
+ "type": "boolean",
396
+ "example": false
397
+ },
398
+ "misconfigured_margins": {
399
+ "description": "An indication that the page margins are misconfigured",
400
+ "type": "boolean",
401
+ "example": false
402
+ },
403
+ "file_entity_id": {
404
+ "description": "The file entity id, used when persisting a new template version with updated settings",
405
+ "type": "string",
406
+ "format": "uuid",
407
+ "example": "1a2b3c4d-5e6f-7g8h-9i0j-1k2l3m4n5o6p"
408
+ }
409
+ }
410
+ },
411
+ "DocumentMetaRequest": {
412
+ "type": "object",
413
+ "properties": {
414
+ "template_document": {
415
+ "description": "Input template document",
416
+ "type": "object",
417
+ "properties": {
418
+ "s3ref": {
419
+ "$ref": "#/components/schemas/S3Reference"
420
+ }
421
+ }
422
+ }
423
+ }
424
+ },
425
+ "DocumentMetaResponse": {
426
+ "type": "object",
427
+ "properties": {
428
+ "page_margins": {
429
+ "description": "Page margins for the document",
430
+ "type": "object",
431
+ "properties": {
432
+ "top": {
433
+ "description": "Top margin in cm",
434
+ "type": "number",
435
+ "example": 2.54
436
+ },
437
+ "bottom": {
438
+ "description": "Bottom margin in cm",
439
+ "type": "number",
440
+ "example": 2.54
441
+ },
442
+ "left": {
443
+ "description": "Left margin in cm",
444
+ "type": "number",
445
+ "example": 2.54
446
+ },
447
+ "right": {
448
+ "description": "Right margin in cm",
449
+ "type": "number",
450
+ "example": 2.54
451
+ },
452
+ "header": {
453
+ "description": "Header margin in cm",
454
+ "type": "number",
455
+ "example": 2.54
456
+ },
457
+ "footer": {
458
+ "description": "Footer margin in cm",
459
+ "type": "number",
460
+ "example": 2.54
461
+ }
462
+ }
463
+ },
464
+ "variables": {
465
+ "description": "List of variables in the document",
466
+ "type": "array",
467
+ "items": {
468
+ "type": "string"
469
+ },
470
+ "example": [
471
+ "order.billing_contact.0.salutation",
472
+ "order.billing_contact.0.title",
473
+ "order_table",
474
+ "stayHardStatic",
475
+ "opportunity[attribute_name]",
476
+ "opportunity[\"attribute_name\"]",
477
+ "opportunity.[attribute_name]",
478
+ "attribute_name",
479
+ "opportunities.0.attribute_name",
480
+ "opportunities[0].attribute_name",
481
+ "contact.opportunities[0].attribute_name",
482
+ "opportunities[Primary].attribute_name"
483
+ ]
484
+ }
485
+ }
486
+ },
487
+ "DocumentGenerationV2Request": {
488
+ "type": "object",
489
+ "properties": {
490
+ "template_document": {
491
+ "description": "Input template document",
492
+ "type": "object",
493
+ "properties": {
494
+ "filename": {
495
+ "type": "string",
496
+ "description": "Document original filename",
497
+ "example": "my-template-{{order.order_number}}.docx"
498
+ },
499
+ "s3ref": {
500
+ "$ref": "#/components/schemas/S3Reference"
501
+ }
502
+ }
503
+ },
504
+ "context_entity_id": {
505
+ "type": "string",
506
+ "format": "uuid",
507
+ "description": "Entity to use for variable context",
508
+ "example": "bcd0aab9-b544-42b0-8bfb-6d449d02eacc"
509
+ },
510
+ "user_id": {
511
+ "type": "string",
512
+ "description": "User Id for variable context",
513
+ "example": 100321
514
+ },
515
+ "language": {
516
+ "type": "string",
517
+ "description": "Language",
518
+ "example": "de"
519
+ },
520
+ "variable_payload": {
521
+ "description": "Custom values for variables in the template. Takes the higher precedence than others.",
522
+ "type": "object",
523
+ "properties": {
524
+ "additionalProperties": {
525
+ "type": "string"
526
+ }
527
+ }
528
+ },
529
+ "context_data": {
530
+ "description": "Custom values for variables in the template. Takes the higher precedence than others.",
531
+ "type": "object",
532
+ "properties": {
533
+ "additionalProperties": {
534
+ "type": "string"
535
+ }
536
+ }
537
+ },
538
+ "template_settings": {
539
+ "$ref": "#/components/schemas/TemplateSettings"
540
+ }
541
+ },
542
+ "required": [
543
+ "template_document"
544
+ ]
545
+ },
546
+ "DocumentGenerationV2Response": {
547
+ "type": "object",
548
+ "properties": {
549
+ "job_id": {
550
+ "type": "string",
551
+ "format": "uuid"
552
+ },
553
+ "job_status": {
554
+ "description": "Status of the job",
555
+ "type": "string",
556
+ "enum": [
557
+ "STARTED",
558
+ "PROCESSING",
559
+ "SUCCESS",
560
+ "FAILED"
561
+ ]
562
+ },
563
+ "message": {
564
+ "description": "A message explaining the progress",
565
+ "type": "string"
566
+ },
567
+ "ics_output": {
568
+ "type": "object",
569
+ "properties": {
570
+ "output_document": {
571
+ "type": "object",
572
+ "properties": {
573
+ "filename": {
574
+ "description": "Generated document filename for ICS",
575
+ "type": "string",
576
+ "example": "my-appointment-OR-001.ics"
577
+ },
578
+ "s3ref": {
579
+ "$ref": "#/components/schemas/S3Reference"
580
+ }
581
+ },
582
+ "example": {
583
+ "s3ref": {
584
+ "bucket": "document-api-preview-prod",
585
+ "key": "preview/my-appointment.ics"
586
+ }
587
+ }
588
+ }
589
+ }
590
+ },
591
+ "pdf_output": {
592
+ "type": "object",
593
+ "properties": {
594
+ "preview_url": {
595
+ "description": "Pre-signed S3 GET URL for PDF preview",
596
+ "type": "string",
597
+ "example": "https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.pdf"
598
+ },
599
+ "output_document": {
600
+ "type": "object",
601
+ "properties": {
602
+ "filename": {
603
+ "description": "Generated document filename for PDF",
604
+ "type": "string",
605
+ "example": "my-template-OR-001.pdf"
606
+ },
607
+ "s3ref": {
608
+ "$ref": "#/components/schemas/S3Reference"
609
+ }
610
+ },
611
+ "example": {
612
+ "s3ref": {
613
+ "bucket": "document-api-preview-prod",
614
+ "key": "preview/my-template.pdf"
615
+ }
616
+ }
617
+ }
618
+ }
619
+ },
620
+ "docx_output": {
621
+ "type": "object",
622
+ "properties": {
623
+ "preview_url": {
624
+ "description": "Pre-signed S3 GET URL for DOCX preview",
625
+ "type": "string",
626
+ "example": "https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.docx"
627
+ },
628
+ "output_document": {
629
+ "type": "object",
630
+ "properties": {
631
+ "filename": {
632
+ "description": "Generated document filename for DOCX",
633
+ "type": "string",
634
+ "example": "my-template-OR-001.docx"
635
+ },
636
+ "s3ref": {
637
+ "$ref": "#/components/schemas/S3Reference"
638
+ }
639
+ },
640
+ "example": {
641
+ "s3ref": {
642
+ "bucket": "document-api-preview-prod",
643
+ "key": "preview/my-template.docx"
644
+ }
645
+ }
646
+ }
647
+ }
648
+ },
649
+ "xlsx_output": {
650
+ "type": "object",
651
+ "properties": {
652
+ "preview_url": {
653
+ "description": "Pre-signed S3 GET URL for XLSX preview",
654
+ "type": "string",
655
+ "example": "https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.xlsx"
656
+ },
657
+ "output_document": {
658
+ "type": "object",
659
+ "properties": {
660
+ "filename": {
661
+ "description": "Generated document filename for XLSX",
662
+ "type": "string",
663
+ "example": "my-template-OR-001.xlsx"
664
+ },
665
+ "s3ref": {
666
+ "$ref": "#/components/schemas/S3Reference"
667
+ }
668
+ },
669
+ "example": {
670
+ "s3ref": {
671
+ "bucket": "document-api-preview-prod",
672
+ "key": "preview/my-template.xlsx"
673
+ }
674
+ }
675
+ }
676
+ }
677
+ },
678
+ "error_output": {
679
+ "$ref": "#/components/schemas/ErrorOutput"
680
+ },
681
+ "variable_payload": {
682
+ "description": "List of variables and its corresponding replaced values from the document template",
683
+ "type": "object",
684
+ "properties": {
685
+ "additionalProperties": {
686
+ "type": "string"
687
+ }
688
+ }
689
+ },
690
+ "template_settings": {
691
+ "$ref": "#/components/schemas/TemplateSettings"
692
+ }
693
+ }
694
+ },
695
+ "ConvertDocumentRequest": {
696
+ "type": "object",
697
+ "properties": {
698
+ "language": {
699
+ "type": "string",
700
+ "description": "Language",
701
+ "example": "de"
702
+ },
703
+ "input_document": {
704
+ "description": "Input document",
705
+ "type": "object",
706
+ "properties": {
707
+ "s3ref": {
708
+ "$ref": "#/components/schemas/S3Reference"
709
+ }
710
+ },
711
+ "required": [
712
+ "s3ref"
713
+ ]
714
+ },
715
+ "output_format": {
716
+ "description": "Output format of the document",
717
+ "type": "string",
718
+ "enum": [
719
+ "pdf"
720
+ ]
721
+ },
722
+ "output_filename": {
723
+ "description": "Filename of the output document (optional)",
724
+ "type": "string",
725
+ "example": "converted.pdf"
726
+ }
727
+ },
728
+ "required": [
729
+ "input_document",
730
+ "output_format"
731
+ ]
732
+ },
733
+ "ConvertDocumentResponse": {
734
+ "type": "object",
735
+ "properties": {
736
+ "output_document": {
737
+ "type": "object",
738
+ "properties": {
739
+ "preview_url": {
740
+ "description": "Pre-signed URL for the converted document",
741
+ "type": "string",
742
+ "example": "https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/converted.pdf"
743
+ },
744
+ "s3ref": {
745
+ "$ref": "#/components/schemas/S3Reference"
746
+ }
747
+ }
748
+ }
749
+ }
750
+ }
751
+ }
752
+ },
753
+ "servers": [
754
+ {
755
+ "url": "https://document.sls.epilot.io"
756
+ }
757
+ ]
758
+ }