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>"