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

## SyncTokenContextValidatorBase Class

Provides a base class for implementing synchronous token context validators\.
This class simplifies the creation of token context validators by offering a synchronous validation method
that is automatically wrapped in an asynchronous call\.

```csharp
public abstract class SyncTokenContextValidatorBase : Abblix.Oidc.Server.Endpoints.Token.Validation.ITokenContextValidator
```

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

Derived  
↳ [ResourceValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Validation.ResourceValidator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.ResourceValidator')  
↳ [ScopeValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Validation.ScopeValidator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.ScopeValidator')

Implements [ITokenContextValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Validation.ITokenContextValidator 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.ITokenContextValidator')
### Methods

## SyncTokenContextValidatorBase\.ValidateAsync\(TokenValidationContext\) Method {#Abblix.Oidc.Server.Endpoints.Token.Validation.SyncTokenContextValidatorBase.ValidateAsync(Abblix.Oidc.Server.Endpoints.Token.Validation.TokenValidationContext)}

Asynchronously validates the token request within the provided context by invoking the synchronous
[Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.SyncTokenContextValidatorBase\.Validate\(Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.TokenValidationContext\)](https://learn.microsoft.com/en-us/dotnet/api/abblix.oidc.server.endpoints.token.validation.synctokencontextvalidatorbase.validate#abblix-oidc-server-endpoints-token-validation-synctokencontextvalidatorbase-validate(abblix-oidc-server-endpoints-token-validation-tokenvalidationcontext) 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.SyncTokenContextValidatorBase\.Validate\(Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.TokenValidationContext\)') method\.

```csharp
public System.Threading.Tasks.Task<Abblix.Oidc.Server.Common.OidcError?> ValidateAsync(Abblix.Oidc.Server.Endpoints.Token.Validation.TokenValidationContext context);
```
#### Parameters

###### `context` [TokenValidationContext](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Validation.TokenValidationContext 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.TokenValidationContext') {#Abblix.Oidc.Server.Endpoints.Token.Validation.SyncTokenContextValidatorBase.ValidateAsync(Abblix.Oidc.Server.Endpoints.Token.Validation.TokenValidationContext).context}

The context containing the token request and related information that needs to be validated\.

Implements [ValidateAsync\(TokenValidationContext\)](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Validation.ITokenContextValidator#Abblix.Oidc.Server.Endpoints.Token.Validation.ITokenContextValidator.ValidateAsync(Abblix.Oidc.Server.Endpoints.Token.Validation.TokenValidationContext) 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.ITokenContextValidator\.ValidateAsync\(Abblix\.Oidc\.Server\.Endpoints\.Token\.Validation\.TokenValidationContext\)')

#### Returns
[System\.Threading\.Tasks\.Task&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')[OidcError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.OidcError 'Abblix\.Oidc\.Server\.Common\.OidcError')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')  
A [System\.Threading\.Tasks\.Task](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task 'System\.Threading\.Tasks\.Task') that resolves to a [OidcError](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.OidcError 'Abblix\.Oidc\.Server\.Common\.OidcError') containing error details
if the validation fails;
otherwise, resolves to null indicating that the validation was successful\.
