'oauth2', // 'ClientID' => $config['INV_CLIENT_ID'], // 'ClientSecret' => $config['INV_CLIENT_SECRET'], // 'RedirectURI' => $config['oauth_redirect_uri'], // 'scope' => $config['INV_SCOPE'], // 'baseUrl' => "development" // )); // $OAuth2LoginHelper = $dataService->getOAuth2LoginHelper(); // $parseUrl = parseAuthRedirectUrl($_SERVER['QUERY_STRING']); // /* // * Update the OAuth2Token // */ // $accessToken = // $OAuth2LoginHelper->exchangeAuthorizationCodeForToken($parseUrl['code'], // $parseUrl['realmId']); // $dataService->updateOAuth2Token($accessToken); // /* // * Setting the accessToken for session variable // */ // $_SESSION['sessionAccessToken'] = $accessToken; // } // function parseAuthRedirectUrl($url) // { // parse_str($url,$qsArray); // return array( // 'code' => $qsArray['code'], // 'realmId' => $qsArray['realmId'] // ); // $result = processCode(); // } function get_INV_Info($code){ //die; $uri = 'https://appcenter.intuit.com/'.$code; //Create Token Start $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'auth_mode' => 'oauth2', 'ClientID' => INV_CLIENT_ID, 'ClientSecret' => INV_CLIENT_SECRET, 'RedirectURI' => oauth_redirect_uri, 'scope' => INV_SCOPE, 'baseUrl' => "development" )); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // set curl without result echo $result = curl_exec($ch); curl_close($ch); $json_array = (json_decode($result, true)); $token = $json_array['access_token']; $_SESSION['token'] = $token; //Create Token END $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $uri); curl_setopt($ch, CURLOPT_HTTPHEADER, array( 'Authorization: Bearer '.$token, 'Accept: application/json', 'content-type: application/json' )); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // set curl without result echo $api_response = curl_exec($ch); $http_code = curl_getinfo($ch, CURLINFO_HTTP_CODE); curl_close($ch); //return $http_code; $res=json_decode($api_response); $i=0; foreach($res->destinationEntities as $enty){ //print_r($enty);die; $output[$i]['id']=$enty->CompanyAddr->id; $output[$i]['title']=$enty->CompanyName; $i++; } return $output; } function makeAPICall() { // Create SDK instance $ch = curl_init(); curl_setopt($ch, CURLOPT_POST, TRUE); curl_setopt($ch, CURLOPT_POSTFIELDS, array( 'auth_mode' => 'oauth2', 'ClientID' => INV_CLIENT_ID, 'ClientSecret' => INV_CLIENT_SECRET, 'RedirectURI' => oauth_redirect_uri, 'scope' => INV_SCOPE, 'baseUrl' => "development" )); /* * Retrieve the accessToken value from session variable */ curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); // set curl without result echo $result = curl_exec($ch); curl_close($ch); $json_array = (json_decode($result, true)); $token = $json_array['access_token']; $_SESSION['token'] = $token; $accessToken = $_SESSION['token']; /* * Update the OAuth2Token of the dataService object */ $dataService->updateOAuth2Token($accessToken); $companyInfo = $dataService->getCompanyInfo(); //print_r($companyInfo); return $companyInfo; } ?>