readCharacteristicDataWithType(params: Object)

Requires:
HealthKit≥5.18.0@ray-js/ray≥1.6.17
Platforms:
iOS
import { health } from '@ray-js/ray';

const { readCharacteristicDataWithType } = health;

// Promise usage
try {
  const res = await readCharacteristicDataWithType({ ...params });
  console.log(res);
} catch (err) {
  console.log(err.errorMsg);
}

Description

Read Characteristic health data by type [iOS only]

Parameters

PropertyTypeRequiredDescription
permissionsstring[]NoPermission types (used by the API to request read/write permissions). See the enum list below for specific values. e.g., ["1","2"]
readPermissionsstring[]NoRead permission types (used by the API that checks whether the user has already authorized). See the enum list below for specific values. e.g., ["1","2"]
writePermissionsstring[]NoWrite permission types (used by the API that checks whether the user has already authorized). See the enum list below for specific values. e.g., ["1","2"]
writePermissionnumberNoWrite permission types (used by the API that checks whether write permission is granted). See the enum list below for specific values.
valuenumberNoValue to write (the specific measurement for Quantity or Category data types).
unitTypestringNoUnit to pass in, such as "mg/dL", "g", "cm", "count"; required when querying or writing Quantity-type data. For the units corresponding to each data type, refer to Apple’s official HKTypeIdentifiers.h file.
startTimenumberNoStart time, Unix timestamp in seconds
endTimenumberNoEnd time, Unix timestamp in seconds
typenumberNoData types to read/write (used by the data read/write APIs). See the enum list below for specific values.
complete() => voidNoCompletion callback (executed on both success and failure)
success(params: Object) => voidNoCallback on successful API call
fail(params: Object) => voidNoFailure callback
success callback parameters
PropertyTypeDescriptionHealthKit Since
The data read is an array; each item in the array is an object, defined as follows value: Integer - the value read; meanings vary, see Apple’s official documentation startDate: Double - the start timestamp of the entry endDate: Double - the end timestamp of the entryv5.18.4
fail callback parameters
PropertyTypeDescription
errorMsgstringError message
errorCodestring | numberError code
Error extension

Return Value

None

Error Code

Error CodeError Message
1AppleHealthParamsError

Examples

Read biological sex data

import { health } from '@ray-js/ray'

const endTime = Math.floor(Date.now() / 1000);
const startTime = endTime - 60 * 60;

health.readCharacteristicDataWithType({
  permissions: ["1"],
  readPermissions: ["1"],
  writePermissions: ["1"],
  writePermission: 1,
  value: 65.5,
  unitType: "count",
  startTime,
  endTime,
  type: 1,
  success: data => {
    console.log(data);
  },
  fail: error => {
    console.error(error);
  },
});