Remove Product
Remove Product completely removes a product deployment including all stacks and containers from an environment. The process shows a confirmation screen with a warning, real-time per-stack progress, and a final results screen with the status of each stack.
Overview
Section titled “Overview”| Step | Description |
|---|---|
| Confirmation | Warning, product details, and list of stacks to remove |
| Progress | Real-time per-stack status with progress bar |
| Result | Summary of all stacks with success/error status |
Step by Step: Remove a Product
Section titled “Step by Step: Remove a Product”Step 1: Deployments Overview
Section titled “Step 1: Deployments Overview”Navigate to the Deployments page to see an overview of all deployed products.

Step 2: Product Detail with Remove Button
Section titled “Step 2: Product Detail with Remove Button”Open the detail page of a product deployment. The Remove link is visible in the action bar when the product is in Running, Stopped, or PartiallyRunning status.

Step 3: Confirmation Screen
Section titled “Step 3: Confirmation Screen”After clicking Remove, the confirmation screen appears with:
- Warning card (red border) — clear warning about the irreversible operation
- Product Details — name, version, environment, stack count, service count
- Stacks to remove — list of all stacks in removal order (reverse of deployment order)
- Cancel — returns to the catalog without any action
- Remove All Stacks — starts the removal process

Stacks are removed in reverse order — the last deployed stack is removed first. This ensures safe teardown of dependencies.
Step 4: Progress Display
Section titled “Step 4: Progress Display”After clicking Remove All Stacks, the view switches to progress mode:

Left panel — Stack list: Each stack shows its current status:
| Status | Icon | Meaning |
|---|---|---|
| Pending | Empty circle | Waiting to be removed |
| Removing | Red spinner | Currently being removed |
| Removed | Green checkmark | Successfully removed |
| Failed | Red X | Removal failed |
Right panel — Stack detail: Click any stack in the left list to see details:
- Pending: “Waiting to remove…”
- Removing: Current progress message from the backend
- Removed: Green success message
- Failed: Red error message with details
The red progress bar at the top shows overall progress (X/Y stacks removed).
Step 5: Result
Section titled “Step 5: Result”When the process completes, the result screen appears:

Successfully removed:
- Green success icon
- Heading: “Product Removed Successfully!”
- Summary with product name and stack count
- Table showing all stacks with green checkmarks
- Links: View Deployments and Browse Catalog
Completed with errors:
- Red warning icon
- Heading: “Removal Completed with Errors”
- Error message from the backend
- Count: “X removed, Y failed of Z stacks”
- Table with individual results — failed stacks show the error message
API Endpoint
Section titled “API Endpoint”| Method | Endpoint | Description | Permission |
|---|---|---|---|
DELETE | /api/environments/{envId}/product-deployments/{id} | Remove product | Deployments.Update |
Request body:
{ "sessionId": "product-remove-<name>-<timestamp>"}The sessionId is generated by the client and is used to match real-time progress messages via SignalR.
Response:
{ "success": true, "productDeploymentId": "...", "productName": "...", "status": "Removed", "stackResults": [ { "stackName": "...", "stackDisplayName": "...", "success": true, "serviceCount": 2 } ]}Error Handling
Section titled “Error Handling”| Situation | Behavior |
|---|---|
| Product cannot be removed | Error message on the confirmation screen instead of the stack list |
| Individual stack fails | Other stacks continue to be removed; result shows individual errors |
| Network error during removal | Error message after timeout; backend status may differ |
| Product already removed | 404 error on load → error screen with message |