# User Session Lifecycle

![PAVE Capture UI User Session Lifecycle](/files/-MbIZYH0cKHx8TQjb5_v)

Tracking the PAVE Capture UI session lifecycle is managed through monitoring steps of two processes. Session Status identifies how far along the session is. The Session Stage determines what stage of the photo capture process the User is.

### Session Status

| Status          | Description                                                                                                                                                                                                         |
| --------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| **`IDLE`**      | The session\_key was generated but there is no User activity                                                                                                                                                        |
| **`STARTED`**   | The User has opened the session and clicked GET STARTED                                                                                                                                                             |
| **`PROCESS`**   | The User has captured at least one photo                                                                                                                                                                            |
| **`QC_PASSED`** | The User has captured all photos and they passed the QC process                                                                                                                                                     |
| **`CONFIRM`**   | The session results are complete and waiting for the User to confirm                                                                                                                                                |
| **`COMPLETE`**  | The User confirmed the inspection results and closed the session                                                                                                                                                    |
| **`EXPIRED`**   | The session did not reach QC\_PASSED within the expiration timeframe configured for that API Key. [LEARN MORE](https://guides.pave.ai/branch-dashboard/user-feature-walkthrough/inspection-status/expired-sessions) |
| **`INVALID`**   | The session was marked as invalid during inspection processing due to the presence of a vehicle that didn't match the captured VIN or a photo that did not meet the requirements to complete the inspection.        |

### Session Stage

| User Capture Step | Photo Code | Photo Type   | Nullable                                       |
| ----------------- | ---------- | ------------ | ---------------------------------------------- |
| 1                 | **`1`**    | VIN          | default image URL provided if manually entered |
| 2                 | **`2`**    | Interior     | no                                             |
| 3                 | **`3`**    | Cluster      | default image URL provided if manually entered |
| 4                 | **`4`**    | Left         | yes, if all other needed images are captured   |
| 5                 | **`10`**   | Front\_Left  | yes, if all other needed images are captured   |
| 6                 | **`5`**    | Front        | yes, if all other needed images are captured   |
| 7                 | **`11`**   | Front\_Right | yes, if all other needed images are captured   |
| 8                 | **`7`**    | Right        | yes, if all other needed images are captured   |
| 9                 | **`12`**   | Rear\_Right  | yes, if all other needed images are captured   |
| 10                | **`8`**    | Rear         | yes, if all other needed images are captured   |
| 11                | **`13`**   | Rear\_Left   | yes, if all other needed images are captured   |
| 12                | **`9`**    | Windshield   | no                                             |
| 13                | **`6`**    | Tires        | no                                             |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.paveapi.com/integrations/developer-docs/user-session-lifecycle.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
