From appfolio-pack
Diagnoses and fixes common AppFolio API integration errors (401, 403, 404, 422, 429, 500) with a diagnostic curl script. Invoke via '/appfolio-common-errors' or "appfolio error" trigger.
How this skill is triggered — by the user, by Claude, or both
Slash command
/appfolio-pack:appfolio-common-errorsThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
| Code | Error | Root Cause | Fix |
| Code | Error | Root Cause | Fix |
|---|---|---|---|
401 | Unauthorized | Invalid client_id/secret | Verify credentials from AppFolio |
403 | Forbidden | Not an approved partner | Complete Stack partner application |
404 | Not Found | Wrong base URL or endpoint | Use your-company.appfolio.com/api/v1 |
422 | Unprocessable Entity | Missing required fields | Check required fields in API docs |
429 | Too Many Requests | Rate limit exceeded | Implement backoff; reduce request rate |
500 | Internal Server Error | AppFolio server issue | Retry after delay; check status page |
#!/bin/bash
echo "=== AppFolio API Diagnostics ==="
echo -n "Connectivity: "
curl -s -o /dev/null -w "%{http_code}" -u "${APPFOLIO_CLIENT_ID}:${APPFOLIO_CLIENT_SECRET}" "${APPFOLIO_BASE_URL}/properties"
echo ""
echo -n "Tenants endpoint: "
curl -s -o /dev/null -w "%{http_code}" -u "${APPFOLIO_CLIENT_ID}:${APPFOLIO_CLIENT_SECRET}" "${APPFOLIO_BASE_URL}/tenants"
echo ""
echo "=== Done ==="
2plugins reuse this skill
First indexed Jul 17, 2026
npx claudepluginhub ia23a-lachnita/claude-code-plugins-plus-fix-skills --plugin appfolio-packDiagnoses and fixes common AppFolio API integration errors including authentication failures, rate limits, and property-management-specific validation errors like tenant not found or lease conflicts.
Guides collaborative design exploration before implementation: explores context, asks clarifying questions, proposes approaches, and writes a design doc for user approval.
Creates structured, bite-sized implementation plans from specs or requirements before writing code. Useful for breaking down multi-step tasks into testable steps with file structure and task boundaries.