isRefreshTokenAvailable()) { $this->tokenRefreshParameters += [ 'client_id' => $this->clientId, 'client_secret' => $this->clientSecret, ]; } } /** * {@inheritdoc} * * See: https://www.deviantart.com/developers/http/v1/20200519/user_whoami/2413749853e66c5812c9beccc0ab3495 */ public function getUserProfile() { $response = $this->apiRequest('user/whoami'); $data = new Data\Collection($response); $userProfile = new User\Profile(); $full_name = explode(' ', $data->filter('profile')->get('real_name')); if (count($full_name) < 2) { $full_name[1] = ''; } $userProfile->identifier = $data->get('userid'); $userProfile->displayName = $data->get('username'); $userProfile->profileURL = $data->get('usericon'); $userProfile->webSiteURL = $data->filter('profile')->get('website'); $userProfile->firstName = $full_name[0]; $userProfile->lastName = $full_name[1]; $userProfile->profileURL = $data->filter('profile')->filter('profile_pic')->get('url'); $userProfile->gender = $data->filter('details')->get('sex'); $userProfile->age = $data->filter('details')->get('age'); $userProfile->country = $data->filter('geo')->get('country'); return $userProfile; } }