Skip to content

Latest commit

 

History

16 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Groundmail

Groundmail SDKs

Official clients for the Groundmail transactional email API:
Python, Go, Rust, Ruby, PHP, Laravel and Symfony Mailer. Node.js is on npm as groundmail.

PyPI RubyGems Packagist Go reference License: MIT

Docs · Get a free account · groundmail.dev


Install

Language Install Source
Python (Django backend included) pip install groundmail python/
Go go get github.com/Groundmail/groundmail-sdks/go go/
Rust cargo add groundmail rust/
Ruby gem install groundmail ruby/
PHP composer require groundmail/groundmail php/ · groundmail-php
Laravel composer require groundmail/laravel laravel/ · groundmail-laravel
Symfony Mailer composer require groundmail/symfony-mailer symfony-mailer/ · groundmail-symfony-mailer
Node.js / TypeScript npm install groundmail npm

Send an email

Python

from groundmail import Groundmail

tx = Groundmail("gm_your_key_here")

result = tx.emails.send(
    from_="you@yourdomain.com",
    to="user@example.com",
    subject="Hello",
    html="<p>It works.</p>",
)

print(result["id"], result["status"])

Go

client, err := groundmail.New("gm_your_key_here")
if err != nil {
	log.Fatal(err)
}

result, err := client.Emails.Send(map[string]any{
	"from":    "you@yourdomain.com",
	"to":      "user@example.com",
	"subject": "Hello",
	"html":    "<p>It works.</p>",
})

Ruby

require "groundmail"

tx = Groundmail::Client.new("gm_your_key_here")

result = tx.emails.send(
  from: "you@yourdomain.com",
  to: "user@example.com",
  subject: "Hello",
  html: "<p>It works.</p>"
)

Each folder has its own README with framework setup, errors and retries.

Contributing

Found a bug or want something added? Open an issue. These SDKs are published here on each release, so we port fixes rather than merging pull requests directly.

Why Groundmail

  • Mailboxes for your agents. Give an agent its own email address: it receives mail, replies in the thread and picks up sign-up codes on its own. No account needed to start. Agent mailboxes
  • Each kind of mail on its own IPs. Transactional email (sign-in codes, password resets, receipts), product email and opt-in newsletters send from separate IPs, so your newsletter never shares a pool with your password resets. We run our own mail servers and never send cold outreach or bought lists.
  • Start free. Free covers 3,000 emails a month. After that, pay as you go is $15 a month with 20,000 emails included, then from $0.70 per 1,000, less as you grow. Pricing
  • Built for code and for agents. REST API, SMTP, SDKs for Node, Python, Go, PHP and Ruby, a CLI, and an MCP server for Claude, ChatGPT and Cursor.

All Groundmail libraries

Use Package
Node.js / TypeScript groundmail on npm
Python (Django), Go, Ruby (Rails Action Mailer) Groundmail/groundmail-sdks
PHP Groundmail/groundmail-php
Laravel Groundmail/groundmail-laravel
Symfony Mailer Groundmail/groundmail-symfony-mailer
Nodemailer Groundmail/groundmail-nodemailer
NestJS Groundmail/nestjs-groundmail
Strapi Groundmail/strapi-provider-email-groundmail
Medusa Groundmail/medusa-notification-groundmail
AdonisJS Groundmail/adonisjs-groundmail
Phoenix (Swoosh) Groundmail/swoosh_groundmail
CLI groundmail-cli on npm
MCP server (Claude, ChatGPT, Cursor) Groundmail/groundmail-mcp
Agent skills and Claude Code plugin Groundmail/groundmail-skills
Email templates (React Email, MJML, HTML) Groundmail/email-templates

Website · Docs · Pricing · Sign up free

Releases

Packages

Contributors

Languages