emcognito
Back to Blog

Email Alias API for Custom SaaS Onboarding: Architecture and Integration Guide

September 20, 2026

Updated

developer apiemail alias apisaas onboardingemail forwardinginbox privacy

Keep your real inbox private.

Unlimited aliases, free. No credit card, passwordless sign-in.

Create a free alias →

An email alias API for custom SaaS onboarding enables your application to provision isolated, reply-capable forwarding addresses programmatically the instant a customer signs up or creates a tenant workspace. Rather than routing all account notices, team invites, and external transactional alerts through naked personal addresses, programmatic alias creation establishes a dedicated routing barrier that protects user identity while maintaining clean deliverability.

Engineering teams implementing SaaS user onboarding email privacy face specific architectural requirements: durable inbound mail forwarding, verifiable reply routes, predictable throughput metering, and metadata tagging to tie inbound communication back to internal workspace IDs. This guide walks through integrating a dedicated API for email forwarding into your SaaS tenant provisioning pipeline, covering endpoint contracts, volume caps, transport mechanics, and production error-handling strategies.

Evaluating an Email Alias API for Custom SaaS Onboarding Workflows

When building multi-tenant B2B platforms or privacy-focused consumer applications, sharing a single direct inbox across multiple organizational contexts introduces identity leakage and cross-tenant pollution. Implementing programmatic email alias creation during tenant setup isolates notifications, alert subscriptions, and support interactions per customer or project. If a downstream integration or third-party partner leaks an address, the blast radius remains confined to that single alias rather than exposing your customer's underlying email identity.

SaaS teams must evaluate two fundamentally different approaches to email generation:

  • Temporary disposable mailboxes: Ephemeral addresses designed to accept a single verification code and expire within minutes. They provide no durable routing, reject ongoing inbound notifications, and lack legitimate reverse-path reply capabilities.
  • Durable forwarding aliases: Permanent routing endpoints that receive incoming mail, preserve sender context, and deliver directly to the recipient's primary mailbox over standard mail transfer protocols.

Production onboarding requires durable aliases. As outlined in the fundamental routing specifications of IETF RFC 5321, legitimate mail forwarding depends on compliant reverse-path parameters and disciplined relay handling. Disposable inboxes break transactional workflows because invoices, alert escalations, and account security notifications arrive long after the initial signup window closes.

The core vendor selection criteria for an email alias API for custom SaaS onboarding comes down to how infrastructure limits are metered. Many providers meter the number of created aliases, imposing artificial ceilings that penalize multi-tenant scaling. Conversely, Emcognito offers unlimited aliases across all tiers, metering only the forwarded message volume. For SaaS platforms spinning up workspaces dynamically, paying for actual bandwidth rather than address generation keeps infrastructure costs predictable as customer signups scale.

Platform Model Creation Ceiling Message Metering Primary Routing Fit
Per-Alias Pricing Strictly capped or tiered Usually unmetered Low-count personal use
Bandwidth-Metered Alias API Unlimited aliases generated Metered by forwarded messages/mo SaaS onboarding and tenant workspaces
Disposable/Burner API Time-restricted (minutes/hours) Ephemeral storage One-off automated QA testing only

Architectural Patterns: Forwarding, Relaying, and Identity Isolation

Embedding email identity protection directly into your tenant onboarding pipeline enforces strict data minimization. According to FTC guidance on how websites and apps collect and use information, businesses significantly mitigate identity risks when they minimize the collection and public exposure of personal contact information. Isolating tenant communications behind aliases prevents internal workspace activity from exposing raw customer email addresses to third-party integration partners.

Consider the typical SaaS integration workflow for a collaborative workspace tool:

[User Signup / New Tenant Provisioning]
                  │
                  ▼
[SaaS Auth Worker calls POST /v1/aliases]
                  │
                  ▼
[Alias Created: ex: 9charrand@emcognito.com]
                  │
                  ├── Stored in Tenant DB (workspace_id, tenant_alias)
                  ▼
