Browse API 1 documentation
GroveAPI 1preview

grove.secrets.application.set()

Store or replace an application Keychain value.

Mango 3.1+View Markdown

Store or replace an application Keychain value.

Signature

ts
grove.secrets.application.set(key: string, value: string): Promise<null>

Availability

All packaged runtimes with storage.secure, including settings pages. The storage capability for persistent browser data is separate.

Parameters

Parameter Required Description
key Yes Nonempty key after trimming surrounding whitespace, at most 200 characters, no control characters.
value Yes String, at most 16,384 characters. Empty string is allowed; objects and binary values must be explicitly encoded.

Return value

Resolves to null after the Keychain operation succeeds.

Behavior and errors

The namespace is isolated by extension identifier and shared across every network instance of that extension. It also matches the default namespace when grove.info.networkID is empty. An existing value for the same normalized key is replaced. JSON serialization is your responsibility. Missing grants, invalid keys/values, and Keychain failures reject with Error. Handle failures without logging credentials. Uninstall removes the extension’s secret namespaces; these methods do not access Mango’s own network passwords.

Example

js
try {
  await grove.secrets.application.set('service-session', JSON.stringify({ enabled: true }))
} catch {
  console.error('Could not save the service session.')
}

See Storage and settings.