Convert a Word document to PDF, reporting every bridge approximation as a loss.
Use describe("docx.convert.pdf") when your code needs the complete live JSON Schemas.
At a glance
| Property | Value |
|---|---|
| Package | @runstamp/docx |
| Domain / verb | docx / convert |
| Customer jobs | convert, transform |
| Deterministic | Yes |
| Side effects | network |
Availability
| Local | SDK | CLI | MCP | Managed API |
|---|---|---|---|---|
| public ga | public ga | public ga | public ga | public ga |
Managed API route: POST /api/v2/operations/docx/convert/pdf. Managed execution requires a free-trial workspace or an active Platform or Enterprise workspace, and an environment-bound API key.
Input and result
| Schema | Required fields | Optional fields |
|---|---|---|
| Input | pages | type, metadata, accessible, pageSize, orientation, margins, theme, template, tableOfContents, header, footer, differentFirstPage, firstPageHeader, firstPageFooter, oddPageHeader, oddPageFooter, evenPageHeader, evenPageFooter, watermark, revisionInfo, options |
| Options | none | deterministic, deterministicSeed, timeoutMs, locale, lossPolicy, limits, to, render |
| Result value | bytes, mediaType, extension, byteLength, hash | none |
Every success also carries losses, diagnostics, and a hash-bound receipt.
Defaults, limits, and format constraints
Defaults
| Path | Default |
|---|---|
$.deterministic | default=true |
$.lossPolicy | default="collect" |
$.to | default="pdf" |
Formats and profiles
| Path | Constraint |
|---|---|
$.header.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.footer.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.firstPageHeader.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.firstPageFooter.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.oddPageHeader.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.oddPageFooter.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.evenPageHeader.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.evenPageFooter.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.pages[].header.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.pages[].footer.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.pages[].headerFooter.header.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
$.pages[].headerFooter.footer.pageNumberFormat | oneOf="decimal","roman","romanUpper","letter","letterUpper" |
Other limits
| Path | Constraint |
|---|---|
$.tableOfContents.anyOf[1].maxLevel | minimum=1maximum=6 |
$.header.style.opacity | minimum=0maximum=1 |
$.header.style.comment.id | minimum=0maximum=9007199254740991 |
$.header.style.comment.parentId | minimum=0maximum=9007199254740991 |
$.header.style.comment.date.anyOf[0] | pattern (see exact schema) |
$.footer.style.opacity | minimum=0maximum=1 |
$.footer.style.comment.id | minimum=0maximum=9007199254740991 |
$.footer.style.comment.parentId | minimum=0maximum=9007199254740991 |
$.footer.style.comment.date.anyOf[0] | pattern (see exact schema) |
$.firstPageHeader.style.opacity | minimum=0maximum=1 |
$.firstPageHeader.style.comment.id | minimum=0maximum=9007199254740991 |
$.firstPageHeader.style.comment.parentId | minimum=0maximum=9007199254740991 |
$.firstPageHeader.style.comment.date.anyOf[0] | pattern (see exact schema) |
$.firstPageFooter.style.opacity | minimum=0maximum=1 |
$.firstPageFooter.style.comment.id | minimum=0maximum=9007199254740991 |
$.firstPageFooter.style.comment.parentId | minimum=0maximum=9007199254740991 |
$.firstPageFooter.style.comment.date.anyOf[0] | pattern (see exact schema) |
$.oddPageHeader.style.opacity | minimum=0maximum=1 |
Showing 32 of 108 constraints. Use describe() or the machine-readable reference for the complete schema.
Invoke
const input = await fetch("https://runstamp.com/demo-evidence/operation-evidence/docx/docx.convert.pdf/input.json").then((response) => response.json());
const result = await runstamp.run("docx.convert.pdf", input);
if (!result.ok) throw new Error(`${result.error.code}: ${result.error.remediation}`);
console.log(result.value, result.losses, result.diagnostics, result.receipt);curl -fsS https://runstamp.com/demo-evidence/operation-evidence/docx/docx.convert.pdf/input.json -o input.json
npx -p @runstamp/sdk runstamp ops invoke docx.convert.pdf --input input.json{
"tool": "runstamp_invoke_operation",
"arguments": {
"operation": "docx.convert.pdf",
"input": "<JSON from https://runstamp.com/demo-evidence/operation-evidence/docx/docx.convert.pdf/input.json>",
"execution_mode": "local"
}
}Errors and losses
Declared errors (8)
common/SCHEMA_REJECTEDcommon/CONTRACT_VIOLATIONcommon/OPERATION_CANCELLEDcommon/OPERATION_TIMEOUTcommon/RESOURCE_LIMIT_EXCEEDEDdocx/DOC_INVALIDdocx/LOSS_POLICY_VIOLATEDcommon/UNSUPPORTED_FEATURE
Declared losses (10)
docx/DIFF_PART_DROPPEDdocx/DIFF_PART_CHANGEDdocx/DIFF_SECTION_CHANGEDdocx/DIFF_BODY_FEATURE_DROPPEDdocx/PLACEHOLDER_UNFILLEDdocx/PLACEHOLDER_SPLITdocx/PDF_BRIDGE_APPROXIMATEDdocx/HTML_CONSTRUCT_UNSUPPORTEDdocx/SERIALIZER_CONDITIONdocx/UNCLASSIFIED_CONDITION
SDK AbortSignal, CLI exit 130, and MCP cancellation return the typed common/OPERATION_CANCELLED failure envelope.
Verified example and exact contract
- Fixture:
icp-workflow(docx-analysis-qbr-saas-q2-fy26.json). - Example input — SHA-256
5106ccd9c5efe61d04607ab64c401d4becf34acceba182893c39f994f0e58a50. - Example result — SHA-256
1ed267be9d45d22e1a284fbd41d00863972aa5edf0d8ed34a0dab68f1a81b511. - Verified result SHA-256:
ec2a9170dcdaa56831c5724260c1115c2f5854c6bca9cfc66268bf0c56995300. - Qualification lane:
10-pptx-docx.
Contract fingerprints
- Descriptor:
d60ab6dd0695342dab0f94bd4f621149bd54688782ca2e6ca4e322b447ccdae7. - Input schema:
8ccf9718499709f4a9786f9a1bdc0ac680b2ab408ad773ba576861a503845532. - Options schema:
4e32657872416924bd982e597d310e22fa409dcaaa87d2f876c546dc6cbab4de. - Result value schema:
e7e0bc52bf866264c04c0cc2a2d2d788751a82a731f6a8bc31b2efb72d06d08c.
The machine-readable operation reference publishes the complete schemas, qualification results, and evidence bindings for every operation.