> ## 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.

# Benefit enrollment

A benefit enrollment is one worker's run through an [event](/reference/benefit-events/object) —
the workflow that tracks their progress from "not started" through "submitted"
and produces their [elections](/reference/benefit-elections/object). It's the
container: the elections are the choices it yields. There is one enrollment per
worker per event.

### Lifecycle

An enrollment moves through these statuses:

| Status        | Meaning                                                          |
| ------------- | ---------------------------------------------------------------- |
| `not_started` | The window is open for the worker; no choices made yet.          |
| `in_progress` | The worker has begun making choices.                             |
| `submitted`   | The worker has submitted their choices; coverage is finalized.   |
| `completed`   | The run is complete — a decision exists for every eligible plan. |
| `waived`      | The worker declined coverage entirely.                           |
| `cancelled`   | The run was cancelled.                                           |

### Attributes

<ResponseField name="id" type="string">
  Unique identifier for the enrollment, e.g. `bene_X8pR5sT1vA4o`.
</ResponseField>

<ResponseField name="object" type="string">
  The object type. Always `benefit.enrollment`.
</ResponseField>

<ResponseField name="worker" type="string">
  ID of the worker whose run this is.
</ResponseField>

<ResponseField name="event" type="string">
  ID of the [event](/reference/benefit-events/object) the run is under.
</ResponseField>

<ResponseField name="status" type="string">
  Workflow status — see the lifecycle table above.
</ResponseField>

<ResponseField name="metadata" type="object">
  Set of key-value pairs attached to the enrollment.
</ResponseField>

<ResponseField name="created" type="string">
  Timestamp of when the enrollment was created.
</ResponseField>

<ResponseField name="updated" type="string">
  Timestamp of when the enrollment was last updated.
</ResponseField>
