---
title: "List Agent Commands"
method: GET
path: "/api/mesh/agents/{agent_key}/commands"
tags: ["mesh"]
---

# List Agent Commands

`GET /api/mesh/agents/{agent_key}/commands`

## Request

- Base URL: `https://api.superit.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api.superit.ai/api/mesh/agents/{agent_key}/commands`
- Auth: HTTP bearer

Paginated command audit history for a device. Engineer/admin only.

## Path parameters

- `agent_key` string, required

## Query parameters

- `success_only` boolean
- `q` string
- `membership_id` integer
- `page` integer
- `pageSize` integer
- `team_key` string, required

## Response `200`

Successful Response

- PaginatedResponseCommandExecutionDetail
  - `count` integer, required
  - `page` integer, required
  - `pageSize` integer, required
  - `totalPages` integer, required
  - `results` CommandExecutionDetail[], required
    - `key` string, required
    - `fullCommand` string, required
    - `status` 'approval_pending' | 'approval_declined' | 'denied' | 'queued' | 'dispatched' | 'device_unreachable' | 'completed' | 'failed' | 'timeout' | 'agent_error', required
    - `risk` string, nullable
    - `reason` string, nullable
    - `elevated` string, nullable
    - `runAsUser` string, nullable
    - `exitCode` integer, nullable
    - `durationMs` integer, nullable
    - `actor` CommandExecutionActor, required: Resolved actor for a command row / actor dropdown entry. ``membership_id`` is always the raw requesting id (the filter value); ``membership_key`` and ``email`` are ``None`` and ``name`` is "Unknown user" when the membership no longer resolves.
      - `membershipId` integer, required
      - `membershipKey` string, nullable
      - `name` string, required
      - `email` string, nullable
    - `chatKey` string, nullable
    - `createdAt` string, nullable, required
    - `dispatchedAt` string, nullable, required
    - `completedAt` string, nullable, required
    - `stdout` string, nullable
    - `stderr` string, nullable
    - `outputTruncated` boolean
    - `outputSizes` OutputSizes
      - `stdout` StreamSizes, required
        - `storedBytes` integer, required
        - `hiddenStart` integer, required
        - `hiddenBytes` integer, required
        - `agentBytes` integer, required
        - `backendBytes` integer, nullable, required
      - `stderr` StreamSizes, required
        - `storedBytes` integer, required
        - `hiddenStart` integer, required
        - `hiddenBytes` integer, required
        - `agentBytes` integer, required
        - `backendBytes` integer, nullable, required
    - `deniedReason` string, nullable
    - `commandSegments` CommandSegment[], nullable
      - `text` string, required
      - `verb` string, nullable
      - `stepKey` string, nullable
      - `elevated` boolean

## Other responses

- `400`: Invalid input
- `401`: Not authenticated
- `403`: Forbidden
- `404`: Not found
- `405`: Method not allowed
- `409`: Conflict
- `422`: Validation Error

---

[API](https://skmtc.dev/superit/apis/super-it-api.md) - [All operations](https://skmtc.dev/superit/apis/super-it-api/llms.txt) - [OpenAPI document](https://skmtc.dev/superit/apis/super-it-api/revisions/4944d556c2bb?raw)
