Skip to content
Esc
  • OverviewGuidesWhat exists today, and where to start.
  • QuickstartGuidesKey, domain, first send — in that order.
  • AuthenticationGuidesBearer keys, the mandatory User-Agent, and what each refusal means.
  • ErrorsGuidesThe whole vocabulary, with the status each name carries.
  • IdempotencyGuidesRetry a send without sending it twice.
  • PaginationGuidesCursors are item IDs, not page numbers.
  • Rate limitsGuidesTen a second per team, and the headers that tell you where you are.
  • Sending newslettersGuidesUse a campaign, or include an unsubscribe link.
  • EventsGuidesEvery event a webhook can carry, with one real payload each.
  • DomainsGuidesThe records, where they go at each registrar, and what the page does while you wait.
  • TrackingGuidesOpens and clicks: one record, two toggles, and what an open really means.
  • Sign-up formsGuidesPop-ups and embedded forms on your site, and the rules that pick one.
  • TemplatesGuidesFifty-seven starters sorted by goal, and how to keep a campaign as a template.
  • ReceivingGuidesInbound mail, and the Inbox: a webhook fires, you read it, you answer it.
  • InboxGuidesChannels, personal mailboxes and seats: who sees what, and where a reply goes.
  • Mail appsGuidesComing soon: your Rasket address in Apple Mail, Outlook and the Gmail app.
  • Inbox APIGuidesOpen, read and answer support conversations from your app, with the same key.
  • Support inbox in your appGuidesA Contact us form that opens a conversation your team answers, in five minutes.
  • Replies to your emailsGuidesOne field on a send, and the customer's reply opens a conversation.
  • Let an agent triageGuidesAn AI agent reads, notes and drafts over MCP; a person sends.
  • Node SDKGuidesThe rasket package: typed from the API's own document, retries only what is safe.
  • Python SDKGuidesThe rasket package on PyPI: the Node client's methods, in snake_case, over httpx.
  • MCP serverGuidesConnect Claude, ChatGPT or any MCP client: your scopes, no key.
  • AI assistGuidesSubject lines, drafts and diagnosis — in the dashboard and over the API, off until you allow it.
  • AgentsGuidesLet an AI agent set Rasket up: the skill, the rules file, MCP, and the recipe they share.
  • OAuthGuidesLet another app act for a team: register, authorize with PKCE, exchange, refresh.
  • Single sign-onGuidesOIDC login for your team, a domain proved by DNS, enforcement and break-glass.
  • IntegrationsGuidesEvery integration and its status, and Rasket on Vercel, Netlify and Cloudflare.
  • SMTPGuidesSend from anything that speaks SMTP: settings, setup guides, limits and replies.
  • ZapierGuidesSend email, add contacts and react to email events from a Zap, with no code.
  • n8nGuidesThe Rasket node and trigger for n8n workflows: install, connect, every operation.
  • VercelGuidesAdd Rasket on Vercel: a Sending key in each project as RASKET_API_KEY, no copying.
  • WordPressGuidesThe Rasket plugin: every email your site sends, through Rasket, with a safe fallback.
  • NotionGuidesTurn a Notion database of people into contacts in a segment, once or every hour.
  • Migrating to RasketGuidesBring contacts, unsubscribes, lists and templates from Mailchimp, Klaviyo and more.
  • PipedreamGuidesRasket actions and instant sources for Pipedream workflows and Connect apps.
  • FramerGuidesThe Rasket plugin: sign-up forms on a Framer site, and Framer forms into contacts.
  • MakeGuidesComing soon: send email and react to email events from a Make scenario.
  • monday.comGuidesTurn board items into contacts and send a template when a board changes.
  • ClickUpGuidesReady-made Zapier and Make automations between ClickUp tasks and Rasket.
  • SlackGuidesEmail alerts in the Slack channels you choose, and /rasket for numbers and look-ups.
  • Google SheetsGuidesComing soon: turn a sheet tab of people into contacts in a segment.
  • AirtableGuidesComing soon: turn an Airtable table of people into contacts in a segment.
  • EmailsAPI referenceSend, batch, retrieve, list, reschedule, cancel, attachments.
  • DomainsAPI referenceAdd a domain, publish its records, verify it.
  • API keysAPI referenceCreate, list, rename and revoke credentials.
  • WebhooksAPI referencePayloads, signature verification, retries and replay.
  • SuppressionsAPI referenceAddresses we will not send to, and why.
  • LogsAPI referenceEvery request made with this team's credentials.
  • MetricsAPI referenceDelivery, bounce, complaint and engagement counts.
  • TemplatesAPI referenceVersioned email content with typed variables, addressed by ID or alias.
  • ContactsAPI referenceYour audience: contacts, their typed properties, segments and topic choices.
  • SegmentsAPI referenceAudiences defined by a filter, by hand, or both.
  • TopicsAPI referenceWhat contacts subscribe to, and the preference page's list.
  • CampaignsAPI referenceCampaigns, at /broadcasts: one message to a segment, from draft to results.
  • ImportsAPI referenceCSV uploads: column mapping, conflicts and counts.
  • AutomationsAPI referenceWorkflows that run per contact: the graph, its versions, and every run.
  • Custom eventsAPI referenceThe names your product fires, and what starts a workflow.
  • ReceivingAPI referenceMail sent to you: the message, its attachments, its raw source.
  • OAuthAPI referenceClient registration, the token endpoint, and the grants a team has given.
  • TeamAPI referenceThe team a credential belongs to: its plan, sender identity, AI flag and members.
  • BillingAPI referencePlan, usage, invoices and add-ons, and the hosted pages where a customer pays.
  • AI helpersAPI referenceSubject lines, a first draft, and why an email did what it did.
  • InboxAPI referenceChannels, conversations, messages, notes and search in your support inbox.

