DWMail is the platform’s Outlook-class client that unifies two things in one app: everyday email and formal government correspondence. This guide covers every screen, every option and every selection — from reading and writing mail to the official-correspondence workflow and every settings page. Labels are shown in English with the Arabic in (أقواس) where relevant (the app defaults to Arabic/RTL and follows the platform’s language).
/app/dwmail). It embeds in the workspace and inherits the tenant’s brand, theme and language.DWMail is a resizable three-pane workspace: the Folder pane (your mailboxes & folders), the Conversation list (messages in the selected folder), and the Reading pane (the open message). Drag the dividers to resize; the folder pane can be collapsed from the top bar. On a phone it becomes a single column (list → tap a message → reading, with a Back (رجوع) button; folders open in a drawer).
| Control | What it does |
|---|---|
| Folder-pane toggle (إظهار/إخفاء قائمة المجلدات) | Collapse/expand the folder pane (on phones it opens the folders drawer). |
| Search mail… (البحث في البريد…) | Searches the current folder’s messages on the server. Typing is debounced ~300 ms; changing folder clears it. |
| New message (رسالة جديدة) | Opens the composer (see §8). |
| Settings (الإعدادات) (gear) | Opens Settings (see §11). |
| Language / Theme | Only shown when DWMail runs standalone; when embedded, the platform shell drives language, theme and brand. |
Your personal mailbox is listed first, then any department mailboxes you belong to (each a collapsible section). Every account has the same five folders:
Each row shows the sender, the date (time today, “d MMM” this year, else full date), the subject (with a thread count like “(3)” when it’s a conversation), and a preview. Icons/badges: an unread dot, a paperclip for attachments, an Urgent (عاجل) badge, and — on shared inboxes — a claim badge (Unclaimed or the claimer’s name). The list is virtualized and loads more as you scroll (“Loading more…”).
Hover a row to reveal its checkbox; selecting one or more replaces the header with a toolbar “{n} selected” ({{count}} محدد) offering (folder-dependent):
| Bulk action | Arabic | When shown |
|---|---|---|
| Mark as read / unread | تعليم كمقروء / غير مقروء | Any folder |
| Archive | أرشفة | Inbox / Follow-up |
| Unarchive | إلغاء الأرشفة | Archive |
| Flag / remove follow-up | إضافة/إزالة المتابعة | Not in Sent |
| Clear selection | إلغاء التحديد | Always |
On a shared department inbox, a filter row also appears: All / Unclaimed / Assigned to me (الكل / غير مُسند / المُسندة إليّ).
Open a message to see the Outlook-style command ribbon. Buttons are grouped; on narrow screens extra groups collapse into a “…” overflow menu.
| Group | Button | What it does |
|---|---|---|
| Respond الرد | Reply (رد) | Composer prefilled to the sender, subject “رد: …”. |
| Reply all (رد للكل) | To = sender + original recipients, Cc kept. | |
| Forward (إعادة توجيه) | Empty recipient, subject “إعادة توجيه: …”. | |
| Actions إجراءات | Print (طباعة) | Prints a watermarked server PDF (via a hidden frame — not the raw page). |
| Archive (أرشفة) | Archives the message and returns to the list. | |
| Tags وسوم | Follow-up (متابعة) | Jumps to the Tasks tab where the follow-up flag lives. |
| Categorize (تصنيف) | Opens the categories dialog: tick coloured categories on/off for this message, create a new one (name + colour swatch), or manage/delete. Assigned categories show as coloured chips in the reading-pane header and on the conversation-list rows. | |
| Move to folder (نقل إلى مجلد) | Files the open message into one of your folders (or back to Inbox) and returns to the list. | |
| Window نافذة | Open in window (فتح في نافذة) | Pops the message out into a separate reading window (/read/{id}). |
Below the ribbon: the subject (with an Urgent badge if urgent), the From / To / Cc parties, the send time, and — on shared inboxes — the claim banner (§7).
| Tab | Arabic | Shows |
|---|---|---|
| Message | الرسالة | The body. If it’s a Word document, an “Open in editor” button opens it in the in-browser editor (Collabora). A Thread section lists earlier messages in the conversation. |
| Correspondence | المراسلة | The official-correspondence details — classification, incoming/outgoing numbers, notes, hardcopy receipt, and the Approvals panel (§10). |
| Attachments (n) | المرفقات | Each attachment with its size and a Download (تنزيل) button (access-checked). |
| History | السجل | The action & routing history of the conversation. |
| Tasks | المهام | Follow-up flag + linked tasks (§9). |
On a department shared inbox, the reading pane shows a claim banner so two people never work the same item:
Click New message (or Reply/Forward). The composer is a dialog with its own ribbon; drafts auto-save as you type. Every control:
| Control | Options / behavior |
|---|---|
| To (إلى) | Type to search the directory — results are grouped Departments / People / External contacts. Enter picks the first match; each recipient becomes a removable chip. If you have the external-send permission, typing a raw email address offers an “Add external” chip so you can address people outside the organization (see below). |
| Cc (نسخة) / Bcc (نسخة مخفية) | The Cc and Bcc buttons each reveal an extra recipient picker. Bcc recipients receive the message but are hidden from everyone else. A name may sit in only one of To/Cc/Bcc at a time. |
| Subject (الموضوع) | Free text (auto-direction for Arabic/English). |
| Editor type | Switch between HTML editor (محرر HTML) and Word document (مستند Word) (a Collabora letter/DOCX). Switching warns that content isn’t converted. |
| Rich-text toolbar | Bold, Italic, Underline, Highlight · Heading 1/2 · Bullet & Numbered lists · Align start/center/end/justify · Insert / remove link. |
| Attach file (إرفاق ملف) | Ribbon button; each file uploads with a progress bar and can be removed. |
| Urgent (عاجل) | Toggles the urgent flag (shows a red Urgent badge to recipients). |
| Correspondence options (خيارات المراسلة) | Opens a panel: Classification (None / Low / Medium / High), Requires approval (routes through manager review before send), Notes, and a collapsible Hard copy sub-form (registrar name/number, establishment, received-by, receipt date). |
| Send (إرسال) | Requires at least one recipient. On success it confirms and shows the assigned outgoing number. |
| Schedule send (جدولة الإرسال) | Pick a future date & time; the message stays a draft and is sent automatically when due. A banner shows the pending time with a Cancel schedule option. Scheduling an external message needs the same external-send permission. |
| Save & close (حفظ وإغلاق) | Saves the draft. Closing the dialog also saves silently. |
| Open in window (فتح في نافذة) | In the ribbon’s overflow “…” menu. Pops the draft out into its own standalone window — a full-window composer with no inbox behind it and no dialog (route /compose/{account}/{folder}). The draft is saved first so both windows stay in sync. See “Open in window (pop-out)”, below. |
Need more room, or want to keep a message open while you work in the inbox? The ribbon’s overflow “…” menu has Open in window (فتح في نافذة). It saves the draft, then reopens it as a full-window composer of its own — the three-pane inbox is not behind it and there is no modal dialog, so the whole window is yours for writing. Closing that window (or Send / Save & close) returns you as usual, and the draft is kept in sync between the two.
The Tasks tab turns a message into action:
DWMail is also the government-correspondence system. A message linked to a correspondence shows the Correspondence tab with:
| Field | Detail |
|---|---|
| Classification (التصنيف) | Low / Medium / High — colored badge (green/amber/red). |
| Incoming / Outgoing number & date | The registered numbers (رقم الوارد/الصادر) — each is copyable. |
| Notes (ملاحظات) | Internal notes on the correspondence. |
| Hardcopy receipt (إيصال النسخة الورقية) | Registrar name/number, establishment, received-by, receipt date. |
The Approvals (الاعتمادات) panel drives the review chain. Its status badge reads Pending / Approved / Rejected / Returned, and lists each approver’s decision + comment. When it’s your turn, a “Your review” (مراجعتك) box gives an optional comment and three buttons: Approve (اعتماد), Reject (رفض), Return (إرجاع).
Open Settings from the gear. A side menu lists every section. All are live; the admin-only sections (Department inbox, Number series, Mail administration) show their controls to administrators and a short notice to everyone else.
New signature opens an editor with a Name, a rich-text Content, and a Set as default checkbox. Each saved signature can be set default, edited, or deleted.

