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

## AuthorizedGrant Class

The \(authentication\-session, authorization\-context\) pair from which the token endpoint mints
access, refresh and ID tokens\. Produced by an [IAuthorizationGrantHandler](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Grants.IAuthorizationGrantHandler 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Grants\.IAuthorizationGrantHandler') and
carried through token issuance\.

```csharp
public record AuthorizedGrant : System.IEquatable<Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant>
```

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

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

Implements [System\.IEquatable&lt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')[AuthorizedGrant](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Interfaces\.AuthorizedGrant')[&gt;](https://learn.microsoft.com/en-us/dotnet/api/system.iequatable-1 'System\.IEquatable\`1')
### Constructors

## AuthorizedGrant\(AuthSession, AuthorizationContext\) Constructor {#Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant.AuthorizedGrant(Abblix.Oidc.Server.Features.UserAuthentication.AuthSession,Abblix.Oidc.Server.Common.AuthorizationContext)}

The \(authentication\-session, authorization\-context\) pair from which the token endpoint mints
access, refresh and ID tokens\. Produced by an [IAuthorizationGrantHandler](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Grants.IAuthorizationGrantHandler 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Grants\.IAuthorizationGrantHandler') and
carried through token issuance\.

```csharp
public AuthorizedGrant(Abblix.Oidc.Server.Features.UserAuthentication.AuthSession AuthSession, Abblix.Oidc.Server.Common.AuthorizationContext Context);
```
#### Parameters

###### `AuthSession` [AuthSession](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserAuthentication.AuthSession 'Abblix\.Oidc\.Server\.Features\.UserAuthentication\.AuthSession') {#Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant.AuthorizedGrant(Abblix.Oidc.Server.Features.UserAuthentication.AuthSession,Abblix.Oidc.Server.Common.AuthorizationContext).AuthSession}

The user's authentication session \(subject, sid, auth\_time, idp\)\.

###### `Context` [AuthorizationContext](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Common.AuthorizationContext 'Abblix\.Oidc\.Server\.Common\.AuthorizationContext') {#Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant.AuthorizedGrant(Abblix.Oidc.Server.Features.UserAuthentication.AuthSession,Abblix.Oidc.Server.Common.AuthorizationContext).Context}

The authorization decision \(client\_id, scope, resources, requested claims,
            confirmation binding\) inherited by the issued tokens\.
### Properties

## AuthorizedGrant\.AuthSession Property {#Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant.AuthSession}

The user's authentication session \(subject, sid, auth\_time, idp\)\.

```csharp
public Abblix.Oidc.Server.Features.UserAuthentication.AuthSession AuthSession { get; init; }
```

#### Property Value
[AuthSession](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Features.UserAuthentication.AuthSession 'Abblix\.Oidc\.Server\.Features\.UserAuthentication\.AuthSession')

## AuthorizedGrant\.Context Property {#Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant.Context}

The authorization decision \(client\_id, scope, resources, requested claims,
            confirmation binding\) inherited by the issued tokens\.

```csharp
public Abblix.Oidc.Server.Common.AuthorizationContext Context { get; init; }
```

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

## AuthorizedGrant\.IssuedTokens Property {#Abblix.Oidc.Server.Endpoints.Token.Interfaces.AuthorizedGrant.IssuedTokens}

Tokens already issued from this grant\. Tracked for the authorization\-code reuse defense:
if the same code is presented twice, every previously issued token is revoked by JTI\.

```csharp
public Abblix.Oidc.Server.Endpoints.Token.Interfaces.TokenInfo[]? IssuedTokens { get; init; }
```

#### Property Value
[TokenInfo](https://www.abblix.com/en/docs/api/abblix-oidc-server/Abblix.Oidc.Server.Endpoints.Token.Interfaces.TokenInfo 'Abblix\.Oidc\.Server\.Endpoints\.Token\.Interfaces\.TokenInfo')[\[\]](https://learn.microsoft.com/en-us/dotnet/api/system.array 'System\.Array')
