Sample code for 30+ languages & platforms
Perl

Check PayPal Access Token Expiration

See more PayPal Examples

Checks to see if the PayPal access token expired.

Chilkat Perl Downloads

Perl
use chilkat();

$success = 0;

# Note: Requires Chilkat v9.5.0.64 or greater.

# This requires the Chilkat API to have been previously unlocked.
# See Global Unlock Sample for sample code.

# In the example linked here: PayPal OAuth2 Token,
# we fetched a PayPal access token and saved it to a JSON file.
# We also recorded the current date/time.
# Load this JSON file and compare the current date/time with the fetch date/time
# and the "expires_in" value to see if the token is expired.

$json = chilkat::CkJsonObject->new();
$success = $json->LoadFile("qa_data/tokens/paypal.json");
if ($success != 1) {
    print "Failed to load access key json file." . "\r\n";
    exit;
}

# Get the current date/time.
$dateTime = chilkat::CkDateTime->new();
$bLocalTime = 0;
$dtNow = $dateTime->GetAsUnixTime($bLocalTime);

# Get the access token create date/time
$dtCreate = $json->IntOf("tokenCreateTimeUtc");

# Find out how many seconds have elapsed.
$numSeconds = $dtNow - $dtCreate;

# Get the expires_in value from the JSON.
$expires_in = $json->IntOf("expires_in");

print "token age (in seconds) = " . $numSeconds . "\r\n";
print "expires_in = " . $expires_in . "\r\n";

# If the token expired, or if it will expire in 5 minutes or less,
# get another token.
if ($numSeconds < ($expires_in - 300)) {
    print "The token is not yet expired.  No need to fetch another." . "\r\n";
    exit;
}

print "Time to fetch a new access token..." . "\r\n";

# Get another token..
# See the example at Get PayPal OAuth2 Token
# to get another token..