This library provides convenient wrapper functions for Mailchimp's REST API. The API is documented here.
Dependencies are managed by Composer. After installing Composer, run the following command from the library root:
composer install --no-dev --ignore-platform-reqs
Or to install with phpunit:
composer install
A basic test to confirm the library is set up and functional.
<?phprequire'PATH_TO_LIBRARY/mailchimp-api-php/vendor/autoload.php';
// Instantiate MailchimpApiInterface$authentication_settings = [
'access_token' => 'YOUR_ACCESS_TOKEN',
'data_center' => 'YOUR_DATA_CENTER',
'api_user' => 'oauth',
];
// Use Mailchimp2 class for OAuth access_token.$api_class = newMailchimp2($authentication_settings);
// Instantiate a MailchimpApiUser or a class that extends it (ie. MailchimpLists, MailchimpSignups, etc..)$mailchimp = newMailchimpApiUser($api_class);
// Get the account details of the authenticated user.$response = $mailchimp->getAccount();
// Output the account details.if (!empty($response) && isset($response->account_id)) {
echo"ID: {$response->account_id}\n"
. "Name: {$response->account_name}\n";
}require'PATH_TO_LIBRARY/mailchimp-api-php/vendor/autoload.php';
// Instantiate MailchimpApiInterface$authentication_settings = [
'api_key' => 'YOUR_API_KEY',
'api_user' => 'api_key',
];
// Use Mailchimp class for api_key.$api_class = newMailchimp($authentication_settings);
// Instantiate a MailchimpApiUser or a class that extends it (ie. MailchimpLists, MailchimpSignups, etc..)$mailchimp = newMailchimpApiUser($api_class);
// Get the account details of the authenticated user.$response = $mailchimp->getAccount();
// Output the account details.if (!empty($response) && isset($response->account_id)) {
echo"ID: {$response->account_id}\n"
. "Name: {$response->account_name}\n";
}ject = newMailchimpApiUser($api_class, $http_options);A more complicated example that takes the response from one API call and uses that data to make another.
<?phprequire'PATH_TO_LIBRARY/mailchimp-api-php/vendor/autoload.php';
$authentication_settings = [
'access_token' => 'YOUR_ACCESS_TOKEN',
'data_center' => 'YOUR_DATA_CENTER',
'api_user' => 'oauth',
];
$api_class = newMailchimp2($authentication_settings);
$mailchimp_lists = newMailchimp\MailchimpLists($api_class);
// Get all lists.$response = $mailchimp_lists->getLists();
if (!empty($response) && isset($response->lists)) {
foreach ($response->listsas$list) {
// Output the list name.echo"List name: {$list->name}\n";
// Get the list's interest categories.$interests = $mailchimp_lists->getInterestCategories($list->id);
// Output the names of the list's interest categories.if (!empty($interests) && isset($interests->categories)) {
foreach ($interests->categoriesas$category) {
echo"Interest category: {$category->title}\n";
}
}
}
}This library includes a PHPUnit test suite.
Add Composer's vendor directory to your PATH by adding the following line to your profile. This is dependent on your system, but on a Linux or Mac OSX system using Bash, you'll typically find the file at ~/.bash_profile.
export PATH="./vendor/bin:$PATH"
Bash example:
echo'export PATH="./vendor/bin:$PATH"'>>~/.bash_profile
source~/.bash_profileThen run PHPUnit:
phpunit