Skip to content

Latest commit

 

History

History
80 lines (60 loc) · 2 KB

index.rst

File metadata and controls

80 lines (60 loc) · 2 KB

Basic Usage

Setup

require 'vendor/autoload.php';

use Onetoweb\DhlParcel\Client;
use Onetoweb\DhlParcel\Token\{AccessToken, RefreshToken};

session_start();

// params
$userId = '{user_id}';
$key = '{key}';

// setup client
$client = new Client($userId, $key);

// store tokens
$client->setTokenUpdateCallback(function (AccessToken $accessToken, RefreshToken $refreshToken) {

    $_SESSION['access_token'] = [
        'value' => $accessToken->getValue(),
        'expires' => $accessToken->getExpires(),
    ];

    $_SESSION['refresh_token'] = [
        'value' => $refreshToken->getValue(),
        'expires' => $refreshToken->getExpires(),
    ];

});

// load access token from storage
if (isset($_SESSION['access_token'])) {

    $client->setAccessToken(new AccessToken(
        $_SESSION['access_token']['value'],
        $_SESSION['access_token']['expires']
    ));
}

// load refresh token from storage
if (isset($_SESSION['refresh_token'])) {

    $client->setRefreshToken(new RefreshToken(
        $_SESSION['refresh_token']['value'],
        $_SESSION['refresh_token']['expires']
    ));
}

// request account numbers
$accountNumbers = $client->requestAccountNumbers();

Endpoint Examples