PHPackages                             label84/laravel-active-campaign - 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. label84/laravel-active-campaign

Abandoned → [rossbearman/laravel-active-campaign](/?search=rossbearman%2Flaravel-active-campaign)ArchivedLibrary[API Development](/categories/api)

label84/laravel-active-campaign
===============================

Add Active Campaign to your Laravel application.

v1.2.1(3y ago)1515.5k↓50%11MITPHPPHP ^8.1

Since Mar 14Pushed 2y ago2 watchersCompare

[ Source](https://github.com/Label84/laravel-active-campaign)[ Packagist](https://packagist.org/packages/label84/laravel-active-campaign)[ RSS](/packages/label84-laravel-active-campaign/feed)WikiDiscussions master Synced 1mo ago

READMEChangelog (8)Dependencies (5)Versions (10)Used By (0)

Warning

This package is no longer maintained.

We have decided to stop maintaining this package. We don't use ActiveCampaign anymore and don't have the time to maintain this package.

Suggested alternative:

Feel free to fork our code and adapt it to your needs.

Laravel ActiveCampaign
======================

[](#laravel-activecampaign)

[![Latest Stable Version](https://camo.githubusercontent.com/f6f1f2191fdd69aae5a83cc52de16573f1c0b31de4fa365e69ddbc08f94b69f6/68747470733a2f2f706f7365722e707567782e6f72672f6c6162656c38342f6c61726176656c2d6163746976652d63616d706169676e2f762f737461626c653f7374796c653d666c61742d737175617265)](https://packagist.org/packages/label84/laravel-active-campaign)[![MIT Licensed](https://camo.githubusercontent.com/55c0218c8f8009f06ad4ddae837ddd05301481fcf0dff8e0ed9dadda8780713e/68747470733a2f2f696d672e736869656c64732e696f2f62616467652f6c6963656e73652d4d49542d627269676874677265656e2e7376673f7374796c653d666c61742d737175617265)](LICENSE)[![Total Downloads](https://camo.githubusercontent.com/2877705ed0e12c896902202d3459cb812a509aaba028d2e80ece7291fb060fd8/68747470733a2f2f696d672e736869656c64732e696f2f7061636b61676973742f64742f6c6162656c38342f6c61726176656c2d6163746976652d63616d706169676e2e7376673f7374796c653d666c61742d737175617265)](https://packagist.org/packages/label84/laravel-active-campaign)

This package provides a simple interface to the ActiveCampaign API v3.

Currently the packages only supports the endpoints `Contacts`, `Custom Fields`, `Custom Fields Values`, `Tags` and `Lists`. Feel free to PR the remaining endpoints.

- [Laravel Support](#laravel-support)
- [Installation](#installation)
- [Usage](#usage)
- [Examples](#examples)
    - [Contacts](#contacts)
    - [Custom Fields](#custom-fields)
    - [Custom Field Values](#custom-field-values)
    - [Tags](#tags)
- [Tests](#tests)
- [License](#license)

Laravel Support
---------------

[](#laravel-support)

VersionRelease10.x1.29.x1.1Installation
------------

[](#installation)

### 1. Install the package via composer

[](#1-install-the-package-via-composer)

```
composer require label84/laravel-active-campaign
```

### 2. Publish the config file

[](#2-publish-the-config-file)

```
php artisan vendor:publish --provider="Label84\ActiveCampaign\ActiveCampaignServiceProvider" --tag="config"
```

### 3. Add the base URL and API key to your .env

[](#3-add-the-base-url-and-api-key-to-your-env)

```
ACTIVE_CAMPAIGN_BASE_URL=
ACTIVE_CAMPAIGN_API_KEY=
```

Usage
-----

[](#usage)

- [Active Campaign API Documentation](https://developers.activecampaign.com/reference)
- [Active Campaign Contact API Documentation](https://developers.activecampaign.com/reference/contact)

Access via facade:

```
use Label84\ActiveCampaign\Facades\ActiveCampaign;

// Usage
$contact = ActiveCampaign::contacts()->get(1);
```

Resolve directly out of the container:

```
use Label84\ActiveCampaign\ActiveCampaign;

// Usage
$contact = resolve(ActiveCampaign::class)->contacts()->get(1);
```

Inject into a constructor or method via [automatic injection](https://laravel.com/docs/10.x/container#automatic-injection):

```
use Label84\ActiveCampaign\ActiveCampaign;

class ContactController extends Controller
{
    public function __construct(private readonly ActiveCampaign $activeCampaign) { }

    // Usage
    $this->activeCampaign->contacts()->get(1);
}
```

Examples
--------

[](#examples)

The following examples use the facade for simplicity and assume `Label84\ActiveCampaign\Facades\ActiveCampaign` has been imported.

### Contacts

[](#contacts)

#### Retrieve an existing contact

[](#retrieve-an-existing-contact)

```
$contact = ActiveCampaign::contacts()->get(1);
```

#### List all contact, search contacts, or filter contacts by query defined criteria

[](#list-all-contact-search-contacts-or-filter-contacts-by-query-defined-criteria)

See the API docs for a [full list of possible query parameters](https://developers.activecampaign.com/reference/list-all-contacts).

```
$contacts = ActiveCampaign::contacts()->list();
$contactByEmail = ActiveCampaign::contacts()->list('email=info@example.com');
$singleList = ActiveCampaign::contacts()->list('listid=1');
```

#### Create a new contact

[](#create-a-new-contact)

```
$contactId = ActiveCampaign::contacts()->create('info@example.com', [
    'firstName' => 'John',
    'lastName' => 'Doe',
    'phone' => '+3112345678',
]);
```

#### Create a contact if they don't exist, or update an existing contact

[](#create-a-contact-if-they-dont-exist-or-update-an-existing-contact)

```
$contact = ActiveCampaign::contacts()->sync('info@example.com', [
    'firstName' => 'John',
    'lastName' => 'Doe',
    'phone' => '+3112345678',
]);
```

#### Update an existing contact

[](#update-an-existing-contact)

```
use Label84\ActiveCampaign\DataObjects\ActiveCampaignContact;

$contact = new ActiveCampaignContact(
    id: 1,
    email: 'info@example.com',
    phone: '+3112345678',
    firstName: 'John',
    lastName: 'Deer',
);

ActiveCampaign::contacts()->update($contact);
```

#### Update the status of a contact on a list

[](#update-the-status-of-a-contact-on-a-list)

The status should be `1` for subscribed and `2` for unsubscribed

```
$contact = ActiveCampaign::contacts()->updateListStatus(
    contactId: 1,
    listId: 1,
    status: 1,
);
```

#### Delete an existing contact

[](#delete-an-existing-contact)

```
ActiveCampaign::contacts()->delete(1);
```

#### Add a tag to contact

[](#add-a-tag-to-contact)

```
$contactTagId = ActiveCampaign::contacts()->tag(
    id: 1,
    tagId: 20
);
```

#### Remove a tag from a contact

[](#remove-a-tag-from-a-contact)

```
ActiveCampaign::contacts()->untag(contactTagId: 2340);
```

### Custom Field Values

[](#custom-field-values)

#### Retrieve an existing field value

[](#retrieve-an-existing-field-value)

```
$fieldValue = ActiveCampaign::fieldValues()->get(50);
```

#### Create a field value

[](#create-a-field-value)

```
$fieldValueId = ActiveCampaign::fieldValues()->create(
    contactId: 1,
    fieldId: 50,
    value: 'active',
);
```

#### Update an existing field value

[](#update-an-existing-field-value)

```
use Label84\ActiveCampaign\DataObjects\ActiveCampaignFieldValue;

$fieldValue = new ActiveCampaignFieldValue(
    contactId: 1,
    field: 50,
    value: 'inactive',
);

ActiveCampaign::fieldValues()->update($fieldValue);
```

#### Delete an existing field value

[](#delete-an-existing-field-value)

```
ActiveCampaign::fieldValues()->delete(50);
```

### Custom Fields

[](#custom-fields)

#### Retrieve an existing field

[](#retrieve-an-existing-field)

```
$field = ActiveCampaign::fields()->get(1);
```

#### Create a field

[](#create-a-field)

```
$fieldId = ActiveCampaign::fields()->create(
    type: 'textarea',
    title: 'about',
    description: 'Short introduction',
);
```

#### Update an existing field

[](#update-an-existing-field)

```
use Label84\ActiveCampaign\DataObjects\ActiveCampaignField;

$fieldValue = new ActiveCampaignField(
    id: 1,
    type: 'textarea',
    title: 'about',
    description: 'Relevant skills',
);

ActiveCampaign::fields()->update($fieldValue);
```

#### Delete an existing field

[](#delete-an-existing-field)

```
ActiveCampaign::fields()->delete(1);
```

### Tags

[](#tags)

#### Retrieve an existing tag

[](#retrieve-an-existing-tag)

```
$tag = ActiveCampaign::tags()->get(100);
```

#### List all tags, optionally filtered by name

[](#list-all-tags-optionally-filtered-by-name)

```
$tags = ActiveCampaign::tags()->list();
$filteredTags = ActiveCampaign::tags()->list('test_');
```

#### Create a tag

[](#create-a-tag)

```
$tag = ActiveCampaign::tags()->create(
    name: 'test_tag',
    description: 'This is a new tag'
);
```

#### Update an existing tag

[](#update-an-existing-tag)

```
use Label84\ActiveCampaign\DataObjects\ActiveCampaignTag;

$tag = new ActiveCampaignTag(
    id: 100,
    name: 'test_tag',
    description: 'Another description',
);

ActiveCampaign::tags()->update($tag);
```

#### Delete an existing tag

[](#delete-an-existing-tag)

```
ActiveCampaign::tags()->delete(100);
```

Tests
-----

[](#tests)

```
./vendor/bin/phpstan analyse
```

License
-------

[](#license)

[MIT](https://opensource.org/licenses/MIT)

###  Health Score

37

—

LowBetter than 83% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity35

Limited adoption so far

Community18

Small or concentrated contributor base

Maturity63

Established project with proven stability

 Bus Factor1

Top contributor holds 55.6% 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 ~59 days

Recently: every ~19 days

Total

8

Last Release

1103d ago

PHP version history (2 changes)v1.0.0PHP ^8.0.2

v1.2.0PHP ^8.1

### Community

Maintainers

![](https://www.gravatar.com/avatar/78c37d1496f19445af6a812d2275c34bbd08dead68aebae70229d7ff0670ed85?d=identicon)[tjardo](/maintainers/tjardo)

---

Top Contributors

[![tjardoo](https://avatars.githubusercontent.com/u/31533540?v=4)](https://github.com/tjardoo "tjardoo (30 commits)")[![rossbearman](https://avatars.githubusercontent.com/u/212036?v=4)](https://github.com/rossbearman "rossbearman (12 commits)")[![trippo](https://avatars.githubusercontent.com/u/497169?v=4)](https://github.com/trippo "trippo (6 commits)")[![davit-vardanyan](https://avatars.githubusercontent.com/u/1898639?v=4)](https://github.com/davit-vardanyan "davit-vardanyan (3 commits)")[![shoaibayaz](https://avatars.githubusercontent.com/u/38201211?v=4)](https://github.com/shoaibayaz "shoaibayaz (2 commits)")[![Jakoffe](https://avatars.githubusercontent.com/u/31653208?v=4)](https://github.com/Jakoffe "Jakoffe (1 commits)")

---

Tags

laravellaravel-package

###  Code Quality

TestsPHPUnit

Code StyleLaravel Pint

### Embed Badge

![Health badge](/badges/label84-laravel-active-campaign/health.svg)

```
[![Health](https://phpackages.com/badges/label84-laravel-active-campaign/health.svg)](https://phpackages.com/packages/label84-laravel-active-campaign)
```

###  Alternatives

[mollie/laravel-mollie

Mollie API client wrapper for Laravel &amp; Mollie Connect provider for Laravel Socialite

3624.1M28](/packages/mollie-laravel-mollie)[mll-lab/laravel-graphiql

Easily integrate GraphiQL into your Laravel project

683.2M9](/packages/mll-lab-laravel-graphiql)[spatie/laravel-route-discovery

Auto register routes using PHP attributes

23645.0k2](/packages/spatie-laravel-route-discovery)[esign/laravel-conversions-api

A laravel wrapper package around the Facebook Conversions API

69145.4k](/packages/esign-laravel-conversions-api)[didww/didww-api-3-php-sdk

PHP SDK for DIDWW API 3

1218.2k](/packages/didww-didww-api-3-php-sdk)[surface/laravel-webfinger

A Laravel package to create an ActivityPub webfinger.

113.8k](/packages/surface-laravel-webfinger)

PHPackages © 2026

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