PHP code example of be-lenka / exponea-api
1. Go to this page and download the library: Download be-lenka/exponea-api 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/ */
be-lenka / exponea-api example snippets
use belenka\ExponeaApi\Client;
$client = new Client([
'public_key' => getenv('EXPONEA_PUBLIC_KEY'),
'private_key' => getenv('EXPONEA_PRIVATE_KEY'),
'project_token' => getenv('EXPONEA_PROJECT_TOKEN'),
]);
try {
$systemTime = $client->tracking()->getSystemTime()->wait(); // returns SystemTime object
} catch (...) { ... }
$event = new Consent(
new RegisteredCustomer('[email protected] '),
Consent::CATEGORY_NEWSLETTER,
Consent::ACTION_GRANT
);
try {
$client->tracking()->addEvent($event)->wait(); // does not return anything
} catch (...) { ... }
$purchase = new Purchase(
new RegisteredCustomer('[email protected] '),
'PREFIX12345', // purchase id
[
new Item('012345', 2.99, 1),
], // purchase items
'COD' // payment method
);
$purchaseItem = new PurchaseItem(
new RegisteredCustomer('[email protected] '),
'PREFIX12345', // purchase id
'012345', // item id
2.99, // price
2, // quantity
'SKU012345', // sku (stock keeping unit)
'Product name',
new Category('CAT1', 'Some > Category > Breadcrumb')
);
try {
$properties = [
'fidelity_points' => 657,
'first_name' => 'Marian',
];
$client->tracking()->updateCustomerProperties(
new RegisteredCustomer('[email protected] '), $properties
)->wait();
} catch (...) { ... }
try {
$catalog = new Catalog('<exponea_catalog_id>');
$response = $this->client
->catalog()
->getCatalogName($catalog)
->wait()
;
} catch (...) { ... }
try {
$catalog = new Catalog('<exponea_catalog_id>');
$catalog->setQueryParameters([
'query' => 1,
'field' => 'item_id',
'count' => 1
]);
$response = $this->client
->catalog()
->getCatalogItems($catalog)
->wait()
;
} catch (...) { ... }
try {
$catalog = new Catalog('<exponea_catalog_id>');
$catalog->setItemID(1);
$response = $this->client
->catalog()
->getCatalogItem($catalog)
->wait()
;
} catch (...) { ... }
try {
$catalogItem = new CatalogItem(1, '<exponea_catalog_id>');
$catalogItem->setProperties([
'code' => 'product_code',
'active' => false,
'title' => 'product title'
// etc ...
]);
$response = $this->client
->catalog()
->createCatalogItem($catalogItem)
->wait()
;
} catch (...) { ... }
try {
$catalogItem = new CatalogItem(1, '<exponea_catalog_id>');
$catalogItem->setProperties([
'title' => 'new product title'
// etc ...
]);
$response = $this->client
->catalog()
->updateCatalogItem($catalogItem)
->wait()
;
} catch (...) { ... }