1.0.42 • Published 4 months ago

trustauthx v1.0.42

Weekly downloads
-
License
ISC
Repository
-
Last release
4 months ago

TrustAuthX SDK

The TrustAuthX SDK enables seamless integration with the TrustAuthX authentication service. This TypeScript client, AuthLiteClient, simplifies the interaction with TrustAuthX in your projects.

Installation

npm install trustauthx-sdk

Usage Example

import dotenv from 'dotenv';
import { AuthLiteClient } from 'trustauthx-sdk';

dotenv.config();

// Load your environment variables
const apiKey: string = process.env.API_KEY || '';
const apiSecret: string = process.env.API_SECRET || '';
const orgId: string = process.env.ORG_ID || '';

// Placeholder for the user access token
const userAccessToken: string = 'placeholder-user-access-token';

const test = async () => {
  // Initialize the AuthLiteClient
  const auth = new AuthLiteClient(apiKey, apiSecret, orgId);

  // Get user data using the provided user access token
  const user = await auth.getUser(userAccessToken);

  // Retrieve user information from the user access token
  const userInfo = await auth.getUserFromToken(user.access_token);
  console.log({ user: userInfo });
};

test();

Make sure to replace the placeholder for userAccessToken with the actual user access token you want to use for testing. Additionally, ensure that your environment variables (API_KEY, API_SECRET, ORG_ID) are properly configured.

Constructor

constructor(apiKey: string, secretKey: string, orgId?: string)
  • Description: Initializes an instance of the AuthLiteClient class.
  • Parameters:
    • apiKey: The API key used for authentication.
    • secretKey: The secret key used for JWT encoding.
    • orgId: (Optional) The organization ID.

jwtEncode Method

private jwtEncode(key: string, data: object): string
  • Description: Encodes data into a JSON Web Token (JWT) using the provided key.
  • Parameters:
    • key: The secret key for encoding.
    • data: The data to be encoded.
  • Returns: The encoded JWT.

jwtDecode Method

private jwtDecode(token: string): any
  • Description: Decodes a JSON Web Token (JWT).
  • Parameters:
    • token: The JWT to be decoded.
  • Returns: The decoded data.

generateUrl Method

generateUrl(subDomain?: string): string
  • Description: Generates the authentication URL.
  • Parameters:
    • subDomain: (Optional) The subdomain for the URL.
  • Returns: The generated URL.

generateEditUserUrl Method

generateEditUserUrl(accessToken: string, url: string): string
  • Description: Generates the URL for editing user settings.
  • Parameters:
    • accessToken: The user's access token.
    • url: The target URL.
  • Returns: The generated URL.

reAuth Method

async reAuth(code: string): Promise<{ email: string; uid: string }>
  • Description: Initiates re-authentication using a code.
  • Parameters:
    • code: The re-authentication code.
  • Returns: A promise that resolves to an object containing the user's email and UID.

getUser Method

async getUser(token: string): Promise<GetUser>
  • Description: Gets user authentication data.
  • Parameters:
    • token: The user's authentication token.
  • Returns: A promise that resolves to user data.

getAccessTokenFromRefreshToken Method

async getAccessTokenFromRefreshToken(refreshToken: string): Promise<any>
  • Description: Retrieves an access token from a refresh token.
  • Parameters:
    • refreshToken: The refresh token.
  • Returns: A promise that resolves to the new access token.

validateAccessToken Method

async validateAccessToken(access_token: string): Promise<boolean>
  • Description: Validates an access token.
  • Parameters:
    • access_token: The access token to validate.
  • Returns: A promise that resolves to true if the token is valid, false otherwise.

revokeToken Method

async revokeToken(
  accessToken: string,
  refreshToken: string | null = null,
  revokeAllTokens: boolean = false,
): Promise<boolean>
  • Description: Revokes a token.
  • Parameters:
    • accessToken: The access token to revoke.
    • refreshToken: (Optional) The refresh token.
    • revokeAllTokens: (Optional) Whether to revoke all tokens.
  • Returns: A promise that resolves to true if the token revocation is successful, false otherwise.

getUserFromToken Method

async getUserFromToken(accessToken: string): Promise<{ uid: string; email: string; img: string }>
  • Description: Gets user data from an access token.
  • Parameters:
    • accessToken: The access token.
  • Returns: A promise that resolves to an object containing the user's UID, email, and image.

validateTokenSet Method

async validateTokenSet(
  access_token: string,
  refresh_token: string,
): Promise<TokenCheck>
  • Description: Validates a pair of access and refresh tokens.
  • Parameters:
    • access_token: The access token to validate.
    • refresh_token: The refresh token to validate.
  • Returns: A promise that resolves to an object containing the validation state and new tokens (if refreshed).

Support 💬

If you have any questions, feedback, or issues, please feel free to contact us at support@trustauthx.com. We are always happy to hear from you and help you with your integration.

License 📄

TrustAuthX Python Connector SDK is licensed under the MIT License. See the LICENSE file for more details.

1.0.42

4 months ago

1.0.41

4 months ago

1.0.39

4 months ago

1.0.38

4 months ago

1.0.40

4 months ago

1.0.37

5 months ago

1.0.36

5 months ago

1.0.35

5 months ago

1.0.34

5 months ago

1.0.33

5 months ago

1.0.32

5 months ago

1.0.31

5 months ago

1.0.30

5 months ago

1.0.29

5 months ago

1.0.27

5 months ago

1.0.26

6 months ago

1.0.25

6 months ago

1.0.24

6 months ago

1.0.23

6 months ago

1.0.22

6 months ago

1.0.21

6 months ago

1.0.2

6 months ago

1.0.1

6 months ago