GuidesWordPress

WordPress

The Rasket plugin sends every email your WordPress site sends through Rasket, from your own domain: password resets, new account emails, WooCommerce orders and contact forms. It has a test button, a log of what was sent, and a safe fallback.

Coming soon: the Rasket plugin is not in the WordPress plugin directory yet. This page describes it as it will ship. Until then, you can send your site's email over SMTP.

Before you start

  • A verified sending domain. Add your site's domain under Domains and publish its records; the domains guide walks through it.
  • An API key with Sending access. In Rasket, open API keys and create one. Copy it; it is shown once.
  • WordPress 6.0 or later, on PHP 7.4 or later.
  • No other email plugin. Deactivate any SMTP or email plugin first. Two plugins that both take over the site's email get in each other's way.

Install the plugin

  1. In WordPress, open Plugins, then Add New Plugin.
  2. Search for Rasket. Choose Install Now, then Activate.

Connect your Rasket account

  1. Open Settings, then Rasket.
  2. Paste the key into API key.
  3. Enter the From email: an address on your verified domain, such as hello@example.com. Add a From name if you want one.
  4. Choose Save Changes. The page says Rasket is sending this site's email.

Rasket only starts once it has both the key and the From email. Until then, the site sends email the way it did before, and the page says which one is missing.

Keep the key out of the database

To keep the key in a file instead, add this line to wp-config.php, above the line that says to stop editing. The settings page then shows the key masked and cannot change it.

define( 'RASKET_API_KEY', 'rk_...' );

Send a test email

Under Send a test email on the same page, enter an address and choose Send test email. It goes through Rasket with the saved settings and never falls back, so “Rasket accepted the test email” means Rasket has it. It also appears on your Emails page in Rasket.

If it fails, the page shows Rasket's reason. The most common one is a From email on a domain that is not verified yet.

The settings