Automatic sorting of incoming mail. A rule has a name, an Enabled toggle, one or more conditions (When) and one or more actions (Then):

A read-only list of the mailboxes available to you — personal and department — with each account’s kind, its distribution mode, and unread count. Accounts follow your org membership (they can’t be added/removed here).

Administrators configure, per department, how mail addressed to the department is delivered. Each department card sets:
Departments without a saved config default to Shared inbox. Use Add department config to configure one by department id. (Non-admins see a short notice instead of the controls.)
Administrators review and tune the outgoing-number sequences (see §13 for how numbering works). The table lists each series (its key, department and year) with the current last number read-only, and lets you edit the prefix, suffix and minimum digits and Save. The counter value itself isn’t hand-edited, so history stays auditable.
A single Desktop notifications (تنبيهات سطح المكتب) switch — show a browser notification when new mail arrives while the window is in the background (asks the OS for permission; warns if blocked). In-app notifications always appear and need no permission.

Connect your mailbox to Outlook or any IMAP/POP3/SMTP client. This page:

The platform operator manages the tenant’s mail here:

Found in the settings side menu right after Rules. Delegation is platform-wide: one delegation, managed here, covers your person-assigned work across the services you choose — DWMail approvals and WorkFlow requests assigned to you (and more as services adopt it):
Most of DWMail is open to any signed-in user, but a few actions are capability-gated — either by a service role on the DWMail (Mail) module, by membership of a department mailbox, or by the operator (platform) level. This table is the single reference for “who can do what, and how to grant it.”
| Capability | Who can do it | Granted by |
|---|---|---|
| Read / write ordinary mail, reply, forward, follow-up, tasks, categories, personal folders | Every signed-in user (for their own & their department mailboxes) | Nothing to grant — available to all. |
| Send to EXTERNAL recipients (الإرسال لجهات خارجية) — raw email addresses / external contacts, and scheduling an external send | SuperAdmin, or a user whose DWMail service role is ExternalSendingOffice, Director or Admin | Assign the Mail service role to the user (see “How to grant a role” below). Enforced server-side on both send and schedule; unprivileged users don’t even see the option. |
| Manage a message’s participants, delete others’ attachments, edit/complete others’ actions, reply on any thread | The item’s sender, or a user with mail role Admin or Manager | Assign the Admin / Manager mail role. |
| Claim / assign items in a shared department inbox | Any member of that department mailbox | Add the user to the department mailbox (Mail administration → mailboxes / department setup). |
| Official-correspondence pipeline — register incoming, review, finalize/sign/stamp/archive | The three desk roles: ReceiveDesk (register), ReviewDesk (review/recommend), SecretaryDesk (finalize, assign number, sign & stamp, archive); plus OfficeManager for the manager-review path | Assign the matching desk/office role to the user (see below). See §10 for the workflow — and, for a plain-language explanation of how items move, who sees what, and what happens when someone is away, read the Mail Pipeline guide. |
| Apply a signing action (stamp a signature block onto the DOCX) | Any user in a signing stage who has uploaded an e-signature | The user uploads their signature in Settings → Signatures (§11a); without one, signing actions are blocked. |
| Delegate my authority (التفويض) — let a colleague act on my approvals while I’m away | Any user may create a delegation; the delegate must accept it before it becomes active | Self-service: Settings → Delegation (§11i). Time-bound (start–end), revocable by either side, and every action taken is stamped “on behalf of”. |
| Unblock a stuck approval — reassign or cancel a pending approval addressed to an unavailable person | Admin (mail role) / SuperAdmin | Admin approvals console (API: list pending → reassign to another user, or cancel). The safety valve when no delegation was arranged in advance. |
| Mail administration (إدارة البريد) — mail domains, mailboxes, number-series configuration, deployment | Operator / SuperAdmin only | Platform-operator capability; the page (§11h) appears only for them and only where the mail-server backend is enabled. |
External send is treated as a controlled capability (spam / data-exfiltration risk), so the server never trusts
the browser — the client only hides the option, the API enforces it. On every send and every
schedule the service asks one question, CanSendExternal(user), and returns 403
with a clear Arabic message if the answer is no and the message actually has an external recipient
(all-internal messages are never blocked):
CanSendExternal(user) = TRUE if ANY of:
• the user is a platform SuperAdmin (claim is_superadmin = true)
• the user’s DWMail role is one of: ExternalSendingOffice · Director · Admin
(read from the token claim role:DWPlatform.Mail — i.e. the Mail service role)
otherwise FALSE → external chip hidden in the composer, and API returns 403 on send/schedule
GET /api/v7/mail/me/capabilities on open; if canSendExternal
is false it never offers the “Add external” chip and shows an internal-only picker.DWMail roles are ordinary service roles on the Mail module. An administrator assigns them per user in
the platform’s user management; the role is minted into the user’s token as a role:DWPlatform.Mail
claim on their next sign-in.
Formal correspondence is auditable, so every item carries reference numbers. DWMail issues them from per-department, per-year counters that can never hand out a duplicate — even if two people send at the exact same moment (each number is taken with a single atomic database increment).
| Number | When & how it’s set |
|---|---|
| Outgoing number (رقم صادر) | Auto-assigned on send / finalize of an outbound item — you don’t type it. Format OUT-{department}-{year}-{00001}: a prefix, then a 5-digit zero-padded counter (e.g. OUT-3-2026-00042). The counter is scoped to the sender’s department and the year, so each department has its own clean sequence that resets every year. If the sender has no department it falls back to a general series (OUT-{year}-…). On success the composer shows the assigned number. |
| Incoming number (رقم وارد) | Entered manually by the registrar when an inbound document is registered — it’s the reference the other party printed on the paper you received, so the system records it as given rather than generating it. |
| Manual override | An outgoing number may be supplied explicitly (e.g. to match a pre-printed form); if provided, DWMail uses it verbatim instead of drawing from the series. |
This build has no “coming soon” features. Everything described in this guide is implemented and running. The capabilities added in the 2026-07-22 pass:
Admin-only pages (Department inbox, Number series, Mail administration) show their controls to administrators and a brief notice to everyone else — that notice is a permission boundary, not an unfinished feature. Where a message-specific action doesn’t apply (e.g. “open document” on a plain-text message, or an approval decision on a message with none pending), the app says so precisely rather than implying it’s unavailable.