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

## InitialAccessTokenService Class

Issues initial access tokens for authorizing client registration per RFC 7591 Section 3\.

```csharp
public class InitialAccessTokenService : Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.IInitialAccessTokenService
```

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

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

## InitialAccessTokenService\(IAuthServiceJwtFormatter, IIssuerProvider\) Constructor {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.InitialAccessTokenService(Abblix.Oidc.Server.Features.Tokens.Formatters.IAuthServiceJwtFormatter,Abblix.Oidc.Server.Features.Issuer.IIssuerProvider)}

Issues initial access tokens for authorizing client registration per RFC 7591 Section 3\.

```csharp
public InitialAccessTokenService(Abblix.Oidc.Server.Features.Tokens.Formatters.IAuthServiceJwtFormatter serviceJwtFormatter, Abblix.Oidc.Server.Features.Issuer.IIssuerProvider issuerProvider);
```
#### Parameters

###### `serviceJwtFormatter` [IAuthServiceJwtFormatter](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Tokens.Formatters.IAuthServiceJwtFormatter 'Abblix\.Oidc\.Server\.Features\.Tokens\.Formatters\.IAuthServiceJwtFormatter') {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.InitialAccessTokenService(Abblix.Oidc.Server.Features.Tokens.Formatters.IAuthServiceJwtFormatter,Abblix.Oidc.Server.Features.Issuer.IIssuerProvider).serviceJwtFormatter}

###### `issuerProvider` [IIssuerProvider](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.Issuer.IIssuerProvider 'Abblix\.Oidc\.Server\.Features\.Issuer\.IIssuerProvider') {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.InitialAccessTokenService(Abblix.Oidc.Server.Features.Tokens.Formatters.IAuthServiceJwtFormatter,Abblix.Oidc.Server.Features.Issuer.IIssuerProvider).issuerProvider}
### Methods

## InitialAccessTokenService\.IssueTokenAsync\(string, DateTimeOffset, Nullable\<TimeSpan\>\) Method {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.IssueTokenAsync(string,System.DateTimeOffset,System.Nullable_System.TimeSpan_)}

Issues an initial access token for authorizing client registration\.

```csharp
public System.Threading.Tasks.Task<string> IssueTokenAsync(string subject, System.DateTimeOffset issuedAt, System.Nullable<System.TimeSpan> expiresIn);
```
#### Parameters

###### `subject` [System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String') {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.IssueTokenAsync(string,System.DateTimeOffset,System.Nullable_System.TimeSpan_).subject}

A unique identifier for the token, used as the JWT subject for revocation tracking\.

###### `issuedAt` [System\.DateTimeOffset](https://learn.microsoft.com/en-us/dotnet/api/system.datetimeoffset 'System\.DateTimeOffset') {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.IssueTokenAsync(string,System.DateTimeOffset,System.Nullable_System.TimeSpan_).issuedAt}

The timestamp when the token is issued\.

###### `expiresIn` [System\.Nullable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.nullable-1 'System\.Nullable\`1')[System\.TimeSpan](https://learn.microsoft.com/en-us/dotnet/api/system.timespan 'System\.TimeSpan')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.nullable-1 'System\.Nullable\`1') {#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.InitialAccessTokenService.IssueTokenAsync(string,System.DateTimeOffset,System.Nullable_System.TimeSpan_).expiresIn}

The optional duration after which the token expires\.

Implements [IssueTokenAsync\(string, DateTimeOffset, Nullable&lt;TimeSpan&gt;\)](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.IInitialAccessTokenService#Abblix.Oidc.Server.Endpoints.DynamicClientManagement.Interfaces.IInitialAccessTokenService.IssueTokenAsync(string,System.DateTimeOffset,System.Nullable_System.TimeSpan_) 'Abblix\.Oidc\.Server\.Endpoints\.DynamicClientManagement\.Interfaces\.IInitialAccessTokenService\.IssueTokenAsync\(string, System\.DateTimeOffset, System\.Nullable\<System\.TimeSpan\>\)')

#### Returns
[System\.Threading\.Tasks\.Task&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')[System\.String](https://learn.microsoft.com/en-us/dotnet/api/system.string 'System\.String')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.threading.tasks.task-1 'System\.Threading\.Tasks\.Task\`1')  
A task that results in the encoded initial access token\.
