Emails API

Email account management and IMAP webmail client.

All endpoints are prefixed with /api/emails. Admin only.


Endpoints

MethodPathAuthDescription
GET/emails/listAdminList all email accounts
GET/emails/domainsAdminList email domains
POST/emails/createAdminCreate email account
GET/emails/:user/inboxAdminFetch mailbox messages
GET/emails/:user/message/:fileAdminRead single message
GET/emails/:user/foldersAdminList IMAP folders
POST/emails/:user/sendAdminSend email
POST/emails/:user/moveAdminMove messages
POST/emails/:user/deleteAdminDelete messages
GET/emails/:user/quotaAdminMailbox storage quota

Request/Response Examples

POST /emails/create

{
  "username": "john",
  "domain": "example.com",
  "password": "securepass",
  "quota": "1024"
}

GET /emails/:user/inbox

Params: folder (default: INBOX), page, limit

{
  "messages": [
    {
      "uid": "1",
      "from": "sender@example.com",
      "to": "john@example.com",
      "subject": "Hello World",
      "date": "2026-07-28T12:00:00Z",
      "size": 12345,
      "read": false
    }
  ],
  "total": 42,
  "page": 1,
  "pages": 5
}

POST /emails/:user/send

{
  "to": "recipient@example.com",
  "subject": "Test Email",
  "body": "Hello, this is a test.",
  "cc": "",
  "bcc": ""
}

Part of NexusPanel API Reference

← Back to Documentation