GLAMIDL Reference

set_token_transfer_policy

Sets SPL token transfer allowlist policy for vault token movement.

Required conditions

  • Configuration changes must pass owner or authorized-manager checks and, when the state or mint timelock is active, must follow the propose/apply timing model instead of taking effect immediately.

Accounts

AccountRoleDescription
glam_statewritableGLAM state account that stores vault configuration, integration ACLs, delegate permissions, policies, assets, mint linkage, and pricing records.
glam_signersigner, writableCalling authority or fee payer.
glam_protocol_programread-onlyGLAM Protocol program account used for authorization or CPI.

Arguments

ArgumentTypeNotes
policyTransferPolicy

Policy & permissions

  • Only the GLAM owner can call. Persistence is gated through GLAM Protocol's owner-only protocol-policy persistence path; delegates cannot complete the policy change on their own.
  • For non-empty policy data, the target protocol must already be enabled in integration_acls.
  • State timelock applies when active.

TypeScript SDK usage

import { TransferPolicy } from "@glamsystems/glam-sdk";

const policy = new TransferPolicy([approvedDestination]);
await glamClient.access.setProtocolPolicy(
  glamClient.extSplProgram.programId,
  0b01,
  policy.encode(),
);