From ramp-pack
Ramp local dev loop integration using OAuth2 client credentials. Provides Python code to obtain tokens and interact with Ramp's card, expense, and accounting APIs.
How this skill is triggered — by the user, by Claude, or both
Slash command
/ramp-pack:ramp-local-dev-loopThis 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 local dev loop using the Developer API with OAuth2 authentication.
Implementation patterns for Ramp local dev loop 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-packIntegrates with Ramp's Developer API for corporate card and expense management. Handles OAuth2 authentication, card retrieval, and error handling.
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.