1. Go to this page and download the library: Download stuartapp/stuart-client-php 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/ */
$environment = \Stuart\Infrastructure\Environment::SANDBOX;
$api_client_id = 'REPLACE_BY_YOU_CLIENT_ID_HERE'; // can be found here: https://admin.sandbox.stuart.com/client/api
$api_client_secret = 'REPLACE_BY_YOUR_CLIENT_SECRET_HERE'; // can be found here: https://admin.sandbox.stuart.com/client/api
$authenticator = new \Stuart\Infrastructure\Authenticator($environment, $api_client_id, $api_client_secret);
$httpClient = new \Stuart\Infrastructure\HttpClient($authenticator)
$client = new \Stuart\Client($httpClient);
$guzzleClient = new \Guzzle\Client();
$httpClient = new \Stuart\Infrastructure\HttpClient($authenticator, $guzzleClient);
$diskCache = new \Stuart\Cache\DiskCache("stuart_cache.txt");
$authenticator = new \Stuart\Infrastructure\Authenticator($environment, $api_client_id, $api_client_secret, $diskCache);
$job = new \Stuart\Job();
$job->addPickup('46 Boulevard Barbès, 75018 Paris');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small');
$client->createJob($job);
$job = new \Stuart\Job();
$job->addPickup('46 Boulevard Barbès, 75018 Paris')
->setComment('Wait outside for an employee to come.')
->setContactCompany('KFC Paris Barbès')
->setContactFirstName('Martin')
->setContactLastName('Pont')
->setContactPhone('+33698348756');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small')
->setComment('code: 3492B. 3e étage droite. Sonner à Durand.')
->setContactCompany('Durand associates.')
->setContactFirstName('Alex')
->setContactLastName('Durand')
->setContactPhone('+33634981209')
->setPackageDescription('Pizza box.')
->setClientReference('12345678ABCDE'); // Must be unique
$client->createJob($job);
$job = new \Stuart\Job();
$pickupAt = new \DateTime('now', new DateTimeZone('Europe/Paris'));
$pickupAt->add(new \DateInterval('PT2H'));
$job->addPickup('46 Boulevard Barbès, 75018 Paris')
->setPickupAt($pickupAt);
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small');
$client->createJob($job);
$job = new \Stuart\Job();
$dropoffAt = new \DateTime('now', new DateTimeZone('Europe/Paris'));
$dropoffAt->add(new \DateInterval('PT2H'));
$job->addPickup('46 Boulevard Barbès, 75018 Paris');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small')
->setDropoffAt($dropoffAt);
$client->createJob($job);
$job = new \Stuart\Job();
$job->addPickup('46 Boulevard Barbès, 75018 Paris');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small');
$job->setFleets(array(1));
$client->createJob($job);
$job = new \Stuart\Job();
$job->addPickup('46 Boulevard Barbès, 75018 Paris');
$now = new DateTime();
$later = new DateTime();
$later = $later->modify('+15 minutes');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small')
->setEndCustomerTimeWindowStart(new DateTime())
->setEndCustomerTimeWindowEnd($later);
$client->createJob($job);
$job = new \Stuart\Job();
$job->addPickup('46 Boulevard Barbès, 75018 Paris')
->setComment('Wait outside for an employee to come.')
->setContactCompany('KFC Paris Barbès')
->setContactFirstName('Martin')
->setContactLastName('Pont')
->setContactPhone('+33698348756');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small')
->setComment('code: 3492B. 3e étage droite. Sonner à Durand.')
->setContactCompany('Durand associates.')
->setContactFirstName('Alex')
->setContactLastName('Durand')
->setContactPhone('+33634981209')
->setPackageDescription('Red packet.')
->setClientReference('12345678ABCDE'); // Must be unique;
$job->addDropOff('12 avenue claude vellefaux, 75010 Paris')
->setPackageType('small')
->setComment('code: 92A42. 2e étage gauche')
->setContactFirstName('Maximilien')
->setContactLastName('Lebluc')
->setContactPhone('+33632341209')
->setPackageDescription('Blue packet.')
->setClientReference('ABCDE213124'); // Must be unique
$client->createJob($job);
$jobId = 126532;
$job = $client->getJob($jobId);
$job = new \Stuart\Job();
$job->addPickup('46 Boulevard Barbès, 75018 Paris');
$job->addDropOff('156 rue de Charonne, 75011 Paris')
->setPackageType('small');
$jobWithRoute = $client->createJob($job);
$jobWithRoute->getDeliveries();