Skip to main content

Overview

Learn how to monitor agent performance, track APR, and display portfolio data to users.

Key Metrics

APR Tracking

const { apr } = await giza.agent.getAPR({
  wallet: smartAccountAddress,
  start_date: '2024-01-01T00:00:00Z',
  end_date: '2024-12-31T23:59:59Z',
});

console.log(`Realized APR: ${apr.toFixed(2)}%`);

Portfolio Status

const portfolio = await giza.agent.getPortfolio({
  wallet: smartAccountAddress
});

console.log('Status:', portfolio.status);
console.log('Deposits:', portfolio.deposits);
console.log('Selected Protocols:', portfolio.selected_protocols);

Performance History

const { performance } = await giza.agent.getPerformance({
  wallet: smartAccountAddress,
  from_date: '2024-01-01 00:00:00'
});

// Chart data
const chartData = performance.map(p => ({
  date: p.date,
  value: p.value_in_usd
}));

Refresh Rates

Recommended refresh intervals:
  • APR: Every 60 seconds
  • Portfolio: Every 30 seconds
  • Performance history: Every 5 minutes
  • Transaction history: Every 60 seconds

Caching Strategy

Use React Query, SWR, or similar for efficient caching:
const { data: apr } = useQuery({
  queryKey: ['apr', address],
  queryFn: () => giza.agent.getAPR({ wallet: address }),
  staleTime: 60000, // 1 minute
  refetchInterval: 60000
});