Skillshub appfolio-cost-tuning
install
source · Clone the upstream repo
git clone https://github.com/ComeOnOliver/skillshub
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/ComeOnOliver/skillshub "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/jeremylongshore/claude-code-plugins-plus-skills/appfolio-cost-tuning" ~/.claude/skills/comeonoliver-skillshub-appfolio-cost-tuning && rm -rf "$T"
manifest:
skills/jeremylongshore/claude-code-plugins-plus-skills/appfolio-cost-tuning/SKILL.mdsource content
appfolio cost tuning | sed 's/\b(.)/\u\1/g'
Overview
AppFolio Stack API pricing is partner-agreement based. Optimize by reducing unnecessary API calls.
Cost Optimization
- Cache aggressively — Property/unit data changes rarely (5-15 min TTL)
- Batch operations — Fetch all leases once, filter locally
- Incremental sync — Only fetch records modified since last sync
- Webhook-driven — React to events instead of polling
Usage Monitor
class ApiUsageMonitor { private calls: Array<{ endpoint: string; timestamp: number }> = []; record(endpoint: string) { this.calls.push({ endpoint, timestamp: Date.now() }); } getHourlyReport() { const cutoff = Date.now() - 3600000; const recent = this.calls.filter(c => c.timestamp > cutoff); const byEndpoint: Record<string, number> = {}; for (const c of recent) byEndpoint[c.endpoint] = (byEndpoint[c.endpoint] || 0) + 1; return { total: recent.length, byEndpoint }; } }