# Audit log

A single "audit log task".

The keys common to all response types are `id`, `createdByUserId`, `createdTime`, `timePeriod`, `filter`

Model is one of the following variants:

### Variant 1

- `state: "pending" | "processing"` — required

  The audit log request has not started processing or is being processed. Check again in a few minutes.

- `id: string` — required

- `createdByUserId: string` — required

  A user ID

- `createdTime: string` — required

  A date timestamp in the ISO format, eg:"2018-01-01T00:00:00.000Z"

- `timePeriod: string` — required

  Either YYYY-MM or YYYY-MM-DD, as specified in the [creation request](https://airtable.com/developers/web/api/create-audit-log-request.md).

- `filter: string` — optional

  Filter specified in the [creation request](https://airtable.com/developers/web/api/create-audit-log-request.md).

### Variant 2

- `state: "error"` — required

  There was an error while attempting to process the audit log request.
  Refer to the error message and try again.

- `errorMessage: string` — required

  An error message explaining what went wrong while processing the request.

- `id: string` — required

- `createdByUserId: string` — required

  A user ID

- `createdTime: string` — required

  A date timestamp in the ISO format, eg:"2018-01-01T00:00:00.000Z"

- `timePeriod: string` — required

  Either YYYY-MM or YYYY-MM-DD, as specified in the [creation request](https://airtable.com/developers/web/api/create-audit-log-request.md).

- `filter: string` — optional

  Filter specified in the [creation request](https://airtable.com/developers/web/api/create-audit-log-request.md).

### Variant 3

- `state: "done"` — required

  The audit log request is done processing. Download the files in **data.logFileUrls**.
  The gzipped files contain newline-delimited JSON log entries.

  `data` is uniquely provided with the `done` state

- `data: object` — required

  Results from the finished audit log processing.

  - `expirationTime: string` — required

    The time after which the URLs in **data.logFileUrls** expire.

  - `logFileUrls: array<string>` — required

    URLs to audit log files.

- `id: string` — required

- `createdByUserId: string` — required

  A user ID

- `createdTime: string` — required

  A date timestamp in the ISO format, eg:"2018-01-01T00:00:00.000Z"

- `timePeriod: string` — required

  Either YYYY-MM or YYYY-MM-DD, as specified in the [creation request](https://airtable.com/developers/web/api/create-audit-log-request.md).

- `filter: string` — optional

  Filter specified in the [creation request](https://airtable.com/developers/web/api/create-audit-log-request.md).
