Skip to content
Coritan Docs

Forward addresses with aliases

Create an alias that delivers to one or more mailboxes, or a catch-all that takes every unknown address on a domain.

View as Markdown

In the dashboard

An alias is an address with no storage of its own that delivers its mail to mailboxes on the same service. Use one for a role address such as sales@example.com, or for a catch-all that takes the mail sent to every address on a domain that has no mailbox or alias. Aliases do not count against the plan's mailboxes.

An alias takes one of three forms, decided by what you enter:

You enter The alias
A name and one mailbox Delivers to that mailbox.
A name and several mailboxes Delivers a copy to each of them, up to 50.
* and one mailbox Is the domain's catch-all. A domain can have one.

An alias delivers only to mailboxes on the same Mail Hosting service. To send a mailbox's mail on to an address somewhere else, its user sets up forwarding in webmail; see Forward your mail to another address.

  1. In the dashboard, go to Email, open the Mail Hosting service, then the Aliases tab.
  2. Select Create alias….
  3. In Alias, enter the part before the @, such as sales. The hint under the field shows the full address.
  4. In Domain, choose the domain. Only verified domains are listed.
  5. In Delivers to, enter a mailbox's address and press Enter, or select it under Mailboxes here. Repeat for each mailbox.
  6. Select Create alias.

The alias appears in the list with its Delivers to addresses and the date it was Created. Mail sent to it arrives in each of those mailboxes.

A catch-all takes mail for any address on the domain that is not a mailbox or an alias, such as a mistyped name. It also takes spam sent to made-up addresses, so check its mailbox now and then.

  1. On the Aliases tab, select Create alias….
  2. In Alias, enter *.
  3. In Domain, choose the domain.
  4. In Delivers to, add exactly one mailbox.
  5. Select Create alias.

The alias shows as *@example.com with a Catch-all badge.

Change where an alias delivers

Section titled Change where an alias delivers

An alias cannot be edited. To change its mailboxes, delete the alias, then create it again with the new list. Mail sent to the address in between does not arrive, so do both steps together.

Warning

Once you delete an alias, mail sent to its address bounces back to the sender, or goes to the domain's catch-all if it has one. The mailboxes it delivered to, and the mail already in them, stay as they are.

  1. On the Aliases tab, select Delete… on the alias's row.
  2. Type the alias's address to confirm, then select Delete alias.

The alias leaves the list. Deleting a catch-all makes mail to unknown addresses on the domain bounce again.

Destinations must be mailboxes on this service
One of the Delivers to addresses is not a mailbox on this service. The hint under the field suggests addresses elsewhere work, but they do not. Remove the address, or create the mailbox first. To reach an address elsewhere, use forwarding in webmail.
A catch-all forwards to exactly one mailbox
A * alias has more than one address in Delivers to. Keep one.
That address already exists
The address is already a mailbox or an alias, or the domain already has a catch-all. Choose another name, or delete the existing alias first.
Use only letters, digits, dots, dashes, plus signs and underscores, or * for a catch-all.
The name has another character, or starts or ends with a dot, dash, plus sign or underscore. Names are at most 64 characters and are stored in lower case.
Verify a domain first
The service has no verified domain yet. Verify a domain, then create the alias.
The domain is not registered in the mail engine yet; check the domain again in a minute
The domain was verified moments ago and its setup is not finished. Select Verify now on the domain's page, then try again.
An alias delivers nothing
A mailbox it delivered to was deleted. An alias to one mailbox then delivers nowhere, and an alias to several stops delivering to the deleted one. Delete the alias and create it again with mailboxes that exist.

Create an alias that delivers to two mailboxes:

Shell
curl -X POST https://api.coritan.com/api/v1/client/mail/4812/aliases \
  -H "Authorization: Bearer $CORITAN_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"domain_id": 311, "local_part": "sales", "targets": ["alex@example.com", "sam@example.com"]}'

The body takes these fields:

domain_id
The domain, from GET /client/mail/{service_id}/domains. The API accepts a domain as soon as its ownership check has passed, before it is verified.
local_part
The part before the @, 1–64 characters: letters, digits and . _ + -, starting and ending with a letter or digit. * makes the domain's catch-all.
targets
1–50 addresses of mailboxes on this service. We lower-case them and drop duplicates. A catch-all takes exactly one.

The answer is 201 with the alias:

JSON
{
  "id": 5133,
  "tenant_id": 902,
  "domain_id": 311,
  "kind": "alias",
  "address": "sales@example.com",
  "local_part": "sales",
  "display_name": null,
  "quota_bytes": null,
  "targets": ["alex@example.com", "sam@example.com"],
  "status": "active",
  "password_set_at": null,
  "created_at": "2026-09-16T11:04:27.160358+00:00",
  "totp_enabled": false,
  "app_passwords": 0,
  "frozen_reason": null,
  "user_id": null
}

The other operations:

Operation Answer
GET /client/mail/{service_id}/aliases {"items": [...]}, each alias as above with locked set to null
DELETE /client/mail/{service_id}/aliases/{account_id} {"ok": true}

A refused request answers 400 with one of the messages in Troubleshooting, with Use letters, digits and . _ + - for the part before @, with An alias needs at least one destination address when no target contains an @, or with Domain not found on this service. A body outside the field ranges answers 422, an account_id that is not an alias on the service answers 404 Not found, and a failure on our side answers 502 with a message that starts Mail engine error:.

On an SMTP Relay service the same paths exist under /client/smtp-relay/{service_id}/aliases: GET answers {"items": []}, POST answers 400 Aliases are only available on Mail Hosting services, and DELETE answers 404 Not found.

API operations on this page