authnest-client
v1.0.16
Published
Official client SDK for AuthNest authentication service. Easy integration for user login, registration, and management APIs.
Downloads
68
Maintainers
Readme
AuthNest Client SDK
Official JavaScript/Node.js client library for the AuthNest authentication service. Easily integrate user authentication, registration, and management into your applications.
Installation
npm install authnest-client
npm install dotenv
Quick Start
const AuthNestClient = require('authnest-client');
// Initialize with environment variables
const authnest = new AuthNestClient();
// Or initialize with explicit configuration
const authnest = new AuthNestClient({
apiKey: process.env.CLIENT_AUTHNEST_API_KEY,
secretKey: process.env.CLIENT_AUTHNEST_SECRET_KEY,
authnestBaseUrl: process.env.AUTHNEST_BASE_URL,
clientBaseUrl: process.env.CLIENT_BASE_URL,
env: process.env.NODE_ENV
});
Constructor Options
{
apiKey: 'your_api_key', // Required
secretKey: 'your_secret_key', // Required
clientBaseUrl: 'https://...', // Required: Your server URL for callbacks
env: 'production' // Optional: 'production' or 'development'
}
API Reference
getRegistrationLink([redirectUri])
Generates a registration redirect URL.
redirectUri: Optional callback URI (default: /api/auth/callback)getLoginLink([redirectUri])
Generates a login redirect URL.
redirectUri: Optional callback URI (default: /api/auth/callback)getUserDataLink([filters, redirectUri])
Generates a user data retrieval URL.
filters: Optional object with userId, email, page, limit
redirectUri: Optional callback URI (default: /api/auth/user-data-callback)getClientDataLink([redirectUri])
Generates a client data retrieval URL.
redirectUri: Optional callback URI (default: /api/auth/client-data-callback)handleUserDataCallback(req, res)
Handles user data callback from AuthNest.
handleClientDataCallback(req, res)
Handles client data callback from AuthNest.
Express.js Example
const express = require('express');
const AuthNestClient = require('authnest-client');
const app = express();
const authnest = new AuthNestClient();
// Registration endpoint
app.get('/api/registrationLink', (req, res) => {
const redirectUrl = authnest.getRegistrationLink();
res.redirect(redirectUrl);
});
// Login endpoint
app.get('/api/loginLink', (req, res) => {
const redirectUrl = authnest.getLoginLink();
res.redirect(redirectUrl);
});
// Callback handlers
app.get('/api/auth/user-data-callback', (req, res) => {
authnest.handleUserDataCallback(req, res);
});
app.listen(3000, () => {
console.log('Server running on port 3000');
});
Error Handling
All methods throw descriptive errors for easy debugging: javascript
try { const redirectUrl = authnest.getRegistrationLink(); } catch (error) { console.error('Authentication error:', error.message); }
License
MIT License - see LICENSE file for details.
Support
Create an issue on GitHub
Email: [email protected]