@quartz-labs/sdk
Version:
SDK for interacting with the Quartz Protocol
1,522 lines (1,521 loc) • 117 kB
JSON
{
"address": "6JjHXLheGSNvvexgzMthEcgjkcirDrGduc3HAKB2P1v2",
"metadata": {
"name": "pyra",
"version": "1.0.1",
"spec": "0.1.0",
"description": "Pyra's Solana smart contract"
},
"instructions": [
{
"name": "cancel_update_spend_limits",
"discriminator": [
72,
248,
219,
51,
170,
154,
239,
158
],
"accounts": [
{
"name": "spend_limits_order",
"writable": true
},
{
"name": "owner",
"signer": true
},
{
"name": "order_payer",
"writable": true
}
],
"args": []
},
{
"name": "cancel_withdraw_drift",
"discriminator": [
75,
154,
210,
190,
105,
179,
128,
253
],
"accounts": [
{
"name": "withdraw_order",
"writable": true
},
{
"name": "owner",
"signer": true
},
{
"name": "order_payer",
"writable": true
}
],
"args": []
},
{
"name": "clear_legacy_deposit_address",
"discriminator": [
248,
10,
109,
181,
71,
75,
143,
196
],
"accounts": [
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "owner"
}
]
}
},
{
"name": "owner",
"writable": true
},
{
"name": "owner_spl",
"writable": true,
"optional": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "owner"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "deposit_address",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
100,
101,
112,
111,
115,
105,
116,
95,
97,
100,
100,
114,
101,
115,
115
]
},
{
"kind": "account",
"path": "vault"
}
]
}
},
{
"name": "deposit_address_spl",
"writable": true,
"optional": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "deposit_address"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "mint",
"optional": true
},
{
"name": "token_program"
},
{
"name": "associated_token_program",
"address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": []
},
{
"name": "close_drift",
"discriminator": [
74,
197,
147,
222,
187,
112,
21,
145
],
"accounts": [
{
"name": "vault",
"writable": true
},
{
"name": "drift_user",
"writable": true
},
{
"name": "drift_user_stats",
"writable": true
},
{
"name": "drift_state",
"writable": true
},
{
"name": "admin",
"writable": true,
"signer": true
},
{
"name": "drift_program",
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": []
},
{
"name": "close_user",
"discriminator": [
86,
219,
138,
140,
236,
24,
118,
200
],
"accounts": [
{
"name": "vault",
"writable": true
},
{
"name": "admin",
"writable": true,
"signer": true
},
{
"name": "drift_user",
"docs": [
"Only checks the first sub account is closed, so if it's closed and re-opened, vault could be closed with open positions"
],
"pda": {
"seeds": [
{
"kind": "const",
"value": [
117,
115,
101,
114
]
},
{
"kind": "account",
"path": "vault"
},
{
"kind": "const",
"value": [
0,
0
]
}
],
"program": {
"kind": "account",
"path": "drift_program"
}
}
},
{
"name": "drift_program",
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
}
],
"args": []
},
{
"name": "deposit_drift",
"discriminator": [
18,
70,
190,
154,
86,
199,
132,
143
],
"accounts": [
{
"name": "vault",
"writable": true
},
{
"name": "vault_spl",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "vault"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "deposit_address",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
100,
101,
112,
111,
115,
105,
116,
95,
97,
100,
100,
114,
101,
115,
115
]
},
{
"kind": "account",
"path": "vault"
}
]
}
},
{
"name": "deposit_address_spl",
"docs": [
"Option because SOL in the deposit_address will be regular lamports, not wSOL"
],
"writable": true,
"optional": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "deposit_address"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "mint"
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "drift_user",
"writable": true
},
{
"name": "drift_user_stats",
"writable": true
},
{
"name": "drift_state",
"writable": true
},
{
"name": "drift_spot_market_vault",
"writable": true
},
{
"name": "token_program"
},
{
"name": "associated_token_program",
"address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
},
{
"name": "drift_program",
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "drift_market_index",
"type": "u16"
}
]
},
{
"name": "execute_swap_drift",
"discriminator": [
1
],
"accounts": [
{
"name": "owner",
"docs": [
"This account is required because even in the case where the owner is signing this transaction, it may",
"not be the one executing the swap instruction(s) between start_swap_drift and execute_swap_drift.",
"Normally, a specific flash loan caller and its ATAs are used."
]
},
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "owner"
}
]
}
},
{
"name": "vault_spl_from",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "vault"
},
{
"kind": "account",
"path": "token_program_from"
},
{
"kind": "account",
"path": "mint_from"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "vault_spl_to",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "vault"
},
{
"kind": "account",
"path": "token_program_to"
},
{
"kind": "account",
"path": "mint_to"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "caller",
"signer": true
},
{
"name": "caller_spl_from",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "caller"
},
{
"kind": "account",
"path": "token_program_from"
},
{
"kind": "account",
"path": "mint_from"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "caller_spl_to",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "caller"
},
{
"kind": "account",
"path": "token_program_to"
},
{
"kind": "account",
"path": "mint_to"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "mint_from",
"docs": [
"start_swap_drift validates the mint matches the token program"
]
},
{
"name": "mint_to",
"docs": [
"start_swap_drift validates the mint matches the token program"
]
},
{
"name": "token_program_from"
},
{
"name": "token_program_to"
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "ledger",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
115,
119,
97,
112,
95,
108,
101,
100,
103,
101,
114
]
},
{
"kind": "account",
"path": "mint_from"
}
]
}
},
{
"name": "drift_user",
"writable": true
},
{
"name": "drift_user_stats",
"writable": true
},
{
"name": "drift_state"
},
{
"name": "drift_spot_market_vault_from",
"writable": true
},
{
"name": "drift_spot_market_vault_to",
"writable": true
},
{
"name": "drift_signer"
},
{
"name": "price_update_from"
},
{
"name": "price_update_to"
},
{
"name": "drift_program",
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "instructions_sysvar_account",
"address": "Sysvar1nstructions1111111111111111111111111"
}
],
"args": [
{
"name": "drift_market_index_from",
"type": "u16"
},
{
"name": "drift_market_index_to",
"type": "u16"
}
]
},
{
"name": "fulfil_update_spend_limits",
"discriminator": [
224,
103,
67,
22,
109,
97,
18,
115
],
"accounts": [
{
"name": "spend_limits_order",
"writable": true
},
{
"name": "vault",
"writable": true
},
{
"name": "order_payer",
"writable": true
},
{
"name": "admin"
}
],
"args": []
},
{
"name": "fulfil_withdraw_drift",
"discriminator": [
29,
74,
221,
143,
220,
251,
251,
171
],
"accounts": [
{
"name": "withdraw_order",
"writable": true
},
{
"name": "vault",
"writable": true
},
{
"name": "order_payer",
"writable": true
},
{
"name": "admin"
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "destination",
"writable": true
},
{
"name": "destination_spl",
"docs": [
"destination_spl is not required if sending lamports instead of SPL tokens"
],
"writable": true,
"optional": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "destination"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "vault_spl",
"writable": true,
"pda": {
"seeds": [
{
"kind": "account",
"path": "vault"
},
{
"kind": "account",
"path": "token_program"
},
{
"kind": "account",
"path": "mint"
}
],
"program": {
"kind": "const",
"value": [
140,
151,
37,
143,
78,
36,
137,
241,
187,
61,
16,
41,
20,
142,
13,
131,
11,
90,
19,
153,
218,
255,
16,
132,
4,
142,
123,
216,
219,
233,
248,
89
]
}
}
},
{
"name": "mint"
},
{
"name": "drift_user",
"writable": true
},
{
"name": "drift_user_stats",
"writable": true
},
{
"name": "drift_state",
"writable": true
},
{
"name": "drift_spot_market_vault",
"writable": true
},
{
"name": "drift_signer"
},
{
"name": "token_program"
},
{
"name": "associated_token_program",
"address": "ATokenGPvbdGVxr1b2hvZbsiqW5xWH25efTNsLJA8knL"
},
{
"name": "drift_program",
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "amount_base_units",
"type": "u64"
}
]
},
{
"name": "init_drift",
"discriminator": [
66,
163,
62,
134,
7,
17,
7,
54
],
"accounts": [
{
"name": "vault",
"writable": true
},
{
"name": "payer",
"signer": true
},
{
"name": "drift_user",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
117,
115,
101,
114
]
},
{
"kind": "account",
"path": "vault"
},
{
"kind": "arg",
"path": "sub_account_id"
}
],
"program": {
"kind": "account",
"path": "drift_program"
}
}
},
{
"name": "drift_user_stats",
"writable": true
},
{
"name": "drift_state",
"writable": true
},
{
"name": "rent",
"address": "SysvarRent111111111111111111111111111111111"
},
{
"name": "drift_program",
"address": "dRiftyHA39MWEi3m9aunc5MzRF1JYuBsbn6VPcn33UH"
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "sub_account_id",
"type": "u16"
}
]
},
{
"name": "init_user",
"discriminator": [
14,
51,
68,
159,
237,
78,
158,
102
],
"accounts": [
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "owner"
}
]
}
},
{
"name": "owner",
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "spend_limit_per_transaction",
"type": "u64"
},
{
"name": "spend_limit_per_timeframe",
"type": "u64"
},
{
"name": "next_timeframe_reset_timestamp",
"type": "u64"
},
{
"name": "timeframe_in_seconds",
"type": "u64"
}
]
},
{
"name": "initiate_update_spend_limits",
"discriminator": [
67,
43,
56,
35,
125,
99,
211,
216
],
"accounts": [
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "owner"
}
]
}
},
{
"name": "owner",
"signer": true
},
{
"name": "spend_limits_order",
"writable": true,
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
}
],
"args": [
{
"name": "spend_limit_per_transaction",
"type": "u64"
},
{
"name": "spend_limit_per_timeframe",
"type": "u64"
},
{
"name": "next_timeframe_reset_timestamp",
"type": "u64"
},
{
"name": "timeframe_in_seconds",
"type": "u64"
}
]
},
{
"name": "initiate_withdraw_drift",
"discriminator": [
65,
162,
143,
155,
180,
121,
157,
11
],
"accounts": [
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "owner"
}
]
}
},
{
"name": "owner",
"signer": true
},
{
"name": "withdraw_order",
"writable": true,
"signer": true
},
{
"name": "payer",
"writable": true,
"signer": true
},
{
"name": "system_program",
"address": "11111111111111111111111111111111"
},
{
"name": "destination"
}
],
"args": [
{
"name": "amount_base_units",
"type": "u64"
},
{
"name": "drift_market_index",
"type": "u16"
},
{
"name": "reduce_only",
"type": "bool"
}
]
},
{
"name": "refund_spend",
"discriminator": [
200,
34,
117,
82,
47,
93,
16,
62
],
"accounts": [
{
"name": "admin",
"writable": true,
"signer": true
},
{
"name": "vault",
"writable": true,
"pda": {
"seeds": [
{
"kind": "const",
"value": [
118,
97,
117,
108,
116
]
},
{
"kind": "account",
"path": "owner"