v57

latestOpenAPI 3.1.0Apache-2.0raw.githubusercontent.com2026-08-012143051018.3 KB
Task

Cancel a Task

Cancel a Task.

The same handler is also mounted at /v2/org/{org}/nico/rack/task/{id}/cancel for backward compatibility; prefer this path for new clients.

Cancellation is best-effort and idempotent: tasks in non-terminal states (Pending, Running, Waiting) are marked Terminated and any underlying Temporal workflow is terminated. Cancelling an already-Terminated task returns the same task without changes. Tasks that have already finished (Succeeded or Failed) cannot be cancelled.

Tasks are site-scoped; siteId must be the Site where the task was created. Org must have an Infrastructure Provider entity. User must have authorization role with PROVIDER_ADMIN suffix.

post/v2/org/{org}/nico/task/{id}/cancel

Request body

siteIdstring uuid required

ID of the Site that owns the task (tasks are site-scoped).

Response

Accepted. The cancellation request was accepted and the Task's last known state is returned. Clients should GET the task to observe the final state, since cancellation is best-effort and the operation may still be terminating.

idstring uuid

Unique identifier of the task.

status'Unknown' | 'Pending' | 'Waiting' | 'Running' | 'Succeeded' | 'Failed' | 'Terminated'

Current state of the task.

descriptionstring

Human-readable description provided when the task was created.

messagestring

Optional status or error message describing the current state or result.

ruleIdstring uuid nullable

Operation Rule that Flow resolved for this task — either because the caller pinned one via ruleId on the originating request or because Flow's default rule resolution picked it. Null if Flow has not yet recorded a resolution.

startedstring date-time

Timestamp when the task started execution.

finishedstring date-time

Timestamp when the task finished (succeeded, failed or terminated).

createdstring date-time

Timestamp when the task was created.

updatedstring date-time

Timestamp when the task was last updated.

Example response

{
  "id": "550e8400-e29b-41d4-a716-446655440000",
  "status": "Running",
  "description": "Power on rack components",
  "message": "Processing 3 of 5 components",
  "ruleId": "7c9e6679-7425-40de-944b-e07fc1f90ae7",
  "report": {
    "version": 1,
    "stages": [
      {
        "number": 1,
        "status": "completed",
        "startedAt": "2026-06-08T18:00:00Z",
        "finishedAt": "2026-06-08T18:00:42Z",
        "steps": [
          {
            "componentType": "Compute",
            "status": "completed",
            "totalComponents": 4,
            "startedAt": "2026-06-08T18:00:00Z",
            "finishedAt": "2026-06-08T18:00:42Z"
          }
        ]
      },
      {
        "number": 2,
        "status": "running",
        "startedAt": "2026-06-08T18:00:42Z",
        "steps": [
          {
            "componentType": "NVLSwitch",
            "status": "running",
            "totalComponents": 2,
            "startedAt": "2026-06-08T18:00:42Z"
          },
          {
            "componentType": "PowerShelf",
            "status": "skipped",
            "totalComponents": 0
          }
        ]
      }
    ]
  }
}