The @auth0/auth0-api-js
library allows for securing API's running on a JavaScript runtime.
Using this SDK as-is in your API may not be trivial, as it is not a plug-and-play library for your framework. Instead, it is designed to be used as a building block for building framework-specific SDKs.
📚 Documentation - 🚀 Getting Started - 💬 Feedback
- Docs Site - explore our docs site and learn more about Auth0.
npm i @auth0/auth0-api-js
This library requires Node.js 20 LTS and newer LTS versions.
Create an instance of the ApiClient
. This instance will be imported and used anywhere we need access to the methods.
import { ApiClient } from '@auth0/auth0-api-js';
const apiClient = new apiClient({
domain: '<AUTH0_DOMAIN>',
audience: '<AUTH0_AUDIENCE>',
});
The AUTH0_DOMAIN
can be obtained from the Auth0 Dashboard once you've created an application.
The AUTH0_AUDIENCE
is the identifier of the API. You can find this in the API section of the Auth0 dashboard.
The SDK's verifyAccessToken
method can be used to verify the access token.
const apiClient = new apiClient({
domain: '<AUTH0_DOMAIN>',
audience: '<AUTH0_AUDIENCE>',
});
const accessToken = '...';
const decodedAndVerfiedToken = await apiClient.verifyAccessToken({
accessToken
});
the SDK automatically validates claims like iss
, aud
, exp
, and nbf
, you can also pass additional claims to be required by configuring requiredClaims
:
const apiClient = new apiClient({
domain: '<AUTH0_DOMAIN>',
audience: '<AUTH0_AUDIENCE>',
});
const accessToken = '...';
const decodedAndVerfiedToken = await apiClient.verifyAccessToken({
accessToken,
requiredClaims: ['my_custom_claim']
});
We appreciate feedback and contribution to this repo! Before you get started, please read the following:
- Auth0's general contribution guidelines
- Auth0's code of conduct guidelines
- This repo's contribution guide
To provide feedback or report a bug, please raise an issue on our issue tracker.
Please do not report security vulnerabilities on the public GitHub issue tracker. The Responsible Disclosure Program details the procedure for disclosing security issues.
Auth0 is an easy to implement, adaptable authentication and authorization platform. To learn more checkout Why Auth0?
This project is licensed under the MIT license. See the LICENSE file for more info.