Skip to content



constructor(apiURL: String = "", appId: String, databasePath: String? = null, databaseEncryptionKey: ByteArray? = null, instanceName: String = "SealdSDK", logLevel: Byte = 0, logNoColor: Boolean = true, encryptionSessionCacheTTL: Duration? = Duration.ZERO, keySize: Int = 4096)


apiURLThe Seald server for this instance to use. This value is given on your Seald dashboard.
appIdThe ID given by the Seald server to your app. This value is given on your Seald dashboard.
databasePathThe path where to store the local Seald database. If no path is passed, uses an in-memory only database.
databaseEncryptionKeyThe encryption key with which to encrypt the local Seald database. Required when passing databasePath. This must be the Base64 string encoding of a cryptographically random buffer of 64 bytes.
instanceNameAn arbitrary name to give to this Seald instance. Can be useful for debugging when multiple instances are running in parallel, as it is added to logs.
logLevelThe minimum level of logs you want. All logs of this level or above will be displayed. -1: Trace; 0: Debug; 1: Info; 2: Warn; 3: Error; 4: Fatal; 5: Panic; 6: NoLevel; 7: Disabled.
logNoColorShould be set to false if you want to enable colors in the log output. Defaults to true.
encryptionSessionCacheTTLThe duration of cache lifetime. null to cache forever. Default to 0 (no cache).
keySizeThe Asymmetric key size for newly generated keys. Defaults to 4096. Warning: for security, it is extremely not recommended to lower this value. For advanced use only.