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

## FlowTypeValidator Class

Validates the OAuth 2\.0 flow type specified in the authorization request\.
This class determines if the requested flow type is supported and matches the
expected patterns for authorization requests, as part of the validation process\.

```csharp
public class FlowTypeValidator : Abblix.Oidc.Server.Endpoints.Authorization.Validation.SyncAuthorizationContextValidatorBase
```

Inheritance [System\.Object](https://learn.microsoft.com/en-us/dotnet/api/system.object 'System\.Object') → [SyncAuthorizationContextValidatorBase](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.SyncAuthorizationContextValidatorBase 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.SyncAuthorizationContextValidatorBase') → FlowTypeValidator
### Constructors

## FlowTypeValidator\(ILogger\<FlowTypeValidator\>, IEnumerable\<IAuthorizationResponseBuilder\>, IOptions\<OidcOptions\>\) Constructor {#Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator.FlowTypeValidator(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator_,System.Collections.Generic.IEnumerable_Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationResponseBuilder_,Microsoft.Extensions.Options.IOptions_Abblix.Oidc.Server.Common.Configuration.OidcOptions_)}

Validates the OAuth 2\.0 flow type specified in the authorization request\.
This class determines if the requested flow type is supported and matches the
expected patterns for authorization requests, as part of the validation process\.

```csharp
public FlowTypeValidator(Microsoft.Extensions.Logging.ILogger<Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator> logger, System.Collections.Generic.IEnumerable<Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationResponseBuilder> processors, Microsoft.Extensions.Options.IOptions<Abblix.Oidc.Server.Common.Configuration.OidcOptions> options);
```
#### Parameters

###### `logger` [Microsoft\.Extensions\.Logging\.ILogger&lt;](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.ilogger-1 'Microsoft\.Extensions\.Logging\.ILogger\`1')[FlowTypeValidator](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Validation\.FlowTypeValidator')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.logging.ilogger-1 'Microsoft\.Extensions\.Logging\.ILogger\`1') {#Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator.FlowTypeValidator(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator_,System.Collections.Generic.IEnumerable_Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationResponseBuilder_,Microsoft.Extensions.Options.IOptions_Abblix.Oidc.Server.Common.Configuration.OidcOptions_).logger}

The logger to be used for logging purposes\.

###### `processors` [System\.Collections\.Generic\.IEnumerable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1')[IAuthorizationResponseBuilder](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationResponseBuilder 'Abblix\.Oidc\.Server\.Endpoints\.Authorization\.Interfaces\.IAuthorizationResponseBuilder')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.collections.generic.ienumerable-1 'System\.Collections\.Generic\.IEnumerable\`1') {#Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator.FlowTypeValidator(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator_,System.Collections.Generic.IEnumerable_Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationResponseBuilder_,Microsoft.Extensions.Options.IOptions_Abblix.Oidc.Server.Common.Configuration.OidcOptions_).processors}

The set of registered authorization response processors\. The
            validator rejects requests whose `response_type` contains a part with no matching
            registered processor — this enforces OAuth 2\.1 \(draft\) default\-off Implicit Flow at the validation
            layer \(without `EnableImplicitFlow()`, no `token` / `id_token` processors exist
            and any request asking for them gets `unsupported_response_type`\)\.

###### `options` [Microsoft\.Extensions\.Options\.IOptions&lt;](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.options.ioptions-1 'Microsoft\.Extensions\.Options\.IOptions\`1')[OidcOptions](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.Configuration.OidcOptions 'Abblix\.Oidc\.Server\.Common\.Configuration\.OidcOptions')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/microsoft.extensions.options.ioptions-1 'Microsoft\.Extensions\.Options\.IOptions\`1') {#Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator.FlowTypeValidator(Microsoft.Extensions.Logging.ILogger_Abblix.Oidc.Server.Endpoints.Authorization.Validation.FlowTypeValidator_,System.Collections.Generic.IEnumerable_Abblix.Oidc.Server.Endpoints.Authorization.Interfaces.IAuthorizationResponseBuilder_,Microsoft.Extensions.Options.IOptions_Abblix.Oidc.Server.Common.Configuration.OidcOptions_).options}

Provides the server\-wide default security profile a client inherits when it
            states none, used to reject implicit and hybrid response types for a client held to a code\-only
            profile \(FAPI 2\.0\)\.
