# AttestoClient v2.2.0 - Table of Contents

> Secure OpenID Connect code + PKCE, refresh, revocation, logout, and OAuth 2.0 / FAPI client artifacts and verification.

## Pages

- [AttestoClient](readme.md)

- Guides
  - [Authorization Code + PKCE](authorization-code.md)
  - [Remote issuer resource server](resource-server.md)

- Changelog
  - [Changelog](changelog.md)

- License
  - [LICENSE](license.md)

## Modules

- [AttestoClient](AttestoClient.md): Client-side OAuth 2.0 / OpenID Connect / FAPI 2.0 artifacts and verification.
- [AttestoClient.AuthorizationCode](AttestoClient.AuthorizationCode.md): OpenID Connect Authorization Code flow with S256 PKCE.
- [AttestoClient.AuthorizationTransaction](AttestoClient.AuthorizationTransaction.md): One-time state for an OpenID Connect authorization transaction.
- [AttestoClient.AuthorizationTransaction.Store](AttestoClient.AuthorizationTransaction.Store.md): Storage contract for replay-safe authorization transactions.
- [AttestoClient.AuthorizationTransaction.Store.ETS](AttestoClient.AuthorizationTransaction.Store.ETS.md): Single-node authorization transaction store backed by a private ETS table.
- [AttestoClient.ClientAssertion](AttestoClient.ClientAssertion.md): Build `private_key_jwt` client-authentication assertions (RFC 7523 §2.2 /
OpenID Connect Core §9), signed with the client's own private key.
- [AttestoClient.Discovery](AttestoClient.Discovery.md): Fetch and read OAuth 2.0 / OpenID Connect authorization-server metadata
(RFC 8414 / OpenID Connect Discovery 1.0).
- [AttestoClient.IDToken](AttestoClient.IDToken.md): Verify OpenID Connect ID Tokens issued by an authorization server.
- [AttestoClient.IdentityAssertion](AttestoClient.IdentityAssertion.md): Build Identity Assertion JWT Authorization Grant assertions (ID-JAG / EMA).
- [AttestoClient.JARM](AttestoClient.JARM.md): Verify JWT Secured Authorization Response Mode (JARM) responses, the
client-side mirror of `Attesto.JARM.response_jwt/4`.
- [AttestoClient.Logout](AttestoClient.Logout.md): Build an OpenID Connect RP-Initiated Logout request.
- [AttestoClient.PKCE](AttestoClient.PKCE.md): Generate RFC 7636 PKCE verifier/challenge pairs for OAuth clients.
- [AttestoClient.RefreshCoordinator](AttestoClient.RefreshCoordinator.md): Single-flight coordinator for refresh-token rotation.
- [AttestoClient.RefreshResult](AttestoClient.RefreshResult.md): Result shared by one refresh-token rotation flight.
- [AttestoClient.RequestObject](AttestoClient.RequestObject.md): Build signed authorization request objects (JAR, RFC 9101), the client-side
mirror of `Attesto.RequestObject.verify/3`.
- [AttestoClient.ResourceServer](AttestoClient.ResourceServer.md): Verify JWT access tokens issued by a remote OAuth authorization server.
- [AttestoClient.ResourceServer.Plug](AttestoClient.ResourceServer.Plug.md): Authenticate a Plug request with `AttestoClient.ResourceServer`.
- [AttestoClient.SignedIntrospection](AttestoClient.SignedIntrospection.md): Verify RFC 9701 signed token introspection responses.
- [AttestoClient.Token](AttestoClient.Token.md): Refresh and revoke OAuth tokens.
- [AttestoClient.TokenSet](AttestoClient.TokenSet.md): Validated token-endpoint response.
- [AttestoClient.UserInfo](AttestoClient.UserInfo.md): Verify signed OpenID Connect UserInfo responses.

