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

## ErrorCodes Class

Represents OAuth 2\.0 and OpenID Connect error codes\.

```csharp
public static class ErrorCodes
```

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

## ErrorCodes\.AccessDenied Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.AccessDenied}

The resource owner or authorization server denied the request\.

```csharp
public const string AccessDenied = "access_denied";
```

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

## ErrorCodes\.AccountSelectionRequired Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.AccountSelectionRequired}

The End\-User is REQUIRED to select a session at the Authorization Server\. The End\-User MAY be authenticated at the Authorization Server with
different associated accounts, but the End\-User did not select a session\.
This error MAY be returned when the prompt parameter value in the Authentication Request is none, but the Authentication Request cannot be completed
without displaying a user interface to prompt for a session to use\.

```csharp
public const string AccountSelectionRequired = "account_selection_required";
```

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

## ErrorCodes\.AuthorizationPending Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.AuthorizationPending}

The authorization request is still pending as the end\-user has not yet been authenticated\.

```csharp
public const string AuthorizationPending = "authorization_pending";
```

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

## ErrorCodes\.ConfirmationRequired Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.ConfirmationRequired}

The request requires additional confirmation from the resource owner or authorization server\.

```csharp
public const string ConfirmationRequired = "confirmation_required";
```

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

## ErrorCodes\.ConsentRequired Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.ConsentRequired}

The Authorization Server requires End\-User consent\. This error MAY be returned when the prompt parameter value in the Authentication Request is none,
but the Authentication Request cannot be completed without displaying a user interface for End\-User consent\.

```csharp
public const string ConsentRequired = "consent_required";
```

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

## ErrorCodes\.ExpiredLoginHintToken Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.ExpiredLoginHintToken}

The login\_hint\_token provided in the authentication request is not valid because it has expired\.

```csharp
public const string ExpiredLoginHintToken = "expired_login_hint_token";
```

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

## ErrorCodes\.ExpiredToken Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.ExpiredToken}

The auth\_req\_id has expired\. The Client will need to make a new Authentication Request\.

```csharp
public const string ExpiredToken = "expired_token";
```

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

## ErrorCodes\.InsufficientScope Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InsufficientScope}

The request requires higher privileges than provided by the access token\.
Per RFC 6750 Section 3\.1, the resource server MUST respond with HTTP 403 \(Forbidden\)
and SHOULD include the `scope` attribute in the `WWW-Authenticate` header
listing the required scopes\.

```csharp
public const string InsufficientScope = "insufficient_scope";
```

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

## ErrorCodes\.InteractionRequired Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InteractionRequired}

The Authorization Server requires End\-User interaction of some form to proceed\. This error MAY be returned when the prompt parameter value in
the Authentication Request is none, but the Authentication Request cannot be completed without displaying a user interface for End\-User interaction\.

```csharp
public const string InteractionRequired = "interaction_required";
```

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

## ErrorCodes\.InvalidAuthorizationDetails Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidAuthorizationDetails}

The `authorization_details` parameter in the request is invalid per RFC 9396 §5:
an entry's `type` is unknown to the AS, fields do not match the registered per\-type
schema, field values are out of the wrong JSON type, or the request otherwise fails to
satisfy the per\-type validator\. The AS MUST refuse to process the request\.

```csharp
public const string InvalidAuthorizationDetails = "invalid_authorization_details";
```

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

## ErrorCodes\.InvalidBindingMessage Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidBindingMessage}

The binding message is invalid or unacceptable for use in the context of the given request\.

```csharp
public const string InvalidBindingMessage = "invalid_binding_message";
```

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

## ErrorCodes\.InvalidClient Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidClient}

Client authentication failed \(e\.g\., unknown client, no client authentication included, or unsupported authentication method\)\.
The authorization server MAY return an HTTP 401 \(Unauthorized\) status code to indicate which HTTP authentication schemes are supported\.
If the client attempted to authenticate via the "Authorization" request header field, the authorization server MUST respond with an
HTTP 401 \(Unauthorized\) status code and include the "WWW\-Authenticate" response header field matching the authentication scheme used by the client\.

