Management API
The Management API is for configuration and organization data. It is not the SDK ingestion endpoint. Create a scoped token from Team, then send it with Authorization: Bearer.
bash
curl https://getonramp.dev/api/v1/whoami \
-H "Authorization: Bearer $ONRAMP_TOKEN"
Endpoints
| Method | Endpoint | Purpose |
|---|---|---|
GET | /api/v1/whoami | Inspect the token scope and available projects |
GET, POST | /api/v1/apps | List or create projects |
GET, PATCH | /api/v1/apps/:appId | Read or rename a project, change digest setting |
GET, POST | /api/v1/apps/:appId/funnels | List or create/update funnels |
GET, POST | /api/v1/apps/:appId/segments | List or create/update saved segments |
GET, POST | /api/v1/apps/:appId/keys | List or create ingestion keys |
GET, POST | /api/v1/apps/:appId/integrations | List or connect credential-based revenue integrations |
GET | /api/v1/apps/:appId/team | List organization members |
GET | /api/v1/apps/:appId/billing | Read plan and usage status |
Create a funnel
bash
curl -X POST https://getonramp.dev/api/v1/apps/$APP_ID/funnels \
-H "Authorization: Bearer $ONRAMP_TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"Activation","steps":[{"step_name":"signed_up"},{"step_name":"first_project_created"}]}'
Funnels accept one to fifty valid steps. POST is an upsert: sending an existing name updates that funnel.
Connect a revenue provider
The API can connect Stripe, RevenueCat, Paddle, and Lemon Squeezy because each uses credential-based setup. OAuth providers, including Google Ads and Search Console, must be connected in the dashboard.
json
{
"provider": "stripe",
"credentials": { "secret_key": "rk_live_..." },
"config": { "identity_strategy": "email", "sync_frequency_hours": 6 }
}
Use least-privilege tokens. Read access is separate from write access, and management tokens cannot delete resources.
