Sample code for 30+ languages & platforms
Go

Check PayPal Access Token Expiration

See more PayPal Examples

Checks to see if the PayPal access token expired.

Chilkat Go Downloads

Go
    success := false

    // 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.NewJsonObject()
    success = json.LoadFile("qa_data/tokens/paypal.json")
    if success != true {
        fmt.Println("Failed to load access key json file.")
        json.DisposeJsonObject()
        return
    }

    // Get the current date/time.
    dateTime := chilkat.NewCkDateTime()
    bLocalTime := false
    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")

    fmt.Println("token age (in seconds) = ", numSeconds)
    fmt.Println("expires_in = ", expires_in)

    // If the token expired, or if it will expire in 5 minutes or less,
    // get another token.
    if numSeconds < (expires_in - 300) {
        fmt.Println("The token is not yet expired.  No need to fetch another.")
        json.DisposeJsonObject()
        dateTime.DisposeCkDateTime()
        return
    }

    fmt.Println("Time to fetch a new access token...")

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

    json.DisposeJsonObject()
    dateTime.DisposeCkDateTime()