From ramp-pack
Handles Ramp API rate limits with OAuth2 authentication and backoff in Python for corporate card management and expenses.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ramp-pack:ramp-rate-limitsThis skill is limited to the following tools:
The summary Claude sees in its skill listing — used to decide when to auto-load this skill
Implementation patterns for Ramp rate limits using the Developer API with OAuth2 authentication.
Implementation patterns for Ramp rate limits using the Developer API with OAuth2 authentication.
ramp-install-auth setupimport os, requests
# Obtain token
token_resp = requests.post(f"{os.environ['RAMP_BASE_URL'].replace('/v1','')}/v1/token", data={
"grant_type": "client_credentials",
"client_id": os.environ["RAMP_CLIENT_ID"],
"client_secret": os.environ["RAMP_CLIENT_SECRET"],
})
access_token = token_resp.json()["access_token"]
headers = {"Authorization": f"Bearer {access_token}"}
cards = requests.get(f"{os.environ['RAMP_BASE_URL']}/cards", headers=headers)
print(f"Cards: {len(cards.json()['data'])}")
| Error | Cause | Solution |
|---|---|---|
| 401 Unauthorized | Expired token | Re-authenticate |
| 429 Rate Limited | Too many requests | Implement backoff |
| 403 Forbidden | Insufficient permissions | Check API app permissions |
See related Ramp skills for more workflows.
npx claudepluginhub jeremylongshore/claude-code-plugins-plus-skills --plugin ramp-packImplements Python patterns for Ramp API integration to fetch corporate cards, handle expenses, and sync accounting data using OAuth2 authentication.
Creates, edits, and optimizes skills for Claude Code, including drafting, evaluating with test prompts, iterating on performance, and improving skill descriptions for better triggering accuracy.