> ## Documentation Index
> Fetch the complete documentation index at: https://docs.plane.com/llms.txt
> Use this file to discover all available pages before exploring further.

# Event

> Events represent changes to resources in your workspace

Events are records of significant changes that occur within your Plane workspace. When a worker is created, a payment is updated, or other important actions happen, Plane generates an event that captures what changed.

You can retrieve events through the API to build integrations, audit trails, or sync data with external systems. For real-time notifications, you can also receive events via [webhooks](/reference/webhooks).

## The event object

<ResponseField name="id" type="string">
  Unique identifier for the event.
</ResponseField>

<ResponseField name="type" type="string">
  The type of event that occurred. See [supported event types](#event-types) below.
</ResponseField>

<ResponseField name="subject" type="string">
  The ID of the resource that the event relates to (e.g., a worker ID or payment ID).
</ResponseField>

<ResponseField name="workspace" type="string">
  The ID of the workspace where the event occurred.
</ResponseField>

<ResponseField name="data" type="object">
  A snapshot of the resource at the time of the event. The structure varies by event type.
</ResponseField>

<ResponseField name="created" type="string">
  Time at which the event was created, in ISO 8601 format.
</ResponseField>

```json Example event theme={null}
{
  "id": "evt_abc123def456",
  "type": "worker.created",
  "subject": "wr_xyz789",
  "workspace": "ws_456def",
  "data": {
    "id": "wr_xyz789",
    "first_name": "Jane",
    "last_name": "Smith",
    "email": "jane@example.com",
    "status": "active"
  },
  "created": "2024-01-15T10:30:00Z"
}
```

## Event types

| Type              | Description                                            |
| ----------------- | ------------------------------------------------------ |
| `worker.created`  | A new worker was added to the workspace                |
| `worker.updated`  | A worker's information was modified                    |
| `payment.created` | A new payment was created                              |
| `payment.updated` | A payment was modified                                 |
| `offer.updated`   | An offer changed without a lifecycle status transition |
| `offer.sent`      | An offer was sent or returned to the sent state        |
| `offer.expired`   | An offer expired before the recipient responded        |
| `offer.voided`    | An offer was voided                                    |
| `offer.accepted`  | A recipient accepted an offer                          |
| `offer.declined`  | A recipient declined an offer                          |

## Receiving events

There are two ways to receive events from Plane:

<CardGroup cols={2}>
  <Card title="Poll the API" icon="rotate" href="/reference/events/list">
    Retrieve events on your own schedule by calling the list events endpoint. Useful for batch processing or backfilling data.
  </Card>

  <Card title="Webhooks" icon="webhook" href="/reference/webhooks">
    Receive events in real-time via HTTP POST to your server. Ideal for building responsive integrations.
  </Card>
</CardGroup>
