# Shared Inbox

> Read and reply to WhatsApp conversations on your Edesy number from one inbox. Send text or an image, track unread messages, and assign, close or reopen conversations over the API.

Source: https://edesy.in/docs/whatsapp-number/inbox/shared-inbox

The shared inbox in wa-connect.edesy.in shows every WhatsApp conversation on your Edesy numbers in one place. Your team can open a conversation, read the message history and reply with text or an image. Over the API you can also assign a conversation to an agent, close it, reopen it and mark it read.

## Facts

| Item | Detail |
|---|---|
| Where | wa-connect.edesy.in > **Conversations** |
| Who can use it | Members of your Edesy workspace |
| Reply types in the portal | Text, image (by public URL) |
| Search | By conversation |
| Unread | Unread count per conversation; opening a conversation marks it read |
| 24-hour window | Free-form replies only within 24 hours of the customer's last message; after that, send a [template](https://edesy.in/docs/whatsapp-number/templates/create-and-sync) |
| Conversation status | `active`, `expired` (24-hour window passed), `closed`, `blocked` |
| API actions | List, get, update, assign, unassign, close, reopen, mark read |

## How it works

1. **A customer messages your number.** The conversation appears in **Conversations** with a preview and unread count. A `message.received` [webhook](https://edesy.in/docs/whatsapp-number/api/webhooks) is sent too.
2. **Open the conversation.** The history loads and the conversation is marked read.
3. **Reply** with text, or paste an image URL to send an image.
4. **Track delivery.** Message status moves through `sent`, `delivered` and `read`, or `failed`.
5. **Manage the conversation** with the API: assign it to an agent, close it when done, reopen it if the customer writes back.

## Conversations API

Base URL: `https://voice-api.edesy.in/v1/whatsapp`. Auth: `Authorization: Bearer sk_...`.

| Method | Path | Description |
|---|---|---|
| `GET` | `/conversations` | List. Query: `status`, `search`, `phone_number_id`, `agent_id`, `has_unread=true`, `sort_by` (default `last_message_at`), `sort_order`, `page`, `per_page` |
| `GET` | `/conversations/{id}` | One conversation |
| `PATCH` | `/conversations/{id}` | Update `customer_name`, `labels`, `assigned_to_agent_id` or `status` |
| `POST` | `/conversations/{id}/assign` | Assign. Body `{"agent_id": "..."}` |
| `DELETE` | `/conversations/{id}/assign` | Unassign |
| `POST` | `/conversations/{id}/close` | Close |
| `POST` | `/conversations/{id}/reopen` | Reopen |
| `POST` | `/conversations/{id}/read` | Mark as read |
| `GET` | `/messages?conversation_id={id}` | Messages in a conversation |

Each conversation includes `customer_phone`, `customer_name`, `status`, `unread_count`, `message_count`, `last_message_preview`, `last_message_at`, `window_expires_at`, `can_reply_freely` and `assigned_to_agent_id`.

## FAQ

### Can several people answer from the same WhatsApp number?
Yes. Everyone in your Edesy workspace sees the same inbox for your connected numbers.

### Why can't I send a free-form reply?
WhatsApp allows free-form messages only within 24 hours of the customer's last message. After that the API returns `MESSAGING_WINDOW_EXPIRED`; send an approved template instead.

### How do I know if the 24-hour window is open?
Check `can_reply_freely` and `window_expires_at` on the conversation.

### Can I send images from the inbox?
Yes. Paste a public image URL. Audio, video and documents can be sent through the [API](https://edesy.in/docs/whatsapp-number/api/send-messages).

### Can I assign conversations to agents?
Yes, with `POST /v1/whatsapp/conversations/{id}/assign`. You can filter the list by `agent_id`.

### Does the inbox connect to my CRM?
Use the `message.received` and `message.status` [webhooks](https://edesy.in/docs/whatsapp-number/api/webhooks) to push messages into your own system.

### Is this the same as the contact center agent desktop?
No. The inbox is for WhatsApp messages. Voice calls are handled in the Cloud Contact Center.
