UNITED-PAGES offers a REST-EMAIL interface.
To send noreply-emails, you only need a UP account.
To send, receive, or delete emails using your own email account, you also need to provide your email account password, which does not necessarily have to be the same as your UP account password. Furthermore, UP specifically enables the development of a client that is limited exclusively to signed emails.
Send noreply
Every registered UP user can trigger E-Mails that are sent from noreply@<upwebserver> to a E-Mail receiver that does not necessarily have to be a UP user.
Example:
The sender joe.doe@goohoo.com is registered at united-pages.com (since goohoo.com is not yet a UP provider). The receiver joe.bloggs@hoogoo.com is not a UP user.
Joe can trigger an E-Mail (with an optionally attached file) via the following curl-command:
--user john.doe@goohoo.com:<johns-up-pwd>
Signed E-Mails
UNITED-PAGES provides a REST-IMAP(RFC3501) interface. Via the API an UP-WEBSERVER can be triggered to send a new E-Mail, request received E-Mails and delete E-Mails.
This involves adding a digital signature to emails based on the UNITED-PAGES public key. A digital signature allows authentication, i.e. verify, that an email truly originates from the sender.
UNITED-PAGES enables development of an email client that is limited exclusively to signed emails.
Send signed E-Mail
Example E-Mail:
FROM |
alice@a-provider.com |
TO |
bob@b-provider.com |
CC |
charly@c-provider.com |
BCC |
diana@d-provider.com |
SUBJECT |
United-Pages is cool |
CONTENT |
Hello, this is a signed email that you can trust, Regards Alice |
From the entered data, the client generates a digital signature, i.e. a JSON data structure containing "from", "to", "subject", the current timestamp (RFC822 format) and a md5-hash of "content".
{ "from":"alice@a-provider.com",
|
The digital signature will be encrypted from the E-Mail-Client (eg UPbook) with the Private-Key of the sender and passed within the body of a POST-request (up_sign).
POST |
https://www.united-pages.com/unit/mail/alice/a-provider.com |
Authentication-Header |
username: <E-Mail password of Alice> password: <UNITED-PAGES password of Alice> |
Body |
{ "from":"alice@a-provider.com",
"to":"bob@b-provider.com", "cc":"charly@c-provider.com", "bcc":"diana@d-provider.com", "subject":"UNITED-PAGES is cool'", "content":"Hello, this is a cerified email that you can trust, Regards Alice", "up_sign":"........................" } |
The UP-SERVER attaches the signature as file named "UP.sign" and sends the email via IMAP . Furthermore, the subject is prefixed with "[UP]", a naming convention to make it easier to find and sort signed emails.
Access to a mailbox via IMAP requires the resp. E-Mail password. Since the passwords for E-Mail- and UNITED-PAGES-account may differ the username of the Authentication-Header is 'misused' for the password of the E-Mail-Account. The username/E-Mail can be extracted from the URL.
Receive signed E-Mails
E-Mail-Clients can request all signed emails
GET |
https://www,united-pages.com/unit/mail/bob/b-provider.com |
AuthenticationHeader |
username: <E-Mail password of Bob> password: <UNITED-PAGES password of Bob> |
The UP-WEBSERVER of the receiver (bob@b-provider.com) retrieves each E-Mail from the resp. Mailbox (via IMAP) that fulfills the following requirements:
- according to the naming convention the Subject starts with '[UP]'
- the E-Mail contains an attachment file 'UP.sign'
- 'UP.sign' can be decrypted with the PublicKey of the sender (alice@a-provider.com)
- the values of the digital signature match with the E-Mail
The response contains the IMAP message identifiers:
| {"14": {"subject":"[UP]UNITED-PAGES is cool", "from":"alice@a-provider.com", "to":"bob@b-provider.com", "date":"Mon, 8 Dec 2025 09:51:01 +0000", "message_id":"...", "size":2683, "uid":713, "msgno":15, "recent":0, "flagged":0, "answered":0, "deleted":0, "seen":1, "draft":0, "udate":1765187463, "content":"..."}, "15": {"subject":"[UP]...","to":"bob@b-provider.com","...}} ... } |
Delete signed E-Mails
The E-Mail-Client can delete (selected) emails where each one is referenced via its IMAP uid (s.o.).
DELETE |
https://www,united-pages.com/unit/mail/bob/b-provider.com?_uid=710,713,726 |
AuthenticationHeader |
username: <E-Mail password of Bob> password: <UNITED-PAGES password of Bob> |