Skip to content

Confirm a removal manually

POST
/api/v1/deployments/{id}/removal/confirm
curl --request POST \
--url http://localhost:3000/api/v1/deployments/2489E9AD-2EE2-8E00-8EC9-32D5F69181C0/removal/confirm \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <X-API-Key>' \
--data '{ "deviceIds": [ "2489E9AD-2EE2-8E00-8EC9-32D5F69181C0" ], "note": "example" }'

Marks the deployment as removed from the given devices although the devices did not confirm it. Use it when you know the workload is gone (for example the device was wiped or replaced) and waiting for the confirmation timeout helps nobody. Each device must have a removal request in force that is not yet confirmed: the deployment was deleted, or it was removed from that device. A device that reported failed may be confirmed too. The status history records the operator and the optional note. The deployment leaves awaiting-removal once no device is outstanding.

id
required
string format: uuid

Deployment UUID

x-organization-id
string format: uuid

UUID of the organization (tenant) the request acts in. It selects the tenant and grants nothing: the server checks membership or an open tenant switch. Not needed for global operations. A malformed value returns 400. API keys are fixed to their own organization; another organization returns 403. The x-organization-source header grants nothing.

Media typeapplication/json
object
deviceIds
required

Devices on which the operator confirms the workload is removed

Array<string>
note

Why the operator knows the workload is gone. Stored in the status history.

string
<= 500 characters
Examplegenerated
{
"deviceIds": [
"2489E9AD-2EE2-8E00-8EC9-32D5F69181C0"
],
"note": "example"
}

Removal confirmed

Media typeapplication/json
object
confirmedDeviceIds
required

Devices settled as removed by this request. A device that confirmed on its own while the request ran is not listed.

Array<string>
remainingAwaiting
required

Devices of this deployment that still await removal confirmation

number
Examplegenerated
{
"confirmedDeviceIds": [
"example"
],
"remainingAwaiting": 1
}

Invalid body, removal was not requested for a device, or its removal is already confirmed

Forbidden — caller lacks required permission

Deployment not found, or the device is not a target