[Inbound Notification from 3rd-Party Vendor]
                  │
                  ▼
   [Postfix / Amazon SES Ingest]
                  │
                  ▼
     [Forwarded over TLS to User's Real Inbox]

In this architecture, incoming messages from third-party services hit the alias service directly. The underlying routing infrastructure receives the message via Postfix and relays the payload to the customer's actual inbox using Amazon Simple Email Service (SES) over TLS. This prevents the external service from ever learning the underlying recipient address.

Maintaining security also involves vigilant threat filtering. Following the recommendations in FTC phishing guidance, separating inbound feeds into distinct, identifiable addresses helps recipients immediately flag unexpected senders attempting to solicit sensitive workspace credentials. If an alias mapped specifically to an analytics integration suddenly begins receiving phishing attempts, the user knows exactly where the compromise occurred.

API Endpoint Specification: Authentication, Payloads, and Metadata Tracking

The Emcognito developer platform provides a streamlined REST interface. The base URL for all programmatic interactions is https://api.emcognito.com/v1. Authentication requires a standard Bearer token header utilizing API keys prefixed with emk_. Any requests lacking this header or formatted with invalid prefixes return an HTTP 401 Unauthorized status.

Listing Aliases (GET /v1/aliases)

To audit provisioned workspaces or synchronize tenant state, the API exposes a paginated listing endpoint. It accepts pagination query parameters using next_cursor and last_key:

GET /v1/aliases?limit=25&next_cursor=eyJpZCI6... HTTP/1.1
Host: api.emcognito.com
Authorization: Bearer emk_example_token_abcdef123456
Content-Type: application/json

Creating Aliases (POST /v1/aliases)

When provisioning a new SaaS tenant, your onboarding worker sends a POST request to https://api.emcognito.com/v1/aliases. You can attach contextual metadata to track tenant ownership, origin environment, or lifespan controls:

Field POST /v1/aliases returns HTTP 200 with the new alias under "alias". Emcognito sends no Retry-After header and no rate-limit headers: the burst limit is 60 requests a minute per key, and the daily creation cap resets at 00:00 UTC. Requirement Description
label string Optional Display name (e.g., "Workspace Acme-Prod")
note string Optional Internal tracking notes or workspace UUIDs
source string Optional Originating client (e.g., "saas-onboarding-worker")
category string Optional Functional grouping (e.g., "billing", "alerts")
single_use boolean Optional Whether the alias is deactivated after first delivery
expires_at string (ISO 8601) Optional Timestamp when the alias ceases to accept mail

The JSON response encapsulates the generated alias details under a top-level alias property. The response payload structure is demonstrated below:

{
  "alias": {
    "id": "ali_89b2c01d9f4a",
    "address": "k9x2mf81q@emcognito.com",
    "status": "active",
    "created_at": "2026-09-19T14:32:00Z",
    "forward_count": 0,
    "label": "Tenant Workspace 4402",
    "note": "user_id: usr_9941a",
    "source": "api_onboarding",
    "category": "tenant_inbox",
    "single_use": false,
    "expires_at": null
  }
}

Note that the API does not expose root-level id or email attributes; consumer applications must extract the details from the nested alias object. For complete endpoint schemas and field constraints, refer directly to the developer alias API documentation.

Implementing an Email Alias API for Custom SaaS Onboarding: Code and Logic

Integrating an email alias API for custom SaaS onboarding requires integrating alias generation into your background provisioning queue or synchronous signup hook. Given that Pew Research Center research on email use confirms email remains an indispensable technological tool across modern business workflows, handling email provisioning reliably during customer onboarding is critical to maintaining user engagement.

Here is an end-to-end Node.js service implementation illustrating how to provision an alias for a onboarded SaaS workspace, complete with error handling and rate-limit awareness:

import axios from 'axios';

interface OnboardTenantParams { tenantId: string; tenantName: string; adminEmail: string; }

interface AliasResponse { alias: { id: string; address: string; status: string; created_at: string; forward_count: number; label: string | null; note: string | null; source: string | null; category: string | null; single_use: boolean; expires_at: string | null; }; }

export async function provisionTenantAlias(params: OnboardTenantParams): Promise<string> { const apiKey = process.env.EMCOGNITO_API_KEY; if (!apiKey || !apiKey.startsWith('emk_')) { throw new Error('Invalid or missing Emcognito API key configuration.'); }

const endpoint = 'https://api.emcognito.com/v1/aliases'; const payload = { label: Tenant: ${params.tenantName}, note: tenant_id=${params.tenantId};admin=${params.adminEmail}, source: 'saas_onboarding_pipeline', category: 'tenant_system', single_use: false };

try { const response = await axios.post<AliasResponse>(endpoint, payload, { headers: { 'Authorization': Bearer ${apiKey}, 'Content-Type': 'application/json', }, timeout: 5000, });

// Extract the generated forwarding address
const generatedAddress = response.data.alias.address;
return generatedAddress;

} catch (error: any) { if (axios.isAxiosError(error) && error.response) { const status = error.response.status;

  if (status === 429) {
    // Handle burst limit (60 requests/min) or daily cap exhaustion
    throw new Error('Emcognito API rate limit reached. Requeue onboarding job.');
  }
  
  throw new Error(`Alias generation failed with status ${status}: ${JSON.stringify(error.response.data)}`);
}

throw new Error(`Network failure during tenant alias provisioning: ${error.message}`);

} }

When orchestrating this in production, your job worker must respect the platform's burst and daily allowances. POST /v1/aliases returns HTTP 200 with the new alias under "alias". Emcognito sends no Retry-After header and no rate-limit headers: the burst limit is 60 requests a minute per key, and the daily creation cap resets at 00:00 UTC.

Because there are no rate-limit headers returned in the response payload, you must implement local queue-level rate limiting in your SaaS architecture (such as a Redis token bucket or BullMQ concurrency limiter set to 60 calls per minute) to ensure your signup spikes do not trigger client-side HTTP 429 errors.

Managing Daily Creation Caps, Monthly Forward Quotas, and Account Tiers

Deploying programmatic alias infrastructure requires aligning your SaaS signup volume with developer subscription parameters. Emcognito enforces dual-layer controls: a burst rate per minute, a daily creation cap, and a monthly forwarded message quota. Aliases themselves are unlimited on all tiers—including Free—meaning you rarely pay for the resting count of stored forwarding addresses.

To access the developer alias API, your account must be on a paid tier:

  • Emcognito Plus: a measurable budget per month (or a measurable budget per year). Includes 2,500 forwarded messages per month, the ability to compose new mail from any alias, removes the sponsor card from forwarded mail, and provides developer API access capped at 50 alias creations per day.
  • Emcognito Pro: a measurable budget per month (or a measurable budget per year). Includes 15,000 forwarded messages per month, a higher daily send cap for outbound messages, and expands the developer API cap to 200 alias creations per day. Pro yearly represents the best annual value with three months free.

When scaling tenant onboarding, review your team's projected velocity on the Emcognito pricing page. If your application provisions more than 50 tenant workspaces in a single 24-hour cycle, the Plus tier's daily creation limit will cause downstream API calls to fail. In that scenario, the Pro tier's 200/day allowance is necessary.

Tier Monthly Price Annual Price Creation Cap (API) Monthly Forward Quota Compose New Mail
Free $0 $0 No API Access 100 forwards No (Replies only)
Plus $2/mo $20/yr 50 aliases/day 2,500 forwards Yes
Pro $4/mo $36/yr 200 aliases/day 15,000 forwards Yes (Higher daily cap)

To prevent onboarding disruptions when approaching daily limits, configure your SaaS signup queue to buffer tenant alias requests when approaching the daily threshold. The burst limit applies per key, and the daily creation cap resets each day. If your application exhausts the 200 creations/day Pro tier cap during an exceptional growth surge, the provisioning job should defer secondary alias creation tasks until after 00:00 UTC while allowing the primary user account provisioning to complete.

Operational Realities: API Lifecycle Controls versus Dashboard Management

Engineering teams often assume a REST API provides symmetric CRUD operations across all resource lifecycles. However, v1 of the Emcognito API creates and lists aliases (GET and POST /v1/aliases). Suspending, resuming and deleting an alias are one-click dashboard actions today; there is no PATCH or DELETE endpoint yet.

This design decision establishes distinct operational boundaries between automated workspace provisioning and security management:

  1. Provisioning is programmatic: During user onboarding or workspace spinning, services call POST /v1/aliases to generate addresses autonomously without manual intervention.
  2. Lifecycle triage is administrative: If an onboarded customer reports spam, abuse, or unauthorized inbound volume hitting a specific alias, deactivating that vector is executed manually via the Emcognito administrative dashboard. A single click suspends or deletes the address immediately.

This separation simplifies the API surface area and eliminates the risk of malicious API key compromises triggering bulk deletion scripts across all your production aliases. When an alias is suspended from the dashboard, the mail transfer agent immediately rejects subsequent inbound messages for that local part, protecting the customer's downstream inbox from unwanted traffic.

Additionally, domain namespace boundaries must be factored into your routing design. Emcognito aliases currently use the shared emcognito.com domain. Custom subdomain support is planned, but custom domains are not available today. If your architecture strictly requires vanity domain routing on internal customer addresses, you can compare implementation models using our service comparison breakdown to evaluate trade-offs against other platforms.

Security Model and Delivery Infrastructure Considerations

Integrating a third-party relay into your application notification loop requires a clear understanding of its data retention and encryption properties. Emcognito forwards mail over TLS-encrypted transport and does not read message contents or retain them after delivery, apart from a brief hold on mail that arrives over your monthly forward cap, but it is not end-to-end encrypted. For content confidentiality, pair it with an encrypted mailbox such as Proton Mail or Tuta.

Furthermore, Emcognito collects no personal information beyond a destination address and does not retain message bodies after delivery, apart from a brief hold on mail that arrives over your monthly forward cap, but it keeps the delivery and operational logs any mail service needs. That is data minimisation, not a no-log policy. The system stores metadata necessary to track forward counts against plan limits, calculate daily rate quotas, and render the user delivery log.

Understanding outbound reply routing is equally critical when designing SaaS user communication loops. Replying to a forwarded message is included on every Emcognito plan, Free as well, and it happens in your delivery log: open the delivered message and choose Reply securely, and Emcognito sends it with the alias as the sender. Replying from your own mail app is paused for security and is refused rather than delivered. Composing a brand-new message from an alias is the Plus and Pro feature. If your support staff or workspace members need to initiate outbound conversations from their provisioned addresses, review the technical guide on how to compose from an alias on paid plans.

In adherence to Google guidance on creating helpful content, development teams should design integrations around clear real-world constraints rather than theoretical ideals. Documenting the actual capabilities of your delivery stack ensures operational resilience when mail volume spikes.

Frequently Asked Questions

Can I suspend or delete an alias programmatically using the v1 API?

No. v1 of the Emcognito API creates and lists aliases (GET and POST /v1/aliases). Suspending, resuming and deleting an alias are one-click dashboard actions today; there is no PATCH or DELETE endpoint yet. If an address is compromised, an administrator can disable it instantly with one click from the web dashboard.

How does the API handle rate limiting and creation quota overflow?

The burst limit applies per key, and the daily creation cap resets each day. Exceeding these limits returns an HTTP 429 status code. Emcognito does not transmit rate-limit headers or Retry-After values, so client applications should manage request pacing internally. The burst limit applies per key, and the daily creation cap resets each day.

What is the difference between forwarded message quotas and alias creation caps?

Alias creation caps restrict how many new addresses you can mint via the API within a 24-hour cycle (50/day on Plus, 200/day on Pro). Forwarded message quotas limit the total number of incoming emails relayed to your underlying inbox each calendar month (2,500 on Plus, 15,000 on Pro). Aliases themselves are completely unlimited and rarely expire unless explicitly configured with an expiration timestamp.

Can SaaS users send outbound messages from their generated alias addresses?

Yes, depending on whether the message is a reply or a initiated thread. Replying to forwarded messages is supported on all tiers and is handled within the web delivery log using the Reply Securely feature. Initiating brand-new outbound messages from an alias address is supported on the Plus and Pro plans.

To integrate programmatic forwarding into your onboarding pipeline, review the developer documentation and test the developer alias API on an Emcognito Plus or Pro plan at https://emcognito.com/pricing.

Sources and further reading

Create aliases from your own code.

Two endpoints, Bearer auth, 50 aliases a day on Plus and 200 on Pro. No PATCH or DELETE yet.

Read the API docs →