PHPackages                             ossbrownie/esputnik - 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. [Utility &amp; Helpers](/categories/utility)
4. /
5. ossbrownie/esputnik

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

ossbrownie/esputnik
===================

Marketing automation system ESputnik.

0.1.3(7y ago)772.5k↓12.5%6[1 PRs](https://github.com/ossbrownie/esputnik/pulls)MITPHPPHP &gt;=5.4

Since Jun 4Pushed 5y ago3 watchersCompare

[ Source](https://github.com/ossbrownie/esputnik)[ Packagist](https://packagist.org/packages/ossbrownie/esputnik)[ Docs](https://github.com/ossbrownie/esputnik)[ RSS](/packages/ossbrownie-esputnik/feed)WikiDiscussions master Synced 1mo ago

READMEChangelogDependencies (2)Versions (7)Used By (0)

ESputnik
========

[](#esputnik)

[![Latest Stable Version](https://camo.githubusercontent.com/c4a00dd8345d39bb229e883d25760648891726fc86426b3420a102e425d01c48/68747470733a2f2f706f7365722e707567782e6f72672f6f737362726f776e69652f65737075746e696b2f762f737461626c65)](https://packagist.org/packages/ossbrownie/esputnik)[![Total Downloads](https://camo.githubusercontent.com/4247c756e28f52b2387dc59ae84a3b77092d05f11d884d915328ac33ab1b2b35/68747470733a2f2f706f7365722e707567782e6f72672f6f737362726f776e69652f65737075746e696b2f646f776e6c6f616473)](https://packagist.org/packages/ossbrownie/esputnik)[![Latest Unstable Version](https://camo.githubusercontent.com/9d784583c5338eac5b6cd057a999b2fef70ccca003b5d7ee171c6989194799cc/68747470733a2f2f706f7365722e707567782e6f72672f6f737362726f776e69652f65737075746e696b2f762f756e737461626c65)](https://packagist.org/packages/ossbrownie/esputnik)[![License](https://camo.githubusercontent.com/af49ea6be5558371bc1f156d69073c306a26a7851603ef4b4ed8dde2b43fff67/68747470733a2f2f706f7365722e707567782e6f72672f6f737362726f776e69652f65737075746e696b2f6c6963656e7365)](https://packagist.org/packages/ossbrownie/esputnik)

Marketing automation system ESputnik.

curl
----

[](#curl)

A basic CURL wrapper for PHP (see  for more information about the libcurl extension for PHP)

Requirements
------------

[](#requirements)

- **PHP** &gt;= 5.4
- **EXT-CURL** = \*

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

[](#installation)

Add a line to your "require" section in your composer configuration:

```
{
    "require": {
        "ossbrownie/esputnik": "0.1.3"
    }
}
```

Usage
-----

[](#usage)

```
$eSputnik = new ESputnik(
    new HTTPClient(
        new CurlClient(),
        new Config([
            'login' => 'tester',
            'password' => 'passwd'
        ])
    )
);

{
    $version = $eSputnik->version();
}

{
    $contact = new Contact();

    $contact
        ->setFirstName('FName')
        ->setLastName('LName')
        ->setContactKey('contact@site.com');

    $channelList = new ChannelList();
    $channelList->add(new EmailChannel([
        'value' => 'tester@site.com'
    ]));

    $fieldList = new FieldList();
    $fieldList
        ->add(new Field([
            'id' => 12345,
            'value' => 'CustomValue1',
        ]))
        ->add(new Field([
            'id' => 12346,
            'value' => 'CustomValue2',
        ]));

    $contact
        ->setFieldList($fieldList);

    $contact
        ->setChannelList($channelList);

    $subscribe = new Subscribe();
    $subscribe
        ->setFormType('test_type')
        ->getGroups()->add(new Group([
            'name' => 'Test group'
        ]));

    $response = $eSputnik->contactSubscribe($contact, $subscribe);
}

{
    $addressbooks = $eSputnik->addressbooks();
}

{
    $groups = $eSputnik->groups();
}

{
    $params = new ParamList();
    $params
        ->add(new Parameter([
            'name' => 'EmailAddress',
            'value' => 'tester@site.com',
        ]));

    $eSputnik->event(new Event([
        'eventTypeKey' => 'test-test',
        'keyValue' => 'test-' . time(),
        'params' => $params
    ]))
}
```

Tests
-----

[](#tests)

To run the test suite, you need install the dependencies via composer, then run PHPUnit.

```
$> composer.phar install
$> ./vendor/bin/phpunit --colors=always --bootstrap ./tests/bootstrap.php ./tests
```

License
-------

[](#license)

HttpClient is licensed under the [MIT License](https://opensource.org/licenses/MIT)

Contact
-------

[](#contact)

Problems, comments, and suggestions all welcome:

###  Health Score

33

—

LowBetter than 75% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity37

Limited adoption so far

Community11

Small or concentrated contributor base

Maturity52

Maturing project, gaining track record

 Bus Factor1

Top contributor holds 100% 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 ~72 days

Recently: every ~108 days

Total

7

Last Release

2834d ago

### Community

Maintainers

![](https://avatars.githubusercontent.com/u/285262?v=4)[Brownie Points Project](/maintainers/brownie)[@brownie](https://github.com/brownie)

---

Top Contributors

[![ossbrownie](https://avatars.githubusercontent.com/u/29150511?v=4)](https://github.com/ossbrownie "ossbrownie (17 commits)")

---

Tags

esputnikbrownie

###  Code Quality

TestsPHPUnit

### Embed Badge

![Health badge](/badges/ossbrownie-esputnik/health.svg)

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

###  Alternatives

[jaeger/querylist-phantomjs

QueryList Plugin: Use PhantomJS to crawl Javascript dynamically rendered pages.(headless WebKit ) 使用PhantomJS采集JavaScript动态渲染的页面

6124.3k2](/packages/jaeger-querylist-phantomjs)

PHPackages © 2026

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