Boomi API Control Plane REST API - Plans
Download OpenAPI Specification: Download
For more information about Postman collections, forking, and making your first API call, refer to the Working with Boomi APIs on Postman page.
Get plan by ID
Get a single plan.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
Responses
Response Schema: application/json
| displayName required | string Plan name (e.g. 'Gold', 'Free Tier'). |
| quotaHits required | integer <int64> Max calls per quota interval. 0 = unlimited. |
| quotaInterval required | string Enum: "SECOND" "MINUTE" "HOUR" "DAY" "WEEK" "MONTH" Time interval for the quota (e.g. DAY, MONTH). |
| rateInterval required | string Enum: "SECOND" "MINUTE" "HOUR" Time interval for the rate limit (e.g. SECOND, MINUTE). |
| rateLimit required | integer <int64> Max concurrent requests per rate interval. |
| id | string <uuid> System-assigned ID (read-only). |
| description | string <= 1000 characters Optional description of the plan. |
| deploymentStatus | string Enum: "DEPLOYED" "DEPLOYMENT_FAILED" "DELETION_FAILED" "DELETION_IN_PROGRESS" "DEPLOYMENT_IN_PROGRESS" "DEPLOYMENT_REQUIRED" "CREATED" Deployment status. |
Response samples
- 200
- default
{- "id": 1,
- "displayName": "gold",
- "description": "some text...",
- "quotaHits": 1000,
- "quotaInterval": "DAY",
- "rateLimit": 10,
- "rateInterval": "SECOND",
- "deploymentStatus": "COMPLETE"
}Update a plan
Update a plan.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
Request Body schema: application/jsonrequired
| displayName required | string Plan name (e.g. 'Gold', 'Free Tier'). |
| quotaHits required | integer <int64> Max calls per quota interval. 0 = unlimited. |
| quotaInterval required | string Enum: "SECOND" "MINUTE" "HOUR" "DAY" "WEEK" "MONTH" Time interval for the quota (e.g. DAY, MONTH). |
| rateInterval required | string Enum: "SECOND" "MINUTE" "HOUR" Time interval for the rate limit (e.g. SECOND, MINUTE). |
| rateLimit required | integer <int64> Max concurrent requests per rate interval. |
| id | string <uuid> System-assigned ID (read-only). |
| description | string <= 1000 characters Optional description of the plan. |
| deploymentStatus | string Enum: "DEPLOYED" "DEPLOYMENT_FAILED" "DELETION_FAILED" "DELETION_IN_PROGRESS" "DEPLOYMENT_IN_PROGRESS" "DEPLOYMENT_REQUIRED" "CREATED" Deployment status. |
Responses
Response Schema: application/json
| displayName required | string Plan name (e.g. 'Gold', 'Free Tier'). |
| quotaHits required | integer <int64> Max calls per quota interval. 0 = unlimited. |
| quotaInterval required | string Enum: "SECOND" "MINUTE" "HOUR" "DAY" "WEEK" "MONTH" Time interval for the quota (e.g. DAY, MONTH). |
| rateInterval required | string Enum: "SECOND" "MINUTE" "HOUR" Time interval for the rate limit (e.g. SECOND, MINUTE). |
| rateLimit required | integer <int64> Max concurrent requests per rate interval. |
| id | string <uuid> System-assigned ID (read-only). |
| description | string <= 1000 characters Optional description of the plan. |
| deploymentStatus | string Enum: "DEPLOYED" "DEPLOYMENT_FAILED" "DELETION_FAILED" "DELETION_IN_PROGRESS" "DEPLOYMENT_IN_PROGRESS" "DEPLOYMENT_REQUIRED" "CREATED" Deployment status. |
Request samples
- Payload
{- "id": 1,
- "displayName": "gold",
- "description": "some text...",
- "quotaHits": 1000,
- "quotaInterval": "DAY",
- "rateLimit": 10,
- "rateInterval": "SECOND",
- "deploymentStatus": "COMPLETE"
}Response samples
- 200
- default
{- "id": 1,
- "displayName": "gold",
- "description": "some text...",
- "quotaHits": 1000,
- "quotaInterval": "DAY",
- "rateLimit": 10,
- "rateInterval": "SECOND",
- "deploymentStatus": "COMPLETE"
}Delete a plan
Delete a plan.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
query Parameters
| undeploy | boolean |
Responses
Response samples
- default
{- "timestamp": "string",
- "status": 0,
- "error": "string",
- "message": "string",
- "path": "string"
}List all plans
Get filtered and paged list of all plans.
Authorizations:
query Parameters
| text | string |
| displayName | string |
| deploymentStatus | string Enum: "DEPLOYED" "DEPLOYMENT_FAILED" "DELETION_FAILED" "DELETION_IN_PROGRESS" "DEPLOYMENT_IN_PROGRESS" "DEPLOYMENT_REQUIRED" "CREATED" |
| product | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
| candidatesForProduct | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
| page | integer Default: 1 One-based page index (1..N) |
| size | integer Default: 10 The size of the page to be returned |
| sort | Array of arrays Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. |
Responses
Response Schema: application/json
required | Array of objects (PlanDTO) List of PlanDTO results for the current page. |
| last required | boolean Whether this is the last page. |
| number required | integer <int32> Current page number (1-based). |
| size required | integer <int32> Requested page size. |
| totalElements required | integer <int64> Total number of matching results across all pages. |
| totalPages required | integer <int32> Total number of pages. |
Response samples
- 200
- default
{- "content": [
- {
- "id": 1,
- "displayName": "gold",
- "description": "some text...",
- "quotaHits": 1000,
- "quotaInterval": "DAY",
- "rateLimit": 10,
- "rateInterval": "SECOND",
- "deploymentStatus": "COMPLETE"
}
], - "size": 0,
- "number": 0,
- "last": true,
- "totalPages": 0,
- "totalElements": 0
}Create a new plan
Create a new plan.
Authorizations:
Request Body schema: application/jsonrequired
| displayName required | string Plan name (e.g. 'Gold', 'Free Tier'). |
| quotaHits required | integer <int64> Max calls per quota interval. 0 = unlimited. |
| quotaInterval required | string Enum: "SECOND" "MINUTE" "HOUR" "DAY" "WEEK" "MONTH" Time interval for the quota (e.g. DAY, MONTH). |
| rateInterval required | string Enum: "SECOND" "MINUTE" "HOUR" Time interval for the rate limit (e.g. SECOND, MINUTE). |
| rateLimit required | integer <int64> Max concurrent requests per rate interval. |
| id | string <uuid> System-assigned ID (read-only). |
| description | string <= 1000 characters Optional description of the plan. |
| deploymentStatus | string Enum: "DEPLOYED" "DEPLOYMENT_FAILED" "DELETION_FAILED" "DELETION_IN_PROGRESS" "DEPLOYMENT_IN_PROGRESS" "DEPLOYMENT_REQUIRED" "CREATED" Deployment status. |
Responses
Response Schema: application/json
| displayName required | string Plan name (e.g. 'Gold', 'Free Tier'). |
| quotaHits required | integer <int64> Max calls per quota interval. 0 = unlimited. |
| quotaInterval required | string Enum: "SECOND" "MINUTE" "HOUR" "DAY" "WEEK" "MONTH" Time interval for the quota (e.g. DAY, MONTH). |
| rateInterval required | string Enum: "SECOND" "MINUTE" "HOUR" Time interval for the rate limit (e.g. SECOND, MINUTE). |
| rateLimit required | integer <int64> Max concurrent requests per rate interval. |
| id | string <uuid> System-assigned ID (read-only). |
| description | string <= 1000 characters Optional description of the plan. |
| deploymentStatus | string Enum: "DEPLOYED" "DEPLOYMENT_FAILED" "DELETION_FAILED" "DELETION_IN_PROGRESS" "DEPLOYMENT_IN_PROGRESS" "DEPLOYMENT_REQUIRED" "CREATED" Deployment status. |
Request samples
- Payload
{- "id": 1,
- "displayName": "gold",
- "description": "some text...",
- "quotaHits": 1000,
- "quotaInterval": "DAY",
- "rateLimit": 10,
- "rateInterval": "SECOND",
- "deploymentStatus": "COMPLETE"
}Response samples
- 200
- default
{- "id": 1,
- "displayName": "gold",
- "description": "some text...",
- "quotaHits": 1000,
- "quotaInterval": "DAY",
- "rateLimit": 10,
- "rateInterval": "SECOND",
- "deploymentStatus": "COMPLETE"
}Deploy plan to gateway environments
Deploy a plan to all environments where it is required.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
Responses
Response samples
- default
{- "timestamp": "string",
- "status": 0,
- "error": "string",
- "message": "string",
- "path": "string"
}Deploy plan asynchronously
Asynchronously deploy a plan to all environments where it is required.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
Responses
Response Schema: application/json
| id required | string <uuid> UUID of the async job. |
Response samples
- 200
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}List plan deployments across environments
Get a paginated list of API product plan deployments for a plan, showing the deployment status across all environments.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
query Parameters
| page | integer Default: 1 One-based page index (1..N) |
| size | integer Default: 10 The size of the page to be returned |
| sort | Array of arrays Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. |
Responses
Response Schema: application/json
required | Array of objects (ApiProductPlanDeploymentDTO) List of ApiProductPlanDeploymentDTO results for the current page. |
| last required | boolean Whether this is the last page. |
| number required | integer <int32> Current page number (1-based). |
| size required | integer <int32> Requested page size. |
| totalElements required | integer <int64> Total number of matching results across all pages. |
| totalPages required | integer <int32> Total number of pages. |
Response samples
- 200
- default
{- "content": [
- {
- "deployedForApiProduct": true,
- "environment": 1,
- "plan": 1,
- "apiProduct": 1,
- "gatewayId": "aa2867cf-a395-47e0-84b2-8fa157906677",
- "lastSuccessfulTask": "DEPLOY",
- "lastFailedTask": "DEPLOY",
- "failureMessage": "description of error",
- "id": 1,
- "apiPlanDeployments": [
- {
- "environment": 1,
- "plan": 1,
- "api": 1,
- "gatewayId": "aa2867cf-a395-47e0-84b2-8fa157906677",
- "lastSuccessfulTask": "DEPLOY",
- "lastFailedTask": "DEPLOY",
- "failureMessage": "description of error",
- "id": 1
}
]
}
], - "size": 0,
- "number": 0,
- "last": true,
- "totalPages": 0,
- "totalElements": 0
}List API Products using this plan
Get all ApiProducts to which this plan has been added.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
query Parameters
| includeDeployedOn | boolean |
| mcpStatus | string Enum: "DISABLED" "ENABLED" |
| page | integer Default: 1 One-based page index (1..N) |
| size | integer Default: 10 The size of the page to be returned |
| sort | Array of arrays Sorting criteria in the format: property,(asc|desc). Default sort order is ascending. Multiple sort criteria are supported. |
Responses
Response Schema: application/json
required | Array of objects (ApiProductDTO) List of ApiProductDTO results for the current page. |
| last required | boolean Whether this is the last page. |
| number required | integer <int32> Current page number (1-based). |
| size required | integer <int32> Requested page size. |
| totalElements required | integer <int64> Total number of matching results across all pages. |
| totalPages required | integer <int32> Total number of pages. |
Response samples
- 200
- default
{- "content": [
- {
- "name": "petstore",
- "displayName": "Pet related APIs",
- "description": "some text...",
- "visibility": "PUBLIC",
- "allowSelfServiceSubscription": true,
- "published": true,
- "mcpStatus": "DISABLED",
- "tags": [
- "string"
], - "owner": 1,
- "ownerDisplayName": "string",
- "ownerEmail": "string",
- "platformTypes": [
- "string"
], - "subscribableStatus": "OK",
- "deploymentStatus": "COMPLETE",
- "id": 1,
- "hasImage": false,
- "deployedOn": [
- {
- "name": "gravitee-1",
- "displayName": "Primary Gravitee Environment",
- "symbol": "G1",
- "status": "ACTIVE",
- "color": "blue",
- "pinned": true,
- "stage": "PRODUCTION",
- "platformType": "GRAVITEE",
- "subscribeAccessMode": "PUBLIC",
- "publishAccessMode": "PUBLIC",
- "apiUrlStrategy": "PLATFORM_DEFAULT",
- "gateway": {
- "platformType": "string",
- "name": "string",
- "gatewayId": "string",
- "agentType": "STANDALONE",
- "environmentType": "SINGLE",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",
- "agent": {
- "status": "NOT_CONNECTED",
- "gateway": {
- "status": "UNKNOWN",
- "errors": [
- "string"
]
}, - "remoteIp": "string",
- "lastSeen": "2019-08-24T14:15:22Z",
- "capabilities": [
- {
- "capability": "string",
- "version": "string"
}
], - "buildInfo": {
- "version": "string",
- "commit": "string",
- "buildTime": "2019-08-24T14:15:22Z"
}
}, - "agentToken": "string"
}, - "agent": {
- "status": "NOT_CONNECTED",
- "gateway": {
- "status": "UNKNOWN",
- "errors": [
- "string"
]
}, - "remoteIp": "string",
- "lastSeen": "2019-08-24T14:15:22Z",
- "capabilities": [
- {
- "capability": "string",
- "version": "string"
}
], - "buildInfo": {
- "version": "string",
- "commit": "string",
- "buildTime": "2019-08-24T14:15:22Z"
}
}, - "agentType": "STANDALONE",
- "gatewayId": "string",
- "createdAt": "2019-08-24T14:15:22Z",
- "id": 1,
- "apiGatewayName": "string"
}
], - "mcpServerVersion": "1.0.0",
- "runningJobs": [
- {
- "name": "string",
- "jobType": "BUILD_IN_INTEGRATION",
- "status": "IN_PROGRESS",
- "entityId": "156e622c-6cdf-4c27-9bc9-2f2db69919f5",
- "entityType": "API",
- "createdAt": "2019-08-24T14:15:22Z",
- "updatedAt": "2019-08-24T14:15:22Z",
- "payload": "string",
- "processId": "string",
- "statusMessage": "string",
- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}
]
}
], - "size": 0,
- "number": 0,
- "last": true,
- "totalPages": 0,
- "totalElements": 0
}Delete plan asynchronously
Asynchronously delete a plan.
Authorizations:
path Parameters
| id required | string <uuid> This should be the uuid for the entity in question - but for backwards compatibility, this will also accept the old integer id. |
query Parameters
| undeploy | boolean |
Responses
Response Schema: application/json
| id required | string <uuid> UUID of the async job. |
Response samples
- 200
- default
{- "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08"
}