{ "version": "3.3.0", "name": "spl_token", "instructions": [ { "name": "initializeMint", "accounts": [ { "name": "mint", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "decimals", "type": "u8" }, { "name": "mintAuthority", "type": "publicKey" }, { "name": "freezeAuthority", "type": { "defined": "COption" } } ] }, { "name": "initializeAccount", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeMultisig", "accounts": [ { "name": "multisig", "isMut": true, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "m", "type": "u8" } ] }, { "name": "transfer", "accounts": [ { "name": "source", "isMut": true, "isSigner": false }, { "name": "destination", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "approve", "accounts": [ { "name": "source", "isMut": true, "isSigner": false }, { "name": "delegate", "isMut": false, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "revoke", "accounts": [ { "name": "source", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "setAuthority", "accounts": [ { "name": "owned", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true }, { "name": "signer", "isMut": false, "isSigner": true } ], "args": [ { "name": "authorityType", "type": { "defined": "AuthorityType" } }, { "name": "newAuthority", "type": { "defined": "COption" } } ] }, { "name": "mintTo", "accounts": [ { "name": "mint", "isMut": true, "isSigner": false }, { "name": "account", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "burn", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "closeAccount", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "destination", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "freezeAccount", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "thawAccount", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [] }, { "name": "transferChecked", "accounts": [ { "name": "source", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "destination", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "decimals", "type": "u8" } ] }, { "name": "approveChecked", "accounts": [ { "name": "source", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "delegate", "isMut": false, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "decimals", "type": "u8" } ] }, { "name": "mintToChecked", "accounts": [ { "name": "mint", "isMut": true, "isSigner": false }, { "name": "account", "isMut": true, "isSigner": false }, { "name": "owner", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "decimals", "type": "u8" } ] }, { "name": "burnChecked", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": true, "isSigner": false }, { "name": "authority", "isMut": false, "isSigner": true } ], "args": [ { "name": "amount", "type": "u64" }, { "name": "decimals", "type": "u8" } ] }, { "name": "initializeAccount2", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false }, { "name": "rent", "isMut": false, "isSigner": false } ], "args": [ { "name": "owner", "type": "publicKey" } ] }, { "name": "syncNative", "accounts": [ { "name": "account", "isMut": true, "isSigner": false } ], "args": [] }, { "name": "initializeAccount3", "accounts": [ { "name": "account", "isMut": true, "isSigner": false }, { "name": "mint", "isMut": false, "isSigner": false } ], "args": [ { "name": "owner", "type": "publicKey" } ] }, { "name": "initializeMultisig2", "accounts": [ { "name": "multisig", "isMut": true, "isSigner": false }, { "name": "signer", "isMut": false, "isSigner": false } ], "args": [ { "name": "m", "type": "u8" } ] }, { "name": "initializeMint2", "accounts": [ { "name": "mint", "isMut": true, "isSigner": false } ], "args": [ { "name": "decimals", "type": "u8" }, { "name": "mintAuthority", "type": "publicKey" }, { "name": "freezeAuthority", "type": { "defined": "COption" } } ] }, { "name": "getAccountDataSize", "accounts": [ { "name": "mint", "isMut": false, "isSigner": false } ], "args": [] }, { "name": "initializeImmutableOwner", "accounts": [ { "name": "account", "isMut": true, "isSigner": false } ], "args": [] }, { "name": "amountToUiAmount", "accounts": [ { "name": "mint", "isMut": false, "isSigner": false } ], "args": [ { "name": "amount", "type": "u64" } ] }, { "name": "uiAmountToAmount", "accounts": [ { "name": "mint", "isMut": false, "isSigner": false } ], "args": [ { "name": "uiAmount", "type": { "defined": "&'astr" } } ] } ], "accounts": [ { "name": "Mint", "type": { "kind": "struct", "fields": [ { "name": "mintAuthority", "type": { "defined": "COption" } }, { "name": "supply", "type": "u64" }, { "name": "decimals", "type": "u8" }, { "name": "isInitialized", "type": "bool" }, { "name": "freezeAuthority", "type": { "defined": "COption" } } ] } }, { "name": "Account", "type": { "kind": "struct", "fields": [ { "name": "mint", "type": "publicKey" }, { "name": "owner", "type": "publicKey" }, { "name": "amount", "type": "u64" }, { "name": "delegate", "type": { "defined": "COption" } }, { "name": "state", "type": { "defined": "AccountState" } }, { "name": "isNative", "type": { "defined": "COption" } }, { "name": "delegatedAmount", "type": "u64" }, { "name": "closeAuthority", "type": { "defined": "COption" } } ] } }, { "name": "Multisig", "type": { "kind": "struct", "fields": [ { "name": "m", "type": "u8" }, { "name": "n", "type": "u8" }, { "name": "isInitialized", "type": "bool" }, { "name": "signers", "type": { "array": [ "publicKey", 11 ] } } ] } } ], "types": [ { "name": "AccountState", "type": { "kind": "enum", "variants": [ { "name": "Uninitialized" }, { "name": "Initialized" }, { "name": "Frozen" } ] } }, { "name": "AuthorityType", "type": { "kind": "enum", "variants": [ { "name": "MintTokens" }, { "name": "FreezeAccount" }, { "name": "AccountOwner" }, { "name": "CloseAccount" } ] } } ], "errors": [ { "code": 0, "name": "NotRentExempt", "msg": "Lamport balance below rent-exempt threshold" }, { "code": 1, "name": "InsufficientFunds", "msg": "Insufficient funds" }, { "code": 2, "name": "InvalidMint", "msg": "Invalid Mint" }, { "code": 3, "name": "MintMismatch", "msg": "Account not associated with this Mint" }, { "code": 4, "name": "OwnerMismatch", "msg": "Owner does not match" }, { "code": 5, "name": "FixedSupply", "msg": "Fixed supply" }, { "code": 6, "name": "AlreadyInUse", "msg": "Already in use" }, { "code": 7, "name": "InvalidNumberOfProvidedSigners", "msg": "Invalid number of provided signers" }, { "code": 8, "name": "InvalidNumberOfRequiredSigners", "msg": "Invalid number of required signers" }, { "code": 9, "name": "UninitializedState", "msg": "State is unititialized" }, { "code": 10, "name": "NativeNotSupported", "msg": "Instruction does not support native tokens" }, { "code": 11, "name": "NonNativeHasBalance", "msg": "Non-native account can only be closed if its balance is zero" }, { "code": 12, "name": "InvalidInstruction", "msg": "Invalid instruction" }, { "code": 13, "name": "InvalidState", "msg": "State is invalid for requested operation" }, { "code": 14, "name": "Overflow", "msg": "Operation overflowed" }, { "code": 15, "name": "AuthorityTypeNotSupported", "msg": "Account does not support specified authority type" }, { "code": 16, "name": "MintCannotFreeze", "msg": "This token mint cannot freeze accounts" }, { "code": 17, "name": "AccountFrozen", "msg": "Account is frozen" }, { "code": 18, "name": "MintDecimalsMismatch", "msg": "The provided decimals value different from the Mint decimals" }, { "code": 19, "name": "NonNativeNotSupported", "msg": "Instruction does not support non-native tokens" } ] }