Project

groundmail

0.0
The project is in a healthy, maintained state
Official Ruby client for the Groundmail transactional email API, with a Rails Action Mailer delivery method: set config.action_mailer.delivery_method = :groundmail.
2005
2006
2007
2008
2009
2010
2011
2012
2013
2014
2015
2016
2017
2018
2019
2020
2021
2022
2023
2024
2025
2026
 Dependencies

Development

>= 2.8
~> 5.25

Runtime

>= 0.2
 Project Readme

Groundmail

Groundmail SDKs

Official clients for the Groundmail transactional email API:
Python, Go, 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/
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

  • Our own mail servers and IP space. Your password resets and receipts don't share a pool with bulk marketing senders.
  • Transactional email only. No newsletters or cold outreach on the platform, which keeps the sending reputation clean.
  • Start free. Free covers 3,000 emails a month. After that it's pay as you go: $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