5.8.4 Modify Pickup (PHP)

Modify Pickup

Sample source code to modify pickup
<?php header("Content-type: text/html; charset=utf-8"); date_default_timezone_set("Asia/Chongqing"); $production_url = "hhttps://apiv2.unixus.com.my/"; $sandbox_url = "https://sandbox-apiv2.unixus.com.my/"; $url = $sandbox_url; $myRefreshToken = "88888888"; // Replace your Refresh Token here function getAccessToken() { global $url, $myRefreshToken; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url . 'Token/Refresh'); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Accept-Language: en' )); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, '{ "RefreshToken" : "' . $myRefreshToken . '"}'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); $res = curl_exec($ch); curl_close($ch); $obj = json_decode($res,true); return $obj['AccessToken']; } function modifyPickup($url, $data) { $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url . 'pickup/v1/Modify'); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Content-Type: application/json', 'Accept-Language: en', 'Authorization: Bearer ' . getAccessToken() )); curl_setopt($ch, CURLOPT_POST, 1); curl_setopt($ch, CURLOPT_POSTFIELDS, $data); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_HEADER, 0); $res = curl_exec($ch); curl_close($ch); return $res; } function prinshipApiDate($myDate) { // input "2019-01-01 00:00:00" // output "2019-01-01T00:00:00+08:00" $dateTime = DateTime::createFromFormat('Y-m-d H:i:s', $myDate); $requiredJsonFormat = $dateTime->format('Y-m-d\TH:i:sP'); return $requiredJsonFormat; } function prinshipApiDateNow() { // output "2019-01-01T00:00:00+08:00" $dateTime = new DateTime(); $requiredJsonFormat = $dateTime->format('Y-m-d\TH:i:sP'); return $requiredJsonFormat; } function parseResponse($obj) { if (isset($obj['Summary']['Success']) && $obj['Summary']['Success'] > 0) { foreach($obj['Pickup'] as $resp) { if ($resp['IsSuccess']) { echo "Successful! Pickup Number (PickupNo): "; echo $resp['PickupDetails']['PickupNo'] . "<br>"; } } } else if (isset($obj['Summary']['Failed']) && $obj['Summary']['Failed'] > 0) { foreach($obj['Errors'] as $errors) { echo "Error: "; echo $errors['ErrorMessage'] . "<br>"; } } } $data = ' { "Pickup": [ { "Shipper": { "Name": "Unixus SDN BHD", "ContactPerson": "Nicholas", "Address1": "BLOCK A, GROUND FLOOR, GL06", "Address2": "Kelana Square, No.17, Jalan SS7/26", "Postcode": "47301", "City": "Petaling Jaya", "State": "Selangor", "CountryCode": "MY", "Phone1": "+60378038830", "Phone2": "111", "Mobile": "" }, "Quantity" : 5, "Weight": 10.0, "PickupDateTime": "2019-01-09T00:00:00+08:00", "Remarks": "Fragile", "PickupNo": "PKR190104131458" } ] }'; echo "Request:<br>" . $data . "<br><br>"; $response = modifyPickup($sandbox_url, $data); $obj = json_decode($response,true); echo $response . "<br><br>"; parseResponse($obj); ?>
Copyright © 2019 Unixus Solutions Sdn. Bhd. All rights reserved.