$webserviceURL, ]); $response = $client->post('v2.php', [ 'form_params' => [ 'action' => 'authenticate', 'username' => $webserviceUsername, 'password' => $webservicePassword, ], ]); if ($response->getStatusCode() !== 200) { throw new Exception('Entry denied with code : '.$response->getStatusCode()); } $jsonResponse = json_decode($response->getBody()->getContents()); if ($jsonResponse->error) { throw new Exception('Authentication failed because : '.$jsonResponse->message); } return $jsonResponse->data->apiKey; } /** * @param $apiKey * * @throws Exception * * @return int */ function addCoursesToSession($apiKey) { global $webserviceURL; global $webserviceUsername; $client = new Client([ 'base_uri' => $webserviceURL, ]); $response = $client->post( 'v2.php', [ 'form_params' => [ 'action' => 'add_courses_session', // data of the user who makes the request 'username' => $webserviceUsername, 'api_key' => $apiKey, // data of courses and session 'id_session' => 1, 'list_courses' => [ '5', '6', '7', ], ], ] ); if ($response->getStatusCode() !== 200) { throw new Exception('Entry denied with code : '.$response->getStatusCode()); } $jsonResponse = json_decode($response->getBody()->getContents()); if ($jsonResponse->error) { throw new Exception('Courses not assigned to session because : '.$jsonResponse->message); } return $jsonResponse->data[0]; } $apiKey = authenticate(); //adding courses with id 5, 6, 7 to session with id 1 if (addCoursesToSession($apiKey)) { echo 'Courses successfully added'; }