AMM (Automated Market Making) instructions allow you to deploy liquidity into Bullish’s on-chain AMM pools. Each instruction defines a market, an investment amount in base and quote assets, and a price range (lower and upper bounds) within which the AMM will actively make markets. AMM instructions are managed separately from orders and have their own instruction IDs. For a full conceptual guide, see the AMM Wiki.Documentation Index
Fetch the complete documentation index at: https://mintlify.com/bullish-exchange/api-docs/llms.txt
Use this file to discover all available pages before exploring further.
GET /trading-api/v2/amm-instructions
Returns a paginated list of AMM instructions for the authenticated trading account. Supports pagination.Authentication: Required. Rate limited: Yes.
Query Parameters
ID of the trading account.
Filter by market symbol, e.g.
BTCUSD.Filter by instruction status:
OPEN or CLOSED.Page size. One of:
5, 25, 50, 100. Defaults to 25.Response Fields (array of AMMInstruction objects)
Unique AMM instruction ID.
Deprecated alias for
instructionId.Market symbol. E.g.
BTCUSD.Instruction status:
OPEN or CLOSED.Human-readable status description. E.g.
"Ok".Numeric status reason code.
Lower price bound for the AMM range (in quote currency). E.g.
"0.0013".Upper price bound for the AMM range (in quote currency). E.g.
"14000.0000".Current AMM price. E.g.
"456.7800".Current price of the base asset. E.g.
"345.6700".Current price of the quote asset. E.g.
"1.0000".Initial base asset investment. E.g.
"0.00000008".Initial quote asset investment. E.g.
"0.0009".Current base asset held by this instruction (only for
OPEN instructions). E.g. "0.00000000".Current quote asset held by this instruction (only for
OPEN instructions). E.g. "0.0000".Base asset returned upon termination. E.g.
"0.00000010".Quote asset returned upon termination. E.g.
"0.0011".USD value of invested assets at instruction creation time.
Current USD value of assets held by this instruction.
USD value of assets at termination (only for
CLOSED instructions).Annualised yield percentage since instruction creation. E.g.
"0.0000".APY over the last 24 hours (only for
OPEN instructions). E.g. "2.3319".USD earned in the last 24 hours (only for
OPEN instructions). E.g. "0.00".Total USD earned since creation.
Impermanent loss. E.g.
"0.0000".Base asset price at instruction creation. E.g.
"100.0000".Quote asset price at instruction creation. E.g.
"0.0100".Fee tier identifier applied to this instruction.
Base asset fee earned or charged.
Quote asset fee earned or charged.
Whether dislocation is enabled for this instruction.
Static spread fee applied to the instruction.
(Perpetual markets only) The price used at settlement time. Used for calculating mtmPnl and actual PnL.
Unique request ID assigned by the exchange.
ISO 8601 datetime when the instruction was acknowledged.
Millisecond EPOCH timestamp when the instruction was acknowledged.
ISO 8601 datetime of the most recent update.
Millisecond EPOCH timestamp of the most recent update.
Example Request
Example Response
POST /trading-api/v2/amm-instructions
Creates a new AMM instruction. A200 response confirms the command was acknowledged — check GET /trading-api/v2/amm-instructions/ to confirm the final status.
Authentication: Required. Rate limited: Yes.
Request Headers
Bearer <JWT>Request signature generated using the signing format.
Milliseconds since EPOCH.
Client-side incremented unsigned 64-bit integer as a string.
Request Body Fields
Must be
"V3CreateAMMInstruction".Market symbol to invest liquidity in. E.g.
"BTCUSD".Base asset quantity to invest. Strict precision not required. Use
"0" to invest only quote.Quote asset quantity to invest. E.g.
"50000.1".Upper price bound of the AMM range in quote currency. E.g.
"25000".Lower price bound of the AMM range in quote currency. E.g.
"20000".Fee tier identifier to apply to this instruction.
ID of the trading account.
Response Fields
Acknowledgement message. E.g.
"Command acknowledged - CreateAMMInstruction".Unique request ID assigned by the exchange.
Unique AMM instruction ID — use this to query the instruction status.
Example Request
Example Response
GET /trading-api/v2/amm-instructions/
Retrieves a specific AMM instruction by its unique instruction ID.Authentication: Required. Rate limited: Yes.
Path Parameters
Unique AMM instruction ID returned at creation.
Query Parameters
ID of the trading account that owns the instruction.
Example Request
Example Response
Terminating an AMM Instruction
To terminate an active AMM instruction, submit aV3TerminateAMMInstruction command via POST /trading-api/v2/command.