Plugin settings
SettingWhat it does
Send email with RasketSwitches the plugin on or off. Off, the site sends email as before.
API keyA key with Sending access, starting with rk_. Once saved it is shown masked. Leave the field empty to keep it.
From emailThe address every email is sent from. It must be on a domain you verified.
From nameThe name beside it. Empty, the site's title is used.
Always use this FromOn by default. Emails a plugin sends from another address go out from yours, with that address as the Reply-To.
FallbackOn by default. When Rasket cannot send an email, the site sends it the way it did before.
Email logOn by default. Keeps who each email went to, its subject and the result, for 1 to 365 days.

When Rasket cannot send

With Fallback on, your site keeps sending email even when Rasket cannot take it. What the plugin does depends on why:

Fallback outcomes
WhenWhat happens
The key is wrong, deleted or suspendedSent the old way, and a notice on the Dashboard says so.
The From address is not on a verified domainSent the old way, and a notice on the Dashboard says so.
Your sending quota is used upSent the old way, and a notice on the Dashboard says so.
Rasket cannot be reachedSent the old way.
The email is over a limit, such as too many recipientsSent the old way, with the reason in the log.
Rasket is busy or has a brief errorTried once more after a moment. If that fails too, sent the old way.
Rasket refuses the email itself, such as an attachment type it does not takeNot sent, and marked Failed in the log. Sending it another way would hide the problem.
Rasket does not answer in timeNever sent the old way, because Rasket may already be delivering it. Marked Failed in the log, though it may still arrive.

A Dashboard notice goes away by itself once Rasket sends the next email. With Fallback off, every email Rasket cannot send is marked Failed instead.

The email log

Open Settings, then Rasket, then the Email log tab. Each row shows when an email was sent, who it went to, its subject and what happened:

Log statuses
StatusWhat it means
SentRasket accepted the email. Details shows its email ID, the one Rasket's Emails page shows.
PendingThe email was already on its way from an earlier attempt, so it was not sent twice.
Sent the old wayRasket could not send it, so the site's own mailer did. Details says why.
FailedThe email was not sent. Details shows the reason.

The log never stores what an email says. Old entries are deleted after the number of days you set. The log takes part in WordPress's personal data export and erase tools, under Tools.

WooCommerce and form plugins

  • Anything that sends through WordPress works. That includes WooCommerce, Contact Form 7, WPForms, Gravity Forms, and membership and booking plugins.
  • Form emails keep their Reply-To. A contact form often sends “from” the visitor, which Rasket would refuse. With Always use this From on, the email is sent from your address and the visitor's becomes the Reply-To, so replying still reaches them.
  • WooCommerce order emails arrive as HTML. WooCommerce also adds a plain text version through a WordPress hook that the plugin does not use, so that version is not sent. Mail apps show the HTML.

Connect your WooCommerce store

With WooCommerce 8.9 or newer, the plugin also connects your store to a Rasket project, so store flows can send abandoned-checkout reminders, thank-yous and more. Your store sends to Rasket; Rasket never calls your site.

Connecting a WooCommerce store opens on Rasket soon. The steps below are ready.

  1. In WordPress, open Marketing → Rasket and press Connect to Rasket.
  2. Sign in to Rasket and pick the project the store sends to, or make one for it. Only a project admin can connect a store.
  3. You come back to WordPress. Your customers and the last 60 days of orders go over in the background. Old orders never start a flow.

A site that can't open Rasket can use a store ID and key instead. Copy them from Settings → Integrations → WooCommerce after making a new key there, and paste them under Use a store key instead, or add RASKET_STORE_ID and RASKET_STORE_KEY to wp-config.php. A store key sends that store's events, customers and products and checks its Rasket codes, and nothing else.

What the store sends

What a connected store sends
EventWhen
store:product.viewedA visitor opens a product page, with tracking on and their consent.
store:cart.updatedA shopper we can recognise adds, removes or changes an item.
store:checkout.startedThe shopper's email reaches your store at checkout.
store:order.placedAn order is placed through your checkout.
store:order.paidThe order is paid, or moves to Processing or Completed.
store:order.fulfilledThe order moves to Completed.
store:order.cancelledThe order moves to Cancelled.
store:order.refundedA refund is made, once for each refund.

