Keep every product and client apart
One account, many projects. Each project has its own domains, inboxes and keys, so mail never mixes.
What it does
Three things you get, in plain words.
One project per product or client
Your account is a workspace. Inside it, each project holds its own domains, inboxes, API keys and settings.
Keys that can only do a little
A key can be full access, sending only (even for one domain), or limited to one inbox. If one leaks, the damage stays small.
Teammates and a record
Invite people with a role, and see who did what in an audit log. Export everything when you want a copy.
Make a project, then limit what each key can do
Add a project for each product or client. Then create keys with only the access each one needs.
# The projects your key can see. A key belongs to one project.
curl https://api.mailbay.dev/v1/projects \
-H "Authorization: Bearer $MAILBAY_API_KEY"
# {"data": [{"id": "prj_01jc...", "name": "Superchat", "slug": "superchat", ...}]}
# Making a new project, inviting teammates, reading the audit log and
# exporting need you signed in (dashboard), not an API key:
# POST /v1/projects {"name": "Invoicely"}# Sending only, and only from one domain
curl -X POST https://api.mailbay.dev/v1/keys \
-H "Authorization: Bearer $MAILBAY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "web app", "permissions": "sending", "domain_id": "dom_01jc..."}'
# Reading and replying in one inbox only
curl -X POST https://api.mailbay.dev/v1/keys \
-H "Authorization: Bearer $MAILBAY_API_KEY" \
-H "Content-Type: application/json" \
-d '{"name": "support bot", "permissions": "inbox", "inbox_id": "ibx_01jc..."}'
# The secret is shown once in the reply. Sukhovei Mail keeps only a hash.In the dashboard, under Settings:
Members Invite by email. Choose a workspace role, and for a Member,
a role in each project and (optionally) which inboxes.
Audit log Who did what and when: keys, domains, members, projects.
Export Download everything in the workspace as one file.
The same things over the API (signed in):
POST /v1/invitations
{"email": "sam@acme.com", "workspace_role": "member",
"projects": [{"project_id": "prj_01jc...", "role": "support"}]}
GET /v1/audit
GET /v1/workspace/export
PATCH /v1/workspace/retention {"retention_days": 90}New workspaces get a free Playground project to try things in. You can delete a project only when it has no domains or inboxes left.
Who it is for
Pick the page closest to what you are building.
Limits, honestly
What it does not do, so you can decide before you start.
- The plan is shared by the whole workspace. The free plan has 3 inboxes, 3,000 emails a month and 3 domains in total, not per project.
- There is no billing per project, no invoices per client and no separate plan for one project.
- There is no single sign-on and no white-label dashboard.
- Creating projects, inviting people, reading the audit log and exporting need you signed in. An API key cannot do them.
- A key belongs to one project and cannot move to another.
- Only the workspace owner can export data or change how long mail is kept. Mail is kept until you delete it unless you set a limit.
- The audit log is kept for 400 days unless you change it.
Questions
What is the difference between a workspace and a project?
The workspace is your account: the plan, the people and the audit log. A project is one product or client inside it, with its own domains, inboxes, keys and settings.
Who can see what?
Owners and admins see every project. A member sees only the projects you give them, with a role in each: Admin, Developer, Support or Viewer. You can also limit them to certain inboxes. A Billing member sees billing and no project mail.
Does each project get its own free allowance?
No. The allowance is shared across the workspace. Free is 3 inboxes, 3,000 emails a month and 3 domains in total.
Can I take my data with me?
Yes. The owner can export the workspace as an NDJSON file, which is one JSON record per line. Key hashes and other secrets are left out.
Try it on the free plan.
The free plan has 3 inboxes, 3,000 emails a month and 3 custom domains. No card needed.