diff --git a/classes/API/v1/User/Get.php b/classes/API/v1/User/Get.php index e0cc9e9..95f6f7d 100644 --- a/classes/API/v1/User/Get.php +++ b/classes/API/v1/User/Get.php @@ -59,12 +59,30 @@ public function call($values, $raw_request_body = null) { } } - // @TODO Implement general API serialization logic for all objects - return array( + $result = array( 'id' => $user->getID(), 'name' => $user->getName(), - 'is_system_admin' => $user->isAdmin() + 'is_system_admin' => $user->isAdmin(), + 'is_email_verified' => $user->isEmailVerified() ); + + // optional email + $email = $user->getEmail(); + if ($email) { + $result['email'] = $email; + } + + // optional username + $username = $user->getUsername(); + if ($username) { + $result['username'] = $username; + } + + if ($user->isImpersonated()) { + $result['impersonator'] = $user->getImpersonator()->getID(); + } + + return $result; } }