Skip to content

Authentication

All admin API calls require an authenticated session. The SDK manages tokens automatically after login.

import { ESPRMBase } from "@espressif/rainmaker-admin-sdk";
const auth = ESPRMBase.getAuthInstance();
try {
const user = await auth.login("admin@example.com", "password123");
console.log("Logged in:", user);
} catch (error) {
console.error("Login failed:", error);
}

After successful login, the SDK stores session tokens and attaches them to all subsequent API requests automatically.

const user = await auth.getLoggedInUser();
if (user) {
console.log("Session active");
}
const newAccessToken = await ESPRMUser.extendSession(refreshToken);
import { ESPRMUser } from "@espressif/rainmaker-admin-sdk";
const token = await ESPRMUser.getAccessToken();
await auth.logout();
await auth.forgotPassword("admin@example.com");
await auth.confirmForgotPassword(
"admin@example.com",
"newPassword123",
"123456" // verification code
);
await auth.changePassword("oldPassword", "newPassword");

Once authenticated, instantiate any admin module and call its methods directly:

import { ESPRMAdminNode, ESPRMAdminUser } from "@espressif/rainmaker-admin-sdk";
const adminNode = new ESPRMAdminNode();
const nodes = await adminNode.getNodes();
const adminUser = new ESPRMAdminUser();
const users = await adminUser.getUsers();