Class: Optail
Defined in: sdk/src/client.ts:150
Constructors
Section titled “Constructors”Constructor
Section titled “Constructor”new Optail(config: OptailConfig): Optail;Defined in: sdk/src/client.ts:155
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
config | OptailConfig |
Returns
Section titled “Returns”Optail
Methods
Section titled “Methods”send()
Section titled “send()”send(params: SendEmailParams): Promise<SendEmailResponse>;Defined in: sdk/src/client.ts:171
Send a single email. Returns immediately with a provider message ID — the email is queued for async delivery and delivery events flow through webhooks.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | SendEmailParams |
Returns
Section titled “Returns”Promise<SendEmailResponse>
listTemplates()
Section titled “listTemplates()”listTemplates(params?: ListTemplatesParams): Promise<PaginatedResponse<TemplateResponse>>;Defined in: sdk/src/client.ts:182
List templates with pagination. Supports name (substring, case-insensitive),
nameExact (exact match — used by migration tooling), and providerTemplateId (resolve
a legacy upstream id like SendGrid d-...).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListTemplatesParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<TemplateResponse>>
getTemplate()
Section titled “getTemplate()”getTemplate(templateId: string): Promise<TemplateWithVersionResponse>;Defined in: sdk/src/client.ts:190
Get a template by id, including its current published version.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
Returns
Section titled “Returns”Promise<TemplateWithVersionResponse>
createTemplate()
Section titled “createTemplate()”createTemplate(params: CreateTemplateParams): Promise<TemplateResponse>;Defined in: sdk/src/client.ts:198
Create a template. Returns the row immediately — add a version separately via
createTemplateVersion().
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateTemplateParams |
Returns
Section titled “Returns”Promise<TemplateResponse>
updateTemplate()
Section titled “updateTemplate()”updateTemplate(templateId: string, params: UpdateTemplateParams): Promise<TemplateResponse>;Defined in: sdk/src/client.ts:205
Update template metadata (name, description, tags). Does not change the current version.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
params | UpdateTemplateParams |
Returns
Section titled “Returns”Promise<TemplateResponse>
deleteTemplate()
Section titled “deleteTemplate()”deleteTemplate(templateId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:215
Delete a template and all its versions. Irreversible.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
createTemplateVersion()
Section titled “createTemplateVersion()”createTemplateVersion(templateId: string, params: CreateTemplateVersionParams): Promise<TemplateVersionResponse>;Defined in: sdk/src/client.ts:223
Add a new version to an existing template. Pass MJML or HTML; MJML is rendered server-side. The new version becomes the current version automatically.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
params | CreateTemplateVersionParams |
Returns
Section titled “Returns”Promise<TemplateVersionResponse>
listTemplateVersions()
Section titled “listTemplateVersions()”listTemplateVersions(templateId: string): Promise<TemplateVersionListResponse>;Defined in: sdk/src/client.ts:237
List all versions of a template, newest first.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
Returns
Section titled “Returns”Promise<TemplateVersionListResponse>
getTemplateVersion()
Section titled “getTemplateVersion()”getTemplateVersion(templateId: string, versionId: string): Promise<TemplateVersionResponse>;Defined in: sdk/src/client.ts:247
Get a specific version of a template by id.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
versionId | string |
Returns
Section titled “Returns”Promise<TemplateVersionResponse>
previewTemplate()
Section titled “previewTemplate()”previewTemplate(templateId: string, params?: PreviewTemplateParams): Promise<PreviewTemplateResponse>;Defined in: sdk/src/client.ts:261
Render the template with sample variables and return the resolved HTML/text. Useful for editor preview.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
params? | PreviewTemplateParams |
Returns
Section titled “Returns”Promise<PreviewTemplateResponse>
rollbackTemplate()
Section titled “rollbackTemplate()”rollbackTemplate(templateId: string, versionId: string): Promise<RollbackTemplateResponse>;Defined in: sdk/src/client.ts:276
Set a previous version as the current version. The old current version is preserved in history.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
versionId | string |
Returns
Section titled “Returns”Promise<RollbackTemplateResponse>
listProviders()
Section titled “listProviders()”listProviders(): Promise<ProviderResponse[]>;Defined in: sdk/src/client.ts:289
List provider accounts connected to your organization (SendGrid, Postmark, Mailgun, SES).
Returns
Section titled “Returns”Promise<ProviderResponse[]>
getProvider()
Section titled “getProvider()”getProvider(providerId: string): Promise<ProviderResponse>;Defined in: sdk/src/client.ts:296
Get a single provider account with its credentials masked.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerId | string |
Returns
Section titled “Returns”Promise<ProviderResponse>
createProvider()
Section titled “createProvider()”createProvider(params: CreateProviderParams): Promise<ProviderResponse>;Defined in: sdk/src/client.ts:305
Connect a new provider. Triggers async webhook registration, template import, and unsubscribe-group sync — failures surface in the response without rolling back the connection.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateProviderParams |
Returns
Section titled “Returns”Promise<ProviderResponse>
updateProvider()
Section titled “updateProvider()”updateProvider(providerId: string, params: UpdateProviderParams): Promise<ProviderResponse>;Defined in: sdk/src/client.ts:313
Update a provider (display name, isActive). Credential rotation requires creating a new provider account.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerId | string |
params | UpdateProviderParams |
Returns
Section titled “Returns”Promise<ProviderResponse>
deleteProvider()
Section titled “deleteProvider()”deleteProvider(providerId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:324
Disconnect a provider. Existing sends already routed to it complete; new sends fail unless another provider covers the routing.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
validateProvider()
Section titled “validateProvider()”validateProvider(providerId: string): Promise<ValidateProviderResponse>;Defined in: sdk/src/client.ts:331
Verify the stored credentials still work by hitting the provider’s validate endpoint.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerId | string |
Returns
Section titled “Returns”Promise<ValidateProviderResponse>
listProviderDomains()
Section titled “listProviderDomains()”listProviderDomains(providerId: string): Promise<ProviderDomainResponse[]>;Defined in: sdk/src/client.ts:341
List sending domains attached to a provider account.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerId | string |
Returns
Section titled “Returns”Promise<ProviderDomainResponse[]>
getMetrics()
Section titled “getMetrics()”getMetrics(params?: MetricsQueryParams): Promise<MetricsResponse>;Defined in: sdk/src/client.ts:354
Time-series email metrics (sent, delivered, opened, etc.) over a date range, grouped by granularity.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | MetricsQueryParams |
Returns
Section titled “Returns”Promise<MetricsResponse>
getMetricsBreakdown()
Section titled “getMetricsBreakdown()”getMetricsBreakdown(params?: MetricsBreakdownParams): Promise<MetricsBreakdownResponse>;Defined in: sdk/src/client.ts:362
Aggregated metrics grouped by a dimension (provider, domain, template, tag).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | MetricsBreakdownParams |
Returns
Section titled “Returns”Promise<MetricsBreakdownResponse>
getMetricsSummary()
Section titled “getMetricsSummary()”getMetricsSummary(params?: MetricsSummaryParams): Promise<MetricsSummaryResponse>;Defined in: sdk/src/client.ts:371
Single-snapshot totals for the period (no time-series). Faster than getMetrics() for
dashboard headlines.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | MetricsSummaryParams |
Returns
Section titled “Returns”Promise<MetricsSummaryResponse>
listMessages()
Section titled “listMessages()”listMessages(params?: ListMessagesParams): Promise<PaginatedResponse<MessageListItem>>;Defined in: sdk/src/client.ts:383
List sent messages with rich filtering: status, provider, template, tag, date range,
bounceType, and unsubscribe groupId. Each row includes lastEvent (most recent webhook
event for the message) without N+1 queries.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListMessagesParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<MessageListItem>>
getMessage()
Section titled “getMessage()”getMessage(messageId: string): Promise<MessageDetailResponse>;Defined in: sdk/src/client.ts:391
Get a single message with its full event timeline.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
messageId | string |
Returns
Section titled “Returns”Promise<MessageDetailResponse>
listRoutingRules()
Section titled “listRoutingRules()”listRoutingRules(): Promise<RoutingRuleResponse[]>;Defined in: sdk/src/client.ts:401
List all routing rules. Rules pick a provider for outbound sends based on domain + tag matching.
Returns
Section titled “Returns”Promise<RoutingRuleResponse[]>
createRoutingRule()
Section titled “createRoutingRule()”createRoutingRule(params: CreateRoutingRuleParams): Promise<RoutingRuleResponse>;Defined in: sdk/src/client.ts:409
Create a routing rule. Modes: PRIORITY (try in order), ROUND_ROBIN (alternate), COST_OPTIMIZED, DELIVERY_OPTIMIZED, BALANCED.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateRoutingRuleParams |
Returns
Section titled “Returns”Promise<RoutingRuleResponse>
updateRoutingRule()
Section titled “updateRoutingRule()”updateRoutingRule(ruleId: string, params: UpdateRoutingRuleParams): Promise<RoutingRuleResponse>;Defined in: sdk/src/client.ts:417
Update a routing rule. Mode and weights can change without recreating; provider list cannot reduce to empty.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ruleId | string |
params | UpdateRoutingRuleParams |
Returns
Section titled “Returns”Promise<RoutingRuleResponse>
deleteRoutingRule()
Section titled “deleteRoutingRule()”deleteRoutingRule(ruleId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:427
Delete a routing rule. Any rule remaining catch-all becomes the new fallback.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
ruleId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
resolveRouting()
Section titled “resolveRouting()”resolveRouting(params: ResolveRoutingParams): Promise<ResolveRoutingResponse>;Defined in: sdk/src/client.ts:435
Dry-run: which provider would be picked for a given domain + tag set? Returns the chosen provider plus the rule that matched.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | ResolveRoutingParams |
Returns
Section titled “Returns”Promise<ResolveRoutingResponse>
listDomains()
Section titled “listDomains()”listDomains(): Promise<DomainListItem[]>;Defined in: sdk/src/client.ts:445
List sending domains across all connected providers, with verification status (SPF / DKIM / DMARC).
Returns
Section titled “Returns”Promise<DomainListItem[]>
getDomain()
Section titled “getDomain()”getDomain(domain: string): Promise<DomainDetailResponse>;Defined in: sdk/src/client.ts:452
Get a single domain with full DNS-record expected values vs current state.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
domain | string |
Returns
Section titled “Returns”Promise<DomainDetailResponse>
refreshDomain()
Section titled “refreshDomain()”refreshDomain(domain: string): Promise<RefreshDomainResponse>;Defined in: sdk/src/client.ts:459
Re-check SPF/DKIM/DMARC against authoritative DNS now. Use after updating DNS records.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
domain | string |
Returns
Section titled “Returns”Promise<RefreshDomainResponse>
listUnsubscribeGroups()
Section titled “listUnsubscribeGroups()”listUnsubscribeGroups(): Promise<UnsubscribeGroupResponse[]>;Defined in: sdk/src/client.ts:469
List unsubscribe groups for your organization. Each group can map to multiple
provider-side concepts (SendGrid ASM groups, etc.) via listProviderMappings().
Returns
Section titled “Returns”Promise<UnsubscribeGroupResponse[]>
createUnsubscribeGroup()
Section titled “createUnsubscribeGroup()”createUnsubscribeGroup(params: CreateUnsubscribeGroupParams): Promise<UnsubscribeGroupResponse>;Defined in: sdk/src/client.ts:477
Create an unsubscribe group. tags enables tag-based send-time routing — sends matching
the tags use this group’s opt-outs.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateUnsubscribeGroupParams |
Returns
Section titled “Returns”Promise<UnsubscribeGroupResponse>
updateUnsubscribeGroup()
Section titled “updateUnsubscribeGroup()”updateUnsubscribeGroup(groupId: string, params: UpdateUnsubscribeGroupParams): Promise<UnsubscribeGroupResponse>;Defined in: sdk/src/client.ts:487
Update group metadata (name, description, isDefault, tags). Provider mappings are managed separately.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
groupId | string |
params | UpdateUnsubscribeGroupParams |
Returns
Section titled “Returns”Promise<UnsubscribeGroupResponse>
deleteUnsubscribeGroup()
Section titled “deleteUnsubscribeGroup()”deleteUnsubscribeGroup(groupId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:502
Delete an unsubscribe group. All suppressions scoped to this group are deleted (cascade).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
groupId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
listProviderMappings()
Section titled “listProviderMappings()”listProviderMappings(unsubscribeGroupId: string): Promise<ProviderMappingResponse[]>;Defined in: sdk/src/client.ts:510
List provider-side mappings for an unsubscribe group (which SendGrid ASM groups, Postmark MessageStreams, etc. resolve to this Optail group).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
unsubscribeGroupId | string |
Returns
Section titled “Returns”Promise<ProviderMappingResponse[]>
createProviderMapping()
Section titled “createProviderMapping()”createProviderMapping(unsubscribeGroupId: string, params: CreateProviderMappingParams): Promise<ProviderMappingResponse>;Defined in: sdk/src/client.ts:521
Manually attach a provider-side group identifier to an Optail group. Auto-sync handles the common case; this is the manual fallback.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
unsubscribeGroupId | string |
params | CreateProviderMappingParams |
Returns
Section titled “Returns”Promise<ProviderMappingResponse>
deleteProviderMapping()
Section titled “deleteProviderMapping()”deleteProviderMapping(unsubscribeGroupId: string, mappingId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:536
Remove a provider mapping. The Optail group itself stays — only the provider linkage is severed.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
unsubscribeGroupId | string |
mappingId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
syncProviderUnsubscribeGroups()
Section titled “syncProviderUnsubscribeGroups()”syncProviderUnsubscribeGroups(providerAccountId: string): Promise<SyncProviderUnsubscribeGroupsResponse>;Defined in: sdk/src/client.ts:550
Re-sync provider-side unsubscribe groups on demand. Idempotent — upserts existing mappings, creates new ones. Use after adding ASM groups in SendGrid, etc.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerAccountId | string |
Returns
Section titled “Returns”Promise<SyncProviderUnsubscribeGroupsResponse>
importProviderTemplates()
Section titled “importProviderTemplates()”importProviderTemplates(providerAccountId: string): Promise<ImportProviderTemplatesResponse>;Defined in: sdk/src/client.ts:563
Pull all templates from a provider account and upsert into Optail. Idempotent. Used to backfill providers connected before template import existed.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerAccountId | string |
Returns
Section titled “Returns”Promise<ImportProviderTemplatesResponse>
listSuppressions()
Section titled “listSuppressions()”listSuppressions(params?: ListSuppressionsParams): Promise<PaginatedResponse<SuppressionResponse>>;Defined in: sdk/src/client.ts:577
List suppression rows (bounced, unsubscribed, complained recipients). Filter by source.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListSuppressionsParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<SuppressionResponse>>
createSuppression()
Section titled “createSuppression()”createSuppression(params: CreateSuppressionParams): Promise<SuppressionResponse>;Defined in: sdk/src/client.ts:590
Manually suppress a recipient. Source defaults to MANUAL; pass IMPORT for bulk lists.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateSuppressionParams |
Returns
Section titled “Returns”Promise<SuppressionResponse>
deleteSuppression()
Section titled “deleteSuppression()”deleteSuppression(suppressionId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:597
Remove a suppression. Use carefully — restores deliverability to that recipient.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
suppressionId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
importSuppressions()
Section titled “importSuppressions()”importSuppressions(params: ImportSuppressionsParams): Promise<ImportSuppressionsResponse>;Defined in: sdk/src/client.ts:605
Bulk-import suppressions from a list of emails. Idempotent — duplicates are skipped, returns counts.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | ImportSuppressionsParams |
Returns
Section titled “Returns”Promise<ImportSuppressionsResponse>
checkSuppression()
Section titled “checkSuppression()”checkSuppression(email: string): Promise<SuppressionCheckResponse>;Defined in: sdk/src/client.ts:612
Check whether an email is suppressed. Returns the matching suppression rows and groups.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
email | string |
Returns
Section titled “Returns”Promise<SuppressionCheckResponse>
listWebhookEndpoints()
Section titled “listWebhookEndpoints()”listWebhookEndpoints(): Promise<WebhookEndpointResponse[]>;Defined in: sdk/src/client.ts:624
List configured webhook destinations where Optail forwards email events.
Returns
Section titled “Returns”Promise<WebhookEndpointResponse[]>
createWebhookEndpoint()
Section titled “createWebhookEndpoint()”createWebhookEndpoint(params: CreateWebhookEndpointParams): Promise<WebhookEndpointCreateResponse>;Defined in: sdk/src/client.ts:632
Create a webhook endpoint. Optail signs every delivery with HMAC — verify on receipt
using verifyWebhookSignature.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateWebhookEndpointParams |
Returns
Section titled “Returns”Promise<WebhookEndpointCreateResponse>
updateWebhookEndpoint()
Section titled “updateWebhookEndpoint()”updateWebhookEndpoint(endpointId: string, params: UpdateWebhookEndpointParams): Promise<WebhookEndpointResponse>;Defined in: sdk/src/client.ts:642
Update a webhook endpoint (URL, event filter, isActive). Secret cannot be rotated without recreating the endpoint.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
endpointId | string |
params | UpdateWebhookEndpointParams |
Returns
Section titled “Returns”Promise<WebhookEndpointResponse>
deleteWebhookEndpoint()
Section titled “deleteWebhookEndpoint()”deleteWebhookEndpoint(endpointId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:656
Delete a webhook endpoint. In-flight deliveries already enqueued may still fire.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
endpointId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
testWebhookEndpoint()
Section titled “testWebhookEndpoint()”testWebhookEndpoint(endpointId: string): Promise<WebhookTestResponse>;Defined in: sdk/src/client.ts:664
Send a synthetic test event to the endpoint to verify your receiver works. Logs the delivery in the dashboard.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
endpointId | string |
Returns
Section titled “Returns”Promise<WebhookTestResponse>
getOrganization()
Section titled “getOrganization()”getOrganization(): Promise<OrganizationResponse>;Defined in: sdk/src/client.ts:676
Get the current organization (name, plan, slug, Stripe customer id).
Returns
Section titled “Returns”Promise<OrganizationResponse>
updateOrganization()
Section titled “updateOrganization()”updateOrganization(params: UpdateOrganizationParams): Promise<OrganizationResponse>;Defined in: sdk/src/client.ts:683
Update organization metadata (name, slug).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | UpdateOrganizationParams |
Returns
Section titled “Returns”Promise<OrganizationResponse>
listOrganizationMembers()
Section titled “listOrganizationMembers()”listOrganizationMembers(): Promise<OrganizationMemberResponse[]>;Defined in: sdk/src/client.ts:690
List members of the current organization with their roles.
Returns
Section titled “Returns”Promise<OrganizationMemberResponse[]>
getUsage()
Section titled “getUsage()”getUsage(): Promise<UsageResponse>;Defined in: sdk/src/client.ts:697
Current month usage against your plan limits.
Returns
Section titled “Returns”Promise<UsageResponse>
listApiKeys()
Section titled “listApiKeys()”listApiKeys(): Promise<ApiKeyResponse[]>;Defined in: sdk/src/client.ts:707
List API keys with their permissions and last-used timestamps. Key material itself is never returned after creation.
Returns
Section titled “Returns”Promise<ApiKeyResponse[]>
createApiKey()
Section titled “createApiKey()”createApiKey(params: CreateApiKeyParams): Promise<ApiKeyCreateResponse>;Defined in: sdk/src/client.ts:715
Mint a new API key. The full key is returned ONCE — store it immediately; subsequent reads only return the prefix.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateApiKeyParams |
Returns
Section titled “Returns”Promise<ApiKeyCreateResponse>
revokeApiKey()
Section titled “revokeApiKey()”revokeApiKey(apiKeyId: string): Promise<ApiKeyRevokeResponse>;Defined in: sdk/src/client.ts:723
Revoke an API key. Subsequent requests using it return 401. Revocation is immediate and irreversible.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
apiKeyId | string |
Returns
Section titled “Returns”Promise<ApiKeyRevokeResponse>
getStatus()
Section titled “getStatus()”getStatus(): Promise<StatusResponse>;Defined in: sdk/src/client.ts:736
Public service status (no auth required). Returns overall health, per-service status, and active incidents.
Returns
Section titled “Returns”Promise<StatusResponse>
getStatusHistory()
Section titled “getStatusHistory()”getStatusHistory(): Promise<StatusIncident[]>;Defined in: sdk/src/client.ts:743
Historical incidents on the public status page.
Returns
Section titled “Returns”Promise<StatusIncident[]>
listPlans()
Section titled “listPlans()”listPlans(): Promise<PlanDefinition[]>;Defined in: sdk/src/client.ts:752
List available subscription plans.
Returns
Section titled “Returns”Promise<PlanDefinition[]>
createCheckout()
Section titled “createCheckout()”createCheckout(params: CheckoutParams): Promise<CheckoutResponse>;Defined in: sdk/src/client.ts:760
Create a Stripe Checkout Session for upgrading the plan. Returns the hosted Checkout URL.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CheckoutParams |
Returns
Section titled “Returns”Promise<CheckoutResponse>
createBillingPortal()
Section titled “createBillingPortal()”createBillingPortal(): Promise<PortalResponse>;Defined in: sdk/src/client.ts:767
Create a Stripe Billing Portal session for managing payment methods / canceling.
Returns
Section titled “Returns”Promise<PortalResponse>
getSubscription()
Section titled “getSubscription()”getSubscription(): Promise<SubscriptionResponse>;Defined in: sdk/src/client.ts:774
Active subscription with billing cycle dates.
Returns
Section titled “Returns”Promise<SubscriptionResponse>
listContacts()
Section titled “listContacts()”listContacts(params?: ListContactsParams): Promise<PaginatedResponse<ContactResponse>>;Defined in: sdk/src/client.ts:784
List contacts with pagination. Filter by status (active / unsubscribed / bounced / complained) or free-text search.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListContactsParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<ContactResponse>>
getContact()
Section titled “getContact()”getContact(contactId: string): Promise<ContactDetailResponse>;Defined in: sdk/src/client.ts:792
Get a contact with their list memberships.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
contactId | string |
Returns
Section titled “Returns”Promise<ContactDetailResponse>
createContact()
Section titled “createContact()”createContact(params: CreateContactParams): Promise<ContactResponse>;Defined in: sdk/src/client.ts:800
Create a contact. Race-safe: returns the existing row if email already exists (no error).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateContactParams |
Returns
Section titled “Returns”Promise<ContactResponse>
updateContact()
Section titled “updateContact()”updateContact(contactId: string, params: UpdateContactParams): Promise<ContactResponse>;Defined in: sdk/src/client.ts:808
Update contact attributes. Cannot change email — create a new contact + delete the old
one.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
contactId | string |
params | UpdateContactParams |
Returns
Section titled “Returns”Promise<ContactResponse>
deleteContact()
Section titled “deleteContact()”deleteContact(contactId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:816
Hard-delete a contact. Suppression history is preserved (suppressions live independently).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
contactId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
unsubscribeContact()
Section titled “unsubscribeContact()”unsubscribeContact(contactId: string): Promise<ContactResponse>;Defined in: sdk/src/client.ts:824
Globally unsubscribe a contact (across all lists and groups). Sets the unsubscribedAt
flag.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
contactId | string |
Returns
Section titled “Returns”Promise<ContactResponse>
importContacts()
Section titled “importContacts()”importContacts(params: ImportContactsParams): Promise<ContactImportJobResponse>;Defined in: sdk/src/client.ts:832
Bulk-import contacts via an async job. Enqueues the work and returns immediately; poll
status with getContactImportJob().
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | ImportContactsParams |
Returns
Section titled “Returns”Promise<ContactImportJobResponse>
getContactImportJob()
Section titled “getContactImportJob()”getContactImportJob(jobId: string): Promise<ContactImportJobResponse>;Defined in: sdk/src/client.ts:839
Poll the status of an import job. Returns counts and per-row errors when complete.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
jobId | string |
Returns
Section titled “Returns”Promise<ContactImportJobResponse>
listContactLists()
Section titled “listContactLists()”listContactLists(params?: ListContactListsParams): Promise<PaginatedResponse<ContactListResponse>>;Defined in: sdk/src/client.ts:848
List contact lists with member counts.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListContactListsParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<ContactListResponse>>
getContactList()
Section titled “getContactList()”getContactList(listId: string): Promise<ContactListResponse>;Defined in: sdk/src/client.ts:858
Get a single list.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
listId | string |
Returns
Section titled “Returns”Promise<ContactListResponse>
createContactList()
Section titled “createContactList()”createContactList(params: CreateListParams): Promise<ContactListResponse>;Defined in: sdk/src/client.ts:865
Create a static contact list. Race-safe: returns existing row if name already exists.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateListParams |
Returns
Section titled “Returns”Promise<ContactListResponse>
updateContactList()
Section titled “updateContactList()”updateContactList(listId: string, params: UpdateListParams): Promise<ContactListResponse>;Defined in: sdk/src/client.ts:872
Update list metadata (name, description).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
listId | string |
params | UpdateListParams |
Returns
Section titled “Returns”Promise<ContactListResponse>
deleteContactList()
Section titled “deleteContactList()”deleteContactList(listId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:879
Delete a list. Member memberships are deleted; the contacts themselves are not.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
listId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
listContactListMembers()
Section titled “listContactListMembers()”listContactListMembers(listId: string, params?: ListMembersParams): Promise<PaginatedResponse<ListMemberResponse>>;Defined in: sdk/src/client.ts:887
List members of a list. Paginated; pass subscribed: false to include unsubscribed
members.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
listId | string |
params? | ListMembersParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<ListMemberResponse>>
addContactListMembers()
Section titled “addContactListMembers()”addContactListMembers(listId: string, params: AddListMembersParams): Promise<AddListMembersResponse>;Defined in: sdk/src/client.ts:902
Add members by contact id or email. Emails that don’t map to existing contacts auto-create them.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
listId | string |
params | AddListMembersParams |
Returns
Section titled “Returns”Promise<AddListMembersResponse>
removeContactListMember()
Section titled “removeContactListMember()”removeContactListMember(listId: string, contactId: string): Promise<ListMembershipResponse>;Defined in: sdk/src/client.ts:913
Remove a contact from a list (soft unsubscribe — keeps the membership row with
unsubscribedAt set).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
listId | string |
contactId | string |
Returns
Section titled “Returns”Promise<ListMembershipResponse>
listNotificationChannels()
Section titled “listNotificationChannels()”listNotificationChannels(): Promise<NotificationChannelResponse[]>;Defined in: sdk/src/client.ts:929
List notification channels (Slack, webhook, email destinations for Optail internal alerts).
Returns
Section titled “Returns”Promise<NotificationChannelResponse[]>
createNotificationChannel()
Section titled “createNotificationChannel()”createNotificationChannel(params: CreateNotificationChannelParams): Promise<NotificationChannelResponse>;Defined in: sdk/src/client.ts:937
Create a notification channel. The events array selects which Optail events route to
this channel.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateNotificationChannelParams |
Returns
Section titled “Returns”Promise<NotificationChannelResponse>
updateNotificationChannel()
Section titled “updateNotificationChannel()”updateNotificationChannel(channelId: string, params: UpdateNotificationChannelParams): Promise<NotificationChannelResponse>;Defined in: sdk/src/client.ts:946
Update a notification channel.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
channelId | string |
params | UpdateNotificationChannelParams |
Returns
Section titled “Returns”Promise<NotificationChannelResponse>
deleteNotificationChannel()
Section titled “deleteNotificationChannel()”deleteNotificationChannel(channelId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:960
Delete a notification channel.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
channelId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
testNotificationChannel()
Section titled “testNotificationChannel()”testNotificationChannel(channelId: string): Promise<NotificationChannelTestResponse>;Defined in: sdk/src/client.ts:970
Send a synthetic alert to verify the channel works.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
channelId | string |
Returns
Section titled “Returns”Promise<NotificationChannelTestResponse>
createExport()
Section titled “createExport()”createExport(params: CreateExportParams): Promise<ExportResponse>;Defined in: sdk/src/client.ts:983
Create an async export job for email events. Date range capped at 90 days. Formats: csv, jsonl, parquet.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateExportParams |
Returns
Section titled “Returns”Promise<ExportResponse>
getExport()
Section titled “getExport()”getExport(exportId: string): Promise<ExportResponse>;Defined in: sdk/src/client.ts:990
Poll the status of an export. Returns progress + download URL when complete.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
exportId | string |
Returns
Section titled “Returns”Promise<ExportResponse>
listExports()
Section titled “listExports()”listExports(params?: PaginationParams): Promise<PaginatedResponse<ExportResponse>>;Defined in: sdk/src/client.ts:997
List recent export jobs.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | PaginationParams |
Returns
Section titled “Returns”Promise<PaginatedResponse<ExportResponse>>
cancelExport()
Section titled “cancelExport()”cancelExport(exportId: string): Promise<SuccessResponse>;Defined in: sdk/src/client.ts:1005
Cancel a pending export. In-progress exports complete normally.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
exportId | string |
Returns
Section titled “Returns”Promise<SuccessResponse>
getFailoverStatus()
Section titled “getFailoverStatus()”getFailoverStatus(): Promise<FailoverStatusResponse[]>;Defined in: sdk/src/client.ts:1015
Circuit breaker state for each provider account: closed (healthy), open (failing), half_open (recovering).
Returns
Section titled “Returns”Promise<FailoverStatusResponse[]>
listFailoverEvents()
Section titled “listFailoverEvents()”listFailoverEvents(hours?: number): Promise<FailoverEventResponse[]>;Defined in: sdk/src/client.ts:1022
Recent failover state transitions. Default window: last 24 hours.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
hours? | number |
Returns
Section titled “Returns”Promise<FailoverEventResponse[]>
resetFailover()
Section titled “resetFailover()”resetFailover(providerAccountId: string): Promise<ResetFailoverResponse>;Defined in: sdk/src/client.ts:1030
Manually close an open circuit breaker. Use after fixing a known provider issue.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
providerAccountId | string |
Returns
Section titled “Returns”Promise<ResetFailoverResponse>
interpretBounce()
Section titled “interpretBounce()”interpretBounce(params: InterpretBounceParams): Promise<InterpretBounceResponse>;Defined in: sdk/src/client.ts:1043
Classify a raw SMTP bounce code / message / enhanced status into Optail’s normalized taxonomy (hard, soft, block, invalid, mailbox_full, policy, reputation).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | InterpretBounceParams |
Returns
Section titled “Returns”Promise<InterpretBounceResponse>
getBounceAnalysis()
Section titled “getBounceAnalysis()”getBounceAnalysis(messageId: string): Promise<BounceAnalysisResponse>;Defined in: sdk/src/client.ts:1050
Get bounce-interpretation results for every bounce event on a specific message.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
messageId | string |
Returns
Section titled “Returns”Promise<BounceAnalysisResponse>
createWarmupPlan()
Section titled “createWarmupPlan()”createWarmupPlan(params: CreateWarmupPlanParams): Promise<WarmupPlanResponse>;Defined in: sdk/src/client.ts:1062
Create an IP / domain warmup plan with ramped daily volumes.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateWarmupPlanParams |
Returns
Section titled “Returns”Promise<WarmupPlanResponse>
listWarmupPlans()
Section titled “listWarmupPlans()”listWarmupPlans(params?: ListWarmupPlansParams): Promise<WarmupPlanResponse[]>;Defined in: sdk/src/client.ts:1069
List warmup plans. Filter by status (active / paused / completed / cancelled).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListWarmupPlansParams |
Returns
Section titled “Returns”Promise<WarmupPlanResponse[]>
getWarmupOrchestration()
Section titled “getWarmupOrchestration()”getWarmupOrchestration(): Promise<WarmupOrchestrationResponse>;Defined in: sdk/src/client.ts:1078
Get the orchestration overview: how traffic should split across providers/domains for plans currently active.
Returns
Section titled “Returns”Promise<WarmupOrchestrationResponse>
recalculateWarmupOrchestration()
Section titled “recalculateWarmupOrchestration()”recalculateWarmupOrchestration(currentVolume?: number): Promise<WarmupOrchestrationResponse>;Defined in: sdk/src/client.ts:1086
Recalculate traffic distribution. Use after creating/cancelling plans or when current volume changes meaningfully.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
currentVolume? | number |
Returns
Section titled “Returns”Promise<WarmupOrchestrationResponse>
getWarmupPlan()
Section titled “getWarmupPlan()”getWarmupPlan(planId: string): Promise<WarmupPlanDetailResponse>;Defined in: sdk/src/client.ts:1099
Get a warmup plan with day-by-day progress.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
planId | string |
Returns
Section titled “Returns”Promise<WarmupPlanDetailResponse>
recordWarmupMetrics()
Section titled “recordWarmupMetrics()”recordWarmupMetrics(planId: string, params: RecordWarmupParams): Promise<WarmupPlanResponse>;Defined in: sdk/src/client.ts:1107
Record actual sent volume + deferrals + bounces for today. Auto-advances the plan to the next day on success.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
planId | string |
params | RecordWarmupParams |
Returns
Section titled “Returns”Promise<WarmupPlanResponse>
pauseWarmupPlan()
Section titled “pauseWarmupPlan()”pauseWarmupPlan(planId: string): Promise<WarmupPlanResponse>;Defined in: sdk/src/client.ts:1117
Pause a warmup plan. The plan’s current day is preserved; resume picks up from there.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
planId | string |
Returns
Section titled “Returns”Promise<WarmupPlanResponse>
resumeWarmupPlan()
Section titled “resumeWarmupPlan()”resumeWarmupPlan(planId: string): Promise<WarmupPlanResponse>;Defined in: sdk/src/client.ts:1124
Resume a paused warmup plan.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
planId | string |
Returns
Section titled “Returns”Promise<WarmupPlanResponse>
cancelWarmupPlan()
Section titled “cancelWarmupPlan()”cancelWarmupPlan(planId: string): Promise<WarmupPlanResponse>;Defined in: sdk/src/client.ts:1131
Cancel a warmup plan permanently.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
planId | string |
Returns
Section titled “Returns”Promise<WarmupPlanResponse>
createAbTest()
Section titled “createAbTest()”createAbTest(params: CreateAbTestParams): Promise<AbTestResponse>;Defined in: sdk/src/client.ts:1141
Create an A/B test with weighted template-version variants. Metric: open_rate, click_rate, or conversion_rate.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateAbTestParams |
Returns
Section titled “Returns”Promise<AbTestResponse>
listAbTests()
Section titled “listAbTests()”listAbTests(params?: ListAbTestsParams): Promise<AbTestResponse[]>;Defined in: sdk/src/client.ts:1148
List A/B tests filtered by status (draft / running / completed / cancelled).
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | ListAbTestsParams |
Returns
Section titled “Returns”Promise<AbTestResponse[]>
getAbTest()
Section titled “getAbTest()”getAbTest(testId: string): Promise<AbTestResponse>;Defined in: sdk/src/client.ts:1156
Get an A/B test with variant performance.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
testId | string |
Returns
Section titled “Returns”Promise<AbTestResponse>
startAbTest()
Section titled “startAbTest()”startAbTest(testId: string): Promise<AbTestResponse>;Defined in: sdk/src/client.ts:1163
Start an A/B test. Variants begin receiving traffic according to their weights.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
testId | string |
Returns
Section titled “Returns”Promise<AbTestResponse>
stopAbTest()
Section titled “stopAbTest()”stopAbTest(testId: string, params?: StopAbTestParams): Promise<AbTestResponse>;Defined in: sdk/src/client.ts:1170
Stop the test and declare a winner. Optionally pass final variant results to record.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
testId | string |
params? | StopAbTestParams |
Returns
Section titled “Returns”Promise<AbTestResponse>
deleteAbTest()
Section titled “deleteAbTest()”deleteAbTest(testId: string): Promise<{ deleted: true;}>;Defined in: sdk/src/client.ts:1177
Delete an A/B test. Only allowed for tests in draft or cancelled state.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
testId | string |
Returns
Section titled “Returns”Promise<{
deleted: true;
}>
recommendSendTime()
Section titled “recommendSendTime()”recommendSendTime(params: SendTimeRecommendationParams): Promise<SendTimeRecommendationResponse>;Defined in: sdk/src/client.ts:1187
Recommend the optimal time to send to a recipient domain based on historical engagement, optionally constrained by template and tags.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | SendTimeRecommendationParams |
Returns
Section titled “Returns”Promise<SendTimeRecommendationResponse>
scoreSpam()
Section titled “scoreSpam()”scoreSpam(params: SpamScoreParams): Promise<SpamScoreResponse>;Defined in: sdk/src/client.ts:1199
Score an email against the 100-point rubric (subject, content, headers, ISP signals, audience fit). Returns grade + findings + category breakdown.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | SpamScoreParams |
Returns
Section titled “Returns”Promise<SpamScoreResponse>
rewriteForSpam()
Section titled “rewriteForSpam()”rewriteForSpam(params: SpamRewriteParams): Promise<SpamRewriteResponse>;Defined in: sdk/src/client.ts:1207
AI-rewrite the subject + HTML to address spam-score findings. Uses Claude. Preserves intent + tone.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | SpamRewriteParams |
Returns
Section titled “Returns”Promise<SpamRewriteResponse>
getMessageSpamScore()
Section titled “getMessageSpamScore()”getMessageSpamScore(messageId: string): Promise<SpamScoreResponse>;Defined in: sdk/src/client.ts:1215
Get the persisted spam score for a sent message (cached from when it was scored). 404 if not yet scored.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
messageId | string |
Returns
Section titled “Returns”Promise<SpamScoreResponse>
getTemplateSpamScore()
Section titled “getTemplateSpamScore()”getTemplateSpamScore(templateId: string, versionId?: string): Promise<SpamScoreResponse>;Defined in: sdk/src/client.ts:1222
Get the persisted spam score for a template version. 404 if not yet scored.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
templateId | string |
versionId? | string |
Returns
Section titled “Returns”Promise<SpamScoreResponse>
getDeliverabilityStatus()
Section titled “getDeliverabilityStatus()”getDeliverabilityStatus(): Promise<DeliverabilityStatusResponse>;Defined in: sdk/src/client.ts:1236
Snapshot of which deliverability signal sources are wired up (PMT, SNDS, sender IPs, inbound DMARC).
Returns
Section titled “Returns”Promise<DeliverabilityStatusResponse>
connectPmt()
Section titled “connectPmt()”connectPmt(params?: PmtConnectParams): Promise<PmtConnectResponse>;Defined in: sdk/src/client.ts:1244
Start the Gmail Postmaster Tools OAuth flow. Returns an authorizationUrl for the user
to visit.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | PmtConnectParams |
Returns
Section titled “Returns”Promise<PmtConnectResponse>
getPmtConnection()
Section titled “getPmtConnection()”getPmtConnection(): Promise<PmtCredentialsResponse>;Defined in: sdk/src/client.ts:1255
Get the current Gmail PMT connection status (connected email, scopes, expiry).
Returns
Section titled “Returns”Promise<PmtCredentialsResponse>
disconnectPmt()
Section titled “disconnectPmt()”disconnectPmt(): Promise<{ disconnected: true;}>;Defined in: sdk/src/client.ts:1262
Revoke the PMT OAuth grant.
Returns
Section titled “Returns”Promise<{
disconnected: true;
}>
listSndsKeys()
Section titled “listSndsKeys()”listSndsKeys(): Promise<SndsKeyResponse[]>;Defined in: sdk/src/client.ts:1269
List Outlook SNDS access keys configured for inbound reputation signals.
Returns
Section titled “Returns”Promise<SndsKeyResponse[]>
addSndsKey()
Section titled “addSndsKey()”addSndsKey(params: AddSndsKeyParams): Promise<SndsKeyResponse>;Defined in: sdk/src/client.ts:1281
Add an Outlook SNDS access key. Optail polls SNDS daily and surfaces complaint-rate signals.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | AddSndsKeyParams |
Returns
Section titled “Returns”Promise<SndsKeyResponse>
deleteSndsKey()
Section titled “deleteSndsKey()”deleteSndsKey(keyId: string): Promise<{ deleted: true;}>;Defined in: sdk/src/client.ts:1288
Delete an SNDS key.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
keyId | string |
Returns
Section titled “Returns”Promise<{
deleted: true;
}>
listSenderIps()
Section titled “listSenderIps()”listSenderIps(): Promise<SenderIpResponse[]>;Defined in: sdk/src/client.ts:1295
List sending IP addresses registered for SNDS lookups.
Returns
Section titled “Returns”Promise<SenderIpResponse[]>
addSenderIp()
Section titled “addSenderIp()”addSenderIp(params: AddSenderIpParams): Promise<SenderIpResponse>;Defined in: sdk/src/client.ts:1306
Register a sender IP to monitor via SNDS.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | AddSenderIpParams |
Returns
Section titled “Returns”Promise<SenderIpResponse>
deleteSenderIp()
Section titled “deleteSenderIp()”deleteSenderIp(senderIpId: string): Promise<{ deleted: true;}>;Defined in: sdk/src/client.ts:1313
Stop monitoring a sender IP.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
senderIpId | string |
Returns
Section titled “Returns”Promise<{
deleted: true;
}>
getDmarcRuaUrl()
Section titled “getDmarcRuaUrl()”getDmarcRuaUrl(): Promise<DmarcRuaResponse>;Defined in: sdk/src/client.ts:1324
Get the inbound DMARC RUA endpoint URL for your organization. Configure in your DMARC
DNS record (rua=mailto:...).
Returns
Section titled “Returns”Promise<DmarcRuaResponse>
listTestInboxes()
Section titled “listTestInboxes()”listTestInboxes(): Promise<{ inboxDomain: string; tokens: TestInboxTokenResponse[];}>;Defined in: sdk/src/client.ts:1331
List authenticated test-inbox tokens — durable addresses for end-to-end inbox tests.
Returns
Section titled “Returns”Promise<{
inboxDomain: string;
tokens: TestInboxTokenResponse[];
}>
createTestInbox()
Section titled “createTestInbox()”createTestInbox(params: CreateTestInboxParams): Promise<TestInboxTokenResponse>;Defined in: sdk/src/client.ts:1342
Create a durable test inbox. Returns an address you can send to + a token to poll for received messages.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | CreateTestInboxParams |
Returns
Section titled “Returns”Promise<TestInboxTokenResponse>
deleteTestInbox()
Section titled “deleteTestInbox()”deleteTestInbox(tokenId: string): Promise<{ deleted: true;}>;Defined in: sdk/src/client.ts:1353
Delete a test inbox token.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
tokenId | string |
Returns
Section titled “Returns”Promise<{
deleted: true;
}>
listInboxRuns()
Section titled “listInboxRuns()”listInboxRuns(params?: { token?: string; limit?: number;}): Promise<{ runs: InboxRunSummary[];}>;Defined in: sdk/src/client.ts:1363
List recently received messages on test inboxes. Filter by token.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params? | { token?: string; limit?: number; } |
params.token? | string |
params.limit? | number |
Returns
Section titled “Returns”Promise<{
runs: InboxRunSummary[];
}>
getInboxRun()
Section titled “getInboxRun()”getInboxRun(runId: string): Promise<InboxRunDetail>;Defined in: sdk/src/client.ts:1378
Get full details of a received message: headers, body, TLS, spam score, layer-1 / layer-2 analysis.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
runId | string |
Returns
Section titled “Returns”Promise<InboxRunDetail>
shareInboxRun()
Section titled “shareInboxRun()”shareInboxRun(runId: string, visible: boolean): Promise<ShareInboxRunResponse>;Defined in: sdk/src/client.ts:1386
Toggle public-share visibility for an inbox run. Public URL allows sharing the score without auth.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
runId | string |
visible | boolean |
Returns
Section titled “Returns”Promise<ShareInboxRunResponse>
listBrandDomains()
Section titled “listBrandDomains()”listBrandDomains(): Promise<BrandDomainResponse[]>;Defined in: sdk/src/client.ts:1397
List brand domains used by the inbox visual-similarity engine.
Returns
Section titled “Returns”Promise<BrandDomainResponse[]>
addBrandDomain()
Section titled “addBrandDomain()”addBrandDomain(params: AddBrandDomainParams): Promise<BrandDomainResponse>;Defined in: sdk/src/client.ts:1408
Register a brand domain so the inbox engine can detect spoofs.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | AddBrandDomainParams |
Returns
Section titled “Returns”Promise<BrandDomainResponse>
deleteBrandDomain()
Section titled “deleteBrandDomain()”deleteBrandDomain(brandDomainId: string): Promise<{ deleted: true;}>;Defined in: sdk/src/client.ts:1415
Delete a brand domain.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
brandDomainId | string |
Returns
Section titled “Returns”Promise<{
deleted: true;
}>
listBrandTemplates()
Section titled “listBrandTemplates()”listBrandTemplates(): Promise<BrandTemplateResponse[]>;Defined in: sdk/src/client.ts:1425
List brand template fingerprints (visual hashes of your trusted templates).
Returns
Section titled “Returns”Promise<BrandTemplateResponse[]>
addBrandTemplate()
Section titled “addBrandTemplate()”addBrandTemplate(params: AddBrandTemplateParams): Promise<BrandTemplateResponse>;Defined in: sdk/src/client.ts:1437
Register a brand template fingerprint. Used by the inbox engine to detect look-alike phishing.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
params | AddBrandTemplateParams |
Returns
Section titled “Returns”Promise<BrandTemplateResponse>
deleteBrandTemplate()
Section titled “deleteBrandTemplate()”deleteBrandTemplate(brandTemplateId: string): Promise<{ deleted: true;}>;Defined in: sdk/src/client.ts:1448
Delete a brand template fingerprint.
Parameters
Section titled “Parameters”| Parameter | Type |
|---|---|
brandTemplateId | string |
Returns
Section titled “Returns”Promise<{
deleted: true;
}>