Upgrade contract WASM — requires Master authentication
fn upgrade(
env: soroban_sdk::Env,
new_wasm_hash: soroban_sdk::BytesN<32>,
) -> Result<(), soroban_sdk::Error>
Extend TTL — anyone can invoke
fn extend_ttl(env: soroban_sdk::Env)
Get active session policy
fn get_policy(env: soroban_sdk::Env) -> Result
Initialize with master owner key, ephemeral session key, policy, domain node, and optional master address
fn initialize(
env: soroban_sdk::Env,
master_key: soroban_sdk::BytesN<32>,
session_key: soroban_sdk::BytesN<32>,
policy: SessionPolicy,
domain_node: soroban_sdk::BytesN<32>,
master_address: Option,
) -> Result<(), soroban_sdk::Error>
fn __check_auth(
env: soroban_sdk::Env,
signature_payload: soroban_sdk::BytesN<32>,
signature: soroban_sdk::Val,
auth_contexts: soroban_sdk::Vec,
) -> Result<(), soroban_sdk::Error>
Get master owner key
fn get_master_key(
env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
1-Click Revocation: Instantly invalidate the active session key
fn revoke_session(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
) -> Result<(), soroban_sdk::Error>
Get domain node bound to this agent
fn get_domain_node(
env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
Get active session key
fn get_session_key(
env: soroban_sdk::Env,
) -> Result, soroban_sdk::Error>
Get amount spent in the active 24-hour window
fn get_spent_today(env: soroban_sdk::Env) -> i128
Update session key and policy — requires Master authentication
fn set_session_key(
env: soroban_sdk::Env,
caller: soroban_sdk::Address,
new_session_key: soroban_sdk::BytesN<32>,
new_policy: SessionPolicy,
) -> Result<(), soroban_sdk::Error>
Get master owner address if set
fn get_master_address(env: soroban_sdk::Env) -> Option