```csharp
public const string InvalidClient = "invalid_client";
```

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

## ErrorCodes\.InvalidClientMetadata Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidClientMetadata}

The value of one of the Client Metadata fields is invalid and the server has rejected this request\.

```csharp
public const string InvalidClientMetadata = "invalid_client_metadata";
```

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

### Remarks
Note that an Authorization Server MAY choose to substitute a valid value for any requested parameter of a Client's Metadata\.

## ErrorCodes\.InvalidDPoPProof Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidDPoPProof}

The DPoP proof JWT presented with the request is invalid \(RFC 9449 §7\.1\)\. This is the
OAuth\-protocol\-level error code returned to the client for ANY structural,
algorithmic, claim\-binding, signature, or replay\-protection failure of a DPoP proof\.
The fine\-grained internal reason \(used in logs and metrics\) is carried separately\.

```csharp
public const string InvalidDPoPProof = "invalid_dpop_proof";
```

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

## ErrorCodes\.InvalidGrant Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidGrant}

The provided authorization grant \(e\.g\., authorization code, resource owner credentials\) or refresh token is invalid, expired, revoked,
does not match the redirection URI used in the authorization request, or was issued to another client\.

```csharp
public const string InvalidGrant = "invalid_grant";
```

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

## ErrorCodes\.InvalidRedirectUri Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidRedirectUri}

The value of one or more redirect\_uris is invalid\.

```csharp
public const string InvalidRedirectUri = "invalid_redirect_uri";
```

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

## ErrorCodes\.InvalidRequest Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidRequest}

The request is missing a parameter, includes an unsupported parameter value \(other than grant type\),
repeats a parameter, includes multiple credentials, utilizes more than one mechanism for authenticating the
client, or is otherwise malformed\.

```csharp
public const string InvalidRequest = "invalid_request";
```

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

## ErrorCodes\.InvalidRequestObject Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidRequestObject}

The request parameter contains an invalid Request Object\.

```csharp
public const string InvalidRequestObject = "invalid_request_object";
```

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

## ErrorCodes\.InvalidRequestUri Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidRequestUri}

The request\_uri in the Authorization Request returns an error or contains invalid data\.

```csharp
public const string InvalidRequestUri = "invalid_request_uri";
```

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

## ErrorCodes\.InvalidScope Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidScope}

The requested scope is invalid, unknown, malformed, or exceeds the scope granted by the resource owner\.

```csharp
public const string InvalidScope = "invalid_scope";
```

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

## ErrorCodes\.InvalidSoftwareStatement Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidSoftwareStatement}

The software statement presented is invalid per RFC 7591 Section 3\.2\.2\.

```csharp
public const string InvalidSoftwareStatement = "invalid_software_statement";
```

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

## ErrorCodes\.InvalidTarget Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidTarget}

The target resource or identifier provided in the request is invalid\.

```csharp
public const string InvalidTarget = "invalid_target";
```

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

## ErrorCodes\.InvalidToken Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidToken}

The access token provided is expired, revoked, malformed, or invalid for other reasons\.
Per RFC 6750 Section 3\.1, the resource server MUST respond with HTTP 401 \(Unauthorized\)\.

```csharp
public const string InvalidToken = "invalid_token";
```

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

## ErrorCodes\.InvalidUserCode Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.InvalidUserCode}

The user code was invalid\.

```csharp
public const string InvalidUserCode = "invalid_user_code";
```

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

## ErrorCodes\.LoginRequired Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.LoginRequired}

The Authorization Server requires End\-User authentication\. This error MAY be returned when the prompt parameter value in the Authentication Request
is none, but the Authentication Request cannot be completed without displaying a user interface for End\-User authentication\.

```csharp
public const string LoginRequired = "login_required";
```

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

## ErrorCodes\.MissingUserCode Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.MissingUserCode}

User code is required but was missing from the request\.

```csharp
public const string MissingUserCode = "missing_user_code";
```

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

