---
title: "Convert Confirm"
method: POST
path: "/api/v4/convert/confirm"
---

# Convert Confirm

`POST /api/v4/convert/confirm`

The endpoint confirms an estimated quote.

An expired quote returns code `20` (`api.converter.quoteExpired`), which is distinct from a quote that could not be found (code `0`). Balance is re-checked at confirm time and can fail with code `37` even when the estimate succeeded, because balance may change within the 10-second quote window.

<Note>
A re-confirmed (already used) quote and a quote that never existed both return code `0` with the `quoteId` field key `frontendServerSide.converter.quoteInvalid`. The response alone does not distinguish "already used" from "never existed".
</Note>

<Note>
Error `message` values may be returned as translation keys (for example `api.converter.quoteExpired`) rather than finalized English strings. Treat the `code` and the field name under `errors` as the stable contract.
</Note>

<Warning>
Rate limit: 10000 requests/10 sec.
</Warning>

## Request body

- object
  - `quoteId` string, required — Quote ID
  - `nonce` integer — Nonce for request
  - `request` string — Request path

## Response `200`

Successful response

- object
  - `finalGive` string — Final amount given
  - `finalReceive` string — Final amount received

## Other responses

- `400` — Inner validation failed
- `422` — Validation failed

---

[API](https://skmtc.net/whitebit/apis/whitebit-private-http-api-v4.md) · [All operations](https://skmtc.net/whitebit/apis/whitebit-private-http-api-v4/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/whitebit/whitebit-private-http-api-v4/versions/76c9def9942f/schema)
