PHP library for interacting with the Drip API

v0.9 2019-01-31 10:37 UTC

This package is auto-updated.

Last update: 2023-08-29 01:42:35 UTC


PHP library for making token-based API requests against Drip.

Build Status Scrutinizer Code Quality


Either download and include, or install via Composer:

composer require drewm/drip

Make a simple request

Create a new Drip object with

  1. Your user's API token (Settings > My User Settings > API Token)
  2. Your numeric account ID (Log into the Drip dashboard and it's the first segment in your URL)
use DrewM\Drip\Drip;
use DrewM\Drip\Dataset;

$Drip = new Drip('abc123', '1234567')

Create a new subscriber:

$data = new Dataset('subscribers', [
				'email' => 'postmaster@example.com',
$Response = $Drip->post('subscribers', $data);

List all subscribers:

$Response = $Drip->get('subscribers');

To request a method without an account ID in the URL, (e.g. list accounts) :

$Drip = new Drip('abc123');
$Response = $Drip->getGlobal('accounts');

To then subsequently set an account ID:


Handling responses

Methods return a Response object

if ($Response->status == 200) {
	// all is ok!
	$subscribers = $Response->subscribers;
} else {
	echo $Response->error;
	echo $Response->message;

Get the raw response:

$raw = $Response->get();


You can listen for webhooks in a couple of ways. The most basic is:

use DrewM\Drip\Drip;
$data = Drip::receiveWebhook();

If you prefer a pub/sub model, you can register listener callables:

use DrewM\Drip\Drip;

Drip::subscribeToWebhook('subscriber.created', function($data){
	// A subscriber was created

Drip::subscribeToWebhook('subscriber.subscribed_to_campaign', function($data){
	// A subscriber was added to a campaign