PHPackages                             stephenjude/laravel-sendportal - 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. [API Development](/categories/api)
4. /
5. stephenjude/laravel-sendportal

AbandonedArchivedLibrary[API Development](/categories/api)

stephenjude/laravel-sendportal
==============================

A Laravel Package to work with the SendPortal API

1.0.2(3y ago)32.6k1MITPHPPHP ^8.1

Since Sep 21Pushed 3y ago1 watchersCompare

[ Source](https://github.com/stephenjude/laravel-sendportal)[ Packagist](https://packagist.org/packages/stephenjude/laravel-sendportal)[ Docs](https://github.com/stephenjude/laravel-sendportal)[ RSS](/packages/stephenjude-laravel-sendportal/feed)WikiDiscussions main Synced 1mo ago

READMEChangelog (3)Dependencies (8)Versions (4)Used By (0)

Laravel SendPortal SDK
======================

[](#laravel-sendportal-sdk)

[![Latest Version on Packagist](https://camo.githubusercontent.com/cb3dd106bb63413135ba70c78cd3c7186b7b4f5fddf7d88536b022caf9590fcd/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f762f7374657068656e6a7564652f6c61726176656c2d73656e64706f7274616c2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/stephenjude/laravel-sendportal)[![Test Suite](https://github.com/stephenjude/laravel-sendportal/actions/workflows/tests.yml/badge.svg)](https://github.com/stephenjude/laravel-sendportal/actions/workflows/tests.yml)[![Total Downloads](https://camo.githubusercontent.com/9c6df243c42c04bfd7a8652b833c82be44ec9e23f4372d7835cb4f9c762aa390/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f7374657068656e6a7564652f6c61726176656c2d73656e64706f7274616c2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/stephenjude/laravel-sendportal)

The unofficial Laravel Package to work with the [SendPortal](https://sendportal.io/) APIs.

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

[](#installation)

You can install the package via composer:

```
composer require stephenjude/laravel-sendportal
```

Set up
------

[](#set-up)

To start using this package, you need to add environment variables for:

- `SENDPORTAL_URL` - The url of your Sendportal account like this —
- `SENDPORTAL_TOKEN` - You can generate this from your SendPortal account.

The package will pick these up in its configuration and use these when it resolves an instance of the `Client`.

Usage
-----

[](#usage)

This package can be used by using the `SendPortal` facade or by injecting the `SendPortal\Laravel\Http\Client` into a method to instantiate the client:

```
use SendPortal\Laravel\Contracts\ClientContract;
use SendPortal\Laravel\Facades\SendStack;

/**
 * Without a Facade
 */
$client = app()->make(
    abstract: ClientContract::class,
);

$client->subscribers()->all();

/**
 *  Using the Facade
 */
SendPortal::subscribers()->all();
```

### Getting a list of Subscribers

[](#getting-a-list-of-subscribers)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::subscribers()->all();
```

### Getting a single Subscriber

[](#getting-a-single-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::subscribers()->get(
    subscriber: 1,
);
```

### Creating a new Subscriber

[](#creating-a-new-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;
use SendPortal\Laravel\Http\Requests\SubscriberRequest;

SendPortal::subscribers()->create(
    request: new SubscriberRequest(
        email: 'contact@sendportal.local', // Required
        firstName: 'Send', // Optional
        lastName: 'Portal', // Optional
        tags: [
            1,
            2,
        ], // Optional
        optOut: false, // Optional
    ),
);
```

### Update a Subscriber

[](#update-a-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;
use SendPortal\Laravel\Http\Requests\SubscriberRequest;

SendPortal::subscribers()->update(
    id: 1,
    request: new SubscriberRequest(
        email: 'contact@sendportal.local', // Required
        firstName: 'Send', // Optional
        lastName: 'Portal', // Optional
        tags: [
            1,
            2,
        ], // Optional
        optOut: false, // Optional
    ),
);
```

### Deleting a Subscriber

[](#deleting-a-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::subscribers()->delete(
    subscriberId: 1,
);
```

### Attaching a Tag to a Subscriber

[](#attaching-a-tag-to-a-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::subscribers()->attachTag(
    subscriberId: 1,
    tagId: 1,
);
```

### Removing a Tag from a Subscriber

[](#removing-a-tag-from-a-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::subscribers()->removeTag(
    subscriberId: 1,
    tagIds: [1, 2],
);
```

### Checking if an email address is an Active Subscriber

[](#checking-if-an-email-address-is-an-active-subscriber)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::isActiveSubscriber(
    subscriberId: 1,
);
```

### Getting all Tags

[](#getting-all-tags)

```
use SendPortal\Laravel\Facades\SendPortal;

SendPortal::tags()->all();
```

### Creating a new Tag

[](#creating-a-new-tag)

```
use SendPortal\Laravel\Facades\SendPortal;
use SendPortal\Laravel\Http\Requests\TagRequest;

SendPortal::tags()->create(
    request: new TagRequest(
        name: 'Test', // Required
        subscribers: [1], // Optional
    ),
);
```

Testing
-------

[](#testing)

```
composer test
```

Changelog
---------

[](#changelog)

Please see [CHANGELOG](CHANGELOG.md) for more information on what has changed recently.

Security Vulnerabilities
------------------------

[](#security-vulnerabilities)

Please review [our security policy](../../security/policy) on how to report security vulnerabilities.

Credits
-------

[](#credits)

- [Stephen Jude](https://github.com/stephenjude)
- [Steve McDougall](https://github.com/juststeveking)
- [All Contributors](../../contributors)

License
-------

[](#license)

The MIT License (MIT). Please see [License File](LICENSE.md) for more information.

###  Health Score

30

—

LowBetter than 64% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity21

Limited adoption so far

Community10

Small or concentrated contributor base

Maturity58

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 96% of commits — single point of failure

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 ~108 days

Total

3

Last Release

1114d ago

### Community

Maintainers

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

---

Top Contributors

[![stephenjude](https://avatars.githubusercontent.com/u/31182887?v=4)](https://github.com/stephenjude "stephenjude (24 commits)")[![eyounelson](https://avatars.githubusercontent.com/u/24621192?v=4)](https://github.com/eyounelson "eyounelson (1 commits)")

---

Tags

apilaravelsendportalphplaravelsendportallaravel-sendportal

###  Code Quality

TestsPest

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/stephenjude-laravel-sendportal/health.svg)

```
[![Health](https://phpackages.com/badges/stephenjude-laravel-sendportal/health.svg)](https://phpackages.com/packages/stephenjude-laravel-sendportal)
```

###  Alternatives

[scalar/laravel

Render your OpenAPI-based API reference

6183.9k2](/packages/scalar-laravel)[wayofdev/laravel-symfony-serializer

📦 Laravel wrapper around Symfony Serializer.

2113.6k](/packages/wayofdev-laravel-symfony-serializer)[octw/aramex

A Library to integrate with Aramex APIs

2925.2k](/packages/octw-aramex)[wxm/pdd-sdk

拼多多 SDK 封装, 调用简单、语义化增强。支持 Laravel/Lumen。

154.7k](/packages/wxm-pdd-sdk)

PHPackages © 2026

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