# Webhooks table changed

The presence of each __created*__, __destroyed*__, __changed*__ field
is determined by the specification filters and the actual change itself.

Previous and unchanged values are only a part of the payload if the
[specification](https://airtable.com/developers/web/api/model/webhooks-specification.md) contains them in the includes object.

```
{
 "changedMetadata": {
     "current": {
         "name": "table name",
         "description": "table description"
     },
     "previous": {
         "name": "previous name",
         "description": "previous name"
     }
 },
 "createdFieldsById": {
     "fld10000000000000": {
         "name": "new name",
         "type": "number"
     }
 },
 "changedFieldsById": {
     "fld10000000000001": {
         "current": {
             "name": "new name"
         },
         "previous": {
             "name": "previous name"
         }
     },
     "fld10000000000002": {
         "current": {
             "type": "number"
         },
         "previous": {
             "type": "rating"
         }
     }
 },
 "destroyedFieldIds": [
     "fld10000000000003"
 ],
 "createdRecordsById": {
     "rec00000000000000": {
         "cellValuesByFieldId": {
             "fld0000000000000": 0
         },
         "createdTime": "2022-02-01T21:25:05.663Z"
     }
 },
 "changedRecordsById": {
     "rec00000000000001": {
         "current": {
             "cellValuesByFieldId": {
                 "fld00000000000001": "hello world"
             }
         },
         "previous": {
             "cellValuesByFieldId": {
                 "fld0000000000001": "hello"
             }
         },
         "unchanged": {
             "cellValuesByFieldId": {
                 "fld0000000000000": 1
             }
         }
     }
 },
 "destroyedRecordIds": [
     "rec00000000000002"
 ],
 "changedViewsById": {
     "viw00000000000000": {
         "createdRecordsById": {
             "rec00000000000000": {
                 "cellValuesByFieldId": {
                     "fld00000000000000": 0
                 },
                 "createdTime": "2022-02-01T21:25:05.663Z"
             }
         },
         "changedRecordsById": {
             "rec00000000000001": {
                 "current": {
                     "cellValuesByFieldId": {
                         "fld00000000000001": "hello world"
                     }
                 },
                 "previous": {
                     "cellValuesByFieldId": {
                         "fld0000000000001": "hello"
                     }
                 },
                 "unchanged": {
                     "cellValuesByFieldId": {
                         "fld0000000000000": 1
                     }
                 }
             }
         },
         "destroyedRecordIds": [
             "rec00000000000002"
         ]
     }
 }
```

## Models that reference this object

- [Change events data](https://airtable.com/developers/web/api/model/change-events-data.md)
- [Webhooks payload](https://airtable.com/developers/web/api/model/webhooks-payload.md)

- `changedViewsById: object` — optional

  This is only included when `recordChangeScope` is a view id.

  - `[key: string]: object`

    - `changedRecordsById: Webhooks-changed-record` — optional

      Changed events are generated when a record in a view changes.

    - `createdRecordsById: Webhooks-created-record` — optional

      Create events when a record is added or made visible to a view.

    - `destroyedRecordIds: array<string>` — optional

      Destroyed events are generated when a record is deleted or removed from a view.

- `changedFieldsById: object` — optional

  - `[key: string]: object`

    - `current: object` — required

      - `type: Field-Type` — optional

      - `name: string` — optional

    - `previous: object` — optional

      - `type: Field-Type` — optional

      - `name: string` — optional

- `changedRecordsById: Webhooks-changed-record` — optional

- `createdFieldsById: object` — optional

  - `[key: string]: object`

    - `type: Field-Type` — required

    - `name: string` — required

- `createdRecordsById: Webhooks-created-record` — optional

- `changedMetadata: object` — optional

  - `current: object` — required

    - `description: string | null` — optional

    - `name: string` — optional

  - `previous: object` — required

    - `description: string | null` — optional

    - `name: string` — optional

- `destroyedFieldIds: array<string>` — optional

- `destroyedRecordIds: array<string>` — optional
