primitivedotdev/primitive.dev - Send Email

Send an email from CI via primitive.dev's /v1/send-mail API. Useful for pipeline notifications, release announcements, and alerts. Fails the step if the recipient is rejected.

View on GitHub

Trust Signals

Scorecard Score
not yet scored
Maintenance Recency
Stale
License
None
namedescriptionrequireddefault
api-keyPrimitive API key. Org-scoped; the `from` address must be on a verified sending domain owned by this key's org. Pass via a GitHub secret reference (see README) — never hard-code. Masked in logs.yes
api-base-urlPrimitive API base URL. Defaults to production.nohttps://api.primitive.dev/v1
fromSender address. Must be on a verified sending domain owned by the API key's org (e.g. `ci@yourdomain.com`).yes
toRecipient address.yes
subjectEmail subject.yes
body-textPlain-text body. At least one of `body-text` / `body-html` is required.no
body-htmlHTML body. At least one of `body-text` / `body-html` is required.no
waitWhen `true`, block until the platform reports a delivery outcome (up to `wait-timeout-ms`) instead of returning as soon as the send is accepted. Default `false`.nofalse
wait-timeout-msMax milliseconds to wait for delivery when `wait` is true (platform caps at 30000). Ignored when `wait` is false.no10000
expected-org-idOptional safety guard. When set, the Action calls `/whoami` before sending and aborts if the API key's org differs — prevents a leaked-key cross-org send. Recommended in production workflows.no
namedescription
email-idUUID of the accepted send.
statusPlatform-reported send status (e.g. `submitted_to_agent`, `delivered`).
acceptedComma-separated list of accepted recipients.
rejectedComma-separated list of rejected recipients (empty on success — a non-empty value fails the step).