Skip to main content

Manage API Products

This guide covers creating, listing, updating, and deleting API Products.

List API Products

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

Filter parameters

ParameterTypeDescription
textstringFree-text search
displayNamestringFilter by display name
ownerUUIDFilter by owner
environmentUUIDFilter by deployment environment
tagsstring[]Filter by tags
deployedbooleanOnly deployed products
apiUUIDFilter by contained API
platformTypestringFilter by platform
planUUIDFilter by assigned plan
visibilitystringPUBLIC or RESTRICTED
publishedstringPUBLISHED or UNPUBLISHED
selfServiceSubscriptionAllowedbooleanFilter by self-service status
mcpStatusstringENABLED or DISABLED
includeDeployedOnbooleanInclude deployment details

Example — find published products with self-service subscriptions:

curl -X GET "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts?published=PUBLISHED&selfServiceSubscriptionAllowed=true" \
-H "Authorization: Bearer <your-token>"

Create an API Product

curl -X POST "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts" \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"name": "petstore-product",
"displayName": "Petstore Product",
"description": "Access to the Petstore API",
"visibility": "PUBLIC",
"published": true,
"allowSelfServiceSubscription": true,
"mcpStatus": "DISABLED",
"tags": ["pets"]
}'

Required fields

FieldTypeDescription
namestringUnique technical name
displayNamestringHuman-readable name
visibilitystringPUBLIC or RESTRICTED
publishedbooleanPublished status
allowSelfServiceSubscriptionbooleanSelf-service flag
mcpStatusstringENABLED or DISABLED
tagsstring[]Tags (can be empty)

Get an API Product

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

Update an API Product

curl -X PUT "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts/<product-id>" \
-H "Authorization: Bearer <your-token>" \
-H "Content-Type: application/json" \
-d '{
"name": "petstore-product",
"displayName": "Petstore Premium",
"description": "Premium access to the Petstore API",
"visibility": "PUBLIC",
"published": true,
"allowSelfServiceSubscription": false,
"mcpStatus": "DISABLED",
"tags": ["pets", "premium"]
}'

Delete an API Product

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

Add an API to a Product

curl -X PUT "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts/<product-id>/apis/<api-id>" \
-H "Authorization: Bearer <your-token>"

Remove an API from a Product

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

List APIs in a Product

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

Manage Product image

# Upload
curl -X PUT "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts/<product-id>/image" \
-H "Authorization: Bearer <your-token>" \
-F "file=@product-logo.png"

# Download
curl -X GET "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts/<product-id>/image" \
-H "Authorization: Bearer <your-token>" --output product-logo.png

# Delete
curl -X DELETE "https://<your-subdomain>.backend.<region>.controlplane.boomi.com/apiProducts/<product-id>/image" \
-H "Authorization: Bearer <your-token>"