# SendFlit > Official SDKs and API reference for the SendFlit transactional email API - [Introduction](https://docs.sendflit.com/index.md): SendFlit is a transactional email API for developers and AI agents. Send, track and manage email with one API key. - [Quickstart](https://docs.sendflit.com/quickstart.md): Verify a domain, create an API key, and send your first email with the API or any SDK. - [Domains](https://docs.sendflit.com/concepts/domains.md): How sending domains work: DKIM, SPF and DMARC records, verification, and why verification is required. - [API keys and scopes](https://docs.sendflit.com/concepts/api-keys.md): Create, scope, rotate and revoke SendFlit API keys. - [Emails and their lifecycle](https://docs.sendflit.com/concepts/emails.md): What happens to an email from the moment you send it: statuses, events, scheduling, cancellation and tracking. - [Send a welcome email from Node.js](https://docs.sendflit.com/tutorials/node-welcome-email.md): Build a sign-up route that sends a welcome email safely, using the SendFlit Node.js SDK and an idempotency key. - [Handle bounces and complaints with webhooks](https://docs.sendflit.com/tutorials/handle-bounces.md): Receive SendFlit webhooks, verify their signatures, and react to bounces, complaints and delivery events. - [Build and send a React email template](https://docs.sendflit.com/tutorials/react-email-template.md): Create a reusable email template with React components, render it to HTML, preview it, and send it through the SendFlit API. - [Let an AI agent send email with MCP](https://docs.sendflit.com/tutorials/ai-agent-mcp.md): Connect an MCP-compatible AI agent to SendFlit, list the tools it can use, and send an email through the MCP server. - [Sign-up forms](https://docs.sendflit.com/guides/signup-forms.md): Build a sign-up form for your website, customise its look and questions, and understand how signups reach your contacts. - [Idempotency and safe retries](https://docs.sendflit.com/guides/idempotency.md): Make email sends safe to retry after timeouts and failures by using idempotency keys correctly. - [Batch sending](https://docs.sendflit.com/guides/batch-sending.md): Send up to 100 emails in one request, read per-message results, and handle partial failures. - [SMTP relay](https://docs.sendflit.com/guides/smtp.md): Send email through SendFlit from any app or server that can only speak SMTP. - [Switching from Resend](https://docs.sendflit.com/guides/switching-from-resend.md): Move an existing Resend integration to SendFlit by changing the API key and base URL. - [MCP server](https://docs.sendflit.com/guides/mcp-server.md): Let AI agents use a SendFlit account through the Model Context Protocol. - [DNS guides](https://docs.sendflit.com/guides/dns/overview.md): Add the records SendFlit needs at your DNS provider. Pick your provider for a step-by-step guide. - [Add SendFlit DNS records at Cloudflare](https://docs.sendflit.com/guides/dns/cloudflare.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Cloudflare, then verify it with SendFlit. - [Add SendFlit DNS records at Gandi](https://docs.sendflit.com/guides/dns/gandi.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Gandi, then verify it with SendFlit. - [Add SendFlit DNS records at GoDaddy](https://docs.sendflit.com/guides/dns/godaddy.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at GoDaddy, then verify it with SendFlit. - [Add SendFlit DNS records at DreamHost](https://docs.sendflit.com/guides/dns/dreamhost.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at DreamHost, then verify it with SendFlit. - [Add SendFlit DNS records at Hetzner](https://docs.sendflit.com/guides/dns/hetzner.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Hetzner, then verify it with SendFlit. - [Add SendFlit DNS records at Hostinger](https://docs.sendflit.com/guides/dns/hostinger.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Hostinger, then verify it with SendFlit. - [Add SendFlit DNS records at IONOS](https://docs.sendflit.com/guides/dns/ionos.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at IONOS, then verify it with SendFlit. - [Add SendFlit DNS records at Namecheap](https://docs.sendflit.com/guides/dns/namecheap.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Namecheap, then verify it with SendFlit. - [Add SendFlit DNS records at Porkbun](https://docs.sendflit.com/guides/dns/porkbun.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Porkbun, then verify it with SendFlit. - [Add SendFlit DNS records at Squarespace](https://docs.sendflit.com/guides/dns/squarespace.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Squarespace, then verify it with SendFlit. - [Add SendFlit DNS records at STRATO](https://docs.sendflit.com/guides/dns/strato.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at STRATO, then verify it with SendFlit. - [Add SendFlit DNS records at Vercel](https://docs.sendflit.com/guides/dns/vercel.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Vercel, then verify it with SendFlit. - [Add SendFlit DNS records at Name.com](https://docs.sendflit.com/guides/dns/name-com.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Name.com, then verify it with SendFlit. - [Add SendFlit DNS records at Dynadot](https://docs.sendflit.com/guides/dns/dynadot.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Dynadot, then verify it with SendFlit. - [Add SendFlit DNS records at Bluehost](https://docs.sendflit.com/guides/dns/bluehost.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Bluehost, then verify it with SendFlit. - [Add SendFlit DNS records at HostGator](https://docs.sendflit.com/guides/dns/hostgator.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at HostGator, then verify it with SendFlit. - [Add SendFlit DNS records at Network Solutions](https://docs.sendflit.com/guides/dns/network-solutions.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Network Solutions, then verify it with SendFlit. - [Add SendFlit DNS records at Wix](https://docs.sendflit.com/guides/dns/wix.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Wix, then verify it with SendFlit. - [Add SendFlit DNS records at Google Cloud DNS](https://docs.sendflit.com/guides/dns/google-cloud-dns.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Google Cloud DNS, then verify it with SendFlit. - [Add SendFlit DNS records at Azure DNS](https://docs.sendflit.com/guides/dns/azure-dns.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at Azure DNS, then verify it with SendFlit. - [Add SendFlit DNS records at DigitalOcean](https://docs.sendflit.com/guides/dns/digitalocean.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at DigitalOcean, then verify it with SendFlit. - [Add SendFlit DNS records at OVHcloud](https://docs.sendflit.com/guides/dns/ovhcloud.md): Step-by-step: publish the DKIM, SPF and DMARC records for your domain at OVHcloud, then verify it with SendFlit. - [Add SendFlit DNS records at any provider](https://docs.sendflit.com/guides/dns/other-providers.md): The same steps work at any DNS provider: find the DNS page for your domain, add three TXT records, then verify. - [SDK overview](https://docs.sendflit.com/sdks/overview.md): Install a SendFlit SDK for Node.js, Python, Go, Ruby, PHP, Java or .NET, and see which methods each one provides. - [Node.js](https://docs.sendflit.com/sdks/node.md): Send transactional email from Node.js 18+ with the @sendflit/sdk package: send, batch, manage emails and domains, retry safely, and verify webhooks. - [Python](https://docs.sendflit.com/sdks/python.md): Send transactional email from Python 3.9+ with the sendflit package: send, batch, idempotency keys, domains, suppressions and webhook verification. - [Go](https://docs.sendflit.com/sdks/go.md): Send transactional email from Go with github.com/Sendflit/sendflit-go: context-aware sends, batch, domains, suppressions, errors and webhook verification. - [Ruby](https://docs.sendflit.com/sdks/ruby.md): Send transactional email from Ruby 2.7+ with the sendflit gem: keyword-argument sends, batch, domains, suppressions, errors and webhook verification. - [PHP](https://docs.sendflit.com/sdks/php.md): Send transactional email from PHP 7.4+ with the sendflit/sendflit Composer package: array-based sends, batch, attachments, domains, suppressions, errors and webhook verification. - [Java](https://docs.sendflit.com/sdks/java.md): Send transactional email from Java 17+ with the com.sendflit:sendflit artifact: builder-based sends, batch, attachments, domains, suppressions, errors and webhook verification. - [.NET](https://docs.sendflit.com/sdks/dotnet.md): Send transactional email from .NET 6+ with the SendFlit NuGet package: async sends, batch, attachments, domains, suppressions, errors and webhook verification. - [React email templates](https://docs.sendflit.com/sdks/templates/react-email.md): Build email-safe templates with React components and render them to HTML for SendFlit. - [API overview](https://docs.sendflit.com/reference/api-overview.md): Base URL, versioning, authentication, endpoints and conventions for the SendFlit v1 REST API. - [Errors, retries and limits](https://docs.sendflit.com/reference/errors.md): HTTP status codes, safe retries with idempotency keys, batch behavior and sending limits. - [Webhooks](https://docs.sendflit.com/reference/webhooks.md): Receive delivery, bounce, complaint and engagement events from SendFlit, verify each request's signature, and handle retries safely. - [Security](https://docs.sendflit.com/reference/security.md): How SendFlit protects API keys, sending domains, webhook deliveries and email data, and what you should do on your side. - [Changelog](https://docs.sendflit.com/reference/changelog.md): Release history for the SendFlit API and SDKs. - [List Keys](https://docs.sendflit.com/api-reference/list-keys.md) - [Create Key](https://docs.sendflit.com/api-reference/create-key.md) - [Update Key](https://docs.sendflit.com/api-reference/update-key.md): Rename a key, or change what an agent key may do. Takes effect on its next request. - [Revoke Key](https://docs.sendflit.com/api-reference/revoke-key.md) - [List Domains](https://docs.sendflit.com/api-reference/list-domains.md) - [Add Domain](https://docs.sendflit.com/api-reference/add-domain.md) - [Domain Records](https://docs.sendflit.com/api-reference/domain-records.md): Full DNS record set for manual setup (neutral, white-label). - [Update Domain](https://docs.sendflit.com/api-reference/update-domain.md): Change the Return-Path subdomain. The records move with it, so the domain goes back to waiting on DNS for them. - [Domain Deliverability](https://docs.sendflit.com/api-reference/domain-deliverability.md): A 0-100 deliverability score with the specific, actionable reasons behind it. - [Domain Deliverability Assistant](https://docs.sendflit.com/api-reference/domain-deliverability-assistant.md): The same score, read by the AI layer into a one-paragraph plain- language explanation and a single prioritized next step — for someone who wants "what do I actually do" rather than a checklist. - [Verify Domain](https://docs.sendflit.com/api-reference/verify-domain.md): `recheck=true` is the Verify button itself (not the page's own polling): also asks the mail provider to look at the Return-Path records again now. - [List Suppressions](https://docs.sendflit.com/api-reference/list-suppressions.md) - [Add Suppression](https://docs.sendflit.com/api-reference/add-suppression.md) - [Remove Suppression](https://docs.sendflit.com/api-reference/remove-suppression.md) - [Send](https://docs.sendflit.com/api-reference/send.md): Send one email. Pass an `Idempotency-Key` header on retry-sensitive calls: retrying the exact same request with the same key replays the original result (including a prior failure) instead of sending twice. Reusing the key with a different body is rejected as a client error. - [Send Batch](https://docs.sendflit.com/api-reference/send-batch.md): Send up to 100 emails in one call. The `Idempotency-Key` header (see /email above) covers the whole batch — retrying the same batch with the same key replays the original per-item results rather than resending. - [Get Email](https://docs.sendflit.com/api-reference/get-email.md) - [Cancel Scheduled](https://docs.sendflit.com/api-reference/cancel-scheduled.md) - [List Emails](https://docs.sendflit.com/api-reference/list-emails.md) - [List Webhooks](https://docs.sendflit.com/api-reference/list-webhooks.md) - [Create Webhook](https://docs.sendflit.com/api-reference/create-webhook.md) - [Delete Webhook](https://docs.sendflit.com/api-reference/delete-webhook.md) - [Usage](https://docs.sendflit.com/api-reference/usage.md) ## OpenAPI Specs - [openapi-v1](/openapi/openapi-v1.json) This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.