{"openapi":"3.1.0","info":{"title":"OpenAPI definition","version":"v0"},"servers":[{"url":"http://localhost:7001","description":"Generated server url"}],"paths":{"/api/v1/pdf/visualSignature":{"post":{"tags":["pdf-controller"],"description":"Sign the provided PDF document with a cloud wallet.","operationId":"visualSignature","parameters":[{"name":"controlDocument","in":"query","description":"Object of type SigningInput, containing reference to the document, wallet information and visual signature details.","required":true},{"name":"<filenames>","in":"query","description":"Attachments referred from the controlDocument."},{"name":"files","in":"query","required":true,"schema":{"type":"object","additionalProperties":{"type":"string","format":"binary"}}}],"requestBody":{"description":"Object of type SigningInput, containing reference to the document, wallet information and visual signature details.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/SigningInput"}}},"required":true},"responses":{"default":{"description":"The signed PDF document, if successful.","content":{"*/*":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/pdf/unprotect":{"post":{"tags":["pdf-controller"],"summary":"Remove protection from a password-protected PDF file","operationId":"unprotectFile","parameters":[{"name":"password","in":"query","description":"Password used to protect the file","required":true,"schema":{"type":"string"},"example":1234}],"requestBody":{"description":"Binary content of the PDF document to un-protect.","content":{"application/pdf":{"schema":{"type":"string","format":"byte"}}},"required":true},"responses":{"200":{"description":"Un-protected PDF file.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Invalid input PDF file.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"403":{"description":"Invalid password.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/pdf/split":{"post":{"tags":["pdf-controller"],"summary":"Split a PDF into multiple documents","description":"Splits a PDF document into multiple smaller PDFs at specified page numbers.","operationId":"appendToPdf","parameters":[{"name":"splitAfter","in":"query","description":"List of page numbers after which the split should occur.","required":true,"schema":{"type":"array","items":{"type":"integer","format":"int32"}},"example":[2,5,10]},{"name":"format","in":"query","description":"Output format, zip or Multipart/mixed (default).","required":false,"schema":{"type":"string"},"example":"zip"}],"requestBody":{"description":"Binary content of the PDF document to split.","content":{"application/pdf":{"schema":{"type":"string","format":"byte"}}},"required":true},"responses":{"200":{"description":"A multipart response containing the split PDF documents.","content":{"multipart/mixed":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input PDF file or split points.","content":{"multipart/mixed":{"schema":{"type":"object"}}}}}}},"/api/v1/pdf/protect":{"post":{"tags":["pdf-controller"],"summary":"Protect the file with a password","operationId":"protectFile","parameters":[{"name":"password","in":"query","description":"Password used to protect the file","required":true,"schema":{"type":"string"},"example":1234}],"requestBody":{"description":"Binary content of the PDF document to protect.","content":{"application/pdf":{"schema":{"type":"string","format":"byte"}}},"required":true},"responses":{"200":{"description":"Protected PDF file.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Invalid input PDF file.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/pdf/pages":{"post":{"tags":["pdf-controller"],"summary":"Extract pages from a PDF","description":"Extracts all pages from a PDF document and returns them as separate PDF files in a Zip file or multipart response.","operationId":"extractPages","parameters":[{"name":"format","in":"query","description":"Output format, zip or Multipart/mixed (default).","required":false,"schema":{"type":"string"},"example":"zip"}],"requestBody":{"description":"Binary content of the PDF document to extract pages from.","content":{"application/pdf":{"schema":{"type":"string","format":"byte"}}},"required":true},"responses":{"200":{"description":"A zip file or multipart response containing the extracted PDF pages.","content":{"multipart/mixed":{"schema":{"type":"object"}},"application/zip":{"schema":{"type":"object"}}}},"400":{"description":"Invalid input PDF file.","content":{"multipart/mixed":{"schema":{"type":"object"}},"application/zip":{"schema":{"type":"object"}}}}}}},"/api/v1/pdf/merge":{"post":{"tags":["pdf-controller"],"summary":"Merge multiple PDF files","description":"Combines multiple PDFs into a single document.","operationId":"merge","parameters":[{"name":"fileList","in":"query","description":"List of filenames or URLs pointing to PDF files to be merged.","required":true,"schema":{"type":"array","items":{"type":"string"}}},{"name":"files","in":"query","required":true,"schema":{"type":"object","additionalProperties":{"type":"string","format":"binary"}}}],"requestBody":{"description":"List of files to merge. Files should be provided as multipart form data.","required":true},"responses":{"200":{"description":"A response containing the merged PDF document","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Invalid input parameters.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/pdf/inspect":{"post":{"tags":["pdf-controller"],"summary":"Inspect PDF Metadata","description":"Inspects a PDF document and extracts metadata such as page count, dimensions, and other properties.","operationId":"inspect","requestBody":{"description":"Binary content of the PDF document to inspect.","content":{"application/pdf":{"schema":{"type":"string","format":"byte"}}},"required":true},"responses":{"200":{"description":"Metadata of the PDF document in JSON format.","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"object"}}}}},"400":{"description":"Invalid input PDF file.","content":{"application/json":{"schema":{"type":"object","additionalProperties":{"type":"object"}}}}}}}},"/api/v1/pdf/attachment":{"post":{"tags":["pdf-controller"],"summary":"Add attachments to a PDF","description":"Attaches one or more files to an existing PDF.","operationId":"addAttachment","parameters":[{"name":"file","in":"query","description":"The PDF file to which attachments will be added.","required":true},{"name":"attachment","in":"query","description":"List of files to attach to the PDF.","required":true}],"requestBody":{"description":"Multipart/form with the base PDF file and the attachments to be added.","content":{"multipart/form-data":{"schema":{"type":"object","properties":{"file":{"type":"string","format":"binary"},"attachment":{"type":"array","items":{"type":"string","format":"binary"}}},"required":["attachment","file"]}}},"required":true},"responses":{"200":{"description":"Attachments successfully added.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}},"400":{"description":"Invalid input parameters.","content":{"application/pdf":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/md/convert":{"post":{"tags":["md-controller"],"description":"Convert MD to a new PDF document.","operationId":"mdToPdf","parameters":[{"name":"controlDocument","in":"query","description":"Object of type MdAppenderInput, containing style & font configurations, output configuration and the reference to MD document.","required":true},{"name":"<filenames>","in":"query","description":"Attachments referred from the controlDocument."},{"name":"files","in":"query","required":true,"schema":{"type":"object","additionalProperties":{"type":"string","format":"binary"}}}],"requestBody":{"description":"Object containing style & font configurations, output configuration and the MD document or link to it.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MdConversionInput"}}},"required":true},"responses":{"default":{"description":"The generated PDF document.","content":{"*/*":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/md/append":{"post":{"tags":["md-controller"],"description":"Print MD-formatted intput into an existing document. Useful to add headers, watermarks, fill forms etc.","operationId":"appendToPdf_1","parameters":[{"name":"controlDocument","in":"query","description":"Object of type MdAppenderInput, containing style & font configurations, output configuration and the reference to MD document.","required":true},{"name":"<filenames>","in":"query","description":"Attachments referred from the controlDocument."},{"name":"files","in":"query","required":true,"schema":{"type":"object","additionalProperties":{"type":"string","format":"binary"}}}],"requestBody":{"description":"The instructions for printing together with the link to the PDF document to print into.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MdAppenderInput"}}},"required":true},"responses":{"default":{"description":"The output PDF document.","content":{"*/*":{"schema":{"type":"string","format":"binary"}}}}}}},"/api/v1/md/presets":{"get":{"tags":["md-controller"],"description":"Returns the list of available configuration presets.","operationId":"getPresets","responses":{"default":{"description":"The list of available configuration presets.","content":{"application/json":{"schema":{"type":"array","items":{"type":"string","enum":["PROFESSIONAL","EASY","MODERN","ARABIC"]}}}}}}}},"/api/v1/md/preset/convert":{"get":{"tags":["md-controller"],"description":"Returns the effective default configuration used by the engine during convert operation. Use this as a starting point to customize behavior.","operationId":"getDefaultConversionInput","responses":{"default":{"description":"The default configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MdConversionInput"}}}}}}},"/api/v1/md/preset/convert/{presetName}":{"get":{"tags":["md-controller"],"description":"Returns the preset configuration used by the engine during convert operation. Use this as a starting point to customize behavior.","operationId":"getConversionInput","parameters":[{"name":"presetName","in":"path","required":true,"schema":{"type":"string","enum":["PROFESSIONAL","EASY","MODERN","ARABIC"]}}],"responses":{"default":{"description":"The default configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MdConversionInput"}}}}}}},"/api/v1/md/preset/append":{"get":{"tags":["md-controller"],"description":"Returns the effective default configuration used by the engine during append operation. Use this as a starting point to customize behavior.","operationId":"getDefaultAppenderInput","responses":{"default":{"description":"The default configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MdAppenderInput"}}}}}}},"/api/v1/md/preset/append/{presetName}":{"get":{"tags":["md-controller"],"description":"Returns the preset configuration used by the engine during append operation. Use this as a starting point to customize behavior.","operationId":"getAppenderInput","parameters":[{"name":"presetName","in":"path","required":true,"schema":{"type":"string","enum":["PROFESSIONAL","EASY","MODERN","ARABIC"]}}],"responses":{"default":{"description":"The default configuration.","content":{"application/json":{"schema":{"$ref":"#/components/schemas/MdAppenderInput"}}}}}}}},"components":{"schemas":{"SigningInput":{"type":"object","description":"Signing parameters","properties":{"walletType":{"type":"string","description":"Currently, only 'AZURE_KEY_VAULT' is supported","enum":["AZURE_KEY_VAULT"]},"signatureImage":{"type":"string","description":"URL pointing to an image for visual representation of the signature"},"pageNum":{"type":"integer","format":"int32","description":"Where to place the visual signature"},"x":{"type":"number","format":"float","description":"Where to place the visual signature"},"y":{"type":"number","format":"float","description":"Where to place the visual signature"},"width":{"type":"number","format":"float","description":"Where to place the visual signature"},"height":{"type":"number","format":"float","description":"Where to place the visual signature"},"keyVaultUrl":{"type":"string","description":"KeyVault connection string; required for AZURE_KEY_VAULT"},"certificateId":{"type":"string","description":"certificate identifier; required for AZURE_KEY_VAULT"},"document":{"type":"string","description":"Document to sign"},"reason":{"type":"string","description":"Reason"},"location":{"type":"string","description":"Location"},"signatureName":{"type":"string","description":"Name of the signature"}},"required":["document","height","pageNum","signatureImage","walletType","width","x","y"]},"AdvancedTypography":{"type":"object","description":"Parameters for advanced typography","properties":{"paragraphOrphanStrategy":{"type":"string","description":"Defines the strategy for handling orphaned lines in paragraphs (single lines left at the beginning of a page).","enum":["KEEP","BREAK_PAGE_EARLY"]},"fastProcessing":{"type":"boolean","default":"false","description":"Enables faster processing and skips certain language-detection heuristics. Safe to enable for most document templates."}}},"FontConfigurationInput":{"type":"object","default":"```\n{\"fontFamilies\":{\n  \"JetBrainsMono\": {\n    \"FIXED_WIDTH\": [\"<provided files>\"],\n    \"FIXED_WIDTH_ITALIC\": [\"<provided files>\"],\n    \"FIXED_WIDTH_MEDIUM\": [\"<provided files>\"],\n    \"FIXED_WIDTH_ITALIC_MEDIUM\": [\"<provided files>\"],\n    \"FIXED_WIDTH_BOLD\": [\"<provided files>\"],\n    \"FIXED_WIDTH_ITALIC_BOLD\": [\"<provided files>\"]\n  },\n  \"NotoSerif\": {\n    \"NORMAL\": [\"<provided files>\"],\n    \"NORMAL_ITALIC\": [\"<provided files>\"],\n    \"NORMAL_MEDIUM\": [\"<provided files>\"],\n    \"NORMAL_ITALIC_MEDIUM\": [\"<provided files>\"],\n    \"NORMAL_BOLD\": [\"<provided files>\"],\n    \"NORMAL_ITALIC_BOLD\": [\"<provided files>\"],\n    \"SYMBOLS\": [\"<provided files>\"]\n  }\n}}\n```\n","description":"Defines font families, consisting of fonts with different faces. In order to accommodate font files with different character sets, multiple files for one face can be added.Note: user input EXTENDS default values, overwrites only when files for existing combination of family and type face are provided","example":"{\"fontFamilies\":{\n  \"NotoSerif\": {\n    \"REGULAR\": [\"file://NotoSerif-Regular.ttf\", \"data:font/ttf;base64,1234...\"],\n    \"BOLD\": [...]\n  }\n}}\n","properties":{"fontFamilies":{"type":"object","additionalProperties":{"type":"object","additionalProperties":{"type":"array","items":{"type":"string"}}}}}},"GraphicsStyle":{"type":"object","description":"Customize the default style for embedded graphic elements.","properties":{"color":{"type":"object","default":"GRAY","description":"Color. Can be specified as string with a name (e.g. \"BLACK\", see java.awt.Color constants), a stringthat represents an opaque color as a 24-bit integer, or an array of 3 or 4 numbers, representing RGB/RGBA components.","properties":{"red":{"type":"integer","format":"int32"},"green":{"type":"integer","format":"int32"},"blue":{"type":"integer","format":"int32"},"alpha":{"type":"integer","format":"int32"},"rgb":{"type":"integer","format":"int32"},"transparency":{"type":"integer","format":"int32"},"colorSpace":{"type":"object","properties":{"type":{"type":"integer","format":"int32"},"numComponents":{"type":"integer","format":"int32"},"cs_sRGB":{"type":"boolean"}}}}},"marginTopPts":{"type":"number","format":"float","default":"12","description":"How much space is required before a paragraph, in pts."},"marginBottomPts":{"type":"number","format":"float","default":"12","description":"How much space is required after a paragraph, in pts."},"indent":{"type":"number","format":"float","default":"0","description":"Indent, in points."},"alignment":{"type":"string","default":"CENTER","enum":["LEFT","CENTER","RIGHT","NATURAL","JUSTIFY"]}}},"LengthValue":{"type":"object","description":"Defines length in the document. Can be either a number, in which case it is interpreted as number of points, or a string ending with \"mm\", \"cm\", \"in\" or \"%\". The percentage refers to the page height or width, resp."},"MdConversionInput":{"type":"object","description":"Defines the input structure for converting Markdown to an existing PDF document.","properties":{"styleConfiguration":{"$ref":"#/components/schemas/StyleConfiguration","description":"Style configurations for the Markdown rendering."},"fontConfiguration":{"$ref":"#/components/schemas/FontConfigurationInput","description":"Font configurations for the document."},"pageConfiguration":{"$ref":"#/components/schemas/PageConfiguration","default":"A4, 65pts margins","description":"Specifies page configuration to print into."},"mdFragment":{"$ref":"#/components/schemas/MdInput","description":"Markdown input to be added."},"advancedTypography":{"$ref":"#/components/schemas/AdvancedTypography","default":"paragraphOrphanStrategy: BREAK_PAGE_EARLY, fastProcessing: false","description":"Parameters for advanced typography"},"preset":{"type":"string","description":"Preset used as a base for configuration","enum":["PROFESSIONAL","EASY","MODERN","ARABIC"]}},"required":["mdFragment"]},"MdInput":{"type":"object","description":"Defines a Markdown fragment to be converted into the PDF.","properties":{"mdTemplate":{"type":"string","description":"Markdown content or template.","example":"file://template.md"},"dpi":{"type":"integer","format":"int32","default":"300","description":"Dots per inch (DPI) setting for rendering the Markdown. Affects pictures.","example":300},"languages":{"type":"array","default":"[]","description":"Locale(s) of the text in mdTemplate, in ISO639 Set 1 or BCP47 format. These will be provided to the language model for properly detecting the breaks. Autodetect if not specified.","example":["en","de-CH"],"items":{"type":"string"}}},"required":["mdTemplate"]},"PageConfiguration":{"type":"object","description":"Defines the page layout.","properties":{"pageSize":{"$ref":"#/components/schemas/PageSize","default":"A4","description":"Page size."},"marginLeft":{"$ref":"#/components/schemas/LengthValue","default":"65pts","description":"Page margins, in points."},"marginRight":{"$ref":"#/components/schemas/LengthValue","default":"65pts","description":"Page margins, in points."},"marginTop":{"$ref":"#/components/schemas/LengthValue","default":"65pts","description":"Page margins, in points."},"marginBottom":{"$ref":"#/components/schemas/LengthValue","default":"65pts","description":"Page margins, in points."}}},"PageSize":{"type":"object","description":"Define page size. Possible values: 1. Single string, e.g. \"A4\"; 2. object containing attributes \"name\" and optionally \"orientation\":\"landscape\"; or 3. object containing attributes \"width\" and \"height\" of type LengthValue","properties":{"name":{"type":"string","writeOnly":true},"orientation":{"type":"string","writeOnly":true},"width":{"type":"number","format":"float"},"height":{"type":"number","format":"float"}}},"StyleConfiguration":{"type":"object","description":"Defines styles for various text elements.","properties":{"bodyStyle":{"$ref":"#/components/schemas/TextStyle","default":"{ fontSize: 9, requiredSpaceBefore:1, requiredSpaceAfter:1}","description":"Style for text body."},"monospaceStyle":{"$ref":"#/components/schemas/TextStyle","default":"{fontSize:8, fontFamily:JetBrainsMono, alignment: LEFT, fontTypeFace: FIXED_WIDTH}","description":"Style for fixed-width text element."},"h1Style":{"$ref":"#/components/schemas/TextStyle","default":"{FontTypeFace: NORMAL_MEDIUM,setRequiredSpaceAfter: 1.2, fontSize: 24}","description":"Style for heading level 1."},"h2Style":{"$ref":"#/components/schemas/TextStyle","default":"{FontTypeFace: NORMAL_MEDIUM,setRequiredSpaceAfter: 1.2, fontSize: 20}","description":"Style for heading level 2."},"h3Style":{"$ref":"#/components/schemas/TextStyle","default":"{FontTypeFace: NORMAL_MEDIUM,setRequiredSpaceAfter: 1.2, fontSize: 16}","description":"Style for heading level 3."},"h4Style":{"$ref":"#/components/schemas/TextStyle","default":"{FontTypeFace: NORMAL_ITALIC_MEDIUM,setRequiredSpaceAfter: 1.2, fontSize: 12}","description":"Style for heading level 4."},"h5Style":{"$ref":"#/components/schemas/TextStyle","default":"{FontTypeFace: NORMAL_ITALIC_MEDIUM,setRequiredSpaceAfter: 1.2, fontSize: 10}","description":"Style for heading level 5."},"h6Style":{"$ref":"#/components/schemas/TextStyle","default":"{FontTypeFace: NORMAL_ITALIC_MEDIUM,setRequiredSpaceAfter: 1.2, fontSize: 8}","description":"Style for heading level 6."},"documentTextDirection":{"type":"string","default":"LEFT_TO_RIGHT","description":"Default document text direction.","enum":["LEFT_TO_RIGHT","RIGHT_TO_LEFT"]},"delimiterStyle":{"$ref":"#/components/schemas/GraphicsStyle","description":"Style for embedded graphics, e.g. horizontal delimiters, quotation markers etc."},"imagesStyle":{"$ref":"#/components/schemas/GraphicsStyle","description":"Style for embedded pictures"},"tableStyle":{"$ref":"#/components/schemas/TableStyleConfiguration","description":"Table style configuration"}}},"StyleTransformation":{"type":"object"},"TableHorizontalRuleAbstractStyle":{"type":"object","description":"Define various table rules (borders) of the table. Either \"NONE\" or object with fields {color, widthPts}. Color van be specified as string with a name (e.g. \"BLACK\", see java.awt.Color constants), a string\" +\n            \"that represents an opaque color as a 24-bit integer, or an array of 3 or 4 numbers, representing RGB/RGBA components."},"TableStyleConfiguration":{"type":"object","description":"Define the style used in tables","properties":{"marginTopPts":{"type":"number","format":"float","default":"12","description":"How much space is required before a table, in pts."},"marginBottomPts":{"type":"number","format":"float","default":"12","description":"How much space is required after a table, in pts."},"headerTransformation":{"$ref":"#/components/schemas/StyleTransformation","default":"TO_BOLD","description":"How the header is displayed."},"spacingPts":{"type":"number","format":"float","default":"12","description":"How much space is needed between two cell contents"},"balancingPriority":{"type":"string","default":"AUTO","description":"Preference, how are column widths calculated","enum":["AUTO","BOTH","HEADER","BODY"]},"tableHorizontalBorderRule":{"$ref":"#/components/schemas/TableHorizontalRuleAbstractStyle","default":"NONE","description":"Top and bottom table rules (borders)"},"tableHeaderDividerRule":{"$ref":"#/components/schemas/TableHorizontalRuleAbstractStyle","default":"{color: GRAY, widthPts: 1}","description":"Rule (delimiter) between header and body rows."},"alignment":{"type":"string","default":"CENTER","description":"Alignment of the table, LEFT, RIGHT, CENTER or JUSTIFY","enum":["LEFT","CENTER","RIGHT","NATURAL","JUSTIFY"]},"defaultCellAlignment":{"type":"string","default":"CENTER","description":"Default alignment of the cell contents LEFT, RIGHT, CENTER, NATURAL, JUSTIFY","enum":["LEFT","CENTER","RIGHT","NATURAL","JUSTIFY"]}}},"TextStyle":{"type":"object","description":"Customize the default text style for the given text element.","properties":{"fontTypeFace":{"type":"string","description":"Font type face to be used for this text element.","enum":["NORMAL","NORMAL_ITALIC","NORMAL_BOLD","NORMAL_ITALIC_BOLD","NORMAL_MEDIUM","NORMAL_ITALIC_MEDIUM","FIXED_WIDTH","FIXED_WIDTH_ITALIC","FIXED_WIDTH_MEDIUM","FIXED_WIDTH_ITALIC_MEDIUM","FIXED_WIDTH_BOLD","FIXED_WIDTH_ITALIC_BOLD","SYMBOLS"]},"fontFamily":{"type":"string","description":"Font family, either one of the pre-configured (\"NotoSerif\", \"JetBrainsMono\") or those supplied in font configuration."},"color":{"type":"object","default":"BLACK","description":"Color. Can be specified as string with a name (e.g. \"BLACK\", see java.awt.Color constants), a stringthat represents an opaque color as a 24-bit integer, or an array of 3 or 4 numbers, representing RGB/RGBA components.","properties":{"red":{"type":"integer","format":"int32"},"green":{"type":"integer","format":"int32"},"blue":{"type":"integer","format":"int32"},"alpha":{"type":"integer","format":"int32"},"rgb":{"type":"integer","format":"int32"},"transparency":{"type":"integer","format":"int32"},"colorSpace":{"type":"object","properties":{"type":{"type":"integer","format":"int32"},"numComponents":{"type":"integer","format":"int32"},"cs_sRGB":{"type":"boolean"}}}}},"fontSize":{"type":"number","format":"float"},"textIndent":{"type":"number","format":"float","default":"0","description":"Indent, in points."},"lineHeight":{"type":"number","format":"float","default":"1.4","description":"Spacing inside the paragraph, in multiplies of the font heigh.t"},"marginTop":{"type":"number","format":"float","default":"0.8","description":"How much space is required before a paragraph, in multiplies of the font height ('em')."},"marginBottom":{"type":"number","format":"float","default":"0.8","description":"How much space is required after a paragraph, in multiplies of the font height ('em')."},"alignment":{"type":"string","default":"NATURAL","enum":["LEFT","CENTER","RIGHT","NATURAL","JUSTIFY"]},"emphasisTransformation":{"$ref":"#/components/schemas/StyleTransformation","default":"TO_ITALIC","description":"Transformation done when text is marked as \"emphasized\""},"strongEmphasisTransformation":{"$ref":"#/components/schemas/StyleTransformation","default":"TO_BOLD","description":"Transformation done when text is marked as \"strongly emphasized\""},"linkTransformation":{"$ref":"#/components/schemas/StyleTransformation","default":"TO_COLOR(BLUE)","description":"Transformation done when text is a link"},"denySpaceErasure":{"type":"boolean","default":"false","description":"Do not trim extra white space at the beginning and end of a line. Useful for formatted text, e.g. source code"}}},"BlankDocumentParameters":{"type":"object","description":"Parameters for creating blank document.","properties":{"pageSize":{"$ref":"#/components/schemas/PageSize","default":"A4","description":"Page size."},"pages":{"type":"integer","format":"int32","default":"1","description":"No. of pages."}}},"MdAppenderInput":{"type":"object","description":"Defines the input structure for appending Markdown to an existing PDF document.","properties":{"styleConfiguration":{"$ref":"#/components/schemas/StyleConfiguration","description":"Style configurations for the Markdown rendering."},"fontConfiguration":{"$ref":"#/components/schemas/FontConfigurationInput","description":"Font configurations for the document."},"advancedTypography":{"$ref":"#/components/schemas/AdvancedTypography","default":"paragraphOrphanStrategy: KEEP, fastProcessing: false","description":"Parameters for advanced typography"},"originalDocument":{"type":"string","description":"Reference to the original PDF document. It can be a file uploaded in multipart/form-data.","example":"file://document.pdf"},"blankDocumentParameters":{"$ref":"#/components/schemas/BlankDocumentParameters","description":"Alternatively, create bland document"},"preset":{"type":"string","description":"Preset used as a base for configuration","enum":["PROFESSIONAL","EASY","MODERN","ARABIC"]},"mdFragments":{"type":"array","description":"List of Markdown fragments to be added.","items":{"$ref":"#/components/schemas/MdBlockInput"}}},"required":["mdFragments"]},"MdBlockInput":{"type":"object","description":"Defines a Markdown fragment to be inserted into the PDF.","properties":{"position":{"$ref":"#/components/schemas/Positioning","description":"Position of this block on the page"},"printToBackground":{"type":"boolean","default":"false","description":"Specifies if the fragment should be printed in the background. Useful for watermarks.","example":true},"mdTemplate":{"type":"string","description":"Markdown content or template.","example":"# Draft v0.1"},"dpi":{"type":"integer","format":"int32","default":"300","description":"Dots per inch (DPI) setting for rendering the Markdown. Affects pictures.","example":300},"pageNumber":{"type":"array","description":"List of page numbers where the fragment should be placed.Possible formats: 1. list of pages; 2. single number; 3. string constants \"all\", \"even\", \"odd\"; 4. string specifying both ranges (5-10) and single pages, delimited with comma, e.g. \"1,3,5,7-11\"","example":[1,2,3],"items":{"type":"integer","format":"int32"}},"id":{"type":"string"},"languages":{"type":"array","default":"[]","description":"Locale(s) of the text in mdTemplate, in ISO639 Set 1 or BCP47 format. These will be provided to the language model for properly detecting the breaks. Autodetect if not specified.","example":["en","de-CH"],"items":{"type":"string"}}},"required":["mdTemplate","pageNumber","position"]},"Positioning":{"type":"object","properties":{"referenceType":{"type":"string","default":"PAGE","description":"Type of the anchor the positioning is based on. Use 'PAGE' to position relative to the page or 'BLOCK' to position relative to another block.","enum":["PAGE","BLOCK"]},"referenceAnchor":{"type":"string","default":"BOTTOM_LEFT","description":"Anchor point on the reference (page or block) that this block should align to.","enum":["TOP_LEFT","TOP_CENTER","TOP_RIGHT","CENTER_LEFT","CENTER","CENTER_RIGHT","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT"]},"referenceId":{"type":"string","description":"ID of the block to use as a reference. Leave out if the referenceType is 'PAGE'.","example":"recipient_address_block"},"ownAnchor":{"type":"string","default":"BOTTOM_LEFT","description":"Anchor point on this block that will be aligned with the reference anchor.","enum":["TOP_LEFT","TOP_CENTER","TOP_RIGHT","CENTER_LEFT","CENTER","CENTER_RIGHT","BOTTOM_LEFT","BOTTOM_CENTER","BOTTOM_RIGHT"]},"width":{"$ref":"#/components/schemas/LengthValue","description":"Width of this block"},"height":{"$ref":"#/components/schemas/LengthValue","description":"Height of this block"},"rotationDegrees":{"type":"number","format":"float","default":"0","description":"Rotation angle in degrees.","example":60},"xOffset":{"$ref":"#/components/schemas/LengthValue","description":"Horizontal offset from the reference anchor to this block's anchor. Positive values move this block to the right, negative to the left."},"yOffset":{"$ref":"#/components/schemas/LengthValue","description":"Vertical offset from the reference anchor to this block's anchor. Positive values move this block upward, negative downward."}},"required":["height","width","xOffset","yOffset"]}}}}