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 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
{
"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.ahrend@gmail.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)
{
"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.ahrend@gmail.com"
}
}
}
Payload example (type changed)
{
"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.ahrend@gmail.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 |
Only fields that actually changed are included in column. If only the name changed, type will be omitted, and vice versa.
Watch Deleted Columns (column_delete)
Triggers when a column is deleted from a table.
Payload example
{
"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.ahrend@gmail.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)