Skip to content
Use this GitHub action with your project
Add this Action to an existing workflow or create a new one
View on Marketplace

Latest commit

 

History

7 Commits

Folders and files

Repository files navigation

Notice: ZeroSMTP is being discontinued. This action sends mail through the ZeroSMTP relay (mx.msgwing.com), which stays active until 31 December 2026 and is then switched off. After that date this action will no longer work. Please move your workflows to another SMTP service before then. Details: msgwing/ZeroSMTP.

Uwaga: ZeroSMTP zostaje wyłączony. Ta akcja wysyła pocztę przez przekaźnik ZeroSMTP (mx.msgwing.com), który działa do 31 grudnia 2026, a potem zostanie wyłączony. Po tej dacie akcja przestanie działać. Przenieś swoje workflowy do innej usługi SMTP przed tym terminem.

ZeroSMTP — Send Email (GitHub Action)

Lint Marketplace License: MIT

Send an email from a GitHub Actions workflow through the free ZeroSMTP relay (mx.msgwing.com) — no paid transactional-email service, no SMTP server to run, and no volume-based pricing tiers. A composite action wrapping curl's built-in SMTP support — no extra runtime or dependency installed on the runner.

Usage

- name: Notify on failure
  if: failure()
  uses: msgwing/send-email-action@v1
  with:
    username: ${{ secrets.ZEROSMTP_USERNAME }}
    password: ${{ secrets.ZEROSMTP_PASSWORD }}
    from: ${{ secrets.ZEROSMTP_USERNAME }}
    to: you@example.com
    subject: "CI failed on ${{ github.repository }}"
    body: "Workflow ${{ github.workflow }} failed: ${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}"

Setup

  1. Register a free account at msgwing.com to get SMTP credentials (a random @msgwing.com address + password).
  2. Add ZEROSMTP_USERNAME and ZEROSMTP_PASSWORD as repository secrets — never hardcode them in the workflow file.
  3. Add the step above to any workflow (build failures, deploy notifications, scheduled reports, etc.).

Inputs

Input Required Default Description
username yes ZeroSMTP SMTP username
password yes ZeroSMTP SMTP password
from yes From address (usually the same as username)
to yes Recipient address(es) — comma-separated for multiple
subject yes Email subject
body yes Plain-text email body
port no 465 465 (implicit SSL/TLS) or 587 (STARTTLS)

Good to know

  • Mail is always sent from a shared @msgwing.com address, never from your own domain — fine for CI/CD notifications, not a fit if the "From" needs to show your own domain. See the FAQ.
  • The relay is rate-limited (200 emails/day, 50/hour, 5/minute) to keep deliverability good for everyone — see Sending limits.
  • Subject/From/To are stripped of embedded line breaks before use, to prevent header injection if any of those values come from less-trusted input (e.g. a PR title).

License

MIT — see LICENSE.

Releases

Sponsor this project

Packages

Contributors