> ## Documentation Index
> Fetch the complete documentation index at: https://deepline.com/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Context.dev: Contextdev Get Webdb Row History

> Get a row's change history. Includes SDK V2 and CLI requests, input constraints, response fields, and Deepline credit cost.

Get a row's change history.

<Info>
  Tool ID: `contextdev_get_webdb_row_history`
</Info>

## Run this action

Use the TypeScript SDK for a single call. Put `ctx.tools.execute(...)` inside a Play when the call should be durable, scheduled, or run across a CSV.

```ts theme={null}
import { Deepline } from 'deepline';

const deepline = await Deepline.connect();
const result = await deepline.tools.execute(
  'contextdev_get_webdb_row_history',
  {
    "row_id": "row_123"
  },
);

console.log(result.toolResponse.raw);
```

### CLI

```bash theme={null}
deepline tools execute contextdev_get_webdb_row_history --input '{
  "row_id": "row_123"
}' --json
```

## Example response

The SDK exposes this shape at `result.toolResponse.raw`. Values below are representative.

```json theme={null}
{
  "data": {
    "row_id": "row_123",
    "changes": [
      {
        "at": "2026-01-15T12:00:00Z",
        "version": 123,
        "event": "row.created",
        "fields": {}
      }
    ],
    "has_more": true,
    "next_cursor": "cursor_123"
  }
}
```

Use `deepline tools get contextdev_get_webdb_row_history --json` for the latest machine-readable contract.

## Input reference

Returns changes for one row, newest first.

| Name             | Type      | Required | Default | Details                                                                                                                                                                                                                                   |
| ---------------- | --------- | -------- | ------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `payload.row_id` | `string`  | Yes      | —       | Row ID.                                                                                                                                                                                                                                   |
| `payload.limit`  | `integer` | No       | —       | Maximum items to return. Defaults to 25. Minimum: 1. Maximum: 100.                                                                                                                                                                        |
| `payload.cursor` | `string`  | No       | —       | Pagination cursor from a previous response.                                                                                                                                                                                               |
| `payload.tags`   | `array`   | No       | —       | Optional comma-separated caller-defined tags for tracking this request. Tags are recorded on the request's usage log and can be used to filter usage on the dashboard usage page. Up to 20 tags, each 1-50 characters. Maximum items: 20. |

<details>
  <summary>Show raw input schema</summary>

  ### Input JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "description": "Returns changes for one row, newest first.",
    "properties": {
      "row_id": {
        "type": "string",
        "description": "Row ID."
      },
      "limit": {
        "type": "integer",
        "description": "Maximum items to return. Defaults to 25.",
        "minimum": 1,
        "maximum": 100
      },
      "cursor": {
        "type": "string",
        "description": "Pagination cursor from a previous response."
      },
      "tags": {
        "type": "array",
        "description": "Optional comma-separated caller-defined tags for tracking this request. Tags are recorded on the request's usage log and can be used to filter usage on the dashboard usage page. Up to 20 tags, each 1-50 characters.",
        "maxItems": 20,
        "items": {
          "type": "string",
          "minLength": 1,
          "maxLength": 50
        }
      }
    },
    "required": [
      "row_id"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Output reference

| Name                            | Type                                                                                   | Required | Default | Details                                                                                |
| ------------------------------- | -------------------------------------------------------------------------------------- | -------- | ------- | -------------------------------------------------------------------------------------- |
| `result.data`                   | `object`                                                                               | Yes      | —       | —                                                                                      |
| `result.data.row_id`            | `string`                                                                               | Yes      | —       | —                                                                                      |
| `result.data.changes`           | `array`                                                                                | Yes      | —       | —                                                                                      |
| `result.data.changes[].at`      | `string`                                                                               | Yes      | —       | Format: `date-time`.                                                                   |
| `result.data.changes[].version` | `integer`                                                                              | Yes      | —       | —                                                                                      |
| `result.data.changes[].event`   | `"row.created" \| "row.updated" \| "row.removed" \| "row.error" \| "row.cap_consumed"` | Yes      | —       | Allowed: `row.created`, `row.updated`, `row.removed`, `row.error`, `row.cap_consumed`. |
| `result.data.changes[].fields`  | `object \| null`                                                                       | Yes      | —       | —                                                                                      |
| `result.data.has_more`          | `boolean`                                                                              | Yes      | —       | —                                                                                      |
| `result.data.next_cursor`       | `string \| null`                                                                       | Yes      | —       | —                                                                                      |
| `result.data.key_metadata`      | `object`                                                                               | No       | —       | —                                                                                      |
| `result.meta`                   | `object`                                                                               | No       | —       | —                                                                                      |

<details>
  <summary>Show raw output schema</summary>

  ### Output JSON Schema

  ```json theme={null}
  {
    "type": "object",
    "properties": {
      "data": {
        "type": "object",
        "properties": {
          "row_id": {
            "type": "string"
          },
          "changes": {
            "type": "array",
            "items": {
              "type": "object",
              "properties": {
                "at": {
                  "type": "string",
                  "format": "date-time"
                },
                "version": {
                  "type": "integer"
                },
                "event": {
                  "type": "string",
                  "enum": [
                    "row.created",
                    "row.updated",
                    "row.removed",
                    "row.error",
                    "row.cap_consumed"
                  ]
                },
                "fields": {
                  "type": [
                    "object",
                    "null"
                  ],
                  "additionalProperties": {
                    "type": "object",
                    "properties": {
                      "from": {},
                      "to": {}
                    },
                    "required": [
                      "from",
                      "to"
                    ],
                    "additionalProperties": false
                  }
                }
              },
              "required": [
                "at",
                "version",
                "event",
                "fields"
              ],
              "additionalProperties": false
            }
          },
          "has_more": {
            "type": "boolean"
          },
          "next_cursor": {
            "type": [
              "string",
              "null"
            ]
          },
          "key_metadata": {
            "type": "object",
            "properties": {},
            "required": [],
            "additionalProperties": false
          }
        },
        "required": [
          "row_id",
          "changes",
          "has_more",
          "next_cursor"
        ],
        "additionalProperties": false
      },
      "meta": {
        "type": "object",
        "additionalProperties": true
      }
    },
    "required": [
      "data"
    ],
    "additionalProperties": false
  }
  ```
</details>

## Deepline cost

* Pricing model: `fixed` (per call).
* Estimated Deepline credits: `0` per pricing unit.
* Provider-native pricing may still exist outside Deepline credit billing.

## Related documentation

* [Context.dev provider guide](/docs/providers/contextdev/guide)
* [SDK V2 quickstart](/docs/sdk-v2/quickstart)
* [SDK reference](/docs/sdk-v2/sdk-reference)
* [Run tools across a CSV](/docs/sdk-v2/batch-csv)
