1. Go to this page and download the library: Download mautic/api-library library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
mautic / api-library example snippets
// Bootup the Composer autoloader
ApiAuth;
// Initiate an HTTP Client
$httpClient = new Client([
'timeout' => 10,
]);
// Initiate the auth object
$initAuth = new ApiAuth($httpClient);
$auth = $initAuth->newAuth($settings);
// etc.
// Bootup the Composer autoloader
();
$publicKey = '';
$secretKey = '';
$callback = '';
// ApiAuth->newAuth() will accept an array of Auth settings
$settings = [
'baseUrl' => '', // Base URL of the Mautic instance
'version' => 'OAuth2', // Version of the OAuth can be OAuth2 or OAuth1a. OAuth2 is the default value.
'clientKey' => '', // Client/Consumer key from Mautic
'clientSecret' => '', // Client/Consumer secret key from Mautic
'callback' => '', // Redirect URI/Callback URI for this script
];
/*
// If you already have the access token, et al, pass them in as well to prevent the need for reauthorization
$settings['accessToken'] = $accessToken;
$settings['accessTokenSecret'] = $accessTokenSecret; //for OAuth1.0a
$settings['accessTokenExpires'] = $accessTokenExpires; //UNIX timestamp
$settings['refreshToken'] = $refreshToken;
*/
// Initiate the auth object
$initAuth = new ApiAuth();
$auth = $initAuth->newAuth($settings);
// Initiate process for obtaining an access token; this will redirect the user to the $authorizationUrl and/or
// set the access_tokens when the user is redirected back after granting authorization
// If the access token is expired, and a refresh token is set above, then a new access token will be requested
try {
if ($auth->validateAccessToken()) {
// Obtain the access token returned; call accessTokenUpdated() to catch if the token was updated via a
// refresh token
// $accessTokenData will have the following keys:
// For OAuth1.0a: access_token, access_token_secret, expires
// For OAuth2: access_token, expires, token_type, refresh_token
if ($auth->accessTokenUpdated()) {
$accessTokenData = $auth->getAccessTokenData();
//store access token data however you want
}
}
} catch (Exception $e) {
// Do Error handling
}
// Bootup the Composer autoloader
();
// ApiAuth->newAuth() will accept an array of Auth settings
$settings = [
'userName' => '', // Create a new user
'password' => '', // Make it a secure password
];
// Initiate the auth object specifying to use BasicAuth
$initAuth = new ApiAuth();
$auth = $initAuth->newAuth($settings, 'BasicAuth');
// Nothing else to do ... It's ready to use.
// Just pass the auth object to the API context you are creating.
use Mautic\MauticApi;
// Create an api context by passing in the desired context (Contacts, Forms, Pages, etc), the $auth object from above
// and the base URL to the Mautic server (i.e. http://my-mautic-server.com/api/)
$api = new MauticApi();
$contactApi = $api->newApi('contacts', $auth, $apiUrl);
$fields = $contactApi->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 = $contactApi->create($data);
$contact = $response[$contactApi->itemName()];
$updatedData = [
'firstname' => 'Updated Name'
];
$response = $contactApi->edit($contactId, $updatedData);
$contact = $response[$contactApi->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 = $contactApi->edit($contactId, $updatedData, true);
$contact = $response[$contactApi->itemName()];
// $response returned by an API call should be checked for errors
$response = $contactApi->delete($contactId);
if (isset($response['errors'])) {
foreach ($response['errors'] as $error) {
echo $error['code'] . ": " . $error['message'];
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.