UNPKG

@drift-labs/sdk-browser

Version:
1,767 lines 497 kB
{ "version": "2.139.0", "name": "drift", "instructions": [ { "name": "initializeUser", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "state", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "name", "type": { "array": [ "u8", 32 ] } } ] }, { "name": "initializeUserStats", "accounts": [ { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "state", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeSignedMsgUserOrders", "accounts": [ { "name": "signedMsgUserOrders", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": false }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "numOrders", "type": "u16" } ] }, { "name": "resizeSignedMsgUserOrders", "accounts": [ { "name": "signedMsgUserOrders", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": false }, { "name": "user", "isMut": false, "isSigner": false }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "numOrders", "type": "u16" } ] }, { "name": "initializeSignedMsgWsDelegates", "accounts": [ { "name": "signedMsgWsDelegates", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "delegates", "type": { "vec": "publicKey" } } ] }, { "name": "changeSignedMsgWsDelegateStatus", "accounts": [ { "name": "signedMsgWsDelegates", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": true, "isSigner": true }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "delegate", "type": "publicKey" }, { "name": "add", "type": "bool" } ] }, { "name": "initializeFuelOverflow", "accounts": [ { "name": "fuelOverflow", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": false }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "sweepFuel", "accounts": [ { "name": "fuelOverflow", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": false }, { "name": "signer", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "resetFuelSeason", "accounts": [ { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": false }, { "name": "state", "isMut": false, "isSigner": false }, { "name": "admin", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "initializeReferrerName", "accounts": [ { "name": "referrerName", "isMut": true, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "payer", "isMut": true, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false }, { "name": "systemProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "name", "type": { "array": [ "u8", 32 ] } } ] }, { "name": "deposit", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "spotMarketVault", "isMut": true, "isSigner": false }, { "name": "userTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "marketIndex", "type": "u16" }, { "name": "amount", "type": "u64" }, { "name": "reduceOnly", "type": "bool" } ] }, { "name": "withdraw", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "spotMarketVault", "isMut": true, "isSigner": false }, { "name": "driftSigner", "isMut": false, "isSigner": false }, { "name": "userTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false } ], "args": [ { "name": "marketIndex", "type": "u16" }, { "name": "amount", "type": "u64" }, { "name": "reduceOnly", "type": "bool" } ] }, { "name": "transferDeposit", "accounts": [ { "name": "fromUser", "isMut": true, "isSigner": false }, { "name": "toUser", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "state", "isMut": false, "isSigner": false }, { "name": "spotMarketVault", "isMut": false, "isSigner": false } ], "args": [ { "name": "marketIndex", "type": "u16" }, { "name": "amount", "type": "u64" } ] }, { "name": "transferPools", "accounts": [ { "name": "fromUser", "isMut": true, "isSigner": false }, { "name": "toUser", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "state", "isMut": false, "isSigner": false }, { "name": "depositFromSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "depositToSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "borrowFromSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "borrowToSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "driftSigner", "isMut": false, "isSigner": false } ], "args": [ { "name": "depositFromMarketIndex", "type": "u16" }, { "name": "depositToMarketIndex", "type": "u16" }, { "name": "borrowFromMarketIndex", "type": "u16" }, { "name": "borrowToMarketIndex", "type": "u16" }, { "name": "depositAmount", "type": { "option": "u64" } }, { "name": "borrowAmount", "type": { "option": "u64" } } ] }, { "name": "transferPerpPosition", "accounts": [ { "name": "fromUser", "isMut": true, "isSigner": false }, { "name": "toUser", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "state", "isMut": false, "isSigner": false } ], "args": [ { "name": "marketIndex", "type": "u16" }, { "name": "amount", "type": { "option": "i64" } } ] }, { "name": "placePerpOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } } ] }, { "name": "cancelOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "orderId", "type": { "option": "u32" } } ] }, { "name": "cancelOrderByUserId", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "userOrderId", "type": "u8" } ] }, { "name": "cancelOrders", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "marketType", "type": { "option": { "defined": "MarketType" } } }, { "name": "marketIndex", "type": { "option": "u16" } }, { "name": "direction", "type": { "option": { "defined": "PositionDirection" } } } ] }, { "name": "cancelOrdersByIds", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "orderIds", "type": { "vec": "u32" } } ] }, { "name": "modifyOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "orderId", "type": { "option": "u32" } }, { "name": "modifyOrderParams", "type": { "defined": "ModifyOrderParams" } } ] }, { "name": "modifyOrderByUserId", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "userOrderId", "type": "u8" }, { "name": "modifyOrderParams", "type": { "defined": "ModifyOrderParams" } } ] }, { "name": "placeAndTakePerpOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } }, { "name": "successCondition", "type": { "option": "u32" } } ] }, { "name": "placeAndMakePerpOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "taker", "isMut": true, "isSigner": false }, { "name": "takerStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } }, { "name": "takerOrderId", "type": "u32" } ] }, { "name": "placeAndMakeSignedMsgPerpOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "taker", "isMut": true, "isSigner": false }, { "name": "takerStats", "isMut": true, "isSigner": false }, { "name": "takerSignedMsgUserOrders", "isMut": false, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } }, { "name": "signedMsgOrderUuid", "type": { "array": [ "u8", 8 ] } } ] }, { "name": "placeSignedMsgTakerOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "signedMsgUserOrders", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "ixSysvar", "isMut": false, "isSigner": false, "docs": [ "the supplied Sysvar could be anything else.", "The Instruction Sysvar has not been implemented", "in the Anchor framework yet, so this is the safe approach." ] } ], "args": [ { "name": "signedMsgOrderParamsMessageBytes", "type": "bytes" }, { "name": "isDelegateSigner", "type": "bool" } ] }, { "name": "placeSpotOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } } ] }, { "name": "placeAndTakeSpotOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } }, { "name": "fulfillmentType", "type": { "option": { "defined": "SpotFulfillmentType" } } }, { "name": "makerOrderId", "type": { "option": "u32" } } ] }, { "name": "placeAndMakeSpotOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "taker", "isMut": true, "isSigner": false }, { "name": "takerStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "defined": "OrderParams" } }, { "name": "takerOrderId", "type": "u32" }, { "name": "fulfillmentType", "type": { "option": { "defined": "SpotFulfillmentType" } } } ] }, { "name": "placeOrders", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "params", "type": { "vec": { "defined": "OrderParams" } } } ] }, { "name": "beginSwap", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "outSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "inSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "outTokenAccount", "isMut": true, "isSigner": false }, { "name": "inTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "driftSigner", "isMut": false, "isSigner": false }, { "name": "instructions", "isMut": false, "isSigner": false, "docs": [ "Instructions Sysvar for instruction introspection" ] } ], "args": [ { "name": "inMarketIndex", "type": "u16" }, { "name": "outMarketIndex", "type": "u16" }, { "name": "amountIn", "type": "u64" } ] }, { "name": "endSwap", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "outSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "inSpotMarketVault", "isMut": true, "isSigner": false }, { "name": "outTokenAccount", "isMut": true, "isSigner": false }, { "name": "inTokenAccount", "isMut": true, "isSigner": false }, { "name": "tokenProgram", "isMut": false, "isSigner": false }, { "name": "driftSigner", "isMut": false, "isSigner": false }, { "name": "instructions", "isMut": false, "isSigner": false, "docs": [ "Instructions Sysvar for instruction introspection" ] } ], "args": [ { "name": "inMarketIndex", "type": "u16" }, { "name": "outMarketIndex", "type": "u16" }, { "name": "limitPrice", "type": { "option": "u64" } }, { "name": "reduceOnly", "type": { "option": { "defined": "SwapReduceOnly" } } } ] }, { "name": "updateUserName", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "name", "type": { "array": [ "u8", 32 ] } } ] }, { "name": "updateUserCustomMarginRatio", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "marginRatio", "type": "u32" } ] }, { "name": "updateUserPerpPositionCustomMarginRatio", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "perpMarketIndex", "type": "u16" }, { "name": "marginRatio", "type": "u16" } ] }, { "name": "updateUserMarginTradingEnabled", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "marginTradingEnabled", "type": "bool" } ] }, { "name": "updateUserPoolId", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "poolId", "type": "u8" } ] }, { "name": "updateUserDelegate", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "delegate", "type": "publicKey" } ] }, { "name": "updateUserReduceOnly", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "reduceOnly", "type": "bool" } ] }, { "name": "updateUserProtectedMakerOrders", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "protectedMakerModeConfig", "isMut": true, "isSigner": false } ], "args": [ { "name": "subAccountId", "type": "u16" }, { "name": "protectedMakerOrders", "type": "bool" } ] }, { "name": "deleteUser", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "state", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": true, "isSigner": true } ], "args": [] }, { "name": "forceDeleteUser", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "state", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": true, "isSigner": false }, { "name": "keeper", "isMut": true, "isSigner": true }, { "name": "driftSigner", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "deleteSignedMsgUserOrders", "accounts": [ { "name": "signedMsgUserOrders", "isMut": true, "isSigner": false }, { "name": "state", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "reclaimRent", "accounts": [ { "name": "user", "isMut": true, "isSigner": false }, { "name": "userStats", "isMut": true, "isSigner": false }, { "name": "state", "isMut": false, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "enableUserHighLeverageMode", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "user", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true }, { "name": "highLeverageModeConfig", "isMut": true, "isSigner": false } ], "args": [ { "name": "subAccountId", "type": "u16" } ] }, { "name": "fillPerpOrder", "accounts": [ { "name": "state", "isMut": false, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner":