---
title: "Get swap status"
method: GET
path: "/v1/swap/status"
tags: ["Swaps"]
---

# Get swap status

`GET /v1/swap/status`

Look up the current status of a swap by its quote ID. Pass txHash on the first call after broadcasting to bind it to the quote and start tracking. Subsequent calls can omit txHash.

## Query parameters

- `quoteId` string, uuid, required
- `txHash` string

## Headers

- `X-Partner-Code` string

## Response `200`

Swap status

- SwapStatusResponse
  - `quoteId` string, uuid, required
  - `txHash` string
  - `status` 'pending' | 'submitted' | 'confirmed' | 'failed', required
  - `swapperName` string, required
  - `sellAssetId` string, required
  - `buyAssetId` string, required
  - `sellAmountCryptoBaseUnit` string, required
  - `buyAmountAfterFeesCryptoBaseUnit` string, required
  - `partnerAddress` string
  - `affiliateBps` string, required — Total on-chain fee in bps.
  - `partnerBps` string — Partner share in bps.
  - `shapeshiftBps` string, required — ShapeShift platform fee in bps.
  - `registeredAt` number
  - `buyTxHash` string
  - `isAffiliateVerified` boolean

## Other responses

- `400` — Invalid request parameters or txHash required to begin tracking
- `404` — Quote not found or expired
- `409` — Transaction hash mismatch
- `429` — Rate limit exceeded. Includes Retry-After header with seconds until reset.
- `500` — Internal server error
- `503` — Swap service unavailable
- `504` — Swap service timed out

---

[API](https://skmtc.net/shapeshift/apis/shapeshift-public-api.md) · [All operations](https://skmtc.net/shapeshift/apis/shapeshift-public-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/shapeshift/shapeshift-public-api/revisions/6ffb6a8fd74a/schema)
