Support for the legacy Fitbit Web API ends on September 30, 2026
Important: Support for the legacy Fitbit Web API ends on September 30, 2026. After this date the API will continue to operate, but Google will no longer fix bugs or provide API support. On October 30, 2026, the Fitbit Web API will be turned off and will no longer function or sync data to or from Fitbit users. To continue accessing data for your users after this date, migrate to the Google Health API.
Crypto API
chevron down
 

Crypto API

Variable: subtle

Type: SubtleCrypto

New in SDK 4.0

Interface: SubtleCrypto

New in SDK 4.0

A set of Cryptographic methods.

Methods

decrypt()

decrypt(algorithm: "AES-GCM", key: CryptoKey, data: ArrayBuffer | ArrayBufferView)

Returns: Promise<ArrayBuffer>

Decrypts data using the given algorithm and key.

Parameter: data The data to decrypt.

digest()

digest(algorithm: "SHA-256", data: ArrayBuffer | ArrayBufferView)

Returns: Promise<ArrayBuffer>

Digests data using the given algorithm.

Parameter: data The data to digest.

encrypt()

encrypt(algorithm: "AES-GCM", key: CryptoKey, data: ArrayBuffer | ArrayBufferView)

Returns: Promise<ArrayBuffer>

Encrypts data using the given algorithm and key.

Parameter: data The data to decrypt.

exportKey()

exportKey(format: "raw", key: CryptoKey)

Returns: Promise<ArrayBuffer or ArrayBufferView>

Export a key and returns a key in a buffer

Parameter: key The CryptoKey to export

generateKey()

generateKey(algorithm: string | KeyAlgorithm, extractable: boolean, keyUsages: string[])

Returns: Promise<CryptoKey or CryptoKeyPair>

Generate a key and returns a CryptoKey object

Parameter: keyUsages An Array indicating what can be done with the key.

importKey()

importKey(format: "raw", keyData: ArrayBuffer | ArrayBufferView, algorithm: string | KeyAlgorithm, extractable: boolean, keyUsages: string[])

Returns: Promise<CryptoKey>

Import a key and returns a CryptoKey object

Parameter: keyUsages An Array indicating what can be done with the key.

sign()

sign(algorithm: "HMAC", key: CryptoKey, data: ArrayBuffer | ArrayBufferView)

Returns: Promise<ArrayBuffer>

Sign data using the given algorithm and key.

Parameter: data The data to digest.

verify()

verify(algorithm: "HMAC", key: CryptoKey, signature: ArrayBuffer | ArrayBufferView, data: ArrayBuffer | ArrayBufferView)

Returns: Promise<ArrayBuffer>

Verify the signature of data using the given signature, key and algorithm.

Parameter: data The data to digest.

Class: CryptoKeyPair

New in SDK 4.0

Class to handle Cryptographic keypair.

Properties

privateKey

CryptoKey

The private component of the keypair

publicKey

CryptoKey

The public component of the keypair

Class: CryptoKey

New in SDK 4.0

Class to handle Cryptographic key.

Properties

readonly algorithm

KeyAlgorithm

The algorithm that can be used with this key

readonly extractable

boolean

Indicates if the key can be extracted

readonly type

"secret" or "public" or "private"

The type of the key

readonly usages

CryptoKeyUsage[]

Possible Usage for this key

Interface: KeyAlgorithm

New in SDK 4.0

Algorithms supported by a key.

Properties

name

string

CryptoKeyUsage

String: "encrypt" | "decrypt" | "sign" | "verify" | "deriveKey" | "deriveBits" | "wrapKey" | "unwrapKey"

New in SDK 4.0

List of operations a key can be used for.

getRandomValues()

Fill an array with cryptographically strong random values.

import { getRandomValues } from "crypto";
// get 8 random 16-bit unsigned integers
let myRandomValues = new Uint16Array(8);
getRandomValues(myRandomValues);

crypto.getRandomValues(values: TypedArray)

Parameters

values: TypedArray

Array of values that will be filled with random numbers.

TypedArray

String: Int8Array | Uint8Array | Int16Array | Uint16Array | Int32Array | Uint32Array

The types of supported arrays.