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.

GuidesAirtable

Airtable

Turn an Airtable table of people into an audience. Rasket reads the table, keeps its people as contacts in a segment, once or as records change, and you send to that segment with campaigns.

Coming soon: connecting Airtable is not switched on yet. This page describes it as it will ship. Until then, download the table as a CSV file and import it in Audience.

What it does

  • Reads only the bases you grant. When you connect, Airtable asks which bases Rasket may use.
  • One table, one sync. Optionally through one of its views. A sync says which field holds the email address, what the other fields become, and the segment the people go into.
  • Adds and updates, never removes. New records become contacts, and changes in Airtable update them. Nobody is removed or unsubscribed by a sync.
  • Writes back only where you say. With write-back on, Rasket fills only the fields you picked for it, never a field the sync reads.

Before you start

  • An admin of the Rasket project. Connecting an Airtable account and adding a sync are an admin's decisions. Other members can see the syncs but not change them.
  • A table with an email field. One address per record.
  • Their agreement. Only people who agreed to hear from you should arrive subscribed. An opt-in field, such as a checkbox, says who did.
  • A verified sending domain, for the campaigns you send afterwards. The domains guide walks through it.

Connect an Airtable account

  1. In Rasket, open Settings, then Integrations, then Airtable, and choose Connect an Airtable account.
  2. Rasket says what it will read and write. Choose Continue to Airtable.
  3. In Airtable, choose the bases Rasket may use, and grant access.
  4. You are back on Settings, and the account has its own card.

Finish within ten minutes of choosing Continue. After that the connection expires and nothing is read; start again from Settings. To use another base later, connect the account again and add it on Airtable's screen.

Add a sync

  1. On the account's card, choose Add a sync, then the base.
  2. Choose the table, and a view if you want only the records it shows. The form lists the table's fields.
  3. Map the fields, as the table below describes.
  4. Say who agreed to hear from you, as the consent table describes.
  5. Choose Save and sync. The sync reads the whole table once straight away, and its page shows what it did.
The sync form
FieldWhat it takes
Email address fieldRequired. An Email, Single line text, Long text, Formula or Lookup field holding one address per record.
First name, Last nameOptional. A text, Formula, Single select or Lookup field. Leave the rest as Don't copy.
A contact propertyAny other readable field, into one of your project's contact properties. Add properties in Audience first.
Opt-in field (optional)A Checkbox, or a Single select or Multiple select field and the option that means yes. Records that say yes arrive subscribed; the rest arrive not subscribed.
Add them to the segmentAn existing segment, or A new segment… with a name you type. Every synced person joins it.
Subscribe them to a topic (optional)Only people who arrive subscribed. People who opted out of the topic stay opted out.
RunOnce, now, or As records change.
Write email activity back (optional)Up to four fields you pick: status, last sent, last opened and last clicked.

Who arrives subscribed

Consent
What you setWhat happens
An opt-in field, and you confirm the statementRecords that say yes arrive subscribed. Every other record arrives as a contact who is not subscribed.
No opt-in field, and you confirm everyone in the table agreedEvery record arrives subscribed.
No opt-in field, and nothing confirmedEvery record arrives as a contact who is not subscribed.

A contact who is not subscribed gets no campaigns, only the transactional email you send them. Rasket keeps the statement you confirmed, who confirmed it and when, on the sync.

A contact who arrived not subscribed is subscribed once their record says yes. Someone who unsubscribed stays unsubscribed, whatever the table says.

As records change

With As records change, Airtable tells Rasket when a mapped field changes, and Rasket reads just those records, usually within a minute. Edits to other fields, and Rasket's own write-back, start nothing.

  • Two per base. Airtable lets Rasket watch two tables in one base. A third sync on that base runs once instead.
  • Few API calls. Airtable's free plan allows 1,000 API calls a month for the whole workspace. Watching for changes uses a few calls for each change, instead of reading the table every hour.

What a sync never does

  • It never removes or unsubscribes anybody. A record deleted in Airtable, or no longer opted in, leaves the contact and its segment as they are.
  • It never touches people who said no. Unsubscribed contacts, addresses on your suppression list and contacts deleted in Rasket are skipped and left alone. A contact you delete stays deleted.
  • It never writes to a field it reads.

Changes in Airtable win over names and properties edited in Rasket. An email address changed in Airtable becomes a new contact; the old one stays. When one address appears in several records, the last one wins.

Write email activity back

Pick up to four fields for Rasket to fill on each record the sync added. Rasket writes after each run, and every hour when something changed, and only to records whose values changed. It covers campaigns only.

Write-back
ValueThe field it goes in
StatusA text or Single select field gets Subscribed, Not subscribed, Unsubscribed, Bounced, Marked as spam or Suppressed. A Checkbox is ticked when they unsubscribed or are suppressed.
Last sentA Date, Date and time, or text field: when a campaign was last sent to them.
Last openedThe same, for the last campaign they opened.
Last clickedThe same, for the last campaign link they clicked.

Send to them

In Campaigns, create a campaign for the sync's segment and send it. The campaigns reference covers sending one over the API.

Managing a sync

  • Sync now on the sync's page reads the whole table again at once.
  • Write back now fills the write-back fields at once.
  • Change this sync edits the mapping, the segment, the topic, the schedule or write-back. The next run reads the whole table.
  • Runs shows the newest runs and how many records each added, updated and skipped. Rasket keeps the last 30.
  • Delete sync stops it. The contacts it added stay.
  • Disconnect on the account's card deletes its syncs and stops watching their tables. The contacts stay. To end Rasket's access completely, also remove Rasket from your Airtable account's third-party integrations.

Limits

  • 10,000 records a run. A bigger table is read over several runs, each one continuing where the last stopped.
  • Fields. Text, email, phone, URL, number, checkbox, select, date, formula, rollup, lookup and collaborator fields can be read. Attachments, linked records and buttons cannot.
  • Access lasts while it is used. Rasket renews its access before Airtable's 60-day limit. If renewal fails, the syncs pause and the card offers Reconnect.
  • Your plan's contact limit applies, as it does to an import. Records past it are skipped.

Troubleshooting

“Airtable isn't available here”

Connecting Airtable is not switched on for this deployment. Download the table as a CSV file and import it in Audience instead.

“This connection has expired”

More than ten minutes passed, or the connection started somewhere other than Rasket. Nothing was read. Start again from Settings → Integrations → Airtable.

A base is not listed

It was not granted. Connect the account again and choose the base on Airtable's screen.

“Airtable no longer accepts Rasket's access”

Rasket's access was removed in Airtable, or ran out. The account's syncs are paused. Choose Reconnect on its card; nothing is lost, and the syncs catch up.

The table, the view or a field is gone

Renamed ones still work. A deleted table stops the sync: add a new sync for the table you use now. A deleted view or field stops it too, and its page names it. Choose another and save.

“Airtable didn't let Rasket watch this table”

Two syncs on this base already run as records change. Set one of them, or this one, to run once.

Write-back says a value wasn't accepted

One of the write-back fields can't hold its value. Check the field types in the write-back table above, or choose other fields. The import keeps running either way.

Records were skipped

The sync's Runs list says why for a sample of records. A record is skipped when it has no valid email address, has the same address as a later record, belongs to someone who unsubscribed, is on your suppression list or was deleted in Rasket, or when the project is at its contact limit.