# Show an event

`GET /events/{event_uuid}`

- Base: `GET https://portal.watcheye.com.au/api/v1/events/{event_uuid}`

Returns a single event by its UUID, including the full notes collection.

## Parameters

| Name | In | Type | Description |
|------|----|------|-------------|
| `event_uuid` | path | string (uuid) | **Required.** The event UUID |

## Responses

### 200 Event response

Content type: `application/json`

| Field | Type | Description |
|-------|------|-------------|
| `data` | object | Same as Event, plus the embedded `notes` collection. Returned by the show and update endpoints so callers do not need a follow-up request to read the notes. |
| `data.uuid` | string (uuid) | The event's UUID Example: `4d7e0a8e-2b9f-4f0e-8d1a-1e2b3c4d5e6f` |
| `data.event_number` | string | A short obfuscated public identifier for the event Example: `V-A1-B2C-3D4` |
| `data.status` | string | Lifecycle status of the event Enum: `new`, `investigating`, `closed_dismissed`, `closed_duplicate`, `closed_error`, `closed_confirmed` |
| `data.check_type` | string | The operation type of the parent check Example: `pep_sanction_check` |
| `data.check_summary` | string or null | Short, human-readable summary of the parent check |
| `data.check_response_index` | integer or null | Index into the parent check's `response` array (`null` for grouped events) |
| `data.check_result_ids` | array of integers | Provider-side result identifiers that triggered this event |
| `data.archived_at` | string (date-time) or null |  |
| `data.deleted_at` | string (date-time) or null |  |
| `data.entity_uuid` | string (uuid) |  |
| `data.program_uuid` | string (uuid) |  |
| `data.check_uuid` | string (uuid) |  |
| `data.notes_count` | integer |  |
| `data.notes` | array of objects | All notes attached to the event, oldest first. |
| `data.notes[].uuid` | string (uuid) | The note's UUID Example: `7c1c0a8e-2b9f-4f0e-8d1a-1e2b3c4d5e6f` |
| `data.notes[].note_text` | string | The free-text content of the note (max 5000 characters) Example: `Confirmed match against verified passport details.` |
| `data.notes[].created_by` | object or null | Identifies who created the note. The `type` discriminator picks the shape of the remaining fields: * `{ type: "user", uuid, username }` - a portal user created the note. * `{ type: "api_key", uuid, label }` - an API key on this account created the note. * `null` - rare legacy notes from before actor attribution was recorded. |
| `data.notes[].created_by.type` | string | Discriminator for the actor type. Enum: `user`, `api_key` |
| `data.notes[].created_by.uuid` | string (uuid) | UUID of the user or API key that created the note. |
| `data.notes[].created_by.username` | string | Username of the portal user. Present only when `type` is `user`. |
| `data.notes[].created_by.label` | string | Label of the API key. Present only when `type` is `api_key`. |
| `data.notes[].is_immutable` | boolean | When true, the note is an immutable audit-trail entry (for example, a bulk-update record) and cannot be edited or deleted through any channel. Example: `false` |
| `data.notes[].created_at` | string (date-time) | ISO 8601 timestamp at which the note was created Example: `2025-01-01T00:00:00Z` |
| `data.notes[].updated_at` | string (date-time) | ISO 8601 timestamp at which the note was last updated Example: `2025-01-01T00:00:00Z` |
| `data.created_at` | string (date-time) |  |
| `api_reference` | string (uuid) |  |

**Sample response**

```json
{
    "data": {
        "uuid": "4d7e0a8e-2b9f-4f0e-8d1a-1e2b3c4d5e6f",
        "event_number": "V-A1-B2C-3D4",
        "status": "new",
        "check_type": "pep_sanction_check",
        "check_summary": "string",
        "check_response_index": 0,
        "check_result_ids": [
            0
        ],
        "archived_at": "2024-01-01T00:00:00Z",
        "deleted_at": "2024-01-01T00:00:00Z",
        "entity_uuid": "00000000-0000-0000-0000-000000000000",
        "program_uuid": "00000000-0000-0000-0000-000000000000",
        "check_uuid": "00000000-0000-0000-0000-000000000000",
        "notes_count": 0,
        "notes": [
            {
                "uuid": "7c1c0a8e-2b9f-4f0e-8d1a-1e2b3c4d5e6f",
                "note_text": "Confirmed match against verified passport details.",
                "created_by": {
                    "type": "user",
                    "uuid": "00000000-0000-0000-0000-000000000000",
                    "username": "string",
                    "label": "string"
                },
                "is_immutable": false,
                "created_at": "2025-01-01T00:00:00Z",
                "updated_at": "2025-01-01T00:00:00Z"
            }
        ],
        "created_at": "2024-01-01T00:00:00Z"
    },
    "api_reference": "00000000-0000-0000-0000-000000000000"
}
```

Standard error responses: 400, 401, 403, 404, 429, 5XX (see [Common error responses](/docs/reference/general/common-error-responses.md))

