Created
September 10, 2013 11:18
-
-
Save jmertic/6508009 to your computer and use it in GitHub Desktop.
Get related records via REST v10
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
<?php | |
// specify the REST web service to interact with | |
$url = 'http://sugarinstance/rest/v10'; | |
// And admin username/password | |
$admin_username = '<<admin username>>'; | |
$admin_password = '<<admin password>>'; | |
// And account id you want to get the related docs for | |
$account_id = '<<account id>>' | |
/** | |
* Authenicate and get back token | |
*/ | |
$curl = curl_init($url . "/oauth2/token"); | |
curl_setopt($curl, CURLOPT_POST, true); | |
curl_setopt($curl, CURLOPT_HEADER, false); | |
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); | |
// Set the POST arguments to pass to the Sugar server | |
$rawPOSTdata = array( | |
"grant_type" => "password", | |
"username" => $admin_username, | |
"password" => $admin_password, | |
"client_id" => "sugar", | |
"client_secret" => "", | |
"platform" => "base", | |
); | |
curl_setopt($curl, CURLOPT_POSTFIELDS, json_encode($rawPOSTdata)); | |
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json')); | |
// Make the REST call, returning the result | |
$response = curl_exec($curl); | |
if (!$response) { | |
die("Connection Failure.\n"); | |
} | |
// Convert the result from JSON format to a PHP array | |
$result = json_decode($response); | |
curl_close($curl); | |
$token = $result->access_token; | |
/** | |
* Subsequent call to related Documents to the give Account record | |
*/ | |
// Open a curl session for making the call | |
$curl = curl_init($url . "/Accounts/{$account_id}/link/documents"); | |
curl_setopt($curl, CURLOPT_POST, false); | |
curl_setopt($curl, CURLOPT_HEADER, false); | |
curl_setopt($curl, CURLOPT_RETURNTRANSFER, true); | |
curl_setopt($curl, CURLOPT_HTTPHEADER, array('Content-Type: application/json',"OAuth-Token: $token")); | |
// Make the REST call, returning the result | |
$response = curl_exec($curl); | |
if (!$response) { | |
die("Connection Failure.\n"); | |
} | |
// Convert the result from JSON format to a PHP array | |
$results = json_decode($response); | |
curl_close($curl); | |
var_dump($results) |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment