The Masquerade module allows website admins to switch users and visit the website as that user. This is helpful for developers and site builders when trying to find out what a client might see when logged into the website. To create the unmasquerade programmatically use this:
if (
\Drupal::moduleHandler()->moduleExists('masquerade') &&
\Drupal::service('masquerade')->isMasquerading()
){
$links['unmasquerade'] = [
'#type' => 'link',
'#title' => t('Unmasquerade'),
'#url' => Url::fromRoute('masquerade.unmasquerade'),
'#weight' => 1500,
];
}