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

## BackChannelAuthenticationRequest Class

Represents a backchannel authentication request \(CIBA protocol\)

```csharp
public sealed class BackChannelAuthenticationRequest : Google.Protobuf.IMessage<Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest>, Google.Protobuf.IMessage, System.IEquatable<Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest>, Google.Protobuf.IDeepCloneable<Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest>, Google.Protobuf.IBufferMessage
```

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

Implements [Google\.Protobuf\.IMessage&lt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.imessage-1 'Google\.Protobuf\.IMessage\`1')[BackChannelAuthenticationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.BackChannelAuthenticationRequest')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.imessage-1 'Google\.Protobuf\.IMessage\`1'), [Google\.Protobuf\.IMessage](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.imessage 'Google\.Protobuf\.IMessage'), [System\.IEquatable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')[BackChannelAuthenticationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.BackChannelAuthenticationRequest')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1'), [Google\.Protobuf\.IDeepCloneable&lt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.ideepcloneable-1 'Google\.Protobuf\.IDeepCloneable\`1')[BackChannelAuthenticationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.BackChannelAuthenticationRequest')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.ideepcloneable-1 'Google\.Protobuf\.IDeepCloneable\`1'), [Google\.Protobuf\.IBufferMessage](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.ibuffermessage 'Google\.Protobuf\.IBufferMessage')
### Fields

## BackChannelAuthenticationRequest\.AuthorizedGrantFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.AuthorizedGrantFieldNumber}

Field number for the "authorized\_grant" field\.

```csharp
public const int AuthorizedGrantFieldNumber = 1;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## BackChannelAuthenticationRequest\.ClientNotificationEndpointFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ClientNotificationEndpointFieldNumber}

Field number for the "client\_notification\_endpoint" field\.

```csharp
public const int ClientNotificationEndpointFieldNumber = 5;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## BackChannelAuthenticationRequest\.ClientNotificationTokenFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ClientNotificationTokenFieldNumber}

Field number for the "client\_notification\_token" field\.

```csharp
public const int ClientNotificationTokenFieldNumber = 6;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## BackChannelAuthenticationRequest\.ExpiresAtFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ExpiresAtFieldNumber}

Field number for the "expires\_at" field\.

```csharp
public const int ExpiresAtFieldNumber = 4;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## BackChannelAuthenticationRequest\.NextPollAtFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.NextPollAtFieldNumber}

Field number for the "next\_poll\_at" field\.

```csharp
public const int NextPollAtFieldNumber = 2;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')

## BackChannelAuthenticationRequest\.StatusFieldNumber Field {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.StatusFieldNumber}

Field number for the "status" field\.

```csharp
public const int StatusFieldNumber = 3;
```

#### Field Value
[System\.Int32](https://learn.microsoft.com/en-us/dotnet/api/system.int32 'System\.Int32')
### Properties

## BackChannelAuthenticationRequest\.AuthorizedGrant Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.AuthorizedGrant}

The authorized grant associated with this authentication request

```csharp
public Abblix.Oidc.Server.Features.Storages.Proto.AuthorizedGrant AuthorizedGrant { get; set; }
```

#### Property Value
[AuthorizedGrant](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.AuthorizedGrant 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.AuthorizedGrant')

## BackChannelAuthenticationRequest\.ClientNotificationEndpoint Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ClientNotificationEndpoint}

Client notification endpoint \(ping/push delivery\): the URL that receives the
CIBA callback\. Absent for poll mode\.

```csharp
public string ClientNotificationEndpoint { get; set; }
```

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

## BackChannelAuthenticationRequest\.ClientNotificationToken Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ClientNotificationToken}

Client notification token \(ping/push delivery\): the bearer secret the callback
authenticates with\. Absent for poll mode\.

```csharp
public string ClientNotificationToken { get; set; }
```

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

## BackChannelAuthenticationRequest\.ExpiresAt Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ExpiresAt}

Absolute expiration time for this authentication request

```csharp
public Google.Protobuf.WellKnownTypes.Timestamp ExpiresAt { get; set; }
```

#### Property Value
[Google\.Protobuf\.WellKnownTypes\.Timestamp](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.wellknowntypes.timestamp 'Google\.Protobuf\.WellKnownTypes\.Timestamp')

## BackChannelAuthenticationRequest\.HasClientNotificationEndpoint Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.HasClientNotificationEndpoint}

Gets whether the "client\_notification\_endpoint" field is set

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

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

## BackChannelAuthenticationRequest\.HasClientNotificationToken Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.HasClientNotificationToken}

Gets whether the "client\_notification\_token" field is set

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

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

## BackChannelAuthenticationRequest\.NextPollAt Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.NextPollAt}

Next time the client should poll for updates

```csharp
public Google.Protobuf.WellKnownTypes.Timestamp NextPollAt { get; set; }
```

#### Property Value
[Google\.Protobuf\.WellKnownTypes\.Timestamp](https://learn.microsoft.com/en-us/dotnet/api/google.protobuf.wellknowntypes.timestamp 'Google\.Protobuf\.WellKnownTypes\.Timestamp')

## BackChannelAuthenticationRequest\.Status Property {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.Status}

Current status of the authentication request

```csharp
public Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationStatus Status { get; set; }
```

#### Property Value
[BackChannelAuthenticationStatus](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationStatus 'Abblix\.Oidc\.Server\.Features\.Storages\.Proto\.BackChannelAuthenticationStatus')
### Methods

## BackChannelAuthenticationRequest\.ClearClientNotificationEndpoint\(\) Method {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ClearClientNotificationEndpoint()}

Clears the value of the "client\_notification\_endpoint" field

```csharp
public void ClearClientNotificationEndpoint();
```

## BackChannelAuthenticationRequest\.ClearClientNotificationToken\(\) Method {#Abblix.Oidc.Server.Features.Storages.Proto.BackChannelAuthenticationRequest.ClearClientNotificationToken()}

Clears the value of the "client\_notification\_token" field

```csharp
public void ClearClientNotificationToken();
```
