oauth4webapi
Low-Level OAuth 2 / OpenID Connect Client API for JavaScript Runtimes
File Explorer
Download Latest Version (.zip)- bug-report.yml
- config.yml
- conformance.yml
- lock.yml
- release.yml
- retry.yml
- test.yml
- dependabot.yml
- client-secret-basic.ts
- discovery-issuer-mismatch.ts
- encrypted-idtoken-usingrsa15.ts
- encrypted-idtoken.ts
- ensure-authorization-response-with-invalid-missing-state-fails.ts
- ensure-authorization-response-with-invalid-state-fails.ts
- ensure-jarm-signature-is-not-none.ts
- ensure-jarm-with-expired-exp-fails.ts
- ensure-jarm-with-invalid-aud-fails.ts
- ensure-jarm-with-invalid-iss-fails.ts
- ensure-jarm-with-invalid-sig-fails.ts
- ensure-jarm-without-aud-fails.ts
- ensure-jarm-without-exp-fails.ts
- ensure-jarm-without-iss-fails.ts
- fapi1-advanced-final-client-test.ts
- happy-path-no-dpop-nonce.ts
- happy-path.ts
- iat-is-week-in-past.ts
- idtoken-sig-none.ts
- idtoken-sig-rs256.ts
- invalid-alternate-alg.ts
- invalid-aud.ts
- invalid-authorization-response-iss.ts
- invalid-chash.ts
- invalid-expired-exp.ts
- invalid-iss.ts
- invalid-missing-aud.ts
- invalid-missing-exp.ts
- invalid-missing-iss.ts
- invalid-missing-nonce.ts
- invalid-missing-shash.ts
- invalid-nonce.ts
- invalid-null-alg.ts
- invalid-secondary-aud.ts
- invalid-shash.ts
- invalid-sig-es256.ts
- invalid-sig-hs256.ts
- invalid-sig-rs256.ts
- invalid-signature.ts
- kid-absent-multiple-jwks.ts
- kid-absent-single-jwks.ts
- missing-athash.ts
- missing-aud.ts
- missing-chash.ts
- missing-iat.ts
- missing-sub.ts
- no-scope-in-token-endpoint-response.ts
- nonce-invalid.ts
- nonce-unless-code-flow.ts
- oidcc-client-test.ts
- remove-authorization-response-iss.ts
- rs-dpop-auth-scheme-case-insensitivity.ts
- scope-userinfo-claims.ts
- token-endpoint-response-without-expires_in.ts
- token-type-case-insensitivity.ts
- userinfo-bearer-header.ts
- userinfo-invalid-sub.ts
- userinfo-signed.ts
- valid-aud-as-array.ts
- .parse-logs.mjs
- api.ts
- ava.config.ts
- download_archive.ts
- env.ts
- modules.ts
- report.ts
- report_failure.ts
- run-certification.sh
- runner.ts
- tsconfig.json
- unhandled.ts
- AuthorizationResponseError.md
- OperationProcessingError.md
- ResponseBodyError.md
- UnsupportedOperationError.md
- WWWAuthenticateChallengeError.md
- authorizationCodeGrantRequest.md
- backchannelAuthenticationGrantRequest.md
- backchannelAuthenticationRequest.md
- calculatePKCECodeChallenge.md
- clientCredentialsGrantRequest.md
- ClientSecretBasic.md
- ClientSecretJwt.md
- ClientSecretPost.md
- deviceAuthorizationRequest.md
- deviceCodeGrantRequest.md
- discoveryRequest.md
- DPoP.md
- dynamicClientRegistrationRequest.md
- generateKeyPair.md
- generateRandomCodeVerifier.md
- generateRandomNonce.md
- generateRandomState.md
- genericTokenEndpointRequest.md
- getValidatedIdTokenClaims.md
- introspectionRequest.md
- isDPoPNonceError.md
- issueRequestObject.md
- None.md
- PrivateKeyJwt.md
- processAuthorizationCodeResponse.md
- processBackchannelAuthenticationGrantResponse.md
- processBackchannelAuthenticationResponse.md
- processClientCredentialsResponse.md
- processDeviceAuthorizationResponse.md
- processDeviceCodeResponse.md
- processDiscoveryResponse.md
- processDynamicClientRegistrationResponse.md
- processGenericTokenEndpointResponse.md
- processIntrospectionResponse.md
- processPushedAuthorizationResponse.md
- processRefreshTokenResponse.md
- processResourceDiscoveryResponse.md
- processRevocationResponse.md
- processUserInfoResponse.md
- protectedResourceRequest.md
- pushedAuthorizationRequest.md
- refreshTokenGrantRequest.md
- resourceDiscoveryRequest.md
- revocationRequest.md
- TlsClientAuth.md
- userInfoRequest.md
- validateApplicationLevelSignature.md
- validateAuthResponse.md
- validateCodeIdTokenResponse.md
- validateDetachedSignatureResponse.md
- validateJwtAccessToken.md
- validateJwtAuthResponse.md
- AuthorizationDetails.md
- AuthorizationServer.md
- BackchannelAuthenticationRequestOptions.md
- BackchannelAuthenticationResponse.md
- Client.md
- ClientCredentialsGrantRequestOptions.md
- ConfirmationClaims.md
- CryptoKeyPair.md
- CustomFetchOptions.md
- DeviceAuthorizationRequestOptions.md
- DeviceAuthorizationResponse.md
- DiscoveryRequestOptions.md
- DPoPHandle.md
- DPoPRequestOptions.md
- DynamicClientRegistrationRequestOptions.md
- ExportedJWKSCache.md
- GenerateKeyPairOptions.md
- HttpRequestOptions.md
- IDToken.md
- IntrospectionRequestOptions.md
- IntrospectionResponse.md
- JWEDecryptOptions.md
- JWKS.md
- JWKSCacheOptions.md
- JWTAccessTokenClaims.md
- ModifyAssertionFunction.md
- ModifyAssertionOptions.md
- MTLSEndpointAliases.md
- OAuth2Error.md
- PrivateKey.md
- ProcessAuthorizationCodeResponseOptions.md
- ProcessTokenResponseOptions.md
- ProtectedResourceRequestOptions.md
- PushedAuthorizationRequestOptions.md
- PushedAuthorizationResponse.md
- ResourceServer.md
- RevocationRequestOptions.md
- TokenEndpointRequestOptions.md
- TokenEndpointResponse.md
- UserInfoAddress.md
- UserInfoRequestOptions.md
- UserInfoResponse.md
- ValidateJWTAccessTokenOptions.md
- ValidateSignatureOptions.md
- WWWAuthenticateChallenge.md
- WWWAuthenticateChallengeParameters.md
- ClientAuth.md
- CryptoKey.md
- JsonArray.md
- JsonObject.md
- JsonPrimitive.md
- JsonValue.md
- JweDecryptFunction.md
- JWK.md
- JWKSCacheInput.md
- JWSAlgorithm.md
- OmitSymbolProperties.md
- ProtectedResourceRequestBody.md
- RecognizedTokenTypes.md
- allowInsecureRequests.md
- AUTHORIZATION_RESPONSE_ERROR.md
- clockSkew.md
- clockTolerance.md
- customFetch.md
- expectNoNonce.md
- expectNoState.md
- HTTP_REQUEST_FORBIDDEN.md
- INVALID_REQUEST.md
- INVALID_RESPONSE.md
- INVALID_SERVER_METADATA.md
- JSON_ATTRIBUTE_COMPARISON.md
- jweDecrypt.md
- jwksCache.md
- JWT_CLAIM_COMPARISON.md
- JWT_TIMESTAMP_CHECK.md
- JWT_USERINFO_EXPECTED.md
- KEY_SELECTION.md
- MISSING_SERVER_METADATA.md
- modifyAssertion.md
- nopkce.md
- PARSE_ERROR.md
- REQUEST_PROTOCOL_FORBIDDEN.md
- RESPONSE_BODY_ERROR.md
- RESPONSE_IS_NOT_CONFORM.md
- RESPONSE_IS_NOT_JSON.md
- skipAuthTimeCheck.md
- skipStateCheck.md
- skipSubjectCheck.md
- UNSUPPORTED_OPERATION.md
- WWW_AUTHENTICATE_CHALLENGE.md
- README.md
- .update-diffs.sh
- backchannel_authentication_grant.ts
- ciba.ts
- client_credentials.ts
- client_secret_basic.diff
- client_secret_basic.ts
- device_authorization_grant.ts
- dpop.diff
- dpop.ts
- fapi1-advanced.diff
- fapi1-advanced.ts
- fapi2-message-signing.diff
- fapi2-message-signing.ts
- fapi2.diff
- fapi2.ts
- jar.diff
- jar.ts
- jarm.diff
- jarm.ts
- oauth.ts
- oidc.diff
- oidc.ts
- par.diff
- par.ts
- private_key_jwt.diff
- private_key_jwt.ts
- public.diff
- public.ts
- README.md
- refresh_token.diff
- refresh_token.ts
- tsconfig.json
- typedoc-plugin-markdown+4.11.0.patch
- Auth0byOkta_dark.png
- Auth0byOkta_light.png
- index.ts
- .browser.ts
- .browsers.sh
- .bun.sh
- .deno.sh
- .electron.sh
- .node.sh
- .server.sh
- .workerd.sh
- callback.ts
- end2end-ciba.ts
- end2end-client-credentials.ts
- end2end-device-code.ts
- end2end.ts
- env.ts
- generate.ts
- helper.ts
- keys.ts
- modulus_length.ts
- random.ts
- request_object.ts
- run-browser.ts
- run-bun.ts
- run-deno.ts
- run-electron.ts
- run-node.ts
- run-workerd.ts
- run.ts
- server.mjs
- tsconfig.json
- _lib.ts
- _setup.ts
- _tools.ts
- authorization_code.test.ts
- ciba.test.ts
- client_auth.test.ts
- client_credentials.test.ts
- conformance_runner.test.ts
- dcr.test.ts
- device_flow.test.ts
- discovery.test.ts
- dpop.test.ts
- introspection.test.ts
- issue-13.test.ts
- issue-15.test.ts
- issue-191.test.ts
- jarm.test.ts
- jwks_lifecycle.test.ts
- jwks_lifecycle_with_cache.test.ts
- jwt_access_token.test.ts
- par.test.ts
- protected_resource.test.ts
- refresh_token.test.ts
- resource_discovery.test.ts
- revocation.test.ts
- token_exchange.test.ts
- tsconfig.json
- userinfo.test.ts
- www_authenticate.test.ts
- api.ts
- fallback.const.ts
- fallback.let.ts
- fallback.ts
- lexical-host.d.ts
- node.ts
- tsconfig.fallback.const.json
- tsconfig.fallback.json
- tsconfig.fallback.let.json
- tsconfig.json
- tsconfig.node.json
- attw-check.js
- test-dist.js
- typecheck-dist.sh
- .electron_flags.sh
- .gitignore
- .node_flags.sh
- .postbump.cjs
- .prettierrc.json
- .versionrc.json
- ava.config.mjs
- CHANGELOG.md
- check-examples.sh
- CODE_OF_CONDUCT.md
- CONTRIBUTING.md
- jsr.json
- LICENSE.md
- mod.ts
- package-lock.json
- package.json
- playwright.config.ts
- README.md
- SECURITY.md
- tsconfig.docs.json
- tsconfig.json
- typedoc.json
# Installation Guide
1. Get the code
git clone https://github.com/panva/oauth4webapi
Downloads the entire project code from GitHub to your computer.
cd oauth4webapi
Moves into the project folder you just downloaded.
2. Node.js
Easy RecommendedPrerequisites
npm install
Downloads and installs the libraries listed in package.json.
npm start
Starts the development/run server.
After running the command, open the address shown in the terminal (usually something like http://localhost:3000) in your browser.
// repository documentation
Was this content helpful?
(0 ratings)