## ErrorCodes\.RegistrationNotSupported Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.RegistrationNotSupported}

The OpenId Provider does not support use of the registration parameter defined in Section 7\.2\.1:
https://openid.net/specs/openid-connect-core-1\_0.html\#RegistrationParameter

```csharp
public const string RegistrationNotSupported = "registration_not_supported";
```

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

## ErrorCodes\.RequestNotSupported Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.RequestNotSupported}

The OpenId Provider does not support use of the request parameter defined in Section 6:
https://openid.net/specs/openid-connect-core-1\_0.html\#JWTRequests

```csharp
public const string RequestNotSupported = "request_not_supported";
```

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

## ErrorCodes\.RequestUriNotSupported Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.RequestUriNotSupported}

The OpenId Provider does not support use of the request\_uri parameter defined in Section 6:
https://openid.net/specs/openid-connect-core-1\_0.html\#JWTRequests

```csharp
public const string RequestUriNotSupported = "request_uri_not_supported";
```

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

## ErrorCodes\.ServerError Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.ServerError}

The authorization server encountered an unexpected condition that prevented it from fulfilling the request\.

```csharp
public const string ServerError = "server_error";
```

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

### Remarks
This error code is necessary because a 500 Internal Server Error HTTP status code cannot be returned to the client via an HTTP redirect\.

## ErrorCodes\.SlowDown Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.SlowDown}

A variant of "authorization\_pending", the authorization request is still pending and polling should continue,
but the interval MUST be increased by at least 5 seconds for this and all further requests\.

```csharp
public const string SlowDown = "slow_down";
```

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

## ErrorCodes\.TemporarilyUnavailable Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.TemporarilyUnavailable}

The authorization server is currently unable to handle the request due to a temporary overloading or maintenance of the server\.

```csharp
public const string TemporarilyUnavailable = "temporarily_unavailable";
```

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

### Remarks
This error code is necessary because a 500 Internal Server Error HTTP status code cannot be returned to the client via an HTTP redirect\.

## ErrorCodes\.UnapprovedSoftwareStatement Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UnapprovedSoftwareStatement}

The software statement was valid but the software has not been approved
for use by this authorization server per RFC 7591 Section 3\.2\.2\.

```csharp
public const string UnapprovedSoftwareStatement = "unapproved_software_statement";
```

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

## ErrorCodes\.UnauthorizedClient Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UnauthorizedClient}

The authenticated client is not authorized to use this authorization grant type\.

```csharp
public const string UnauthorizedClient = "unauthorized_client";
```

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

## ErrorCodes\.UnknownUserId Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UnknownUserId}

The OpenID Provider is not able to identify which end\-user the Client wishes to be authenticated by the hint
provided in the request \(login\_hint\_token, id\_token\_hint, or login\_hint\)\.

```csharp
public const string UnknownUserId = "unknown_user_id";
```

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

## ErrorCodes\.UnsupportedGrantType Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UnsupportedGrantType}

The authorization grant type is not supported by the authorization server\.

```csharp
public const string UnsupportedGrantType = "unsupported_grant_type";
```

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

## ErrorCodes\.UnsupportedResponseType Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UnsupportedResponseType}

The authorization server does not support obtaining a response using this method\.

```csharp
public const string UnsupportedResponseType = "unsupported_response_type";
```

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

## ErrorCodes\.UnsupportedTokenType Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UnsupportedTokenType}

The authorization server does not support the revocation of the presented token type\.
That is, the client tried to revoke an access token on a server not supporting this feature\.

```csharp
public const string UnsupportedTokenType = "unsupported_token_type";
```

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

## ErrorCodes\.UseDPoPNonce Field {#Abblix.Oidc.Server.Common.Constants.ErrorCodes.UseDPoPNonce}

The authorization server or resource server requires a DPoP\-Nonce in the proof
\(RFC 9449 §8\)\. The response carries a `DPoP-Nonce` header with the nonce value
the client must include in subsequent proofs\.

```csharp
public const string UseDPoPNonce = "use_dpop_nonce";
```

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