| Package Data | |
|---|---|
| Maintainer Username: | gentor | 
| Maintainer Contact: | evgeni.nurkov@gmail.com (Evgeni Nurkov) | 
| Package Create Date: | 2017-05-23 | 
| Package Last Update: | 2022-11-11 | 
| Home Page: | |
| Language: | PHP | 
| License: | MIT | 
| Last Refreshed: | 2025-11-04 15:01:53 | 
| Package Statistics | |
|---|---|
| Total Downloads: | 10,414 | 
| Monthly Downloads: | 2 | 
| Daily Downloads: | 0 | 
| Total Stars: | 6 | 
| Total Watchers: | 2 | 
| Total Forks: | 4 | 
| Total Open Issues: | 2 | 
Wrapper on the Mautic API for Laravel 4/5.x
Installation using composer:
composer require gentor/mautic-api-laravel
Add the service provider in config/app.php:
Gentor\Mautic\MauticServiceProvider::class,
Add the facade alias in config/app.php:
Gentor\Mautic\Facades\Mautic::class,
Change your default settings in app/config/mautic.php:
return [
    'baseUrl' => env('MAUTIC_API_URL'),
    'userName' => env('MAUTIC_API_USERNAME'),
    'password' => env('MAUTIC_API_PASSWORD'),
];
// Create contact
$fields = Mautic::contacts()->getFieldList();
$data = array();
foreach ($fields as $field) {
    $data[$field['alias']] = $_POST[$field['alias']];
}
// Set the IP address the contact originated from if it is different than that of the server making the request
$data['ipAddress'] = $ipAddress;
// Create the contact
$response = Mautic::contacts()->create($data);
$contact = $response[Mautic::contacts()->itemName()];
// Create company
$fields = Mautic::companies()->getFieldList();
$data = array();
foreach ($fields as $field) {
    $data[$field['alias']] = $_POST[$field['alias']];
}
// Create the company
$response = Mautic::companies()->create($data);
$contact = $response[Mautic::companies()->itemName()];
// Create contact with companies
$contact = Mautic::contacts()->createWithCompanies([
    'firstname' => 'Mautic',
    'lasttname' => 'Contact',
    'email' => 'contact@email.com',
    'companies' => [
        [
            'companyname' => 'Company 1',
        ],
        [
            'companyname' => 'Company 2',
        ],
    ],
]);
$updatedData = array(
    'firstname' => 'Updated Name'
);
$response = Mautic::contacts()->edit($contactId, $updatedData);
$contact = $response[Mautic::contacts()->itemName()];
// If you want to create a new contact in the case that $contactId no longer exists
// $response will be populated with the new contact item
$response = Mautic::contacts()->edit($contactId, $updatedData, true);
$contact = $response[Mautic::contacts()->itemName()];
$response = Mautic::contacts()->delete($contactId);
$contact = $response[Mautic::contacts()->itemName()];
// $response returned by an API call should be checked for errors
$response = Mautic::contacts()->delete($contactId);
if (isset($response['error'])) {
    echo $response['error']['code'] . ": " . $response['error']['message'];
} else {
    // do whatever with the info
}