> appfolio-upgrade-migration

Migrate between AppFolio API versions and handle endpoint changes. Trigger: "appfolio upgrade".

fetch
$curl "https://skillshub.wtf/jeremylongshore/claude-code-plugins-plus-skills/appfolio-upgrade-migration?format=md"
SKILL.mdappfolio-upgrade-migration

appfolio upgrade migration | sed 's/\b(.)/\u\1/g'

API Version Migration

// Adapter pattern for API version changes
class AppFolioVersionAdapter {
  private version: "v1" | "v2";
  private client: any;

  constructor(version: "v1" | "v2" = "v1") {
    this.version = version;
  }

  async getProperties(): Promise<any[]> {
    if (this.version === "v2") {
      // v2 may return paginated results
      return this.paginatedGet("/properties");
    }
    return (await this.client.get("/properties")).data;
  }

  private async paginatedGet(path: string): Promise<any[]> {
    const results: any[] = [];
    let cursor: string | null = null;
    do {
      const { data } = await this.client.get(path, { params: { cursor } });
      results.push(...data.results);
      cursor = data.next_cursor;
    } while (cursor);
    return results;
  }
}

Resources

┌ stats

installs/wk0
░░░░░░░░░░
github stars1.7K
██████████
first seenMar 23, 2026
└────────────

┌ repo

jeremylongshore/claude-code-plugins-plus-skills
by jeremylongshore
└────────────