---
title: "Get AMM Instructions"
method: GET
path: "/v2/amm-instructions"
tags: ["amm-instructions"]
---

# Get AMM Instructions

`GET /v2/amm-instructions`

## Request

- Base URL: `https://api.exchange.bullish.com/trading-api`
- URL: `https://api.exchange.bullish.com/trading-api/v2/amm-instructions`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/bullish/apis/bullish-trading-api/docs/v2/amm-instructions/get.ts> (a function with typed inputs; its response is checked against the schema)

Gets a list of AMM instructions based on applied filters.
- requires [bearer token](/rest/authentication#add-authenticated-request-header) in authorization header
- [supports pagination](/rest/general/pagination)

**Ratelimited:** `True`

## Query parameters

- `symbol` string: market symbol. E.g. `BTCUSDC`
- `status` 'OPEN' | 'CLOSED'
- `tradingAccountId` string, required: unique trading account ID

## Response `200`

OK

- AMMInstruction[]
  - `liquidityId` string, required
  - `instructionId` string, required
  - `symbol` string, required: market symbol. E.g. `BTCUSDC`
  - `baseFee` string, required: see [asset value](/rest/general/price-quantity-precision) format
  - `quoteFee` string, required: see [asset value](/rest/general/price-quantity-precision) format
  - `status` string, required: order status can have the following string values `"OPEN"`, `"CLOSED"`, `"CANCELLED"`, `"REJECTED"`
  - `statusReason` string, required: status reason, describes why the order is in a specific state
  - `statusReasonCode` integer, required: status reason code, see [details](/rest/general/error-rejection-codes)
  - `createdAtDatetime` string, date-time: ISO 8601 with millisecond as string
  - `createdAtTimestamp` string, string, required: unsigned 64 bit integer value which is the number of milliseconds since EPOCH expressed as string
  - `24HrApy` string: APY of the last 24 Hours, only for AMM instructions with `OPEN` status
  - `24HrYieldEarn` string: amount of money earned in USD from the last 24 Hours, only for AMM instructions with `OPEN` status
  - `apy` string, required: yield generated from the time AMM instruction was created, in annualised percentage
  - `baseCurrentQuantity` string, required: amount of base asset this AMM instruction currently holds, only for AMM instruction with `OPEN` status
  - `baseInvestQuantity` string, required: initial base investment
  - `basePrice` string, required: current price of base asset
  - `baseWithdrawQuantity` string, required: amount of base asset returned when AMM instruction is terminated
  - `currentValue` string, required: value of assets (base and quote) in USD amount that this AMM instruction currently holds
  - `dislocationEnabled` boolean, required: dislocation enabled/disabled
  - `feeTierId` string, required: unique fee tier ID, see [Get Market By Symbol](/rest/api/get-market-by-symbol)
  - `finalValue` string: value of assets (base and quote) in USD amount when AMM instruction was terminated, only for AMM instruction with `CLOSED` status
  - `impermanentLoss` string, required: impermanent loss
  - `initialBasePrice` string, required: price of base asset when AMM instruction was created
  - `initialQuotePrice` string, required: price of quote asset when AMM instruction was created
  - `initialValue` string, required: value of assets (base and quote) in USD amount when AMM instruction was created
  - `lowerBound` string, required: lower bound of price range, in quote currency
  - `price` string, required: current price of AMM, see [Get Tick By Symbol](/rest/api/get-market-tick)
  - `quoteCurrentQuantity` string: amount of quote asset this AMM instruction currently holds, only for AMM instruction with `OPEN` status
  - `quoteInvestQuantity` string, required: initial quote investment
  - `quotePrice` string, required: current price of quote asset
  - `quoteWithdrawQuantity` string, required: amount of quote asset returned when AMM instruction is terminated
  - `lastDistributedPrice` string, nullable: (Perpetual market only) The price used at the time of settlement for AMM Instructions that can be used to determine mtmPnl and the actual Pnl
  - `requestId` string, required
  - `staticSpreadFee` string, required: static spread fee, see [Get Market By Symbol](/rest/api/get-market-by-symbol)
  - `updatedAtDatetime` string, date-time: ISO 8601 with millisecond as string
  - `updatedAtTimestamp` string, string, required: unsigned 64 bit integer value which is the number of milliseconds since EPOCH expressed as string
  - `upperBound` string, required: upper bound of price range, in quote currency
  - `yieldEarn` string, required: amount of money earned in USD

## Other responses

- `401`: Not Authenticated
- `403`: Access Forbidden
- `429`: Too Many Requests
- `500`: Internal Server Error

---

[API](https://skmtc.dev/bullish/apis/bullish-trading-api.md) - [All operations](https://skmtc.dev/bullish/apis/bullish-trading-api/llms.txt) - [OpenAPI document](https://skmtc.dev/bullish/apis/bullish-trading-api/revisions/df5d69ccedcf?raw)
