---
title: "Get Instant Quote"
method: POST
path: "/v1/instant/quote"
tags: ["Instant"]
---

# Get Instant Quote

`POST /v1/instant/quote`

## Request

- Base URL: `https://api.gemini.com`
- URL: `https://api.gemini.com/v1/instant/quote`
- Auth: API key in header `X-GEMINI-APIKEY` and API key in header `X-GEMINI-SIGNATURE` and API key in header `X-GEMINI-PAYLOAD`

### Roles
The API key you use to access this endpoint must have the Trader role assigned. See [Roles](/roles#roles) for more information.

The OAuth scope must have `orders:create` assigned to access this endpoint. See [OAuth Scopes](/authentication/oauth#oauth-scopes) for more information.

## Headers

- `X-GEMINI-APIKEY` string, required
- `X-GEMINI-SIGNATURE` string, required
- `X-GEMINI-PAYLOAD` string, required
- `Content-Type` string
- `Content-Length` string
- `Cache-Control` string

## Request body

- object
  - `request` string, required: The literal string "/v1/instant/quote/"
  - `side` 'buy' | 'sell', required: "buy" or "sell"
  - `symbol` string, required: The [symbol](/market-data/symbols-and-minimums) for the order. Instant includes order books denominated in a [supported currency](https://support.gemini.com/hc/en-us/articles/360000032663-Does-Gemini-support-fiat-currencies-other-than-USD), as `CCY2`
  - `nonce` union, required: The nonce, as described in [Private API Invocation](/authentication/api-key#private-api-invocation)
    - union: timestamp
      - string: Gemini strongly recommends using milliseconds instead of seconds for timestamps. | Timestamp format | Example | Supported request type | |-----------------------|-----------------------|------------------------| | string (seconds) | `1495127793` | `POST` only | | string (milliseconds) | `1495127793000` | `POST` only |
      - integer: Gemini strongly recommends using milliseconds instead of seconds for timestamps. | Timestamp format | Example | Supported request type | |-----------------------------|---------------------------|------------------------| | whole number (seconds) | `1495127793` | `GET`, `POST` | | whole number (milliseconds) | `1495127793000` | `GET`, `POST` |
    - integer
  - `totalSpend` string, required: Quoted decimal amount to spend on the order. Must comply with [stated minimums](/market-data/symbols-and-minimums). The `totalSpend` will be `CCY2` in `buy` orders and `CCY1` in `sell` orders.
  - `paymentMethodUuid` string: uuid provided as `bankId` in [Payment Methods API](/fund-management#list-payment-methods)
  - `paymentMethodType` string: Method used to specify payment method in `buy` order. Can be "AccountBalancePaymentType" to use funds available in USD balance held on Gemini, "BankAccountType" to initial an ACH from a linked bank account, or "CardAccountType" to use a linked debit card to fund the purchase.
  - `account` string: Required for Master API keys as described in [Private API Invocation](/authentication/api-key#private-api-invocation). The name of the account within the subaccount group. Specifies the account on which you intend to place the order. Only available for exchange accounts.

## Response `200`

Sample Responses

- InstantQuote
  - `quoteId` integer: Unique ID for the quote. This is used in the execution of the order
  - `maxAgeMs` integer: Number of milliseconds until this quote price expires. Once expired, you will need to request a new quote
  - `pair` string: The symbol passed in the quote request
  - `price` string: The quoted price of the asset. This will not change when attempting execution
  - `priceCurrency` string: The currency in which the order is priced. Matches `CCY2` in the symbol
  - `side` 'buy' | 'sell': Either "buy" or "sell"
  - `quantity` string: The quantity of the asset to be bought or sold
  - `quantityCurrency` string: The currency label for the `quantity` field. Matches `CCY1` in the symbol
  - `fee` string: The fee quantity to be taken for the order upon execution
  - `feeCurrency` string: The currency label for the order
  - `depositFee` string: The deposit fee quantity. Will be applied if a debit card is used for the order. Will return 0 if there is no `depositFee`
  - `depositFeeCurrency` string: Currency in which `depositFee` is taken
  - `totalSpend` string: Total quantity to spend for the order. Will be the sum inclusive of all fees and amount to be traded.
  - `totalSpendCurrency` string: Currency of the `totalSpend` to be spent on the order

## Other responses

- `400`: Bad request - malformed request or invalid parameters
- `401`: Unauthorized - missing or invalid authentication
- `403`: ApiKey fails IP Filtering Check
- `404`: Resource not found
- `429`: Too many requests - you have exceeded the rate limit
- `500`: Internal server error

---

[API](https://skmtc.dev/gemini/apis/rest-api.md) - [All operations](https://skmtc.dev/gemini/apis/rest-api/llms.txt) - [OpenAPI document](https://skmtc.dev/gemini/apis/rest-api/revisions/24979792d748?raw)
