Skip to main content

Manage Plans

Plans establish service quality guarantees and enable differentiated access tiers for API Products. Each plan defines consumption limits — specifically, the maximum number of requests permitted (quota) and the rate at which consumers can invoke APIs (rate limit).

You can create as many plans as needed and assign them to API Products. When consumers subscribe to a product, they select a plan that matches their usage requirements. This enables flexible access management, from free tiers with strict limits to premium tiers with generous quotas.

Plans must be deployed to environments along with the API Products they belong to. When a plan is updated, it may require redeployment to propagate changes to the gateways.

List plans

curl -X GET "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans?page=1&size=10" \
-H "Authorization: Bearer <your-token>"

Create a plan

curl -X POST "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans" \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"displayName": "Free Tier",
"description": "Basic access with rate limiting",
"quotaHits": 1000,
"quotaInterval": "DAY",
"rateLimit": 10,
"rateInterval": "SECOND"
}'

Required fields

FieldTypeDescription
displayNamestringHuman-readable name
quotaHitsintegerMaximum number of hits per quota interval
quotaIntervalenumSECOND, MINUTE, HOUR, DAY, WEEK, MONTH
rateLimitintegerMaximum requests per rate interval
rateIntervalenumSECOND, MINUTE, HOUR

Optional fields

FieldTypeDescription
descriptionstringPlan description (max 1000 chars)

Get a plan

curl -X GET "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans/<plan-id>" \
-H "Authorization: Bearer <your-token>"

Update a plan

curl -X PUT "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans/<plan-id>" \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"displayName": "Free Tier (Updated)",
"description": "Updated rate limits",
"quotaHits": 5000,
"quotaInterval": "DAY",
"rateLimit": 20,
"rateInterval": "SECOND"
}'

Delete a plan

curl -X DELETE "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans/<plan-id>" \
-H "Authorization: Bearer <your-token>"

Manage plan scopes

Plans can have scopes that define specific access permissions.

Add a scope to a plan

curl -X PUT "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans/<plan-id>/scopes/<scope-id>" \
-H "Authorization: Bearer <your-token>"

Remove a scope from a plan

curl -X DELETE "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/plans/<plan-id>/scopes/<scope-id>" \
-H "Authorization: Bearer <your-token>"

Deploy a plan

Deploy a plan to an environment:

curl -X PUT "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/environments/<environment-id>/plans/<plan-id>" \
-H "Authorization: Bearer <your-token>"

Undeploy a plan

curl -X DELETE "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/environments/<environment-id>/plans/<plan-id>" \
-H "Authorization: Bearer <your-token>"