{"id":146729,"date":"2024-06-25T12:30:42","date_gmt":"2024-06-25T03:30:42","guid":{"rendered":"https:\/\/support.questetra.com\/?p=146729"},"modified":"2026-07-28T16:32:17","modified_gmt":"2026-07-28T07:32:17","slug":"service-task-docraptor-pdf-generate","status":"publish","type":"post","link":"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-docraptor-pdf-generate\/","title":{"rendered":"DocRaptor: Generate PDF"},"content":{"rendered":"\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" loading=\"lazy\" decoding=\"async\" width=\"1024\" height=\"58\" data-attachment-id=\"113160\" data-permalink=\"https:\/\/support.questetra.com\/en\/developer-blog\/how-to-use-timer-start-event\/attachment\/advanced-banner-new-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?fit=1200%2C68&amp;ssl=1\" data-orig-size=\"1200,68\" data-comments-opened=\"0\" data-image-title=\"advanced-banner-new-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?fit=1024%2C58&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en-1024x58.png?resize=1024%2C58&#038;ssl=1\" alt=\"\" class=\"wp-image-113160\" srcset=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=1024%2C58&amp;ssl=1 1024w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=600%2C34&amp;ssl=1 600w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?resize=768%2C44&amp;ssl=1 768w, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/05\/advanced-banner-new-en.png?w=1200&amp;ssl=1 1200w\" sizes=\"auto, (max-width: 1000px) 100vw, 1000px\" \/><\/figure>\n\n\n\n<div style=\"height:50px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<h4 class=\"wp-block-heading has-border-color has-product-main-border-color has-white-color has-product-main-background-color has-text-color has-link-color has-background\" style=\"background-color:#ccffcc;margin-top:var(--wp--preset--spacing--30);margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:var(--wp--preset--spacing--20);padding-bottom:0;padding-left:var(--wp--preset--spacing--20)\"><strong>DocRaptor: Generate PDF<\/strong><\/h4>\n\n\n\n<p class=\"has-text-align-right has-border-color has-product-main-border-color has-white-color has-product-main-background-color has-text-color has-link-color has-background has-small-font-size mt-0 pt-0 wp-block-paragraph\" style=\"background-color:#ccffcc;margin-top:0;margin-right:0;margin-bottom:0;margin-left:0;padding-top:0;padding-right:var(--wp--preset--spacing--30);padding-bottom:0;padding-left:var(--wp--preset--spacing--30)\"><a href=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/docraptor-pdf-generate\/\">DocRaptor: PDF \u751f\u6210<\/a><\/p>\n\n\n\n<p class=\"has-border-color has-product-main-border-color has-text-color has-white-background-color has-link-color has-background mt-0 pt-0 wp-block-paragraph\" style=\"background-color:#f0fff0;margin-top:0;margin-right:0;margin-bottom:var(--wp--preset--spacing--60);margin-left:0;padding-top:var(--wp--preset--spacing--20);padding-right:var(--wp--preset--spacing--30);padding-bottom:var(--wp--preset--spacing--20);padding-left:var(--wp--preset--spacing--40)\">This item generates a PDF file from HTML.<\/p>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details open><summary class=\"wp-block-coblocks-accordion-item__title\">Basic Configs<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<dl style=\"0 0 -0.7em 0\">\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\"><\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">Step Name<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #C3C3C3;\"><\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">Note<\/dd>\n<\/dl>\n<\/div><\/details><\/div>\n<\/div>\n\n\n\n<figure class=\"wp-block-image alignright has-custom-border is-style-default\"><img decoding=\"async\" src=\"data:image;base64,\n        iVBORw0KGgoAAAANSUhEUgAAACAAAAAgCAYAAABzenr0AAAAAXNSR0IArs4c6QAAA4ZJREFUWEfF\n        l2lIVFEUx\/\/vOaNOWZFlu1QmSQSBIzaSRQu2gNaDosSoCOuDhYVJORRRCQXNtNKHFKQMkiyCYFqw\n        oMiFnBlK\/WCblS1amnumNpbje3Gnec9507zFnJj78d2z\/M4595x7H4UAL0qt\/7hjd0ZpHOx6AMsp\n        IBbALADj3fpdAD5yQA2Ax04dfavq2NofamwrAsQfuDeFpp1GCsgAEKrGKIB+DshnWY3p6ankr3I6\n        sgAJOZYMUDgNYLRKx95ifeCw32Zm8qX0JQESjJaLAHb9o2NvtTybidnty5ZPAEOO5RpFIc1Pzl1m\n        OA7FdjOz2dvmXwB+jlwxEyIAd83z\/Bn5X7Y47PI8EwIAOe1BtPPdCA6c4GtRzGS8aOxC949fvmLp\n        G2Q10Xx3CAAGo+UcBWTxGrpgDc5sN+DJ6xbcsn2E45dTMTE0TcG8dSES502Gc5BF3v1XuFZR7yMJ\n        OG83MfvIhguADBmtg+3w7vP46AicS08ATVH40tmHBzWfcbPyg1RkqDiRAk0QLXJYVd+OzIJKb4j+\n        AR09gQwrF4DBaNlCAVd9hTg\/cjzyMhKh9TDc8s2BR7VNuF5Rj7bv\/S414pgA8KuhvRfF5fVwshzu\n        PmvwlYWtdhNTxANcooB0qRzPnjQGV\/YuRbBGHB2R7+j5ifKXzaj91Ikjm\/SCiV7HAFbmlkiWjQMu\n        203MDhdAgtFSjT\/zXXJNCx+FoqxlIGdD7VqVW4Iex4CUeI3NxOh5gE6Pi0XSfnhYCO4dXq3K\/yDL\n        YYP5IUi5JFaXzcSE8wCcGquHN8YiOS5SjSgOFj1F6fNmWVmbiaFUA6yJnYGjqUM1VqJ429SNbRfK\n        VAPIlmBmRBiKs1eA4JLUfmjpQfTUsSLj7d\/7EabTIkQTBCfLoqGtF1vOl8oBiEogewh3JsVgR1KM\n        yxiZA2dv16L8eAq07q4gUIsP3RGchWqDoI+aiMq6FjmAoUNoMFpk25BYSVowHblpelS\/78CegkoB\n        gOU4ZBfaYX\/TqlQV0b6oDeUGkafW3GnjkLZkDnJvVKPseIprLljrWpFdaBuWcyLMAUODSGoUy1m1\n        nlwnbL9s7EJmgVXVfeFWEo9i8tH7MlIKKTUxCj8HBgUx65tWuZ73Tr\/4MiK7\/ryOFeB9X8dEKaAP\n        Ep46oE8yHiKgj9L\/lInhPcsFiED+mPAQAf0182yngP2cKg2kke7\/BmM1hzDqtBczAAAAAElFTkSu\n        QmCC\n    \" alt=\"Auto Step icon\" class=\"has-border-color has-ast-global-color-4-border-color\" style=\"border-width:0.5em\"\/><\/figure>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details open><summary class=\"wp-block-coblocks-accordion-item__title\">Configs for this Auto Step<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<dl style=\"0 0 -0.7em 0\">\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Auth<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C1: Basic Auth Setting in which API Key is set as Username<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_SourceHtml<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C2: Data item that stores the source HTML<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_Files<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C3: Data item to save the generated PDF file<span style=\"color:#990000;\"> *<\/span><\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_DeleteOtherFiles<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C4: Delete other files when saving<\/dd>\n<dt style=\"font-weight: 300; font-size: 50%; margin: -1em 0 0 0; color: #aaa;\">conf_FileName<\/dt><dd style=\"margin: -0.5em 0 0.1em 1em\">C5: File name to save as<span style=\"color:#990000;\"> *<\/span><span style=\"color:#000099;\"><sup style=\"font-style:italic;\">#{EL}<\/sup><\/span><\/dd>\n\n<\/dl>\n<\/div><\/details><\/div>\n<\/div>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--60)\"><span>Notes<\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li>Set the API Key of your DocRaptor account as username of the Basic Authentication\n<ul class=\"wp-block-list\">\n<li>Leave the password blank<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>PDF files generated in a debug Case will contain the watermark of DocRaptor\n<ul class=\"wp-block-list\">\n<li>Instead, they will not consume any of the documents assigned to your DocRaptor account<\/li>\n<\/ul>\n<\/li>\n\n\n\n<li>Document generation logs, which you can refer to on DocRaptor web site when logged in, are to be named as &#8220;Questetra-m{App ID}-p{Case ID}&#8221;<\/li>\n\n\n\n<li>When you specify the source HTML by a file-type data item:\n<ul class=\"wp-block-list\">\n<li>only one file can be attached<\/li>\n\n\n\n<li>file size allowed is up to 1MB (1,048,576 byte)<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--60)\"><span>Capture<\/span><\/h3>\n\n\n\n<figure class=\"wp-block-image size-large\"><img data-recalc-dims=\"1\" decoding=\"async\" data-attachment-id=\"84005\" data-permalink=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/onedrive-file-upload\/attachment\/setting-service-task-pdf-generation-en\/\" data-orig-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/01\/setting-service-task-pdf-generation-en.png?fit=959%2C833&amp;ssl=1\" data-orig-size=\"959,833\" data-comments-opened=\"0\" data-image-title=\"setting-service-task-pdf-generation-en\" data-image-description=\"\" data-image-caption=\"\" data-large-file=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2020\/01\/setting-service-task-pdf-generation-en.png?fit=725%2C630&amp;ssl=1\" src=\"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/05\/docraptor-pdf-generate_capture_en.png?ssl=1\" alt=\"\" class=\"wp-image-84005\" style=\"border:10px solid #aaaaaa; padding:5px; margin:5px;\"><\/figure>\n\n\n\n<h3 class=\"wp-block-heading\" style=\"margin-top:var(--wp--preset--spacing--60)\"><span>See also<\/span><\/h3>\n\n\n\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/support.questetra.com\/en\/bpmn-icons\/intermediate-error-catch-event-boundary-type\/\" target=\"_blank\" rel=\"noreferrer noopener\">Intermediate Error Catch Event (Boundary Type)<\/a><\/li>\n\n\n\n<li><a href=\"https:\/\/support.questetra.com\/en\/developer-blog\/docraptor-html2pdf\/\">Generating PDF files from HTML with inserted business data (integrated with DocRaptor)<\/a><\/li>\n<\/ul>\n\n\n\n<div style=\"height:30px\" aria-hidden=\"true\" class=\"wp-block-spacer\"><\/div>\n\n\n\n<div class=\"wp-block-coblocks-accordion\">\n<div class=\"wp-block-coblocks-accordion-item\"><details><summary class=\"wp-block-coblocks-accordion-item__title\">Script (click to open)<\/summary><div class=\"wp-block-coblocks-accordion-item__content\">\n<ul class=\"wp-block-list\">\n<li>An XML file that contains the code below is available to download\n<ul class=\"wp-block-list\">\n<li><a href=\"https:\/\/raw.githubusercontent.com\/Questetra\/Addon-XML\/release-2024-05-10\/docraptor-pdf-generate.xml\" target=\"_blank\" rel=\"noreferrer noopener\">docraptor-pdf-generate.xml<\/a> (C) Questetra, Inc. (MIT License)<\/li>\n\n\n\n<li>If you are using Professional, you can modify the contents of this file and use it as your own add-on auto step<\/li>\n<\/ul>\n<\/li>\n<\/ul>\n\n\n\n<div class=\"hcb_wrap\"><pre class=\"prism line-numbers lang-js\" data-lang=\"JavaScript\"><code>\n\nconst MAX_SOURCE_FILE_SIZE = 1048576; \/\/ 1MB\u3002\u6a19\u6e96\u30a2\u30a4\u30c6\u30e0\u3067\u306f\u30d5\u30a1\u30a4\u30eb\u306e\u8aad\u307f\u51fa\u3057\u30b5\u30a4\u30ba\u306b\u5236\u9650\u306f\u306a\u3044\u304c\u3001\u7121\u5236\u9650\u3082\u3088\u304f\u306a\u3044\u306e\u3067\n\nfunction main(){\n    \/\/\/\/ == \u5de5\u7a0b\u30b3\u30f3\u30d5\u30a3\u30b0\u30fb\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u306e\u53c2\u7167 \/ Config & Data Retrieving ==\n    const auth = configs.getObject(&#39;conf_Auth&#39;);\n    const html = retrieveSourceHtml();\n    const filesDef = configs.getObject(&#39;conf_Files&#39;);\n    const deleteOtherFiles = configs.getObject(&#39;conf_DeleteOtherFiles&#39;);\n    const fileName = retrieveFileName();\n\n    \/\/\/\/ == \u6f14\u7b97 \/ Calculating ==\n    const statusId = generatePdf(auth, html);\n\n    \/\/ \u51e6\u7406\u72b6\u6cc1\u3092\u78ba\u8a8d\u3057\u3001\u672a\u5b8c\u4e86\u306a\u3089 proceed() \u306b\u9032\u3080\n    if (checkStatusAndSaveFile(auth, statusId, filesDef, deleteOtherFiles, fileName) === false) {\n        engine.saveTemporaryData(statusId);\n        return false;\n    }\n}\n\nfunction proceed() {\n    \/\/\/\/ == \u5de5\u7a0b\u30b3\u30f3\u30d5\u30a3\u30b0\u30fb\u30ef\u30fc\u30af\u30d5\u30ed\u30fc\u30c7\u30fc\u30bf\u306e\u53c2\u7167 \/ Config & Data Retrieving ==\n    const auth = configs.getObject(&#39;conf_Auth&#39;);\n    const filesDef = configs.getObject(&#39;conf_Files&#39;);\n    const deleteOtherFiles = configs.getObject(&#39;conf_DeleteOtherFiles&#39;);\n    const fileName = retrieveFileName();\n\n    \/\/\/\/ == Restoring Temporary Data \/ \u4e00\u6642\u30c7\u30fc\u30bf\u306e\u8aad\u307f\u51fa\u3057 ==\n    const statusId = engine.restoreTemporaryData();\n    if (statusId === null) {\n        throw new Error(&#39;Temporary data has not been saved.&#39;);\n    }\n\n    \/\/\/\/ == \u6f14\u7b97 \/ Calculating ==\n    if (checkStatusAndSaveFile(auth, statusId, filesDef, deleteOtherFiles, fileName) === false) {\n        return false;\n    }\n}\n\n\/**\n  * config \u306b\u8a2d\u5b9a\u3057\u305f\u30d5\u30a1\u30a4\u30eb\u578b\/\u6587\u5b57\u578b\u30c7\u30fc\u30bf\u9805\u76ee\u304b\u3089\u5909\u63db\u5143 HTML \u3092\u8aad\u307f\u51fa\u3059\n  * @return {String} html\n  *\/\nfunction retrieveSourceHtml() {\n    const sourceHtmlDef = configs.getObject(&#39;conf_SourceHtml&#39;);\n    if (sourceHtmlDef.matchDataType(&#39;FILE&#39;)) { \/\/ \u30d5\u30a1\u30a4\u30eb\u578b\u30c7\u30fc\u30bf\u9805\u76ee\u306e\u5834\u5408\n        return retrieveSourceHtmlFromFile(sourceHtmlDef);\n    }\n    \/\/ \u6587\u5b57\u578b\u30c7\u30fc\u30bf\u9805\u76ee\u306e\u5834\u5408\n    const html = engine.findData(sourceHtmlDef);\n    if (html === null) {\n        throw new Error(&#39;Source HTML is empty.&#39;);\n    }\n    return html;\n}\n\n\/**\n  * \u30d5\u30a1\u30a4\u30eb\u578b\u30c7\u30fc\u30bf\u9805\u76ee\u304b\u3089\u5909\u63db\u5143 HTML \u3092\u8aad\u307f\u51fa\u3059\n  * @param {ProcessDataDefinitionView} sourceFilesDef\n  * @return {String} html\n  *\/\nfunction retrieveSourceHtmlFromFile(sourceFilesDef) {\n    const sourceFiles = engine.findData(sourceFilesDef);\n    if (sourceFiles === null) {\n        throw new Error(&#39;No source file attached.&#39;);\n    }\n    if (sourceFiles.size() &gt; 1) {\n        throw new Error(&#39;More than one source files attached.&#39;);\n    }\n    const sourceFile = sourceFiles.get(0);\n    if (sourceFile.getLength() === 0) {\n        throw new Error(&#39;Source file is empty.&#39;);\n    }\n    if (sourceFile.getLength() &gt; MAX_SOURCE_FILE_SIZE) {\n        throw new Error(&#39;Source file is too large.&#39;);\n    }\n    const contentType = sourceFile.getContentType();\n    if (!contentType.startsWith(&#39;text\/html&#39;)) {\n        throw new Error(&#39;Content-Type of the source file is not text\/html.&#39;);\n    }\n    return fileRepository.readFile(sourceFile, decideCharset(sourceFile));\n}\n\n\/**\n  * config \u304b\u3089\u4fdd\u5b58\u3059\u308b\u969b\u306e\u30d5\u30a1\u30a4\u30eb\u540d\u3092\u8aad\u307f\u51fa\u3059\n  * \u7a7a\u306e\u5834\u5408\u306f\u30a8\u30e9\u30fc\n  * @return {String} fileName\n  *\/\nfunction retrieveFileName() {\n    const fileName = configs.get(&#39;conf_FileName&#39;);\n    if (fileName === &#39;&#39;) {\n        throw new Error(&#39;File name is blank.&#39;);\n    }\n    return fileName;\n}\n\n\/**\n  * \u30d5\u30a1\u30a4\u30eb\u306e charset \u3092\u8aad\u307f\u51fa\u3059\n  * charset \u304c\u8a2d\u5b9a\u3055\u308c\u3066\u3044\u306a\u3044\u5834\u5408\u306f UTF-8 \u3092\u8fd4\u3059\n  * @param {QfileView} sourceFile\n  * @return {String} charset\n  *\/\nfunction decideCharset(sourceFile) {\n    const charset = sourceFile.getCharset();\n    if (charset === null) {\n        return &#39;UTF-8&#39;;\n    }\n    return charset;\n}\n\n\/**\n  * DocRaptor \u306e PDF \u751f\u6210 API \u306b POST \u30ea\u30af\u30a8\u30b9\u30c8\u3092\u9001\u4fe1\u3057\u3001\u30b9\u30c6\u30fc\u30bf\u30b9 ID \u3092\u8fd4\u3059\n  * \u30d7\u30ed\u30bb\u30b9\u304c\u30c7\u30d0\u30c3\u30b0\u5b9f\u884c\u306e\u5834\u5408\u3001PDF \u751f\u6210\u3092\u30c6\u30b9\u30c8\u6271\u3044\u306b\u3059\u308b\n  * @param {AuthSettingWrapper} auth  Basic \u8a8d\u8a3c\u8a2d\u5b9a\n  * @param {String} html  HTML \u30bd\u30fc\u30b9\n  * @return {String} statusId  \u30b9\u30c6\u30fc\u30bf\u30b9 ID\n  *\/\nfunction generatePdf(auth, html) {\n    const requestBody = generateRequestBody(html);\n    const response = httpClient.begin()\n        .authSetting(auth)\n        .body(requestBody, &#39;application\/json&#39;)\n        .post(&#39;https:\/\/api.docraptor.com\/docs&#39;);\n    const status = response.getStatusCode();\n    const responseStr = response.getResponseAsString();\n    if (status !== 200) {\n        engine.log(responseStr);\n        throw new Error(`Failed to post PDF generation request. status: ${status}`);\n    }\n    return JSON.parse(responseStr).status_id;\n}\n\n\/**\n  * PDF \u30d5\u30a1\u30a4\u30eb\u751f\u6210 API \u306e\u30ea\u30af\u30a8\u30b9\u30c8\u30dc\u30c7\u30a3\u3092\u751f\u6210\u3057\u3001JSON \u6587\u5b57\u5217\u3067\u8fd4\u3059\n  * - \u975e\u540c\u671f\u751f\u6210\u3092\u30ea\u30af\u30a8\u30b9\u30c8\n  * - \u30d7\u30ed\u30bb\u30b9\u304c\u30c7\u30d0\u30c3\u30b0\u5b9f\u884c\u306e\u5834\u5408\u3001\u30c6\u30b9\u30c8\u30ea\u30af\u30a8\u30b9\u30c8\u6271\u3044\u306b\u3059\u308b\n  * @param {String} html\n  * @return {String} requestBody\n  *\/\nfunction generateRequestBody(html) {\n    const requestBody = {\n        document_type: &#39;pdf&#39;,\n        document_content: html,\n        async: true,\n        name: `Questetra-m${processInstance.getProcessModelInfoId()}-p${processInstance.getProcessInstanceId()}`\n    };\n    \/\/ \u30d7\u30ed\u30bb\u30b9\u304c\u30c7\u30d0\u30c3\u30b0\u5b9f\u884c\u306e\u5834\u5408\u3001test \u30d1\u30e9\u30e1\u30fc\u30bf\u306b true \u3092\u8a2d\u5b9a\n    if (processInstance.getProcessInstanceDebug()) {\n        requestBody.test = true;\n    }\n    return JSON.stringify(requestBody);\n}\n\n\/**\n  * PDF \u30d5\u30a1\u30a4\u30eb\u751f\u6210\u306e\u51e6\u7406\u72b6\u614b\u3092\u78ba\u8a8d\u3057\u3001\u5b8c\u4e86\u3057\u3066\u3044\u308c\u3070\u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3059\u308b\n  * \u672a\u5b8c\u4e86\u306e\u5834\u5408\u306f false \u3092\u8fd4\u3059\n  * @param {AuthSettingWrapper} auth  Basic \u8a8d\u8a3c\u8a2d\u5b9a\n  * @param {String} statusId  \u30b9\u30c6\u30fc\u30bf\u30b9 ID\n  * @param {DataDefinitionView} filesDef  \u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3059\u308b\u30c7\u30fc\u30bf\u9805\u76ee\n  * @param {boolean} deleteOtherFiles  \u6dfb\u4ed8\u3055\u308c\u3066\u3044\u308b\u4ed6\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\u3059\u308b\u304b\u3069\u3046\u304b\n  * @param {String} fileName  \u4fdd\u5b58\u30d5\u30a1\u30a4\u30eb\u540d\n  * @return {boolean}\n  *\/\nfunction checkStatusAndSaveFile(auth, statusId, filesDef, deleteOtherFiles, fileName) {\n    const response = httpClient.begin()\n        .authSetting(auth)\n        .get(`https:\/\/docraptor.com\/status\/${statusId}`);\n    const status = response.getStatusCode();\n    const responseStr = response.getResponseAsString();\n    if (status !== 200) {\n        engine.log(responseStr);\n        throw new Error(`Failed to get PDF generation status. status: ${status}`);\n    }\n    const json = JSON.parse(responseStr);\n    switch (json.status) {\n        case &#39;failed&#39;:\n            engine.log(JSON.stringify(json));\n            throw new Error(&#39;Failed to generate PDF.&#39;);\n        case &#39;completed&#39;:\n            downloadAndSaveFile(auth, json.download_url, filesDef, deleteOtherFiles, fileName);\n            break;\n        default:\n            return false;\n    }\n}\n\n\/**\n  * PDF \u30d5\u30a1\u30a4\u30eb\u3092\u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u3057\u3001\u3092\u4fdd\u5b58\u3059\u308b\n  * @param {AuthSettingWrapper} auth  Basic \u8a8d\u8a3c\u8a2d\u5b9a\n  * @param {String} downloadUrl  \u30c0\u30a6\u30f3\u30ed\u30fc\u30c9\u5148 URL\n  * @param {DataDefinitionView} filesDef  \u30d5\u30a1\u30a4\u30eb\u3092\u4fdd\u5b58\u3059\u308b\u30c7\u30fc\u30bf\u9805\u76ee\n  * @param {boolean} deleteOtherFiles  \u6dfb\u4ed8\u3055\u308c\u3066\u3044\u308b\u4ed6\u306e\u30d5\u30a1\u30a4\u30eb\u3092\u524a\u9664\u3059\u308b\u304b\u3069\u3046\u304b\n  * @param {String} fileName  \u4fdd\u5b58\u30d5\u30a1\u30a4\u30eb\u540d\n  * @return {boolean}\n  *\/\nfunction downloadAndSaveFile(auth, downloadUrl, filesDef, deleteOtherFiles, fileName) {\n    const response = httpClient.begin()\n        .authSetting(auth)\n        .get(downloadUrl);\n    const status = response.getStatusCode();\n    if (status !== 200) {\n        engine.log(response.getResponseAsString());\n        throw new Error(`Failed to download PDF file. status: ${status}`);\n    }\n    const qfile = new com.questetra.bpms.core.event.scripttask.NewQfile(\n        fileName, response.getContentType(), response.getResponse()\n    );\n    let files = engine.findData(filesDef);\n    if (files === null || deleteOtherFiles) {\n        files = new java.util.ArrayList();\n    }\n    files.add(qfile);\n    engine.setData(filesDef, files);\n}\n\n    <\/code><\/pre><\/div>\n<\/div><\/details><\/div>\n<\/div>\n","protected":false},"excerpt":{"rendered":"<p>This item generates a PDF file from HTML.<\/p>\n","protected":false},"author":17,"featured_media":148993,"comment_status":"closed","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"_coblocks_attr":"","_coblocks_dimensions":"","_coblocks_responsive_height":"","_coblocks_accordion_ie_support":"","_uag_custom_page_level_css":"","advanced_seo_description":"","jetpack_seo_html_title":"","jetpack_seo_noindex":false,"jetpack_seo_schema_type":"","_jetpack_newsletter_access":"","_jetpack_dont_email_post_to_subs":false,"_jetpack_newsletter_tier_id":0,"_jetpack_memberships_contains_paywalled_content":false,"_wpcom_ai_launchpad_first_post":false,"_jetpack_hide_featured_image":false,"_jetpack_featured_image_duplicate_dismissed":0,"_jetpack_feature_clip_id":0,"_jetpack_memberships_contains_paid_content":false,"footnotes":"","jetpack_publicize_message":"{title}\n\n{excerpt}\n\n{url}","jetpack_publicize_feature_enabled":true,"jetpack_social_post_already_shared":true,"jetpack_social_options":{"image_generator_settings":{"template":"highway","default_image_id":0,"font":"","enabled":false},"version":2},"_wpas_customize_per_network":false,"jetpack_post_was_ever_published":true},"categories":[550],"tags":[],"faq_section":[],"class_list":["post-146729","post","type-post","status-publish","format-standard","has-post-thumbnail","hentry","category-bpmn-icons"],"jetpack_publicize_connections":[],"uagb_featured_image_src":{"full":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=1200%2C675&ssl=1",1200,675,false],"thumbnail":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=440%2C440&ssl=1",440,440,true],"medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=560%2C315&ssl=1",560,315,true],"medium_large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=768%2C432&ssl=1",768,432,true],"large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=1024%2C576&ssl=1",1024,576,true],"1536x1536":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=1200%2C675&ssl=1",1200,675,true],"2048x2048":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-portrait-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=900%2C675&ssl=1",900,675,true],"newspack-article-block-square-large":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=1200%2C675&ssl=1",1200,675,true],"newspack-article-block-landscape-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=800%2C600&ssl=1",800,600,true],"newspack-article-block-portrait-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=600%2C675&ssl=1",600,675,true],"newspack-article-block-square-medium":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=800%2C675&ssl=1",800,675,true],"newspack-article-block-landscape-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=600%2C450&ssl=1",600,450,true],"newspack-article-block-portrait-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=450%2C600&ssl=1",450,600,true],"newspack-article-block-square-intermediate":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=600%2C600&ssl=1",600,600,true],"newspack-article-block-landscape-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=400%2C300&ssl=1",400,300,true],"newspack-article-block-portrait-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=300%2C400&ssl=1",300,400,true],"newspack-article-block-square-small":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=400%2C400&ssl=1",400,400,true],"newspack-article-block-landscape-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=200%2C150&ssl=1",200,150,true],"newspack-article-block-portrait-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=150%2C200&ssl=1",150,200,true],"newspack-article-block-square-tiny":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?resize=200%2C200&ssl=1",200,200,true],"newspack-article-block-uncropped":["https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=1200%2C675&ssl=1",1200,675,true]},"uagb_author_info":{"display_name":"Shiho Tatsumi","author_link":"https:\/\/support.questetra.com\/en\/author\/tatsumi48c607ec82\/"},"uagb_comment_info":1,"uagb_excerpt":"This item generates a PDF file from HTML.","jetpack_sharing_enabled":true,"jetpack_shortlink":"https:\/\/wp.me\/p9DiIh-CaB","jetpack-related-posts":[{"id":76467,"url":"https:\/\/support.questetra.com\/en\/bpmn-icons\/service-task-pdf-generation\/","url_meta":{"origin":146729,"position":0},"title":"Generate PDF File","author":"Hirotaka NISHI","date":"2021-09-28","format":false,"excerpt":"Inserts business data into a Base PDF form and automatically generate a new PDF file. Although Adobe Acrobat etc. are needed for the preparation of a Base PDF, it is also possible to download a Base PDF with selecting fields from the setting screen, unless you do not care about\u2026","rel":"","context":"In &quot;BPMN\u30a2\u30a4\u30b3\u30f3&quot;","block_context":{"text":"BPMN\u30a2\u30a4\u30b3\u30f3","link":"https:\/\/support.questetra.com\/ja\/category\/bpmn-icons\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/bpmn-icon-service-task-generate-pdf-2024.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/bpmn-icon-service-task-generate-pdf-2024.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/bpmn-icon-service-task-generate-pdf-2024.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/bpmn-icon-service-task-generate-pdf-2024.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/09\/bpmn-icon-service-task-generate-pdf-2024.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":76721,"url":"https:\/\/support.questetra.com\/en\/templates\/postal-matter-sending-process-20141215\/","url_meta":{"origin":146729,"position":1},"title":"Postal Mailing Process","author":"Hirotaka NISHI","date":"2022-07-20","format":false,"excerpt":"Accepts internal postal matter requests and assists for sending. Generates \"Cover sheet PDF\" automatically based on the information entered in the Step of [1. Addressee Info + Sending Materials]. General Affair staff prints out the cover sheet and encloses it and sends. After completing sending, a notification email will be\u2026","rel":"","context":"In &quot;Workflow Apps&quot;","block_context":{"text":"Workflow Apps","link":"https:\/\/support.questetra.com\/en\/category\/templates\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/05\/eye-catch-postal-matter-sending-process-20141215-220-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/05\/eye-catch-postal-matter-sending-process-20141215-220-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/05\/eye-catch-postal-matter-sending-process-20141215-220-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/05\/eye-catch-postal-matter-sending-process-20141215-220-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/05\/eye-catch-postal-matter-sending-process-20141215-220-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":79916,"url":"https:\/\/support.questetra.com\/en\/templates\/approval-request-flow-20160222\/","url_meta":{"origin":146729,"position":2},"title":"Approval Request Flow","author":"Hirotaka NISHI","date":"2021-03-11","format":false,"excerpt":"Records Processes beginning from the request for approval to the final approval. A director with approval authority can make a record of approval by simply processing the Step of [2x. Request from the Director] without going through the Steps of Submit and Approve. However, even the proposal was from a\u2026","rel":"","context":"In &quot;Workflow Apps&quot;","block_context":{"text":"Workflow Apps","link":"https:\/\/support.questetra.com\/en\/category\/templates\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/03\/eye-catch-approval-request-flow-20160222-220-14.2-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/03\/eye-catch-approval-request-flow-20160222-220-14.2-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/03\/eye-catch-approval-request-flow-20160222-220-14.2-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/03\/eye-catch-approval-request-flow-20160222-220-14.2-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2021\/03\/eye-catch-approval-request-flow-20160222-220-14.2-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":83104,"url":"https:\/\/support.questetra.com\/en\/system-settings\/app-shared-add-on\/","url_meta":{"origin":146729,"position":3},"title":"System Settings &#8211; App-shared Add-on","author":"Peter Glover","date":"2020-03-11","format":false,"excerpt":"Uploaded data can be stored and then referred to by multiple Apps.","rel":"","context":"In &quot;System Settings&quot;","block_context":{"text":"System Settings","link":"https:\/\/support.questetra.com\/en\/category\/system-settings\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/12\/Gear_upload-1.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/12\/Gear_upload-1.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/12\/Gear_upload-1.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/12\/Gear_upload-1.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/12\/Gear_upload-1.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":75409,"url":"https:\/\/support.questetra.com\/en\/templates\/estimate-creation-flow-20170130\/","url_meta":{"origin":146729,"position":4},"title":"Estimate Creation Flow","author":"Hirotaka NISHI","date":"2022-07-06","format":false,"excerpt":"Generates a quotation PDF to be approved by the superior. A quotation PDF is automatically generated after the submittee, details and total amount are entered at the Task of \"Drafting Quotation\". After the approval of the superior, the status of the Issue is recorded at the Task of [3. Submit\u2026","rel":"","context":"In &quot;Workflow Apps&quot;","block_context":{"text":"Workflow Apps","link":"https:\/\/support.questetra.com\/en\/category\/templates\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-estimate-creation-flow-20170130-209-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-estimate-creation-flow-20170130-209-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-estimate-creation-flow-20170130-209-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-estimate-creation-flow-20170130-209-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-estimate-creation-flow-20170130-209-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]},{"id":75346,"url":"https:\/\/support.questetra.com\/en\/templates\/online-estimate-storage-flow-20161011\/","url_meta":{"origin":146729,"position":5},"title":"Online Estimate Storage Flow","author":"Hirotaka NISHI","date":"2022-12-21","format":false,"excerpt":"Stores quotation PDF automatically to share. A quotation PDF is automatically generated after the submittee, details and total amount are entered at the Task of \"Drafting Quotation\". After the quotation is submitted, the quotation which succeeded in the contract is automatically uploaded to the Dropbox folder.","rel":"","context":"In &quot;Workflow Apps&quot;","block_context":{"text":"Workflow Apps","link":"https:\/\/support.questetra.com\/en\/category\/templates\/"},"img":{"alt_text":"","src":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-online-estimate-storage-flow-20161011-218-en.png?fit=1200%2C675&ssl=1&resize=350%2C200","width":350,"height":200,"srcset":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-online-estimate-storage-flow-20161011-218-en.png?fit=1200%2C675&ssl=1&resize=350%2C200 1x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-online-estimate-storage-flow-20161011-218-en.png?fit=1200%2C675&ssl=1&resize=525%2C300 1.5x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-online-estimate-storage-flow-20161011-218-en.png?fit=1200%2C675&ssl=1&resize=700%2C400 2x, https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2019\/03\/eye-catch-online-estimate-storage-flow-20161011-218-en.png?fit=1200%2C675&ssl=1&resize=1050%2C600 3x"},"classes":[]}],"jetpack_featured_media_url":"https:\/\/i0.wp.com\/support.questetra.com\/wp-content\/uploads\/2023\/07\/bpmn-icon-service-task-docraptor1.png?fit=1200%2C675&ssl=1","_links":{"self":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/146729","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/users\/17"}],"replies":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/comments?post=146729"}],"version-history":[{"count":16,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/146729\/revisions"}],"predecessor-version":[{"id":191578,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/posts\/146729\/revisions\/191578"}],"wp:featuredmedia":[{"embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media\/148993"}],"wp:attachment":[{"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/media?parent=146729"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/categories?post=146729"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/tags?post=146729"},{"taxonomy":"faq_section","embeddable":true,"href":"https:\/\/support.questetra.com\/en\/wp-json\/wp\/v2\/faq_section?post=146729"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}