---
title: "PDF-to-Office API"
canonical_url: "https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-to-office-api/"
md_url: "https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-to-office-api.md"
last_updated: "2026-07-06T00:00:00.000Z"
description: "Convert PDF files to editable Word, Excel, and PowerPoint documents using Nutrient DWS Processor API. Export PDFs as DOCX, XLSX, or PPTX files."
---

# PDF-to-Office API

Use the PDF-to-Office API to convert PDF documents to editable Office files. Nutrient DWS Processor API supports these output formats:

- DOCX for Microsoft Word

- XLSX for Microsoft Excel

- PPTX for Microsoft PowerPoint

The [`/build` endpoint](https://www.nutrient.io/api/reference/public/#tag/Document-Editing/operation/build-document) handles PDF-to-Office conversion. Add the source PDF as a `parts` item, and set `output.type` to the Office format you want.

For signup, pricing, and task-level examples, refer to the [PDF-to-Office API task page](https://www.nutrient.io/api/pdf-to-office-api/).

## Convert a PDF to Word

The following example converts `document.pdf` to `result.docx`:

### Shell

### Shell (Windows)

### Java

### C#

### JavaScript

### Python

### PHP

### HTTP

## Convert a PDF to Excel

Set `output.type` to `xlsx` to convert a PDF to an Excel workbook. Use this instructions object:

```json

{
  "parts": [
    {
      "file": "document"
    }
  ],
  "output": {
    "type": "xlsx"
  }
}

```

### Shell

### Shell (Windows)

### Java

### C#

### JavaScript

### Python

### PHP

### HTTP

## Convert a PDF to PowerPoint

Set `output.type` to `pptx` to convert a PDF to a PowerPoint presentation. Use this instructions object:

```json

{
  "parts": [
    {
      "file": "document"
    }
  ],
  "output": {
    "type": "pptx"
  }
}

```

### Shell

### Shell (Windows)

### Java

### C#

### JavaScript

### Python

### PHP

### HTTP

## Convert a PDF from a URL

For remotely hosted source files, send a JSON request and pass the source URL in `parts[].file.url`. Use this instructions object:

```json

{
  "parts": [
    {
      "file": {
        "url": "https://example.com/document.pdf"
      }
    }
  ],
  "output": {
    "type": "docx"
  }
}

```

### Shell

Run this request to convert a PDF from a URL:

```bash

curl -X POST https://api.nutrient.io/build \
  -H "Authorization: Bearer $NUTRIENT_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "parts": [
      {
        "file": {
          "url": "https://example.com/document.pdf"
        }
      }
    ],
    "output": {
      "type": "docx"
    }
  }' \
  -o result.docx

```

## Convert selected PDF pages

Use `parts[].pages` to convert only a page range from the source PDF. Page indexes are zero-based, and negative values count from the end of the document.

The following example converts only the first three pages to Word:

```json

{
  "parts": [
    {
      "file": "document",
      "pages": {
        "start": 0,
        "end": 2
      }
    }
  ],
  "output": {
    "type": "docx"
  }
}

```

The `end` value is inclusive, so `{ "start": 0, "end": 2 }` includes pages zero, one, and two.

## Convert password-protected PDFs

If the source PDF is password-protected, include the password on the part. Use this instructions object:

```json

{
  "parts": [
    {
      "file": "protected_document",
      "password": "document-password"
    }
  ],
  "output": {
    "type": "docx"
  }
}

```

Nutrient DWS Processor API uses the password only to open the source document for processing.

## Choose an output format

Choose the Office output format that matches your downstream workflow.

| Output type | File extension | Use when                                                                                    |
| ----------- | -------------- | ------------------------------------------------------------------------------------------- |
| `docx`      | `.docx`        | You need editable text, paragraphs, headings, or general document layout in Microsoft Word. |
| `xlsx`      | `.xlsx`        | You need spreadsheet-style output, tables, or tabular content in Microsoft Excel.           |
| `pptx`      | `.pptx`        | You need slide-based output in Microsoft PowerPoint.                                        |

PDF-to-Office conversion reconstructs editable Office content from a fixed-layout PDF. Complex layouts, scanned pages, or image-only PDFs may require OCR or manual review, depending on your quality requirements.

## Combine PDF-to-Office with other processing

The `/build` endpoint can assemble or prepare a PDF before it converts the file to Office. For example, you can merge two PDF files and convert the merged output to DOCX.

Use this instructions object to merge two PDFs and convert them to Word:

```json

{
  "parts": [
    {
      "file": "cover"
    },
    {
      "file": "body"
    }
  ],
  "output": {
    "type": "docx"
  }
}

```

You can also extract selected pages before conversion with `parts[].pages`.

## Reference

A PDF-to-Office request uses the Build API `output` object with an Office output type:

```typescript

type OfficeOutput = {
  // Office output file type.
  type: "docx" | "xlsx" | "pptx",
};

type FilePart = {
  // Multipart field name, or a remote URL object.
  file: string | { url: string },

  // Optional password for encrypted input PDFs.
  password?: string,

  // Optional page range to convert.
  pages?: {
    start?: number,
    end?: number,
  },
};

type BuildInstructions = {
  parts: FilePart[],
  output: OfficeOutput,
};

```

## Related API reference operations

- Refer to the [build document endpoint](https://www.nutrient.io/api/reference/public/#tag/Document-Editing/operation/build-document) API reference to convert PDFs to DOCX, XLSX, or PPTX and combine conversion with page selection or document assembly.

## Related guides

- Refer to the [Office-to-PDF API](https://www.nutrient.io/guides/dws-processor/tools-and-api/office-to-pdf-api.md) guide.

- Refer to the [PDF-to-image API](https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-to-image-api.md) guide.

- Refer to the [PDF-to-HTML API](https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-to-html-api.md) guide.

- Refer to the [PDF-to-Markdown API](https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-to-markdown-api.md) guide.

- Refer to the [PDF OCR API](https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-ocr-api.md) guide.

- Refer to the [PDF merge API](https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-merge-api.md) guide.

- Refer to the [PDF split API](https://www.nutrient.io/guides/dws-processor/tools-and-api/pdf-split-api.md) guide.

- Refer to the [tools and APIs](https://www.nutrient.io/guides/dws-processor/tools-and-api.md) guide.
---

## Related pages

- [Image-to-PDF API](/guides/dws-processor/tools-and-api/image-to-pdf-api.md)
- [Analyze Build API](/guides/dws-processor/tools-and-api/analyze-build-api.md)
- [Tools and APIs](/guides/dws-processor/tools-and-api.md)
- [Document-to-image API](/guides/dws-processor/tools-and-api/document-to-image-api.md)
- [Import Instant JSON API](/guides/dws-processor/tools-and-api/import-instant-json-api.md)
- [DOCX templating API](/guides/dws-processor/tools-and-api/docx-templating-api.md)
- [Import XFDF annotations API](/guides/dws-processor/tools-and-api/import-xfdf-annotations-api.md)
- [Office-to-PDF API](/guides/dws-processor/tools-and-api/office-to-pdf-api.md)
- [Markdown-to-PDF API](/guides/dws-processor/tools-and-api/markdown-to-pdf-api.md)
- [PDF digital signature API](/guides/dws-processor/tools-and-api/pdf-digital-signature-api.md)
- [PDF merge API](/guides/dws-processor/tools-and-api/pdf-merge-api.md)
- [PDF form filling API](/guides/dws-processor/tools-and-api/pdf-form-filling-api.md)
- [PDF flatten API](/guides/dws-processor/tools-and-api/pdf-flatten-api.md)
- [PDF OCR API](/guides/dws-processor/tools-and-api/pdf-ocr-api.md)
- [PDF generator API](/guides/dws-processor/tools-and-api/pdf-generator-api.md)
- [PDF linearization API](/guides/dws-processor/tools-and-api/pdf-linearization-api.md)
- [PDF rotate API](/guides/dws-processor/tools-and-api/pdf-rotate-api.md)
- [PDF optimization API](/guides/dws-processor/tools-and-api/pdf-optimization-api.md)
- [PDF security API](/guides/dws-processor/tools-and-api/pdf-security-api.md)
- [PDF page manipulation API](/guides/dws-processor/tools-and-api/pdf-page-manipulation-api.md)
- [PDF split API](/guides/dws-processor/tools-and-api/pdf-split-api.md)
- [PDF-to-HTML API](/guides/dws-processor/tools-and-api/pdf-to-html-api.md)
- [PDF-to-image API](/guides/dws-processor/tools-and-api/pdf-to-image-api.md)
- [PDF-to-Markdown API](/guides/dws-processor/tools-and-api/pdf-to-markdown-api.md)
- [PDF-to-PDF/A API](/guides/dws-processor/tools-and-api/pdf-to-pdfa-api.md)
- [PDF watermark API](/guides/dws-processor/tools-and-api/pdf-watermark-api.md)
- [Redaction API](/guides/dws-processor/tools-and-api/redaction-api.md)
- [PDF/UA auto-tagging API](/guides/dws-processor/tools-and-api/pdfua-api.md)

