/** * Retrieve user emails using the Email API's Messages * @param string $user user email address * @param int $count number of emails to request * @param string $order order in which to query emails (desc or asc) * @return array Messages resposnse */ public function retrieve($user, $count = '10', $order = 'desc') { $accessToken = $_SESSION['access_token']; // Build the API request paramaters $queryParams = '?$select=From,Subject,DateTimeReceived&$orderby=DateTimeReceived%20' . $order . '&$top=' . $count; // Build the API Base Url $url = Office365::$resourceBaseUrl . 'api/v' . Office365::$apiVersion . '/users/' . $user . '/Messages/'; // Build the header object $headers = array('Authorization: Bearer ' . $accessToken, 'Content-Type: application/json', 'Accept:application/json'); // generate a new API request and return the response as an array $request = new HttpPost($url . $queryParams); $request->setPostHeaders($headers); $request->send(); $responseObj = json_decode($request->getHttpResponse()); return $responseObj; }
/** * Retrieve 30 days of upcoming calendar events using the Calendar API's CalendarView * @param string $user user email address * @return array CalendarView response */ public function retrieve($user) { $accessToken = $_SESSION['access_token']; // Set the start of our view window to midnight of today. $date = new \DateTime('now'); $start = $date->setTime(0, 0, 0); $startUrl = self::encodeDateTime($start); // Add 30 days to the start date to get the end date. $end = $start->add(new \DateInterval("P30D")); $endUrl = self::encodeDateTime($end); // Build the API request paramaters $queryParams = "?" . "startDateTime=" . $startUrl . "&endDateTime=" . $endUrl . "&\$select=Subject,Start,End" . "&\$orderby=Start"; // Build the API Base Url $url = Office365::$resourceBaseUrl . 'api/v' . Office365::$apiVersion . '/users/' . $user . '/CalendarView/'; // Build the header object $headers = array('Authorization: Bearer ' . $accessToken, 'Content-Type: application/json', 'Accept:application/json'); // generate a new API request and return the response as an array $request = new HttpPost($url . $queryParams); $request->setPostHeaders($headers); $request->send(); $responseObj = json_decode($request->getHttpResponse()); return $responseObj; }