---
title: "Convert the given AsyncAPI/OpenAPI document to AsyncAPI document with the specified version."
method: POST
path: "/convert"
tags: ["convert", "converter"]
---

# Convert the given AsyncAPI/OpenAPI document to AsyncAPI document with the specified version.

`POST /convert`

## Request body

- ConvertRequest
  - `source` union, required — The source document to be converted.
    - union — AsyncAPI document in JSON or YAML.
      - string
      - 200Json — unresolved $ref
      - 210Json — unresolved $ref
      - 220Json — unresolved $ref
      - 230Json — unresolved $ref
      - 240Json — unresolved $ref
      - 250Json — unresolved $ref
      - 260Json — unresolved $ref
      - 300Json — unresolved $ref
      - 310Json — unresolved $ref
    - string — OpenAPI document in JSON or YAML.
  - `target-version` '2.0.0' | '2.1.0' | '2.2.0' | '2.3.0' | '2.4.0' | '2.5.0' | '2.6.0' | '3.0.0' | '3.1.0' | 'latest' — Valid specification versions for the AsyncAPI document.
  - `perspective` 'server' | 'client' — The perspective of the conversion, e.g. "server", "client".
  - `format` 'asyncapi' | 'openapi', required — The format of the source document to be converted.

## Response `200`

AsyncAPI document successfully converted.

- ConvertResponse
  - `converted` union — AsyncAPI document in JSON or YAML.
    - string
    - 200Json — unresolved $ref
    - 210Json — unresolved $ref
    - 220Json — unresolved $ref
    - 230Json — unresolved $ref
    - 240Json — unresolved $ref
    - 250Json — unresolved $ref
    - 260Json — unresolved $ref
    - 300Json — unresolved $ref
    - 310Json — unresolved $ref

## Other responses

- `400` — Failed to convert due to invalid AsyncAPI document.
- `422` — Failed to convert the given document due to invalid parameters.
- `default` — Unexpected problem.

## Changes

- **2026-07-17** `4e4c84b02d25` — 3 breaking, 2 info
  - removed the enum value `postman-collection` of the request property `format`
  - removed `#/components/schemas/PostmanCollectionDocument` from the `source` request property `oneOf` list
  - added `#/components/schemas/3.1.0.json` to the `converted` response property `oneOf` list for the response status `200`
  - added the new `3.1.0` enum value to the request property `target-version`
  - …1 more
- **2025-08-19** `077e00451e07` — 2 breaking, 3 info
  - removed the enum value `3.1.0` of the request property `target-version`
  - removed `#/components/schemas/3.1.0.json` from the `source/oneOf[#/components/schemas/AsyncAPIDocument]/` request property `oneOf` list
  - added the new `postman-collection` enum value to the request property `format`
  - added `#/components/schemas/PostmanCollectionDocument` to the `source` request property `oneOf` list
  - …1 more

[Change history](https://skmtc.dev/asyncapi/apis/asyncapi-server-api/changes/convert/post.md)

---

[API](https://skmtc.dev/asyncapi/apis/asyncapi-server-api.md) · [All operations](https://skmtc.dev/asyncapi/apis/asyncapi-server-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/asyncapi/asyncapi-server-api/revisions/4e4c84b02d25/schema)
