Skip to main content
A test key (tk_test_) with Email Send (or full access) calls the e-mail endpoints in test mode. The calls, the answers, the statuses, the console’s log and the webhooks behave as with a live key, but nothing reaches anyone and nothing is charged. Test messages show in the log under Test. Create a test key on Application settings → API keys (type Test, Email Send), or on Email → Settings.

The simulator addresses

Send to these addresses; each plays one outcome a few seconds after the send. Add +anything before the @ to tell your tests apart (delivered+signup@sim.tawked.com). Any other address answers 422 test_mode_recipient. The from address is on any domain of the application, verified or not, or on sim.tawked.com; with none, the verified domain’s default, else onboarding@sim.tawked.com.

What is the same, and what is not

  • The same: early access and the application’s Email product, the per-second rate, the sizes, attachments, headers, tags, scheduling, templates (and "version": "draft", a test key’s alone), idempotency, the answers’ shapes. The extended shape says "mode": "test".
  • Not applied: the daily limit, a pause, the price and the suppression list (suppressed@ plays it).
  • Its own limit: 1,000 e-mails a day for an application (Tawked’s limit), then 429 test_mode_limit_reached until midnight, Riyadh time.
  • Apart: a test key reads only test messages, a live key only live ones.
  • Webhooks: test events reach only the endpoints whose Receives test events switch is on (off by default), with "mode": "test" in the body, and never count toward an endpoint’s failures. See Test mode events.
  • SMTP: the relay takes a test key as the password too.
  • Management: domains, suppressions, metrics, templates and webhooks are real objects: a test key answers 403 live_key_required there.
  • Received email: received mail is real mail, read with a live key; a test key answers 403 live_key_required on /v1/email/received and /v1/email/inbound-addresses. It simulates one instead with POST /v1/email/received/test: one email.received webhook in test mode, nothing stored. See Testing with a test key. A receiver tells it from a real e-mail only by the envelope’s "mode": "test" (the SDKs’ mode, isTestMode() or is_test_mode).
Last modified on October 20, 2026