Action Item

Unassign an action item

Changed on

Remove the owner from an action item, returning it to the unassigned pool. The assignee_id, assigned_at, and assigned_by fields are cleared.

The status rule of action_item:assign applies here too. Unassigning an item that nobody owns returns a 400.

post/action_item/{id}/unassign

Request

  • Base URL
    https://api.nullplatform.com
  • URL
    https://api.nullplatform.com/action_item/{id}/unassign
  • Auth
    HTTP bearer

Path parameters

idstring required

The action item ID.

Request body

actorstring

The email of the user performing the action. If provided, the caller must be authorized to act on behalf of that user.

Example request

{
  "actor": "jane@example.com"
}

Response

The updated action item.

idstring

The unique action item ID.

slugstring

Auto-generated URL-friendly slug.

nrnstring

The NRN that owns this action item.

titlestring

The title.

descriptionstring

The description. Supports Markdown.

status'open' | 'in_progress' | 'pending_deferral' | 'deferred' | 'pending_verification' | 'resolved' | 'pending_rejection' | 'rejected' | 'closed'

The current status.

priority'low' | 'medium' | 'high' | 'critical'

Priority level.

scoreinteger

Calculated score based on value and priority.

category_idstring

The category ID.

valuenumber

Estimated benefit of resolving the item.

created_bystring

The creator email or agent identifier.

assignee_idinteger

The nullplatform user ID of the item's owner, or null when nobody owns it.

assigned_atstring date-time

When the current assignment was made. ISO 8601 date-time.

assigned_bystring

Who made the current assignment: a user email or an agent identifier.

due_datestring date-time

Optional deadline. ISO 8601 date-time.

deferred_untilstring date

Date until which the item is deferred.

resolved_atstring date

Date when the item was resolved.

labelsobject

Key-value pairs for classification.

metadataobject

Flexible metadata.

deferral_countinteger

Number of times this item has been deferred.

created_atstring date-time

Creation timestamp.

updated_atstring date-time

Last update timestamp.

Example response

{
  "id": "xYz789AbCdEf",
  "slug": "upgrade-base-image-to-fix-cve-2026-1234",
  "nrn": "organization=1:account=2:namespace=3:application=4",
  "title": "Upgrade base image to fix CVE-2026-1234",
  "description": "The current base image has a critical vulnerability.",
  "status": "open",
  "priority": "critical",
  "score": 2000,
  "category_id": "abc123def456",
  "value": 500,
  "created_by": "security-scanner-agent",
  "assignee_id": 2345,
  "assigned_at": "2026-08-20T14:32:00Z",
  "assigned_by": "jane@example.com",
  "due_date": "2026-05-01T00:00:00Z",
  "labels": {
    "source": "container-scan",
    "cve": "CVE-2026-1234"
  },
  "affected_resources": [
    {
      "type": "application",
      "name": "my-api-service",
      "permalink": "https://app.nullplatform.com/applications/4",
      "description": "Main API service"
    }
  ],
  "references": [
    {
      "name": "CVE-2026-1234",
      "permalink": "https://nvd.nist.gov/vuln/detail/CVE-2026-1234",
      "description": "NVD entry for this vulnerability"
    }
  ],
  "metadata": {
    "cve_id": "CVE-2026-1234"
  },
  "config": {
    "max_deferral_days": 90,
    "max_deferral_count": 3
  },
  "comments": [
    {
      "id": "cmt123AbCdEf",
      "author": "jane@example.com",
      "content": "This should be prioritized for the next sprint.",
      "created_at": "2026-04-06T14:30:00.000Z"
    }
  ],
  "audit_logs": [
    {
      "id": "3c35f973-d53b-4e60-a578-2e8fba1dbbb1",
      "actor": "jane@example.com",
      "action": "deferred",
      "details": {
        "from": "open",
        "to": "deferred",
        "reason": "Waiting for the next maintenance window."
      },
      "timestamp": "2026-04-06T12:00:00.000Z"
    }
  ],
  "created_at": "2026-04-06T12:00:00.000Z",
  "updated_at": "2026-04-06T12:00:00.000Z"
}

Changes

    • breaking

      the response's body type changed from no type to object for status

    • breaking

      the response property became optional for the status

    • breaking

      removed the required property from the response with the status

    • breaking

      removed the required property from the response with the status

    • info

      removed subschema #1 subschema #2 from the response body oneOf list for the response status

    • info

      media type application/json was changed to a more specific media type application/problem+json for the response status

    • info

      media type application/json was changed to a more specific media type application/problem+json for the response status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      added the optional property to the response with the status

    • info

      response property message deprecated

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status

    • info

      added the required property to the response with the status