Orders made in wp-admin, through the REST API or as subscription renewals are not sent, so a renewal never starts a thank-you. Each event is sent once, however often it is retried.

Consent at checkout

The plugin adds one unticked checkbox, with your own words (by default “Email me news and offers”), to the block checkout and the classic one. Only people who tick it can get marketing email. Rasket keeps the label and the time as the record. Not ticking it changes nothing for someone already subscribed or unsubscribed.

The cart link

An abandoned-checkout email links to your store, which puts the cart's items back and opens the checkout. The link holds only the items, for 30 days: no sign-in and no address, so a forwarded email gives nothing away.

Product views

Switch on Product views and carts to load Rasket's script on product, cart and checkout pages. With a consent plugin that supports the WP Consent API, the script waits until the visitor allows marketing cookies.

Your products

Your products, with their prices, pictures, links and variations, go to Rasket when they change and again every night, so emails can show the product someone looked at, a cart, or your best sellers. A product you delete or move to the bin leaves your emails. Hidden, private and draft products are never shown.

Discount codes

An email with a discount block gives each subscriber their own code. Your shop doesn't need to hold them in advance: the first time someone applies one at checkout, the plugin asks Rasket about it and saves it as a coupon that works once, with Rasket's amount, minimum spend and expiry. Under Marketing → Coupons they are described “Rasket · ” and the discount's name, and ones that expired unused are removed after a day. If Rasket can't be reached at that moment, the shopper is asked to try again in a minute, and your own shared code still works.

Sales from your emails

Rasket credits an order to the last campaign or flow email the customer clicked or opened shortly before it, or to the email whose code the order used, and shows what each one earned. It knows the customer by the email address on the order, so someone who clicks and then checks out under another address is not credited.

When something stops

  • Rasket can't be reached. Updates wait and are retried for 24 hours. Checkout never waits for Rasket.
  • The plugin stops checking in. It checks in every five minutes. After an hour without one, Rasket shows the store as not heard from and holds cart and checkout reminders, so nobody is reminded about something they bought. On a quiet site with WP-Cron off, run your host's cron job every few minutes.
  • A copy of your site. A staging copy notices its address changed and pauses itself, so its test orders never reach your project.

Disconnecting

Disconnect from Marketing → Rasket or from Settings → Integrations → WooCommerce in Rasket. Sending stops at once, the store's data in Rasket is deleted 48 hours later, and your contacts stay.

Limits

Rasket takes up to 50 recipients and 100 attachments in one email, and 40 MB in all. The plugin checks these before sending. An email over a limit is sent the old way when Fallback is on, and marked Failed when it is off.

Plugin or SMTP

Use the plugin. It has the test button, the log and the fallback, and it sends over HTTPS, which every host allows; some hosts block the ports email servers use. Rasket also takes SMTP, which suits a site that already has an SMTP plugin set up and should stay that way. Use one or the other, not both.

Multisite

Each site in a network has its own settings and its own log. A key in wp-config.php applies to every site in the network.

Troubleshooting

“Add your Rasket API key to start” or “Add the From email to start”

The plugin is on but missing one of the two. Fill it in on Settings → Rasket and save.

“Rasket refused the API key”

The key was deleted, mistyped or suspended. Create a new key with Sending access under API keys in Rasket, paste it and save.

“Rasket refused the sender”

The From email is not on a domain your team has verified for sending. Check the domain under Domains in Rasket, or change the From email to an address on a verified domain.

“Your Rasket sending quota is used up”

Your plan's emails for this period are used. Emails go out the old way until the quota resets or you raise it under Billing.

“Another plugin replaces WordPress's mail function”

Another email plugin has taken over, so Rasket never sees the site's email. Deactivate it under Plugins.

The test button cannot be pressed

Rasket is not sending yet. The note at the top of the page says what is missing.

An email is marked Failed

The Details column shows Rasket's reason. The errors page explains each one.

Removing the plugin

Deactivating it puts the site back on its own mailer and keeps the settings. Deleting it under Plugins also removes its settings and the email log.