Skip to content

Secure Storage ​

SecureStorage provides encrypted local secure storage for sensitive data such as authentication tokens and keys. Data is encrypted before being stored on the device. Accessed via aiaxchat.WebApp.SecureStorage. Bot API 8.0+

Limits ​

ItemLimit
Maximum number of entries10
Maximum key length128 characters
Maximum value length2048 characters
Key charactersA-Z, a-z, 0-9, _, -

Methods ​

setItem ​

javascript
aiaxchat.WebApp.SecureStorage.setItem(key, value, callback)

Securely stores a key-value pair.

ParameterTypeRequiredDescription
keyStringYesKey name, 1-128 characters
valueStringYesValue, 0-2048 characters
callbackFunctionNoCallback with (error, success) parameters
javascript
aiaxchat.WebApp.SecureStorage.setItem('auth_token', 'eyJhbGciOi...', (error, success) => {
  if (error) {
    console.error('Secure storage failed:', error);
  } else {
    console.log('Token stored securely');
  }
});

getItem ​

javascript
aiaxchat.WebApp.SecureStorage.getItem(key, callback)

Reads the value of a specified key from secure storage.

ParameterTypeRequiredDescription
keyStringYesKey name
callbackFunctionYesCallback with (error, value) parameters
javascript
aiaxchat.WebApp.SecureStorage.getItem('auth_token', (error, value) => {
  if (error) {
    console.error('Read failed:', error);
  } else if (value) {
    // Use token
    apiClient.setToken(value);
  }
});

removeItem ​

javascript
aiaxchat.WebApp.SecureStorage.removeItem(key, callback)

Removes a specified key from secure storage.

ParameterTypeRequiredDescription
keyStringYesKey name
callbackFunctionNoCallback with (error, success) parameters

clear ​

javascript
aiaxchat.WebApp.SecureStorage.clear(callback)

Clears all data in secure storage.

ParameterTypeRequiredDescription
callbackFunctionNoCallback with (error, success) parameters

Storage Comparison ​

FeatureCloudStorageDeviceStorageSecureStorage
LocationCloudLocalLocal (encrypted)
Data syncCross-deviceLocal onlyLocal only
Capacity1024 keys × 4KB5 MB10 keys × 2KB
SecurityStandardStandardEncrypted
Use casesUser preferencesCache dataSensitive data
Min version—Bot API 8.0+Bot API 8.0+

Usage Example ​

javascript
const secureStorage = aiaxchat.WebApp.SecureStorage;

// Securely store login credentials
function saveCredentials(token, refreshToken) {
  secureStorage.setItem('access_token', token, (err) => {
    if (!err) {
      secureStorage.setItem('refresh_token', refreshToken);
    }
  });
}

// Load login credentials
function loadCredentials(callback) {
  secureStorage.getItem('access_token', (err, token) => {
    if (err || !token) {
      callback(null);
      return;
    }
    secureStorage.getItem('refresh_token', (err, refreshToken) => {
      callback({ token, refreshToken });
    });
  });
}

// Clear credentials on logout
function logout() {
  secureStorage.clear((err) => {
    if (!err) {
      console.log('Credentials cleared');
      redirectToLogin();
    }
  });
}