Skip to main content

example community package

Project description

Swarmauri Logo

PyPI - Downloads Hits PyPI - Python Version PyPI - License PyPI - swarmauri_tool_gmail Discord

Swarmauri Tool Gmail

Tools for sending and reading Gmail messages via Google Workspace service-account delegation. Provides GmailSendTool and GmailReadTool wrappers around the Gmail REST API.

Features

  • GmailSendTool sends HTML emails to one or more recipients.
  • GmailReadTool fetches messages matching a Gmail search query and formats key headers.
  • Both tools authenticate with googleapiclient using a service account JSON file and delegated user email.

Prerequisites

  • Python 3.10 or newer.
  • Google Cloud service account with Gmail API enabled and domain-wide delegation to the target user.
  • Credentials JSON file with the https://www.googleapis.com/auth/gmail.send and/or https://www.googleapis.com/auth/gmail.readonly scopes.
  • Install google-api-python-client and google-auth (pulled in automatically).

Installation

# pip
pip install swarmauri_tool_gmail

# poetry
poetry add swarmauri_tool_gmail

# uv (pyproject-based projects)
uv add swarmauri_tool_gmail

Sending Email

from swarmauri_tool_gmail import GmailSendTool

send_tool = GmailSendTool(
    credentials_path="service-account.json",
    sender_email="user@yourdomain.com",
)

result = send_tool(
    recipients="recipient@example.com",
    subject="Test Email",
    htmlMsg="<p>Hello, this is a test email!
</p>",
)

print(result)

Reading Email

from swarmauri_tool_gmail import GmailReadTool

read_tool = GmailReadTool(
    credentials_path="service-account.json",
    sender_email="user@yourdomain.com",
)

result = read_tool(query="is:unread", max_results=5)
print(result["gmail_messages"])

Tips

  • Ensure the service account has been granted domain-wide delegation and that the Gmail API is enabled in Google Cloud console.
  • Store credentials securely (Secrets Manager, Vault) and inject the file path via environment variables.
  • When sending to multiple recipients, supply a comma-separated string (Gmail handles the formatting).
  • For message bodies beyond simple HTML, extend the tool to add attachments or alternative MIME parts.

Want to help?

If you want to contribute to swarmauri-sdk, read up on our guidelines for contributing that will help you get started.

Project details


Release history Release notifications | RSS feed

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

swarmauri_tool_gmail-0.11.0.dev1.tar.gz (8.8 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

swarmauri_tool_gmail-0.11.0.dev1-py3-none-any.whl (10.6 kB view details)

Uploaded Python 3

File details

Details for the file swarmauri_tool_gmail-0.11.0.dev1.tar.gz.

File metadata

  • Download URL: swarmauri_tool_gmail-0.11.0.dev1.tar.gz
  • Upload date:
  • Size: 8.8 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_tool_gmail-0.11.0.dev1.tar.gz
Algorithm Hash digest
SHA256 6b299a678fef33e34ae2ca017f5a2cbcbbe0c7328948c60ba63953062a893bc6
MD5 d72c9c348d79a82d4261f97c760296a0
BLAKE2b-256 0d0655ecf71896b3091ae5f52fa38cc27b6738688b43bd8575a9e48a1d44002d

See more details on using hashes here.

File details

Details for the file swarmauri_tool_gmail-0.11.0.dev1-py3-none-any.whl.

File metadata

  • Download URL: swarmauri_tool_gmail-0.11.0.dev1-py3-none-any.whl
  • Upload date:
  • Size: 10.6 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: uv/0.11.26 {"installer":{"name":"uv","version":"0.11.26","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}

File hashes

Hashes for swarmauri_tool_gmail-0.11.0.dev1-py3-none-any.whl
Algorithm Hash digest
SHA256 8891b6399c365dda309ecf1b076554a93a86638574a8c18c621eab1f06fbe861
MD5 3d51c956cf82d90b417102516e00398d
BLAKE2b-256 6509ca7649609aefb92748f2ecd74b015bba4878590d31be351e3928249a9250

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page