# Get the signed region audit log

`GET /apis/cra.diagrid.io/v1beta1/auditevents/regionlog`

The organization's region management API audit log, one line per authenticated call, exactly as stored, together with the checkpoint lines that sign them, for verification with `diagrid audit verify`.

## Request

### Query parameters

| Name | Type | Required | Description |
| --- | --- | --- | --- |
| `start` | string | No | Start of the time range: an RFC 3339 timestamp, a duration ago such as `2:hours`, or a page's `next` cursor. Defaults to one hour ago; at most 7 days ago. |
| `end` | string | No | End of the time range, in the same forms as `start`. Defaults to now. |

## Responses

### 200 — A page of signed log lines.

`application/json`

- `lines` (object[]) — Required. Lines in the time range, oldest first, signing checkpoints included.
  - `timestamp` (string) — Required. When the line was stored, in nanoseconds since the Unix epoch.
  - `line` (string) — Required. The line as stored: a JSON object whose `sig_*` fields sign it. Pass it to the verifier unchanged.
- `next` (string) — Pass as `start` to read the next page. Empty on the last page of the range.

### 400 — The time range is not valid.

`application/json`

In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.

- `code` (string) — Required. This is the same as the HTTP status of the response.
- `message` (string) — Required. A short description of the error.
- `status` (object) — Required. A status code that indicates the error type.
- `details` (object) — Additional details about the errors.
  - `@type` (string) — The type of error.
  - `reason` (string) — A reason for the error.
  - `domain` (string) — The domain in which the error occurred.
  - `metadata` (object) — Additional metadata about the error.

### 401 — Authentication failed: the credentials are missing or not valid, or the `x-diagrid-orgid` header names a different organization than the credentials.

`application/json`

In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.

- `code` (string) — Required. This is the same as the HTTP status of the response.
- `message` (string) — Required. A short description of the error.
- `status` (object) — Required. A status code that indicates the error type.
- `details` (object) — Additional details about the errors.
  - `@type` (string) — The type of error.
  - `reason` (string) — A reason for the error.
  - `domain` (string) — The domain in which the error occurred.
  - `metadata` (object) — Additional metadata about the error.

### 403 — You are not authorized to perform this action.

`application/json`

In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.

- `code` (string) — Required. This is the same as the HTTP status of the response.
- `message` (string) — Required. A short description of the error.
- `status` (object) — Required. A status code that indicates the error type.
- `details` (object) — Additional details about the errors.
  - `@type` (string) — The type of error.
  - `reason` (string) — A reason for the error.
  - `domain` (string) — The domain in which the error occurred.
  - `metadata` (object) — Additional metadata about the error.

### 500 — The lines could not be read. This includes a full page of lines that all share one timestamp: Loki pages by time alone, so the read cannot continue past them without skipping lines, which would then verify as deleted.

`application/json`

In the case of an error, a standard format error response body will be returned and the HTTP status code will be set to an error status. The response contains an object with a single error object.

- `code` (string) — Required. This is the same as the HTTP status of the response.
- `message` (string) — Required. A short description of the error.
- `status` (object) — Required. A status code that indicates the error type.
- `details` (object) — Additional details about the errors.
  - `@type` (string) — The type of error.
  - `reason` (string) — A reason for the error.
  - `domain` (string) — The domain in which the error occurred.
  - `metadata` (object) — Additional metadata about the error.
