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

## DeviceAuthorizationResponse Class

Represents a successful device authorization response as defined in RFC 8628\.
This response contains the device code the client uses to poll the token endpoint
and the user code the device displays to the user for entry on a separate device\.

```csharp
public record DeviceAuthorizationResponse : System.IEquatable<Abblix.Oidc.Server.Model.DeviceAuthorizationResponse>
```

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

Implements [System\.IEquatable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')[DeviceAuthorizationResponse](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Model.DeviceAuthorizationResponse 'Abblix\.Oidc\.Server\.Model\.DeviceAuthorizationResponse')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')
### Properties

## DeviceAuthorizationResponse\.DeviceCode Property {#Abblix.Oidc.Server.Model.DeviceAuthorizationResponse.DeviceCode}

The device verification code used by the client to poll the token endpoint\.
This is a high\-entropy string that uniquely identifies the authorization request\.

```csharp
public string DeviceCode { get; init; }
```

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

## DeviceAuthorizationResponse\.ExpiresIn Property {#Abblix.Oidc.Server.Model.DeviceAuthorizationResponse.ExpiresIn}

The lifetime of the `device_code` and `user_code`\.
After this duration, the codes expire and the client must start a new request\.

```csharp
public System.TimeSpan ExpiresIn { get; init; }
```

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

## DeviceAuthorizationResponse\.Interval Property {#Abblix.Oidc.Server.Model.DeviceAuthorizationResponse.Interval}

The minimum interval \(in seconds\) that the client should wait between
polling requests to the token endpoint\.

```csharp
public System.TimeSpan Interval { get; init; }
```

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

## DeviceAuthorizationResponse\.UserCode Property {#Abblix.Oidc.Server.Model.DeviceAuthorizationResponse.UserCode}

The end\-user verification code displayed to the user\.
This is a short, user\-friendly code that the user enters on the verification page\.

```csharp
public string UserCode { get; init; }
```

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

## DeviceAuthorizationResponse\.VerificationUri Property {#Abblix.Oidc.Server.Model.DeviceAuthorizationResponse.VerificationUri}

The end\-user verification URI where the user enters the user code \(RFC 8628 §3\.2\)\. Carried on the wire DTO and
filled by the transport layer from the configured device authorization options; the protocol processor leaves
it unset\.

```csharp
public System.Uri? VerificationUri { get; init; }
```

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

## DeviceAuthorizationResponse\.VerificationUriComplete Property {#Abblix.Oidc.Server.Model.DeviceAuthorizationResponse.VerificationUriComplete}

The optional verification URI that already embeds the user code \(RFC 8628 §3\.2\), letting capable devices render
a direct link or QR code so the user skips typing the code\. Filled by the transport layer\.

```csharp
public System.Uri? VerificationUriComplete { get; init; }
```

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