---
title: "List source-authorized Interactions in the granted workspace."
method: GET
path: "/api/v1/interactions"
tags: ["Interactions"]
---

# List source-authorized Interactions in the granted workspace.

`GET /api/v1/interactions`

## Request

- Base URL: `https://commentary.dev`
- URL: `https://commentary.dev/api/v1/interactions`
- Auth: HTTP bearer

Without commentary.workspaces.read, only requests addressed to the credential owner are listed. Combining that scope with commentary.interactions.read permits current source-authorized workspace conversation reads. Decision receipts, guidance and Fulfillment retain creator authority. Pages use a bounded source authorization scan and may be empty with a continuation cursor.

## Query parameters

- `limit` integer
- `cursor` string
- `state` 'draft' | 'active' | 'waiting_for_human' | 'waiting_for_agent' | 'completed' | 'rejected' | 'canceled' | 'expired' | 'failed'
- `resourceType` 'repository' | 'pull_request' | 'document' | 'draft_review' | 'form' | 'research_study' | 'knowledge_brain' | 'web_app_review'

## Headers

- `X-Commentary-Workspace-Id` string
- `X-Correlation-Id` string

## Response `200`

Successful response.

- object
  - `data` Interaction[], required
    - `id` string, required
    - `resource` InteractionResource, required
      - `type` 'draft_review' | 'form' | 'research_study' | 'web_app_review', required
      - `id` string, required
    - `state` string, required
    - `currentRevisionId` string, required
    - `version` integer, required
    - `createdAt` string, date-time, required
    - `updatedAt` string, date-time, required
    - `terminalAt` string, date-time, nullable
    - `revisions` object[]
    - `messages` InteractionMessage[]
      - `id` string, required
      - `revisionId` string, required
      - `actor` object, required
      - `body` string, nullable, required
      - `createdAt` string, date-time, required
      - `messageVersion` integer
      - `editedAt` string, date-time, nullable
      - `editable` boolean: Human conversational eligibility; never grants bearer edit authority.
  - `nextCursor` string, nullable, required

## Other responses

- `400`: The request was invalid.
- `401`: Authentication is required.
- `403`: The token or session does not have permission for this resource.
- `404`: The resource was not found.
- `429`: The request was rate limited.

---

[API](https://skmtc.dev/commentary/apis/commentary-public-api.md) · [All operations](https://skmtc.dev/commentary/apis/commentary-public-api/llms.txt) · [OpenAPI document](https://skmtc.dev/commentary/apis/commentary-public-api/revisions/7aaafc198c52?raw)
