# 4. How to Edit a Request

The **Requests** module not only lets you log new client requests, but also provides a full edit interface for updating request details, changing status, and communicating with clients. The Edit Request page centralizes request information and message history in one place.

##### 1. Open the Edit Request page

In the left-hand navigation, click **Requests** to view the list of all requests.  
In the table, locate the request you want to edit and click **Edit** in the Actions column.  
The Edit Request page opens with tabs for **General** and **Messages**.

##### 2. Request Activity Tracking (Last Message Timestamps)

To improve operational visibility, the system automatically tracks when the last message was sent by the client and by the manager for each request.

**New System Fields** Each Request entity contains two additional system-managed fields:

1. **Last message from client at**
2. **Last message from manager at**

These fields store the date and time of the most recent message sent by the respective party.

Defaults:

1. For existing requests: values are `null`
2. For new requests: values are updated automatically once messages are created

These fields are system-controlled and cannot be manually edited.

**Automatic Update Logic** When a new message is created inside a request:

1. If the message is sent by a **client** →  
    `Last message from client at` is updated to the message timestamp.
2. If the message is sent by a **manager** →  
    `Last message from manager at` is updated to the message timestamp.

The timestamp is derived from the message creation time.  
If a request contains messages from both parties, each field reflects the latest message from its respective sender.

**Requests Table Columns** The Requests list table includes two additional columns:

1. **Last message from client at**
2. **Last message from manager at**

Location:  
Displayed after the **Description** column.

Display behavior:

1. Uses the standard CRM date-time format
2. Shows “—” if no message exists from that side

These columns allow managers to immediately understand:  
Who interacted last  
Whether a request is waiting on client response  
Whether manager follow-up is required

**Sorting and Filtering** Both fields fully support:

**Sorting:**  
Ascending  
Descending

**Filtering:**  
Date range filtering (In Range)  
Uses the same filtering logic as other date fields

These filters can be combined with:

1. Project
2. Status
3. Type
4. Created date
5. Other existing filters

**Customize Columns Support** The two new fields are available in **Customize Columns**:

1. Show / Hide toggle
2. Column reordering
3. Persisted per user view (same behavior as other columns)

They behave identically to existing configurable columns such as Created, Updated at, and Status.

**Operational Use Cases** These timestamps help teams:

1. Identify requests waiting for manager reply
2. Detect inactive conversations
3. Prioritize active client threads
4. Monitor SLA compliance
5. Filter requests by recent client interaction

##### 3. Update Core Request Fields  


Inside the **General** tab, you can update the main request fields:  
**Name:** The request title.  
**Time range:** Start Date and End Date selectors.  
**Client:** The primary client associated with the request.  
**Related clients:** Additional client contacts linked to the request.  
**Status:** Indicates the current request state (e.g., Active, Archived).  
**Type:** Defines the request category.  
**Description:** A multi-line field for request details.

> **Note:** The **Client** field is locked after creation to preserve accountability.

##### 4. Additional Information and Attachments

In the **General** tab, you can add structured data and files to the request.  
**Additional information:** Select available nodes to store structured request data.  
**Attached file(s):** Upload files such as images or PDFs using drag and drop or the browse option.

##### 5. Communicate with the Client

Switch to the **Messages** tab at the top of the Edit Request page.  
The Messages tab displays the conversation history related to the request. If no messages exist, an empty state is shown.  
Use this tab to review previous messages and continue communication when available.

> All messages are time-stamped, attributed to you, and—if API-integrated—pushed to the client’s portal.

##### 6. Save Changes

Click **Save** to apply any updates made to the request fields or attachments.

<p class="callout info">**Note**: You can add or edit statuses that are assigned to requests in the **Settings** module ([**Statuses** tab of the **Configurations** section](https://wiki.wi.services/books/wifox-business-core-solution-wbcs/page/3-how-to-configure-statuses)).</p>

When creating a new Request status in Settings → Configurations → Statuses, make sure to define the **Order** field.  
The Order value controls how statuses are displayed in dropdowns and lists. Statuses are sorted in ascending order based on this value.

If the Order field is not set, the status may appear in an unexpected position in the interface.

The **Edit Request** feature centralizes all aspects of request management—metadata, status tracking, file attachments, and real-time messaging—into a single, intuitive panel. By keeping request details up to date and maintaining a live chat history, your team can ensure timely resolutions and a seamless client experience.