Skip to main content
GET
Simulate fees for a potential order

Authorizations

X-Monaco-Signature
string
header
required

Ed25519 session-key request signing. Every authenticated request carries three headers: X-Monaco-PublicKey (64-char lowercase-hex session public key), X-Monaco-Timestamp (Unix milliseconds, within 30s of server time), and X-Monaco-Signature (hex ed25519 signature). The signature is over METHOD\npath?query\ntimestamp_ms\nSHA256_hex(body), where the body hash is the SHA-256 of the empty byte string when there is no body. Obtain the session keypair from POST /api/v1/auth/challenge followed by POST /api/v1/auth/verify.

Query Parameters

tradingPairId
string<uuid>
required

Trading pair identifier (UUID)

Minimum string length: 1
side
enum<string>
required

Order side

Available options:
BUY,
SELL
Minimum string length: 1
price
string
required

Price as decimal string

Minimum string length: 1
quantity
string
required

Quantity as decimal string

Minimum string length: 1
orderType
enum<string>

Order type

Available options:
LIMIT,
MARKET,
STOP_LOSS,
TAKE_PROFIT,
STOP_LIMIT,
TRAILING_STOP
Minimum string length: 1
slippageToleranceBps
integer<int32>

Response

OK

notional
string | null

Notional value (price x quantity)

Example:

"20000.00"

monacoTakerFee
string | null

Monaco protocol taker fee in quote token

Example:

"20.00"

monacoMakerRebate
string | null

Monaco maker rebate in quote token (negative)

Example:

"-5.00"

applicationTakerFee
string | null

Application-specific taker fee in quote token

Example:

"10.00"

totalTakerFees
string | null

Total taker fees (monaco + application)

Example:

"30.00"

takerTotalPayment
string | null

Total amount paid by taker (notional + fees)

Example:

"20030.00"

makerTotalReceipt
string | null

Total amount received by maker (notional - rebate)

Example:

"19995.00"

buyOrderLockAmount
string | null

Amount locked for buy orders. For MARKET orders, includes slippage buffer.

Example:

"20030.00"

monacoTakerFeeBps
integer<int32> | null
deprecated

DEPRECATED: whole-basis-points taker rate. An integer cannot represent fractional tiered rates (e.g. 6.5), so this echoes the flat trading_pairs column, NOT the tier-resolved rate the ledger charges. Kept for backward compatibility. Use monaco_taker_fee_bps_exact (or GET /api/v1/fees/tier).

Example:

10

monacoMakerRebateBps
integer<int32> | null
deprecated

DEPRECATED: whole-basis-points maker rebate. An integer cannot represent fractional tiered rebates (e.g. -1.15), so this echoes the flat trading_pairs column, NOT the tier-resolved rate. Kept for backward compatibility. Use monaco_maker_rebate_bps_exact (or GET /api/v1/fees/tier).

Example:

-2

applicationTakerFeeBps
integer<int32> | null

Application taker fee rate in basis points

Example:

5

applicationName
string | null

Application display name

Example:

"Monaco Trading Frontend"

maxQuantity
string | null

Maximum quantity affordable at the given price, accounting for fees and slippage. Powers the 100% range input on the FE.

Example:

"99.95"

maxQuantityRaw
string | null

Maximum quantity in RAW (smallest unit) format

Example:

"99950000000000000000"

slippageToleranceBps
integer<int32> | null

Slippage tolerance used in the calculation (echoed back)

Example:

500

monacoTakerFeeBpsExact
string | null

Tier-resolved Monaco taker fee rate as a decimal basis-points string — the exact rate the ledger charges this caller (equals monaco_taker_fee / notional). Fractional and per-tier, e.g. "6.5". Prefer this over the deprecated integer monaco_taker_fee_bps.

Example:

"6.5"

monacoMakerRebateBpsExact
string | null

Tier-resolved Monaco maker rebate as a decimal basis-points string (negative is a rebate) — the exact rate the ledger credits this caller. Fractional and per-tier, e.g. "-1". Prefer this over the deprecated integer monaco_maker_rebate_bps.

Example:

"-1"