#### [Abblix\.Oidc\.Server](https://www.abblix.com/en/docs/api/abblix-oidc-server 'index')
### [Abblix\.Oidc\.Server\.Features\.LogoutNotification](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification 'Abblix\.Oidc\.Server\.Features\.LogoutNotification')

## FrontChannelLogoutNotifier Class

Implements OpenID Connect Front\-Channel Logout 1\.0 notification by collecting per\-client logout URIs
\(with `iss` and `sid` appended when the client requires session identifiers\) into the
[LogoutContext](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.LogoutContext')\. The end\-session endpoint later renders these URIs as iframes so each
client receives the logout signal through the user agent\.

```csharp
public class FrontChannelLogoutNotifier : Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → FrontChannelLogoutNotifier

Implements [ILogoutNotifier](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.ILogoutNotifier')
### Properties

## FrontChannelLogoutNotifier\.BackChannelLogoutSessionSupported Property {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.BackChannelLogoutSessionSupported}

Indicates whether the logout notifier supports back\-channel logout session management,
facilitating the management of user sessions during a back\-channel logout\.

```csharp
public bool BackChannelLogoutSessionSupported { get; }
```

Implements [BackChannelLogoutSessionSupported](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier#Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier.BackChannelLogoutSessionSupported 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.ILogoutNotifier\.BackChannelLogoutSessionSupported')

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## FrontChannelLogoutNotifier\.BackChannelLogoutSupported Property {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.BackChannelLogoutSupported}

Indicates whether the logout notifier supports back\-channel logout,
enabling server\-to\-server communication to notify clients of logout events\.

```csharp
public bool BackChannelLogoutSupported { get; }
```

Implements [BackChannelLogoutSupported](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier#Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier.BackChannelLogoutSupported 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.ILogoutNotifier\.BackChannelLogoutSupported')

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## FrontChannelLogoutNotifier\.FrontChannelLogoutSessionSupported Property {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.FrontChannelLogoutSessionSupported}

Indicates whether the logout notifier supports front\-channel logout session management,
allowing for more precise control over session termination during a front\-channel logout\.

```csharp
public bool FrontChannelLogoutSessionSupported { get; }
```

Implements [FrontChannelLogoutSessionSupported](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier#Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier.FrontChannelLogoutSessionSupported 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.ILogoutNotifier\.FrontChannelLogoutSessionSupported')

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')

## FrontChannelLogoutNotifier\.FrontChannelLogoutSupported Property {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.FrontChannelLogoutSupported}

Indicates whether the logout notifier supports front\-channel logout,
enabling clients to be notified of logout events via user\-agent redirection\.

```csharp
public bool FrontChannelLogoutSupported { get; }
```

Implements [FrontChannelLogoutSupported](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier#Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier.FrontChannelLogoutSupported 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.ILogoutNotifier\.FrontChannelLogoutSupported')

#### Property Value
[System\.Boolean](https://learn.microsoft.com/en-us/dotnet/api/system.boolean 'System\.Boolean')
### Methods

## FrontChannelLogoutNotifier\.NotifyClientAsync\(ClientInfo, LogoutContext\) Method {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo,Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext)}

Builds the client's front\-channel logout URI \(appending `iss` and `sid` when the
client's `frontchannel_logout_session_required` is set\) and adds it to
[FrontChannelLogoutRequestUris](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext#Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext.FrontChannelLogoutRequestUris 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.LogoutContext\.FrontChannelLogoutRequestUris') for later iframe rendering\.
Throws [System\.InvalidOperationException](https://learn.microsoft.com/en-us/dotnet/api/system.invalidoperationexception 'System\.InvalidOperationException') if the client requires `sid` but the
context has no session identifier\.

```csharp
public System.Threading.Tasks.Task NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo clientInfo, Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext logoutContext);
```
#### Parameters

###### `clientInfo` [ClientInfo](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.ClientInformation.ClientInfo 'Abblix\.Oidc\.Server\.Features\.ClientInformation\.ClientInfo') {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo,Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext).clientInfo}

Information about the client that needs to be notified of the logout event\.

###### `logoutContext` [LogoutContext](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.LogoutContext') {#Abblix.Oidc.Server.Features.LogoutNotification.FrontChannelLogoutNotifier.NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo,Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext).logoutContext}

Contextual information about the logout event, including the session ID and issuer\.

Implements [NotifyClientAsync\(ClientInfo, LogoutContext\)](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier#Abblix.Oidc.Server.Features.LogoutNotification.ILogoutNotifier.NotifyClientAsync(Abblix.Oidc.Server.Features.ClientInformation.ClientInfo,Abblix.Oidc.Server.Features.LogoutNotification.LogoutContext) 'Abblix\.Oidc\.Server\.Features\.LogoutNotification\.ILogoutNotifier\.NotifyClientAsync\(Abblix\.Oidc\.Server\.Features\.ClientInformation\.ClientInfo, Abblix\.Oidc\.Server\.Features\.LogoutNotification\.LogoutContext\)')

#### Returns
[System\.Threading\.Tasks\.Task](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task 'System\.Threading\.Tasks\.Task')
