# Read a record's merged feed

One paged, time-ordered timeline for a record, merging four sources it already has: activity-log entries (which carry stage moves, signing and underwriting events), internal thread comments, texts/emails/calls linked to the record, and documents that landed. Each item carries an actor, a time, a one-line sentence, a link, its reactions and whether the caller follows the record. Reach for this to answer 'what has happened on this record' in full; the narrower /activity route answers only 'what did people do to it'. Page with the returned nextCursor; narrow with kind=activity|thread_message|comms|document.

Access class: `def:read`.

## Endpoint

`GET /v1/definitions/{key}/rows/{rowId}/feed`

## Parameters

| Name | In | Type | Required |
| --- | --- | --- | --- |
| key | path | string | Yes |
| rowId | path | string | Yes |
| body | query | null | No |
| params | query | object | No |
| query | query | object | No |

## Responses

### 200

the action's answer

Content type: `application/json`.

```json
{
  "data": {
    "following": true,
    "items": [
      {
        "actorKind": "string",
        "actorUserId": 1.5,
        "detail": {
          "account_id": "",
          "columns": [
            "string"
          ],
          "consent_version": "string",
          "contentType": "string",
          "definition_id": "",
          "definition_key": "string",
          "documentType": "string",
          "email": "string",
          "entity_group_id": "",
          "mentions": [
            "string"
          ],
          "merchant_email": "string",
          "name": "string",
          "pinned": true,
          "role": "string",
          "scope": "string",
          "script_id": 1.5,
          "sizeBytes": 1.5,
          "sources": [
            "string"
          ],
          "status": "string",
          "super_kyc_id": "",
          "threadId": "",
          "threadSubject": "string",
          "version": 1.5
        },
        "id": "",
        "kind": "string",
        "link": "string",
        "occurredAt": "string",
        "reactions": [
          "string"
        ],
        "sentence": "string"
      }
    ]
  }
}
```

### default

a refusal: `{"error": "<what a person needs to read>"}`. 401 no credential, 402 the plan does not include this, 403 the seat does not, 404 the thing does not exist or is not yours to see.

Content type: `application/json`.

```json
{
  "error": "string"
}
```
