---
title: "Convert ODT files via REST API (Legacy)"
description: "Learn how to handle ODT files (OpenDocument Text) via the legacy REST API for Tiptap conversion."
canonical_url: "https://tiptap.dev/docs/conversion/legacy/odt/rest-api"
---

# Convert ODT files via REST API (Legacy)

Learn how to handle ODT files (OpenDocument Text) via the legacy REST API for Tiptap conversion.

> **Legacy ODT REST API (Deprecated):**
>
> This REST API is deprecated and will be sunset at some point in 2026 with prior communication from the team. For new integrations, use the updated [ODT export REST API](https://tiptap.dev/docs/conversion/export/odt/rest-api.md) and [import REST API](https://tiptap.dev/docs/conversion/import/docx/rest-api.md).

- **1. Activate trial or subscribe**

  Start a [free trial](https://cloud.tiptap.dev/v2?trial=true) or [subscribe to the Start plan](https://cloud.tiptap.dev/v2/billing) in your account.
- **2. Configure Convert app**

  In case you want to integrate the REST API retrieve your App ID and Convert secret from [your dashboard](https://cloud.tiptap.dev/v2/cloud/convert).
- **3. Install from private registry**

  To install the frontend extensions, authenticate to Tiptap's private npm registry by following the [setup guide](https://tiptap.dev/docs/guides/pro-extensions.md).

The ODT document conversion API supports conversion from and to Tiptap's JSON format.

> **Review the postman collection:**
>
> You can also experiment with the Document Conversion API by heading over to our [Postman
> Collection](https://www.postman.com/tiptap-platform/workspace/tiptap-workspace/request/33042171-d272bdec-dba8-48d9-839e-04423fad6ef2).

## Import API endpoint

`POST /import`

The `/import` endpoint enables the conversion of `ODT` files into Tiptap's JSON format. Users can POST documents to this endpoint.

### Example (cURL)

```bash
curl -X POST "https://api.tiptap.dev/v1/convert/import" \
  -H "Authorization: Bearer <your-jwt>" \
  -H "X-App-Id: <your-app-id>" \
  -F "file=@/path/to/document.odt"
```

In this example, the request uploads an ODT file

### Required headers

| Name            | Description                                                                                                                                     |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `Authorization` | The JWT to authenticate the request. Example: `Bearer your-jwt`                                                                                 |
| `X-App-Id`      | The Convert App-ID from the Collaboration settings page: [https://cloud.tiptap.dev/convert-settings](https://cloud.tiptap.dev/convert-settings) |

### Body

| Name                     | Type     | Description                                                                               |
| ------------------------ | -------- | ----------------------------------------------------------------------------------------- |
| `file`                   | `File`   | The file to convert                                                                       |
| `imageUploadCallbackUrl` | `string` | The callback endpoint to upload images that were encountered within the uploaded document |

## Export API endpoint

`POST /export`

The `/export` endpoint converts Tiptap documents back into the `odt` format.

### Required headers

| Name            | Description                                                                                                                                     |
| --------------- | ----------------------------------------------------------------------------------------------------------------------------------------------- |
| `Authorization` | The JWT to authenticate the request. Example: `Bearer your-jwt`                                                                                 |
| `X-App-Id`      | The Convert App-ID from the Collaboration settings page: [https://cloud.tiptap.dev/convert-settings](https://cloud.tiptap.dev/convert-settings) |

### Body

| Name              | Type     | Description                               |
| ----------------- | -------- | ----------------------------------------- |
| `prosemirrorJson` | `Object` | Tiptap/ProseMirror JSON                   |
| `to`              | `string` | The format to convert to, should be `odt` |
