public function refreshProfile(array $userProfile = [])
    {
        if (count($userProfile) == 0) {
            $userProfile = $this->getProfileFromApi();
        }

        $success = false;

        if (is_array($userProfile)) {
            $info = $this->mapPropertiesFromApi($userProfile);

            $this->grantAllPermissions();
            $success = $this->set($info);
            $this->enforcePermissions();
        }

        return $success;
    }