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

# Watch Column Events

> Trigger webhooks when Airtable columns (fields) are created, updated, or deleted.

Column events let you react to changes at the **field level** in your Airtable base—when columns are created, renamed, have their type changed, or are deleted. This is separate from record events (which track data changes) and table events (which track table structure).

## Overview

| Event              | Triggers when                            |
| ------------------ | ---------------------------------------- |
| **column\_create** | A new column has been created in a table |
| **column\_update** | A column's name or type has changed      |
| **column\_delete** | A column has been deleted from a table   |

## Setup

You can register column event webhooks via:

* **Dashboard:** Add a new webhook and select "New Column", "Updated Column", or "Deleted Column" as the event type
* **API:** Use the [Register Webhook](/api-reference/post/webhooks/register) endpoint with `event: "column_create"`, `"column_update"`, or `"column_delete"`

For all column events, you can optionally specify which tables to watch. Leave the selection empty to watch all tables in the base.

***

## Watch New Columns (column\_create)

Triggers when a new column is created in a table.

### Payload example

```json theme={null}
{
  "id": "0abce289-4d03-46ef-80b5-16744c1798a4",
  "event": "column_create",
  "tableId": "tblL70CrLtnGYjKCV",
  "baseId": "appatVcKk6xNFwPej",
  "column": {
    "id": "fld7o1z7xd2KbA3w2",
    "name": { "current": "Text Column" },
    "type": { "current": "singleLineText" }
  },
  "meta": {
    "source": "client",
    "occurredAt": "2025-07-27T15:19:59.328Z",
    "user": {
      "id": "usrnwwJUfsBR6EMXl",
      "name": "Richard Ahrend",
      "email": "richard@simplified-webhooks.com"
    }
  }
}
```

### Key components

| Field                 | Description                                                        |
| --------------------- | ------------------------------------------------------------------ |
| `event`               | Always `"column_create"`                                           |
| `tableId`             | The ID of the table containing the new column                      |
| `baseId`              | The base containing the table                                      |
| `column.id`           | The ID of the newly created column (field)                         |
| `column.name.current` | The column's name                                                  |
| `column.type.current` | The column's Airtable field type (e.g. `singleLineText`, `number`) |
| `meta`                | Source, timestamp, and user who made the change                    |

***

## Watch Updated Columns (column\_update)

Triggers when a column's name or type is changed.

### Payload example (renamed column)

```json theme={null}
{
  "id": "0abce289-4d03-46ef-80b5-16744c1798a4",
  "event": "column_update",
  "tableId": "tblL70CrLtnGYjKCV",
  "baseId": "appatVcKk6xNFwPej",
  "column": {
    "id": "fld7o1z7xd2KbA3w2",
    "name": {
      "current": "Text Column3",
      "previous": "Text Column2"
    }
  },
  "meta": {
    "source": "client",
    "occurredAt": "2025-07-27T15:41:06.049Z",
    "user": {
      "id": "usrnwwJUfsBR6EMXl",
      "name": "Richard Ahrend",
      "email": "richard@simplified-webhooks.com"
    }
  }
}
```

### Payload example (type changed)

```json theme={null}
{
  "id": "0abce289-4d03-46ef-80b5-16744c1798a4",
  "event": "column_update",
  "tableId": "tblL70CrLtnGYjKCV",
  "baseId": "appatVcKk6xNFwPej",
  "column": {
    "id": "fld7o1z7xd2KbA3w2",
    "type": {
      "current": "multilineText",
      "previous": "singleLineText"
    }
  },
  "meta": {
    "source": "client",
    "occurredAt": "2025-07-27T15:50:21.177Z",
    "user": {
      "id": "usrnwwJUfsBR6EMXl",
      "name": "Richard Ahrend",
      "email": "richard@simplified-webhooks.com"
    }
  }
}
```

### Key components

| Field         | Description                                       |
| ------------- | ------------------------------------------------- |
| `event`       | Always `"column_update"`                          |
| `tableId`     | The ID of the table containing the updated column |
| `baseId`      | The base containing the table                     |
| `column.id`   | The ID of the updated column                      |
| `column.name` | `current` and `previous` values when name changed |
| `column.type` | `current` and `previous` values when type changed |
| `meta`        | Source, timestamp, and user who made the change   |

<Info>
  Only fields that actually changed are included in `column`. If only the name changed, `type` will be omitted, and vice versa.
</Info>

***

## Watch Deleted Columns (column\_delete)

Triggers when a column is deleted from a table.

### Payload example

```json theme={null}
{
  "id": "0abce289-4d03-46ef-80b5-16744c1798a4",
  "event": "column_delete",
  "tableId": "tblL70CrLtnGYjKCV",
  "baseId": "appatVcKk6xNFwPej",
  "column": {
    "id": "fldDBcCb3o1gVRYMG"
  },
  "meta": {
    "source": "client",
    "occurredAt": "2025-07-27T15:31:36.055Z",
    "user": {
      "id": "usrnwwJUfsBR6EMXl",
      "name": "Richard Ahrend",
      "email": "richard@simplified-webhooks.com"
    }
  }
}
```

### Key components

| Field       | Description                                     |
| ----------- | ----------------------------------------------- |
| `event`     | Always `"column_delete"`                        |
| `tableId`   | The ID of the table the column belonged to      |
| `baseId`    | The base containing the table                   |
| `column.id` | The ID of the deleted column                    |
| `meta`      | Source, timestamp, and user who made the change |

***

## When to use Column Events

* **Sync schema changes** to external systems when columns are added, renamed, or removed
* **Audit column renames** and type changes
* **Notify your team** when someone modifies the base structure
* **Maintain documentation** that reflects the current table schema
* **Trigger migrations** when column types change (e.g. singleLineText → multilineText)
