---
title: "Get a quote by ID"
method: GET
path: "/v1/quotes/{id}"
tags: ["Quotes"]
---

# Get a quote by ID

`GET /v1/quotes/{id}`

## Path parameters

- `id` string, required

## Headers

- `X-API-Key` string

## Response `200`

Quote retrieved successfully

- QuoteResponseDto
  - `id` string — Quote ID (only present for held quotes)
  - `sourceAmount` MoneyOutputDto, required
    - `currency` string, required — Currency code
    - `exponent` number, required — Number of decimal places for this currency (e.g., 2 for USD, 6 for USDC)
    - `value` string, required — Amount in smallest unit as a string
    - `displayValue` string, required — Human-readable decimal value
  - `destinationAmount` MoneyOutputDto, required
    - `currency` string, required — Currency code
    - `exponent` number, required — Number of decimal places for this currency (e.g., 2 for USD, 6 for USDC)
    - `value` string, required — Amount in smallest unit as a string
    - `displayValue` string, required — Human-readable decimal value
  - `exchangeRate` string, required — Exchange rate (inclusive of all fees)
  - `infiniteFee` FeeBreakdownDto, required
    - `fixed` number, nullable, required — Fixed fee amount
    - `variable` number, nullable, required — Variable fee rate
  - `developerFee` DeveloperFeeDto
    - `fixed` number, nullable, required — Fixed fee amount
    - `variable` number, nullable, required — Variable fee rate
  - `sourceRail` string — Source payment rail
  - `destinationRail` string — Destination payment rail
  - `expiresAt` string, date-time — Quote expiration timestamp (only present for held quotes)
  - `createdAt` string, date-time, required — Quote creation timestamp
  - `lockable` boolean, required — Whether the exchange rate can be locked for 24 hours
  - `route` RouteInfoDto
    - `supported` boolean, required — Whether this route is supported
    - `flow` string — Transfer flow type
    - `summary` string — Human-readable route summary
    - `totalFeeBps` number — Total fee in basis points
    - `estimate` RouteEstimateDto
      - `estimatedReceiveAt` string, date-time, required — Estimated time when funds will be received
      - `estimatedMinutes` number, required — Estimated duration in minutes
      - `nextCutoff` string, date-time — Next wire cutoff time (if applicable)
      - `cutoffTimezone` string — Timezone for the cutoff time
    - `minimumAmount` MoneyOutputDto
      - `currency` string, required — Currency code
      - `exponent` number, required — Number of decimal places for this currency (e.g., 2 for USD, 6 for USDC)
      - `value` string, required — Amount in smallest unit as a string
      - `displayValue` string, required — Human-readable decimal value
    - `legs` RouteLegDto[] — Individual legs of the transfer
      - `type` string, required — Type of leg
      - `inputCurrency` string, required — Input currency for this leg
      - `outputCurrency` string, required — Output currency for this leg
      - `inputRail` string, required — Input rail for this leg
      - `outputRail` string, required — Output rail for this leg
      - `feeBps` number, required — Fee in basis points for this leg
      - `settlementType` string, required — Settlement type for this leg

## Other responses

- `401` — Unauthorized - Invalid or missing authentication credentials

---

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