DocumentationKey concepts

Key concepts

Tenant, API keys, scopes, templates, and other product terminology.

Before integrating, it helps to align on vocabulary. These concepts appear in the API, dashboard, and webhooks.

Tenant

Isolated workspace. Each tenant has its own domains, templates, contacts, campaigns, and email quota. Almost all API routes require the X-Tenant-Id header.

API key

Credential for server-side integrations or the SDK. Format: mc_live_... (production) or mc_test_... (testing). Send it as:

Authorization: Bearer mc_live_xxxx

Each key has scopes (granular permissions) and is shown in full only once when created.

Scopes

Permissions in resource:action format. Examples:

ScopeAllows
email:sendSend emails (POST /emails/send, batch, scheduled)
email:readRead send logs
contacts:read / contacts:writeManage audience
campaigns:read / campaigns:writeNewsletter campaigns
webhooks:manageOutbound webhook endpoints

Dashboard routes for templates, domains, and analytics use session JWT, not API keys.

Template and version

A template groups versions. Each version can be DRAFT or PUBLISHED. Publishing inlines CSS. You can send with templateVersionId instead of htmlBody.

Suppression

List of email addresses that must not receive further messages (hard bounce, complaint, voluntary unsubscribe). Sends to suppressed addresses are blocked.

Send queue

Transactional sends enter a BullMQ queue (QUEUEDSENT). The API responds immediately with the log id; a worker delivers in the background.

Monthly quota

Each plan has a monthly email limit. The API returns X-Quota-* headers on each send. Above 110% of the limit, the API responds with 429.