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

# Enums Reference

> Complete reference for all enum values used in the Partner API.

Complete reference for all enum values used in the Partner API.

***

## Booking Status

Represents the lifecycle state of a booking.

| Value             | Description                                                                                                                                                                                                                              |
| ----------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `in progress`     | The booking is active. A service appointment has been created and the service is either upcoming or currently being performed. This is the normal operating state.                                                                       |
| `waiting payment` | The booking is waiting for payment from the customer. For CLEANOS responsibility, CleanLife has sent (or is sending) a payment link. For PARTNER responsibility, this state should not appear — bookings skip directly to `in progress`. |
| `success`         | The service has been completed successfully. This is the terminal success state.                                                                                                                                                         |
| `canceled`        | The booking has been cancelled by the partner, the customer, or CleanLife operations. This is a terminal state.                                                                                                                          |
| `failed`          | The booking could not be completed (typically due to a payment or validation error). This is a terminal error state — disregard the booking and create a new one.                                                                        |

<Note>
  Enum values contain spaces (e.g., `in progress`, `waiting payment`). URL-encode them when using as query parameter filters: `?status=in%20progress`.
</Note>

***

## Payment Status

Returned on booking responses and derived from booking state and payment confirmation:

| Value          | Description                                                                                                                                                       |
| -------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `NOT_REQUIRED` | No payment is associated with this booking (free service, or the booking model does not require payment tracking).                                                |
| `PENDING`      | Payment is required but not yet collected. For CLEANOS responsibility: waiting for customer payment. For PARTNER responsibility: awaiting `confirm-payment` call. |
| `PAID`         | Payment has been confirmed. Either a CleanLife payment record exists, or the partner called `confirm-payment`.                                                    |
| `FAILED`       | Payment processing failed. The booking is in `failed` status.                                                                                                     |
| `CANCELLED`    | The booking was cancelled.                                                                                                                                        |

***

## Partner Account Status

Status of your partner account.

| Value       | Description                                                                                         |
| ----------- | --------------------------------------------------------------------------------------------------- |
| `ACTIVE`    | Partner account is fully operational. API calls are accepted.                                       |
| `SUSPENDED` | Partner account has been temporarily suspended. API calls will be rejected with `401 UNAUTHORIZED`. |
| `INACTIVE`  | Partner account is deactivated. API calls will be rejected.                                         |

***

## Payment Responsibility

Determines who is responsible for collecting payment from the end customer.

| Value     | Description                                                                                                                                                                           |
| --------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `CLEANOS` | CleanLife collects payment from the customer. You create bookings; CleanLife handles payment links and refunds.                                                                       |
| `PARTNER` | The partner collects payment from their own customers. CleanLife accepts the booking immediately without requiring payment. The partner must call `confirm-payment` after collecting. |

***

## Appointment Status

Status of the service appointment linked to a booking. Returned in booking responses.

| Value             | Description                                                     |
| ----------------- | --------------------------------------------------------------- |
| `New`             | Appointment created but not yet assigned to a team.             |
| `Scheduled`       | Appointment assigned to a team with a confirmed start/end time. |
| `Confirmed`       | Appointment has been confirmed (e.g., by operations).           |
| `In The Way`      | The assigned team is traveling to the service location.         |
| `In The location` | The team has arrived at the service location.                   |
| `In Progress`     | The service is actively being performed.                        |
| `Finished`        | The team has completed their work at the site.                  |
| `Completed`       | The appointment has been fully processed and closed.            |
| `Cannot Complete` | The team was unable to complete the service (e.g., no access).  |
| `Cancelled`       | The appointment was cancelled.                                  |

***

## Work Type

Not exposed on the Partner API. Work type is assigned internally when a booking is created.
