Skip to main content
Start the wait, then trigger the product to send mail to that address. The call returns the captured message, or fails when nothing arrives in time. Set DEVHELM_WORKSPACE_ID to the workspace that owns the domain. The SDK sends it for you when that variable is set. REST calls send it as x-phelm-workspace-id.

SDK

to is the full address. timeoutMs / timeout_ms is milliseconds (60 seconds below). The maximum is 120000.
The SDK starts the lookback at the moment you call wait. Mail that arrived earlier is not returned. Pass receivedAfter / received_after when the message may already be stored. When you already split the address, waitLocalPart / wait_local_part posts to /api/v1/email/{localpart}/wait and sends domain in the body.

CLI

The table includes an OTP column. JSON output is the message.

REST

Omit receivedAfter and the API looks back 60 seconds. A wait that finds nothing returns HTTP 408 with code WAIT_TIMEOUT.

Next steps

OTPs and links

Read the code from the message you just waited for.

How capture works

Domains, what is stored, and plan retention.