PHPackages                             lucascosta/postal - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Mail &amp; Notifications](/categories/mail)
4. /
5. lucascosta/postal

ActiveLibrary[Mail &amp; Notifications](/categories/mail)

lucascosta/postal
=================

Postal for PHP library.

v1.5(4y ago)068MITPHPPHP &gt;=7.0

Since May 8Pushed 4y agoCompare

[ Source](https://github.com/LucasCCS/postal-php)[ Packagist](https://packagist.org/packages/lucascosta/postal)[ Docs](https://github.com/atech/postal)[ RSS](/packages/lucascosta-postal/feed)WikiDiscussions master Synced 4w ago

READMEChangelog (3)Dependencies (1)Versions (6)Used By (0)

Postal for PHP
==============

[](#postal-for-php)

This library helps you send e-mails through [Postal](https://github.com/atech/postal) in PHP 5.4 and above.

Installation
------------

[](#installation)

Install the library using [Composer](https://getcomposer.org/):

```
$ composer require lucascosta/postal

```

Usage
-----

[](#usage)

Sending an email is very simple. Just follow the example below. Before you can begin, you'll need to login to our web interface and generate a new API credential.

```
// Create a new Postal client using the server key you generate in the web interface
$client = new Postal\Client('https://postal.yourdomain.com', 'your-api-key');

// Create a new message
$message = new Postal\SendMessage($client);

// Add some recipients
$message->to('john@example.com');
$message->to('mary@example.com');
$message->cc('mike@example.com');
$message->bcc('secret@awesomeapp.com');

// Specify who the message should be from. This must be from a verified domain
// on your mail server.
$message->from('test@test.postal.io');

// Set the subject
$message->subject('Hi there!');

// Set the content for the e-mail
$message->plainBody('Hello world!');
$message->htmlBody('Hello world!');

// Add any custom headers
$message->header('X-PHP-Test', 'value');

// Attach any files
$message->attach('textmessage.txt', 'text/plain', 'Hello world!');

// Send the message and get the result
$result = $message->send();

// Loop through each of the recipients to get the message ID
foreach ($result->recipients() as $email => $message) {
    $email;            // The e-mail address of the recipient
    $message->id();    // Returns the message ID
    $message->token(); // Returns the message's token
}
```

###  Health Score

28

—

LowBetter than 54% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity8

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity62

Established project with proven stability

 Bus Factor2

2 contributors hold 50%+ of commits

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~419 days

Total

5

Last Release

1610d ago

PHP version history (2 changes)v1.0PHP &gt;=5.4

v1.1PHP &gt;=7.0

### Community

Maintainers

![](https://www.gravatar.com/avatar/e2644e016f307b05e0351407632498229972d1c874976690fc427ee8bf4480c7?d=identicon)[lucasccs](/maintainers/lucasccs)

---

Top Contributors

[![adamcooke](https://avatars.githubusercontent.com/u/4765?v=4)](https://github.com/adamcooke "adamcooke (3 commits)")[![LucasCCS](https://avatars.githubusercontent.com/u/19320427?v=4)](https://github.com/LucasCCS "LucasCCS (1 commits)")[![minusmillionaer](https://avatars.githubusercontent.com/u/3305960?v=4)](https://github.com/minusmillionaer "minusmillionaer (1 commits)")[![stedaniels](https://avatars.githubusercontent.com/u/1185722?v=4)](https://github.com/stedaniels "stedaniels (1 commits)")[![willpower232](https://avatars.githubusercontent.com/u/1619102?v=4)](https://github.com/willpower232 "willpower232 (1 commits)")

---

Tags

postalmail

### Embed Badge

![Health badge](/badges/lucascosta-postal/health.svg)

```
[![Health](https://phpackages.com/badges/lucascosta-postal/health.svg)](https://phpackages.com/packages/lucascosta-postal)
```

###  Alternatives

[coconutcraig/laravel-postmark

Laravel package for sending mail via the Postmark API

2152.9M1](/packages/coconutcraig-laravel-postmark)[postal/postal

Postal for PHP library.

81305.4k14](/packages/postal-postal)[thinkshout/mailchimp-api-php

PHP library for v3 of the MailChimp API

824.6M1](/packages/thinkshout-mailchimp-api-php)[vemcogroup/laravel-sparkpost-driver

SparkPost driver to use with Laravel 6.x|7.x|8.x|9.x|10.x

421.7M1](/packages/vemcogroup-laravel-sparkpost-driver)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
