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

## IRegisterClientRequestProcessor Interface

Persists a new client and constructs the RFC 7591 §3\.2\.1 success response from a request
whose metadata has already been validated\. Generates credentials and the
`registration_access_token` bound to the new `client_id`\.

```csharp
public interface IRegisterClientRequestProcessor
```

Derived  
↳ [RegisterClientRequestProcessor](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.DynamicClientManagement.RegisterClientRequestProcessor 'Abblix\.Oidc\.Server\.Endpoints\.DynamicClientManagement\.RegisterClientRequestProcessor')
### Methods

## IRegisterClientRequestProcessor\.ProcessAsync\(ValidClientRegistrationRequest\) Method {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.IRegisterClientRequestProcessor.ProcessAsync(Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.ValidClientRegistrationRequest)}

Stores the validated client and returns the registration response payload\.

```csharp
System.Threading.Tasks.Task<Abblix.Utils.Result<Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.ClientRegistrationSuccessResponse,Abblix.Oidc.Server.Common.OidcError>> ProcessAsync(Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.ValidClientRegistrationRequest request);
```
#### Parameters

###### `request` [ValidClientRegistrationRequest](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.ValidClientRegistrationRequest 'Abblix\.Oidc\.Server\.Endpoints\.DynamicClientManagement\.Interfaces\.ValidClientRegistrationRequest') {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.IRegisterClientRequestProcessor.ProcessAsync(Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.ValidClientRegistrationRequest).request}

The validated registration request\.

#### Returns
[System\.Threading\.Tasks\.Task&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')[Abblix\.Utils\.Result&lt;](https://learn.microsoft.com/en-us/dotnet/api/abblix.utils.result-2 'Abblix\.Utils\.Result\`2')[ClientRegistrationSuccessResponse](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.ClientRegistrationSuccessResponse 'Abblix\.Oidc\.Server\.Endpoints\.DynamicClientManagement\.Interfaces\.ClientRegistrationSuccessResponse')[,](https://learn.microsoft.com/en-us/dotnet/api/abblix.utils.result-2 'Abblix\.Utils\.Result\`2')[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/abblix.utils.result-2 'Abblix\.Utils\.Result\`2')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')
