@epilot/document-client 0.16.0 → 0.16.2

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.
@@ -0,0 +1,2 @@
1
+ import { Client } from './openapi';
2
+ export declare const getClient: () => Client;
package/dist/client.js ADDED
@@ -0,0 +1,14 @@
1
+ "use strict";
2
+ var __importDefault = (this && this.__importDefault) || function (mod) {
3
+ return (mod && mod.__esModule) ? mod : { "default": mod };
4
+ };
5
+ Object.defineProperty(exports, "__esModule", { value: true });
6
+ exports.getClient = void 0;
7
+ var openapi_client_axios_1 = __importDefault(require("openapi-client-axios"));
8
+ var definition_1 = __importDefault(require("./definition"));
9
+ var getClient = function () {
10
+ var api = new openapi_client_axios_1.default({ definition: definition_1.default, quick: true });
11
+ return api.initSync();
12
+ };
13
+ exports.getClient = getClient;
14
+ //# sourceMappingURL=client.js.map
@@ -0,0 +1,3 @@
1
+ import type { Document } from 'openapi-client-axios';
2
+ declare const _default: Document;
3
+ export default _default;
@@ -0,0 +1 @@
1
+ (()=>{"use strict";var e={914:function(e,t,r){var o=this&&this.__importDefault||function(e){return e&&e.__esModule?e:{default:e}};Object.defineProperty(t,"__esModule",{value:!0});var n=o(r(534));t.default=n.default},534:e=>{e.exports=JSON.parse('{"openapi":"3.0.2","info":{"title":"Document API","version":"1.0.0","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"},"tags":[{"name":"Documents","description":"Document Generation"}],"security":[{"EpilotAuth":[]}],"paths":{"/v2/documents:meta":{"post":{"operationId":"getTemplateMeta","summary":"getTemplateMeta","description":"Get metadata for a document template\\n\\nSupported input document types:\\n- .docx\\n","tags":["Documents"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentMetaRequest"}}}},"responses":{"200":{"description":"Document metadata","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentMetaResponse"}}}},"400":{"description":"Bad request","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorOutput"}}}},"403":{"description":"Forbidden","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorOutput"}}}},"415":{"description":"Unsupported media type","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ErrorOutput"}}}}}}},"/v2/documents:generate":{"post":{"operationId":"generateDocumentV2","summary":"generateDocumentV2","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 Variable API](https://docs.epilot.io/api/template-variables) to replace variables in the input document.\\n","parameters":[{"in":"query","name":"job_id","description":"Job ID for tracking the status of document generation action","schema":{"type":"string"}},{"in":"query","name":"mode","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","schema":{"type":"string","enum":["partial_generation","full_generation"],"default":"full_generation"}},{"in":"query","name":"preview_mode","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","schema":{"type":"string","enum":["open","download"],"default":"open"}}],"tags":["Documents"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentGenerationV2Request"}}}},"responses":{"200":{"description":"Generated document output","content":{"application/json":{"schema":{"$ref":"#/components/schemas/DocumentGenerationV2Response"}}}}}}},"/v2/documents:convert":{"post":{"operationId":"convertDocument","summary":"convertDocument","description":"Converts a document to a different format.\\n\\nSupported input document types:\\n- .docx\\n\\nSupported output document types:\\n- .pdf\\n","tags":["Documents"],"requestBody":{"content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConvertDocumentRequest"}}}},"responses":{"200":{"description":"Conversion job output","content":{"application/json":{"schema":{"$ref":"#/components/schemas/ConvertDocumentResponse"}}}}}}}},"components":{"securitySchemes":{"EpilotAuth":{"type":"http","scheme":"bearer","description":"Authorization header with epilot OAuth2 bearer token","bearerFormat":"JWT"}},"schemas":{"S3Reference":{"type":"object","properties":{"bucket":{"type":"string","example":"document-api-prod"},"key":{"type":"string","example":"uploads/my-template.pdf"}},"required":["bucket","key"]},"ErrorOutput":{"type":"object","properties":{"error_message":{"description":"Error message","type":"string"},"error_code":{"$ref":"#/components/schemas/ErrorCode"},"error_details":{"anyOf":[{"$ref":"#/components/schemas/InvalidCustomVariableErrorDetails"},{"$ref":"#/components/schemas/InternalErrorDetails"},{"$ref":"#/components/schemas/DocxTemplaterErrorDetails"}]}}},"InvalidCustomVariableErrorDetails":{"description":"Error details for invalid custom variables. This error will appear under \'PARSE_ERROR\' error code.","type":"array","items":{"$ref":"#/components/schemas/InvalidCustomVariableErrorDetail"}},"InvalidCustomVariableErrorDetail":{"type":"object","additionalProperties":true,"properties":{"explanation":{"description":"Explanation for the error","type":"string"},"context":{"description":"Context for the error","type":"object","properties":{"invalid_variables":{"description":"List of invalid variables","type":"array","items":{"type":"object","description":"Invalid variable","properties":{"variable":{"description":"Variable name","type":"string"},"error":{"description":"Explanation for the error","type":"string"}}}}}}}},"InternalErrorDetails":{"description":"Error details for internal error. This error will appear under \'INTERNAL_ERROR\' error code.","type":"array","items":{"type":"object","properties":{"items":{"$ref":"#/components/schemas/InternalErrorDetail"}}}},"InternalErrorDetail":{"type":"object","description":"Internal error detail","properties":{"name":{"description":"Name of the error","type":"string"},"message":{"description":"Error message","type":"string"},"stack":{"description":"Stack trace","type":"string"},"cause":{"description":"Cause of the error","type":"string"}}},"DocxTemplaterErrorDetails":{"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","type":"array","items":{"$ref":"#/components/schemas/DocxTemplaterErrorDetail"}},"DocxTemplaterErrorDetail":{"type":"object","description":"DocxTemplater error detail","properties":{"id":{"description":"Id of the error","type":"string"},"context":{"description":"Context of the error","type":"string"},"explanation":{"description":"Explanation of the error","type":"string"}}},"ErrorCode":{"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","type":"string","enum":["PARSE_ERROR","DOC_TO_PDF_CONVERT_ERROR","INTERNAL_ERROR","INVALID_TEMPLATE_FORMAT"]},"TemplateSettings":{"type":"object","description":"Template Settings for document generation","properties":{"custom_margins":{"description":"Custom margins for the document","type":"object","properties":{"top":{"description":"Top margin in cm","type":"number","example":2.54},"bottom":{"description":"Bottom margin in cm","type":"number","example":2.54}}},"suggested_margins":{"description":"Suggested margins for the document","type":"object","properties":{"top":{"description":"Top margin in cm","type":"number","example":2.54},"bottom":{"description":"Bottom margin in cm","type":"number","example":2.54}}},"display_margin_guidelines":{"description":"Display margin guidelines (applicable to partial generation only)","type":"boolean","example":true},"enable_data_table_margin_autofix":{"description":"Enable data table margin autofix","type":"boolean","example":false},"template_with_datatable":{"description":"A flag that indicates whether the template has 1 or more data tables in it","type":"boolean","example":false},"enabled_template_settings_persistence":{"description":"Enables the persistance of template settings","type":"boolean","example":false},"misconfigured_margins":{"description":"An indication that the page margins are misconfigured","type":"boolean","example":false},"file_entity_id":{"description":"The file entity id, used when persisting a new template version with updated settings","type":"string","format":"uuid","example":"1a2b3c4d-5e6f-7g8h-9i0j-1k2l3m4n5o6p"}}},"DocumentMetaRequest":{"type":"object","properties":{"template_document":{"description":"Input template document","type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"}}}}},"DocumentMetaResponse":{"type":"object","properties":{"page_margins":{"description":"Page margins for the document","type":"object","properties":{"top":{"description":"Top margin in cm","type":"number","example":2.54},"bottom":{"description":"Bottom margin in cm","type":"number","example":2.54},"left":{"description":"Left margin in cm","type":"number","example":2.54},"right":{"description":"Right margin in cm","type":"number","example":2.54},"header":{"description":"Header margin in cm","type":"number","example":2.54},"footer":{"description":"Footer margin in cm","type":"number","example":2.54}}},"variables":{"description":"List of variables in the document","type":"array","items":{"type":"string"},"example":["order.billing_contact.0.salutation","order.billing_contact.0.title","order_table","stayHardStatic","opportunity[attribute_name]","opportunity[\\"attribute_name\\"]","opportunity.[attribute_name]","attribute_name","opportunities.0.attribute_name","opportunities[0].attribute_name","contact.opportunities[0].attribute_name","opportunities[Primary].attribute_name"]}}},"DocumentGenerationV2Request":{"type":"object","properties":{"template_document":{"description":"Input template document","type":"object","properties":{"filename":{"type":"string","description":"Document original filename","example":"my-template-{{order.order_number}}.docx"},"s3ref":{"$ref":"#/components/schemas/S3Reference"}}},"context_entity_id":{"type":"string","format":"uuid","description":"Entity to use for variable context","example":"bcd0aab9-b544-42b0-8bfb-6d449d02eacc"},"user_id":{"type":"string","description":"User Id for variable context","example":100321},"language":{"type":"string","description":"Language","example":"en"},"variable_payload":{"description":"Custom values for variables in the template. Takes the higher precedence than others.","type":"object","properties":{"additionalProperties":{"type":"string"}}},"context_data":{"description":"Custom values for variables in the template. Takes the higher precedence than others.","type":"object","properties":{"additionalProperties":{"type":"string"}}},"template_settings":{"$ref":"#/components/schemas/TemplateSettings"}},"required":["template_document"]},"DocumentGenerationV2Response":{"type":"object","properties":{"job_id":{"type":"string","format":"uuid"},"job_status":{"description":"Status of the job","type":"string","enum":["STARTED","PROCESSING","SUCCESS","FAILED"]},"message":{"description":"A message explaining the progress","type":"string"},"ics_output":{"type":"object","properties":{"output_document":{"type":"object","properties":{"filename":{"description":"Generated document filename for ICS","type":"string","example":"my-appointment-OR-001.ics"},"s3ref":{"$ref":"#/components/schemas/S3Reference"}},"example":{"s3ref":{"bucket":"document-api-preview-prod","key":"preview/my-appointment.ics"}}}}},"pdf_output":{"type":"object","properties":{"preview_url":{"description":"Pre-signed S3 GET URL for PDF preview","type":"string","example":"https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.pdf"},"output_document":{"type":"object","properties":{"filename":{"description":"Generated document filename for PDF","type":"string","example":"my-template-OR-001.pdf"},"s3ref":{"$ref":"#/components/schemas/S3Reference"}},"example":{"s3ref":{"bucket":"document-api-preview-prod","key":"preview/my-template.pdf"}}}}},"docx_output":{"type":"object","properties":{"preview_url":{"description":"Pre-signed S3 GET URL for DOCX preview","type":"string","example":"https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.docx"},"output_document":{"type":"object","properties":{"filename":{"description":"Generated document filename for DOCX","type":"string","example":"my-template-OR-001.docx"},"s3ref":{"$ref":"#/components/schemas/S3Reference"}},"example":{"s3ref":{"bucket":"document-api-preview-prod","key":"preview/my-template.docx"}}}}},"error_output":{"$ref":"#/components/schemas/ErrorOutput"},"variable_payload":{"description":"List of variables and its corresponding replaced values from the document template","type":"object","properties":{"additionalProperties":{"type":"string"}}},"template_settings":{"$ref":"#/components/schemas/TemplateSettings"}}},"ConvertDocumentRequest":{"type":"object","properties":{"input_document":{"description":"Input document","type":"object","properties":{"s3ref":{"$ref":"#/components/schemas/S3Reference"}},"required":["s3ref"]},"output_format":{"description":"Output format of the document","type":"string","enum":["pdf"]},"output_filename":{"description":"Filename of the output document (optional)","type":"string","example":"converted.pdf"}},"required":["input_document","output_format"]},"ConvertDocumentResponse":{"type":"object","properties":{"output_document":{"type":"object","properties":{"preview_url":{"description":"Pre-signed URL for the converted document","type":"string","example":"https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/converted.pdf"},"s3ref":{"$ref":"#/components/schemas/S3Reference"}}}}}}},"servers":[{"url":"https://document.sls.epilot.io"}]}')}},t={},r=function r(o){var n=t[o];if(void 0!==n)return n.exports;var i=t[o]={exports:{}};return e[o].call(i.exports,i,i.exports,r),i.exports}(914),o=exports;for(var n in r)o[n]=r[n];r.__esModule&&Object.defineProperty(o,"__esModule",{value:!0})})();
@@ -0,0 +1,3 @@
1
+ export * from './client';
2
+ export * from './openapi';
3
+ export type { OpenAPIClient, OpenAPIClientAxios, Document } from 'openapi-client-axios';
package/dist/index.js ADDED
@@ -0,0 +1,18 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ __exportStar(require("./client"), exports);
18
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1,615 @@
1
+ /* eslint-disable */
2
+
3
+ import type {
4
+ OpenAPIClient,
5
+ Parameters,
6
+ UnknownParamsObject,
7
+ OperationResponse,
8
+ AxiosRequestConfig,
9
+ } from 'openapi-client-axios';
10
+
11
+ declare namespace Components {
12
+ namespace Schemas {
13
+ export interface ConvertDocumentRequest {
14
+ /**
15
+ * Input document
16
+ */
17
+ input_document: {
18
+ s3ref: S3Reference;
19
+ };
20
+ /**
21
+ * Output format of the document
22
+ */
23
+ output_format: "pdf";
24
+ /**
25
+ * Filename of the output document (optional)
26
+ * example:
27
+ * converted.pdf
28
+ */
29
+ output_filename?: string;
30
+ }
31
+ export interface ConvertDocumentResponse {
32
+ output_document?: {
33
+ /**
34
+ * Pre-signed URL for the converted document
35
+ * example:
36
+ * https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/converted.pdf
37
+ */
38
+ preview_url?: string;
39
+ s3ref?: S3Reference;
40
+ };
41
+ }
42
+ export interface DocumentGenerationV2Request {
43
+ /**
44
+ * Input template document
45
+ */
46
+ template_document: {
47
+ /**
48
+ * Document original filename
49
+ * example:
50
+ * my-template-{{order.order_number}}.docx
51
+ */
52
+ filename?: string;
53
+ s3ref?: S3Reference;
54
+ };
55
+ /**
56
+ * Entity to use for variable context
57
+ * example:
58
+ * bcd0aab9-b544-42b0-8bfb-6d449d02eacc
59
+ */
60
+ context_entity_id?: string; // uuid
61
+ /**
62
+ * User Id for variable context
63
+ * example:
64
+ * 100321
65
+ */
66
+ user_id?: string;
67
+ /**
68
+ * Language
69
+ * example:
70
+ * en
71
+ */
72
+ language?: string;
73
+ /**
74
+ * Custom values for variables in the template. Takes the higher precedence than others.
75
+ */
76
+ variable_payload?: {
77
+ additionalProperties?: string;
78
+ };
79
+ /**
80
+ * Custom values for variables in the template. Takes the higher precedence than others.
81
+ */
82
+ context_data?: {
83
+ additionalProperties?: string;
84
+ };
85
+ template_settings?: /* Template Settings for document generation */ TemplateSettings;
86
+ }
87
+ export interface DocumentGenerationV2Response {
88
+ job_id?: string; // uuid
89
+ /**
90
+ * Status of the job
91
+ */
92
+ job_status?: "STARTED" | "PROCESSING" | "SUCCESS" | "FAILED";
93
+ /**
94
+ * A message explaining the progress
95
+ */
96
+ message?: string;
97
+ ics_output?: {
98
+ /**
99
+ * example:
100
+ * {
101
+ * "s3ref": {
102
+ * "bucket": "document-api-preview-prod",
103
+ * "key": "preview/my-appointment.ics"
104
+ * }
105
+ * }
106
+ */
107
+ output_document?: {
108
+ /**
109
+ * Generated document filename for ICS
110
+ * example:
111
+ * my-appointment-OR-001.ics
112
+ */
113
+ filename?: string;
114
+ s3ref?: S3Reference;
115
+ };
116
+ };
117
+ pdf_output?: {
118
+ /**
119
+ * Pre-signed S3 GET URL for PDF preview
120
+ * example:
121
+ * https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.pdf
122
+ */
123
+ preview_url?: string;
124
+ /**
125
+ * example:
126
+ * {
127
+ * "s3ref": {
128
+ * "bucket": "document-api-preview-prod",
129
+ * "key": "preview/my-template.pdf"
130
+ * }
131
+ * }
132
+ */
133
+ output_document?: {
134
+ /**
135
+ * Generated document filename for PDF
136
+ * example:
137
+ * my-template-OR-001.pdf
138
+ */
139
+ filename?: string;
140
+ s3ref?: S3Reference;
141
+ };
142
+ };
143
+ docx_output?: {
144
+ /**
145
+ * Pre-signed S3 GET URL for DOCX preview
146
+ * example:
147
+ * https://document-api-prod.s3.eu-central-1.amazonaws.com/preview/my-template-OR-001.docx
148
+ */
149
+ preview_url?: string;
150
+ /**
151
+ * example:
152
+ * {
153
+ * "s3ref": {
154
+ * "bucket": "document-api-preview-prod",
155
+ * "key": "preview/my-template.docx"
156
+ * }
157
+ * }
158
+ */
159
+ output_document?: {
160
+ /**
161
+ * Generated document filename for DOCX
162
+ * example:
163
+ * my-template-OR-001.docx
164
+ */
165
+ filename?: string;
166
+ s3ref?: S3Reference;
167
+ };
168
+ };
169
+ error_output?: ErrorOutput;
170
+ /**
171
+ * List of variables and its corresponding replaced values from the document template
172
+ */
173
+ variable_payload?: {
174
+ additionalProperties?: string;
175
+ };
176
+ template_settings?: /* Template Settings for document generation */ TemplateSettings;
177
+ }
178
+ export interface DocumentMetaRequest {
179
+ /**
180
+ * Input template document
181
+ */
182
+ template_document?: {
183
+ s3ref?: S3Reference;
184
+ };
185
+ }
186
+ export interface DocumentMetaResponse {
187
+ /**
188
+ * Page margins for the document
189
+ */
190
+ page_margins?: {
191
+ /**
192
+ * Top margin in cm
193
+ * example:
194
+ * 2.54
195
+ */
196
+ top?: number;
197
+ /**
198
+ * Bottom margin in cm
199
+ * example:
200
+ * 2.54
201
+ */
202
+ bottom?: number;
203
+ /**
204
+ * Left margin in cm
205
+ * example:
206
+ * 2.54
207
+ */
208
+ left?: number;
209
+ /**
210
+ * Right margin in cm
211
+ * example:
212
+ * 2.54
213
+ */
214
+ right?: number;
215
+ /**
216
+ * Header margin in cm
217
+ * example:
218
+ * 2.54
219
+ */
220
+ header?: number;
221
+ /**
222
+ * Footer margin in cm
223
+ * example:
224
+ * 2.54
225
+ */
226
+ footer?: number;
227
+ };
228
+ /**
229
+ * List of variables in the document
230
+ * example:
231
+ * [
232
+ * "order.billing_contact.0.salutation",
233
+ * "order.billing_contact.0.title",
234
+ * "order_table",
235
+ * "stayHardStatic",
236
+ * "opportunity[attribute_name]",
237
+ * "opportunity[\"attribute_name\"]",
238
+ * "opportunity.[attribute_name]",
239
+ * "attribute_name",
240
+ * "opportunities.0.attribute_name",
241
+ * "opportunities[0].attribute_name",
242
+ * "contact.opportunities[0].attribute_name",
243
+ * "opportunities[Primary].attribute_name"
244
+ * ]
245
+ */
246
+ variables?: string[];
247
+ }
248
+ /**
249
+ * DocxTemplater error detail
250
+ */
251
+ export interface DocxTemplaterErrorDetail {
252
+ /**
253
+ * Id of the error
254
+ */
255
+ id?: string;
256
+ /**
257
+ * Context of the error
258
+ */
259
+ context?: string;
260
+ /**
261
+ * Explanation of the error
262
+ */
263
+ explanation?: string;
264
+ }
265
+ /**
266
+ * Error details for DocxTemplater error. This error will appear under 'PARSE_ERROR' error code.
267
+ * See https://docxtemplater.com/docs/errors/#error-schema for more details.
268
+ *
269
+ */
270
+ export type DocxTemplaterErrorDetails = /* DocxTemplater error detail */ DocxTemplaterErrorDetail[];
271
+ /**
272
+ * Error codes for document generation:
273
+ * - PARSE_ERROR - Error while parsing the document. Normally related with a bad template using the wrong DocxTemplater syntax.
274
+ * - DOC_TO_PDF_CONVERT_ERROR - Error while converting the document to PDF. Normally related with a ConvertAPI failure.
275
+ * - INTERNAL_ERROR - Internal error. Please contact support.
276
+ * - INVALID_TEMPLATE_FORMAT - Invalid template format (only .docx is supported). This can happen due to a bad word file or an unsupported file extension.
277
+ *
278
+ */
279
+ export type ErrorCode = "PARSE_ERROR" | "DOC_TO_PDF_CONVERT_ERROR" | "INTERNAL_ERROR" | "INVALID_TEMPLATE_FORMAT";
280
+ export interface ErrorOutput {
281
+ /**
282
+ * Error message
283
+ */
284
+ error_message?: string;
285
+ error_code?: /**
286
+ * Error codes for document generation:
287
+ * - PARSE_ERROR - Error while parsing the document. Normally related with a bad template using the wrong DocxTemplater syntax.
288
+ * - DOC_TO_PDF_CONVERT_ERROR - Error while converting the document to PDF. Normally related with a ConvertAPI failure.
289
+ * - INTERNAL_ERROR - Internal error. Please contact support.
290
+ * - INVALID_TEMPLATE_FORMAT - Invalid template format (only .docx is supported). This can happen due to a bad word file or an unsupported file extension.
291
+ *
292
+ */
293
+ ErrorCode;
294
+ error_details?: /* Error details for invalid custom variables. This error will appear under 'PARSE_ERROR' error code. */ InvalidCustomVariableErrorDetails | /* Error details for internal error. This error will appear under 'INTERNAL_ERROR' error code. */ InternalErrorDetails | /**
295
+ * Error details for DocxTemplater error. This error will appear under 'PARSE_ERROR' error code.
296
+ * See https://docxtemplater.com/docs/errors/#error-schema for more details.
297
+ *
298
+ */
299
+ DocxTemplaterErrorDetails;
300
+ }
301
+ /**
302
+ * Internal error detail
303
+ */
304
+ export interface InternalErrorDetail {
305
+ /**
306
+ * Name of the error
307
+ */
308
+ name?: string;
309
+ /**
310
+ * Error message
311
+ */
312
+ message?: string;
313
+ /**
314
+ * Stack trace
315
+ */
316
+ stack?: string;
317
+ /**
318
+ * Cause of the error
319
+ */
320
+ cause?: string;
321
+ }
322
+ /**
323
+ * Error details for internal error. This error will appear under 'INTERNAL_ERROR' error code.
324
+ */
325
+ export type InternalErrorDetails = {
326
+ items?: /* Internal error detail */ InternalErrorDetail;
327
+ }[];
328
+ export interface InvalidCustomVariableErrorDetail {
329
+ [name: string]: any;
330
+ /**
331
+ * Explanation for the error
332
+ */
333
+ explanation?: string;
334
+ /**
335
+ * Context for the error
336
+ */
337
+ context?: {
338
+ /**
339
+ * List of invalid variables
340
+ */
341
+ invalid_variables?: {
342
+ /**
343
+ * Variable name
344
+ */
345
+ variable?: string;
346
+ /**
347
+ * Explanation for the error
348
+ */
349
+ error?: string;
350
+ }[];
351
+ };
352
+ }
353
+ /**
354
+ * Error details for invalid custom variables. This error will appear under 'PARSE_ERROR' error code.
355
+ */
356
+ export type InvalidCustomVariableErrorDetails = InvalidCustomVariableErrorDetail[];
357
+ export interface S3Reference {
358
+ /**
359
+ * example:
360
+ * document-api-prod
361
+ */
362
+ bucket: string;
363
+ /**
364
+ * example:
365
+ * uploads/my-template.pdf
366
+ */
367
+ key: string;
368
+ }
369
+ /**
370
+ * Template Settings for document generation
371
+ */
372
+ export interface TemplateSettings {
373
+ /**
374
+ * Custom margins for the document
375
+ */
376
+ custom_margins?: {
377
+ /**
378
+ * Top margin in cm
379
+ * example:
380
+ * 2.54
381
+ */
382
+ top?: number;
383
+ /**
384
+ * Bottom margin in cm
385
+ * example:
386
+ * 2.54
387
+ */
388
+ bottom?: number;
389
+ };
390
+ /**
391
+ * Suggested margins for the document
392
+ */
393
+ suggested_margins?: {
394
+ /**
395
+ * Top margin in cm
396
+ * example:
397
+ * 2.54
398
+ */
399
+ top?: number;
400
+ /**
401
+ * Bottom margin in cm
402
+ * example:
403
+ * 2.54
404
+ */
405
+ bottom?: number;
406
+ };
407
+ /**
408
+ * Display margin guidelines (applicable to partial generation only)
409
+ * example:
410
+ * true
411
+ */
412
+ display_margin_guidelines?: boolean;
413
+ /**
414
+ * Enable data table margin autofix
415
+ * example:
416
+ * false
417
+ */
418
+ enable_data_table_margin_autofix?: boolean;
419
+ /**
420
+ * A flag that indicates whether the template has 1 or more data tables in it
421
+ * example:
422
+ * false
423
+ */
424
+ template_with_datatable?: boolean;
425
+ /**
426
+ * Enables the persistance of template settings
427
+ * example:
428
+ * false
429
+ */
430
+ enabled_template_settings_persistence?: boolean;
431
+ /**
432
+ * An indication that the page margins are misconfigured
433
+ * example:
434
+ * false
435
+ */
436
+ misconfigured_margins?: boolean;
437
+ /**
438
+ * The file entity id, used when persisting a new template version with updated settings
439
+ * example:
440
+ * 1a2b3c4d-5e6f-7g8h-9i0j-1k2l3m4n5o6p
441
+ */
442
+ file_entity_id?: string; // uuid
443
+ }
444
+ }
445
+ }
446
+ declare namespace Paths {
447
+ namespace ConvertDocument {
448
+ export type RequestBody = Components.Schemas.ConvertDocumentRequest;
449
+ namespace Responses {
450
+ export type $200 = Components.Schemas.ConvertDocumentResponse;
451
+ }
452
+ }
453
+ namespace GenerateDocumentV2 {
454
+ namespace Parameters {
455
+ export type JobId = string;
456
+ export type Mode = "partial_generation" | "full_generation";
457
+ export type PreviewMode = "open" | "download";
458
+ }
459
+ export interface QueryParameters {
460
+ job_id?: Parameters.JobId;
461
+ mode?: Parameters.Mode;
462
+ preview_mode?: Parameters.PreviewMode;
463
+ }
464
+ export type RequestBody = Components.Schemas.DocumentGenerationV2Request;
465
+ namespace Responses {
466
+ export type $200 = Components.Schemas.DocumentGenerationV2Response;
467
+ }
468
+ }
469
+ namespace GetTemplateMeta {
470
+ export type RequestBody = Components.Schemas.DocumentMetaRequest;
471
+ namespace Responses {
472
+ export type $200 = Components.Schemas.DocumentMetaResponse;
473
+ export type $400 = Components.Schemas.ErrorOutput;
474
+ export type $403 = Components.Schemas.ErrorOutput;
475
+ export type $415 = Components.Schemas.ErrorOutput;
476
+ }
477
+ }
478
+ }
479
+
480
+ export interface OperationMethods {
481
+ /**
482
+ * getTemplateMeta - getTemplateMeta
483
+ *
484
+ * Get metadata for a document template
485
+ *
486
+ * Supported input document types:
487
+ * - .docx
488
+ *
489
+ */
490
+ 'getTemplateMeta'(
491
+ parameters?: Parameters<UnknownParamsObject> | null,
492
+ data?: Paths.GetTemplateMeta.RequestBody,
493
+ config?: AxiosRequestConfig
494
+ ): OperationResponse<Paths.GetTemplateMeta.Responses.$200>
495
+ /**
496
+ * generateDocumentV2 - generateDocumentV2
497
+ *
498
+ * Generates documents from templates with variables.
499
+ *
500
+ * Supported document types as input:
501
+ * - .docx
502
+ * - .ics
503
+ *
504
+ * Supported document types as output:
505
+ * - .pdf
506
+ * - .docx but limited to only text based variables
507
+ * - .ics
508
+ *
509
+ * Uses [Template Variable API](https://docs.epilot.io/api/template-variables) to replace variables in the input document.
510
+ *
511
+ */
512
+ 'generateDocumentV2'(
513
+ parameters?: Parameters<Paths.GenerateDocumentV2.QueryParameters> | null,
514
+ data?: Paths.GenerateDocumentV2.RequestBody,
515
+ config?: AxiosRequestConfig
516
+ ): OperationResponse<Paths.GenerateDocumentV2.Responses.$200>
517
+ /**
518
+ * convertDocument - convertDocument
519
+ *
520
+ * Converts a document to a different format.
521
+ *
522
+ * Supported input document types:
523
+ * - .docx
524
+ *
525
+ * Supported output document types:
526
+ * - .pdf
527
+ *
528
+ */
529
+ 'convertDocument'(
530
+ parameters?: Parameters<UnknownParamsObject> | null,
531
+ data?: Paths.ConvertDocument.RequestBody,
532
+ config?: AxiosRequestConfig
533
+ ): OperationResponse<Paths.ConvertDocument.Responses.$200>
534
+ }
535
+
536
+ export interface PathsDictionary {
537
+ ['/v2/documents:meta']: {
538
+ /**
539
+ * getTemplateMeta - getTemplateMeta
540
+ *
541
+ * Get metadata for a document template
542
+ *
543
+ * Supported input document types:
544
+ * - .docx
545
+ *
546
+ */
547
+ 'post'(
548
+ parameters?: Parameters<UnknownParamsObject> | null,
549
+ data?: Paths.GetTemplateMeta.RequestBody,
550
+ config?: AxiosRequestConfig
551
+ ): OperationResponse<Paths.GetTemplateMeta.Responses.$200>
552
+ }
553
+ ['/v2/documents:generate']: {
554
+ /**
555
+ * generateDocumentV2 - generateDocumentV2
556
+ *
557
+ * Generates documents from templates with variables.
558
+ *
559
+ * Supported document types as input:
560
+ * - .docx
561
+ * - .ics
562
+ *
563
+ * Supported document types as output:
564
+ * - .pdf
565
+ * - .docx but limited to only text based variables
566
+ * - .ics
567
+ *
568
+ * Uses [Template Variable API](https://docs.epilot.io/api/template-variables) to replace variables in the input document.
569
+ *
570
+ */
571
+ 'post'(
572
+ parameters?: Parameters<Paths.GenerateDocumentV2.QueryParameters> | null,
573
+ data?: Paths.GenerateDocumentV2.RequestBody,
574
+ config?: AxiosRequestConfig
575
+ ): OperationResponse<Paths.GenerateDocumentV2.Responses.$200>
576
+ }
577
+ ['/v2/documents:convert']: {
578
+ /**
579
+ * convertDocument - convertDocument
580
+ *
581
+ * Converts a document to a different format.
582
+ *
583
+ * Supported input document types:
584
+ * - .docx
585
+ *
586
+ * Supported output document types:
587
+ * - .pdf
588
+ *
589
+ */
590
+ 'post'(
591
+ parameters?: Parameters<UnknownParamsObject> | null,
592
+ data?: Paths.ConvertDocument.RequestBody,
593
+ config?: AxiosRequestConfig
594
+ ): OperationResponse<Paths.ConvertDocument.Responses.$200>
595
+ }
596
+ }
597
+
598
+ export type Client = OpenAPIClient<OperationMethods, PathsDictionary>
599
+
600
+ export type ConvertDocumentRequest = Components.Schemas.ConvertDocumentRequest;
601
+ export type ConvertDocumentResponse = Components.Schemas.ConvertDocumentResponse;
602
+ export type DocumentGenerationV2Request = Components.Schemas.DocumentGenerationV2Request;
603
+ export type DocumentGenerationV2Response = Components.Schemas.DocumentGenerationV2Response;
604
+ export type DocumentMetaRequest = Components.Schemas.DocumentMetaRequest;
605
+ export type DocumentMetaResponse = Components.Schemas.DocumentMetaResponse;
606
+ export type DocxTemplaterErrorDetail = Components.Schemas.DocxTemplaterErrorDetail;
607
+ export type DocxTemplaterErrorDetails = Components.Schemas.DocxTemplaterErrorDetails;
608
+ export type ErrorCode = Components.Schemas.ErrorCode;
609
+ export type ErrorOutput = Components.Schemas.ErrorOutput;
610
+ export type InternalErrorDetail = Components.Schemas.InternalErrorDetail;
611
+ export type InternalErrorDetails = Components.Schemas.InternalErrorDetails;
612
+ export type InvalidCustomVariableErrorDetail = Components.Schemas.InvalidCustomVariableErrorDetail;
613
+ export type InvalidCustomVariableErrorDetails = Components.Schemas.InvalidCustomVariableErrorDetails;
614
+ export type S3Reference = Components.Schemas.S3Reference;
615
+ export type TemplateSettings = Components.Schemas.TemplateSettings;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@epilot/document-client",
3
- "version": "0.16.0",
3
+ "version": "0.16.2",
4
4
  "description": "API Client for epilot document API",
5
5
  "main": "dist/index.js",
6
6
  "types": "dist/index.d.ts",