GLAMIDL Reference

validate_managed_transfer

Validates a managed inflight transfer so that it becomes priceable.

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_signersignerCalling authority or fee payer.
bridge_registrywritableBridge route, session, registry, or managed-transfer account.

Arguments

ArgumentTypeNotes
argsValidateManagedTransferArgs

Policy & permissions

  • The bridge_registry account must belong to this GLAM state.
  • Signer access is checked through the record's protocol against Bridge Validate.
  • Record status must be Committed. The instruction marks the record Validated. (Route and transfer constraints are not re-validated here.)

TypeScript SDK usage

await glamClient.bridge.validateManagedTransfer(transferId);

Cross-instruction constraints

  • Run after a managed transfer is committed and before the transfer is included in pricing.