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

## AuthorizationError Class

Represents an error response for an authorization request, detailing the nature of the error\.

```csharp
public record AuthorizationError : Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.ClientDeliveredResponse, System.IEquatable<Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError>
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → [AuthorizationResponse](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationResponse 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationResponse') → [ClientDeliveredResponse](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.ClientDeliveredResponse 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.ClientDeliveredResponse') → AuthorizationError

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

### Remarks
This record encapsulates information about errors encountered during the processing of an authorization request\.
It includes details that can be returned to the client to indicate what went wrong\. This structure facilitates
compliance with OAuth 2\.0 and OpenID Connect specifications by providing a standardized format for error reporting\.

This is the response-stage error type, a variant of the [AuthorizationResponse](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationResponse 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationResponse') polymorphic
hierarchy alongside [LoginRequired](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.LoginRequired 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.LoginRequired'), [ConsentRequired](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.ConsentRequired 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.ConsentRequired'),
[SuccessfullyAuthenticated](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.SuccessfullyAuthenticated 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.SuccessfullyAuthenticated') etc. The validator pipeline produces the lighter
[AuthorizationRequestValidationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationRequestValidationError'); this type wraps it (via the secondary constructor)
with the originating `Model` needed for state propagation through the formatter, plus the optional
`error_uri`.

Two parallel error types exist because of the layered architecture: the validator pipeline operates on
the generic [Abblix\.Utils\.Result&lt;&gt;](https://learn.microsoft.com/en-us/dotnet/api/abblix.utils.result-2 'Abblix\.Utils\.Result\`2') envelope and stays free of response-level
concerns. The cost is field duplication (`Error`, `ErrorDescription`, `ResponseMode`,
`RedirectUri`) — accepted for the architectural seam.
### Constructors

## AuthorizationError\(AuthorizationRequest, AuthorizationRequestValidationError\) Constructor {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError)}

Constructs an instance of [AuthorizationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationError') from an [AuthorizationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Model.AuthorizationRequest 'Abblix\.Oidc\.Server\.Model\.AuthorizationRequest') and
an [AuthorizationRequestValidationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationRequestValidationError')\.

```csharp
public AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest request, Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError error);
```
#### Parameters

###### `request` [AuthorizationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Model.AuthorizationRequest 'Abblix\.Oidc\.Server\.Model\.AuthorizationRequest') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError).request}

The request that resulted in the error\.

###### `error` [AuthorizationRequestValidationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationRequestValidationError') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError).error}

The validation error that provides details about what caused the request to fail\.

## AuthorizationError\(AuthorizationRequest, string, string, string, Uri, Uri\) Constructor {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri)}

Represents an error response for an authorization request, detailing the nature of the error\.

```csharp
public AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest Model, string Error, string ErrorDescription, string ResponseMode, System.Uri? RedirectUri, System.Uri? ErrorUri=null);
```
#### Parameters

###### `Model` [AuthorizationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Model.AuthorizationRequest 'Abblix\.Oidc\.Server\.Model\.AuthorizationRequest') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri).Model}

The original authorization request model that led to this error\.

###### `Error` [System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri).Error}

A single error code from the OAuth 2\.0 specification that describes the error\.

###### `ErrorDescription` [System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri).ErrorDescription}

A more detailed description of the error for debugging purposes\.

###### `ResponseMode` [System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri).ResponseMode}

The response mode to be used for returning parameters to the client\.
            This can influence how the error information is transmitted back to the client\.

###### `RedirectUri` [System\.Uri](https://learn.microsoft.com/en-us/dotnet/api/system.uri 'System\.Uri') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri).RedirectUri}

The URI to which the response should be sent\. This is where the error information
            will be transmitted if applicable\.

###### `ErrorUri` [System\.Uri](https://learn.microsoft.com/en-us/dotnet/api/system.uri 'System\.Uri') {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.AuthorizationError(Abblix.Oidc.Server.Model.AuthorizationRequest,string,string,string,System.Uri,System.Uri).ErrorUri}

A URI identifying a human\-readable web page with information about the error\.

### Remarks
This record encapsulates information about errors encountered during the processing of an authorization request\.
It includes details that can be returned to the client to indicate what went wrong\. This structure facilitates
compliance with OAuth 2\.0 and OpenID Connect specifications by providing a standardized format for error reporting\.

This is the response-stage error type, a variant of the [AuthorizationResponse](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationResponse 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationResponse') polymorphic
hierarchy alongside [LoginRequired](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.LoginRequired 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.LoginRequired'), [ConsentRequired](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.ConsentRequired 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.ConsentRequired'),
[SuccessfullyAuthenticated](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.SuccessfullyAuthenticated 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.SuccessfullyAuthenticated') etc. The validator pipeline produces the lighter
[AuthorizationRequestValidationError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationRequestValidationError 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.AuthorizationRequestValidationError'); this type wraps it (via the secondary constructor)
with the originating `Model` needed for state propagation through the formatter, plus the optional
`error_uri`.

Two parallel error types exist because of the layered architecture: the validator pipeline operates on
the generic [Abblix\.Utils\.Result&lt;&gt;](https://learn.microsoft.com/en-us/dotnet/api/abblix.utils.result-2 'Abblix\.Utils\.Result\`2') envelope and stays free of response-level
concerns. The cost is field duplication (`Error`, `ErrorDescription`, `ResponseMode`,
`RedirectUri`) — accepted for the architectural seam.
### Properties

## AuthorizationError\.Error Property {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.Error}

A single error code from the OAuth 2\.0 specification that describes the error\.

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

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

## AuthorizationError\.ErrorDescription Property {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.ErrorDescription}

A more detailed description of the error for debugging purposes\.

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

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

## AuthorizationError\.ErrorUri Property {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.ErrorUri}

A URI identifying a human\-readable web page with information about the error\.

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

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

## AuthorizationError\.RedirectUri Property {#Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.AuthorizationError.RedirectUri}

The URI to which the response should be sent\. This is where the error information
            will be transmitted if applicable\.

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

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