Configuration
Initialize the SDK before using any module.
Basic Setup
Section titled “Basic Setup”import { ESPRMBase } from "@espressif/rainmaker-admin-sdk";
ESPRMBase.configure({ baseUrl: "https://api.rainmaker.espressif.com", version: "v1",});Configuration Options
Section titled “Configuration Options”| Option | Type | Required | Description |
|---|---|---|---|
baseUrl | string | Yes | ESP RainMaker API base URL |
version | string | No | API version (defaults to v1) |
customStorageAdapter | ESPRMStorageAdapterInterface | No | Custom storage adapter for token persistence |
timeoutMs | number | No | Per-request timeout in milliseconds. Default 30000; 0 disables |
Custom Storage Adapter
Section titled “Custom Storage Adapter”By default, the SDK uses localStorage for token persistence. For server-side or non-browser environments, provide a custom storage adapter:
import { ESPRMBase, ESPRMStorageAdapterInterface } from "@espressif/rainmaker-admin-sdk";
const myStorage: ESPRMStorageAdapterInterface = { setItem(key: string, value: string): void { // your implementation }, getItem(key: string): Promise<string | null> { // your implementation }, removeItem(key: string): void { // your implementation }, clear(): void { // your implementation },};
ESPRMBase.configure({ baseUrl: "https://api.rainmaker.espressif.com", customStorageAdapter: myStorage,});Sub-path Imports
Section titled “Sub-path Imports”For smaller bundles, import modules directly via sub-paths:
import { ESPRMBase } from "@espressif/rainmaker-admin-sdk/ESPRMBase";import { ESPRMAdminNode } from "@espressif/rainmaker-admin-sdk/ESPRMAdminNode";import { ESPRMAdminOTAImage } from "@espressif/rainmaker-admin-sdk/ESPRMAdminOTAImage";