I am having a similar issue, I reviewed the node.js example, but I can t get it work with my php file.
<?php
ini_set('display_errors', 1);
ini_set('display_startup_errors', 1);
error_reporting(E_ALL);
include_once('zoom_dbaccess.php');
$authResponse = getAuthToken(true);
$token = $authResponse->response->token;
define("TOKEN", $token);
$zoomSecret = "..." ;
//GET INPUT JSON ENCODED
date_default_timezone_set('US/Pacific');
$currenttime = date('h:i:s:u');
$_GET['currentTime'] = $currenttime;
$data = (!empty(file_get_contents('php://input')) ? file_get_contents('php://input') : json_encode($_REQUEST)) ;
// $data = '{"event":"endpoint.url_validation","event_ts":1695163211051,"payload":{"plainToken":"e7cSuLyCSUelSN0Qfmkr9Q"}}' ;
// Decode the JSON
$dataDecode = json_decode($data, true);
// Access the data
$event = $dataDecode['event'];
if ($event == 'endpoint.url_validation') {
$payload = $dataDecode['payload'];
$plainToken = $payload['plainToken'];
$encryptedtoken = hash_hmac('sha256', $plainToken, $zoomSecret, false);
// echo "<pre>".print_r($event,true)."</pre>";
// echo "<pre>".print_r($plainToken,true)."</pre>";
// echo "<pre>".print_r($encryptedtoken,true)."</pre>";
$result = array("plainToken"=>$plainToken, "encryptedtoken"=>$encryptedtoken);
$result = json_encode($result);
echo $result;
} else {
$url = BASEURL."/fmi/data/v1/databases/".DATABASE."/layouts/Web_Use__ZOOMLOG/records";
$postData = json_encode(array("fieldData" => array( "json" => $data ), "script" => "ZoomLog | Incoming Log" ));
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
CURLOPT_USERPWD => USER . ":" . PASSWORD,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => $postData,
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json",
"Authorization: Bearer " . TOKEN
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
echo "<pre>".print_r($response,true)."</pre>";
// Log the call
$log =
"Action:POST".PHP_EOL.
"URL: ".$url.PHP_EOL.
"token:".$token.PHP_EOL.
"Post Fields: ".$postData.PHP_EOL.
"Result: ".$response.PHP_EOL.
"Error: ".$err.PHP_EOL.
"-------------------------".PHP_EOL;
file_put_contents('log_zoom_'.date("j.n.Y").'.txt', $log, FILE_APPEND);
//Disconnect the session
$url = BASEURL."/fmi/data/v1/databases/".DATABASE."/sessions/". TOKEN;
$curl = curl_init();
curl_setopt_array($curl, array(
CURLOPT_URL => $url,
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTPAUTH => CURLAUTH_BASIC,
CURLOPT_USERPWD => USER . ":" . PASSWORD,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_SSL_VERIFYHOST => 0,
CURLOPT_SSL_VERIFYPEER => 0,
CURLOPT_CUSTOMREQUEST => "DELETE",
CURLOPT_HTTPHEADER => array(
"Content-Type: application/json",
"Authorization: Bearer " . TOKEN
),
));
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
// Decode the JSON
$data = json_decode($response, true);
// Access the data
// $scriptResult = $data['response'];
echo "<pre>".print_r($data ,true)."</pre>";
// Log the call
$log =
"Action:DELETE".PHP_EOL.
"URL: ".$url.PHP_EOL.
"token:".$token.PHP_EOL.
// "Post Fields: ".$postData.PHP_EOL.
"Result: ".$response.PHP_EOL.
"Error: ".$err.PHP_EOL.
"-------------------------".PHP_EOL;
file_put_contents('log_zoom_'.date("j.n.Y").'.txt', $log, FILE_APPEND);
}
?>