GLAMIDL Reference

vaults_deposit

Deposits vault assets into an allowlisted Kamino vault.

Required conditions

  • The vault integration ACL must enable this integration before the instruction is accepted; that enablement is defined on the GLAM state account.
  • If the signer is not the owner, the delegate ACL on the GLAM state must contain the exact protocol permission required by this instruction; registering a delegate alone is insufficient.
  • Instruction-specific destination accounts must satisfy the external protocol's own account model; GLAM validates the accounts it needs for authorization and policy enforcement, then passes the remaining protocol accounts through CPI.

Accounts

AccountRoleDescription
glam_statewritableGLAM state account that stores vault configuration, integration ACLs, delegate permissions, policies, assets, mint linkage, and pricing records.
glam_vaultwritableVault PDA associated with the GLAM state and used as the vault authority.
glam_signersigner, writableCalling authority or fee payer.
integration_authorityread-onlyProgram-derived authority used by the integration for downstream invocation.
cpi_programread-onlyDownstream program invoked by this instruction.
glam_protocol_programread-onlyGLAM Protocol program account used for authorization or CPI.
system_programread-onlySolana System Program.
vault_statewritableVault or downstream vault account.
token_vaultwritableVault or downstream vault account.
token_mintread-onlyToken mint account used or validated by this instruction.
base_vault_authorityread-onlyVault or downstream vault account.
shares_mintwritableToken mint account used or validated by this instruction.
user_token_atawritableToken account read or written by this instruction.
user_shares_atawritableToken account read or written by this instruction.
klend_programread-onlyKamino Lending program account invoked or checked by this instruction.
token_programread-onlyToken program account.
shares_token_programread-onlyToken program account.
event_authorityread-onlyEvent authority or downstream event account.
programread-onlyAnchor program account used by the downstream protocol.

Arguments

ArgumentTypeNotes
max_amountu64

Policy & permissions

  • Enable KaminoVaults on the vault integration ACL.
  • Delegate permission: Kamino Vaults Deposit.

TypeScript SDK usage

await glamClient.kaminoVaults.deposit(
  kaminoVault,
  new BN(1_000_000_000),
);

Cross-instruction constraints

  • The target Kamino vault must be allowed by the Kamino vaults policy before deposit or withdrawal.