View as Markdown
Google Health icon

Google Health ACTION

Get Heart Rate

Get the user's heart rate aggregated into time windows, plus their daily resting heart rate. Each window reports average, minimum, and maximum BPM; pick the window size with granularity. The range is inclusive and capped at 14 days, because the windows are server-aggregated. Example: startDate="2026-08-24", granularity="900s" → 96 fifteen-minute windows as { startTime, endTime, avgBpm, minBpm, maxBpm }, plus restingHeartRate: [{ date, bpm }] and an overall summary. Use granularity="86400s" for one figure per day. Resting heart rate comes back from this tool too — there is no separate resting-HR tool. For active zone minutes, which are heart-rate derived but reported as activity, use Get Daily Activity Summary. See the documentation
  • Action
  • Read only
  • OAuth
  • SDK
  • MCP

IMPLEMENTATION

Call this tool

Connect a user's Google Health account once, then configure and run Get Heart Rate from your backend or agent.

import { PipedreamClient } from "@pipedream/sdk"

const pd = new PipedreamClient({
  projectId: process.env.PIPEDREAM_PROJECT_ID!,
  clientId: process.env.PIPEDREAM_CLIENT_ID!,
  clientSecret: process.env.PIPEDREAM_CLIENT_SECRET!,
  projectEnvironment: "production",
})

const result = await pd.actions.run({
  id: "google_health-get-heart-rate",
  externalUserId: "{external_user_id}", // any stable ID for this user in your system
  configuredProps: {
    google_health: { authProvisionId: "apn_xxxxxxx" },
    startDate: "Start Date",
    endDate: "End Date",
  },
})

console.log(result)

SCHEMA

Inputs

Pipedream supplies the connected account. Your application provides the operation-specific values below. Dynamic inputs are resolved against that user's account.

Get Heart Rate inputs
Property Type Description
startDate Start Date string
Start date in YYYY-MM-DD format (e.g. 2026-08-24), in the user's own timezone. Defaults to today in UTC, which can be a day off from the user's local date late at night — pass an explicit date when the exact day matters.
Optional
endDate End Date string
End date in YYYY-MM-DD format, inclusive. Defaults to Start Date, i.e. a single day. For a whole week, set Start Date to the Monday and End Date to the Sunday.
Optional
granularity Granularity string
Size of each aggregation window. Defaults to 1 hour, which gives 24 windows for a single day. Use 86400s for one figure per day, or 300s/60s for fine intraday detail — but note that finer windows over a longer range produce far more output, and this action rejects any combination exceeding 1000 windows rather than returning a truncated series. A day at 60s is 1440 windows, so narrow the date range when asking for minute-level detail.
Optional
includeRestingHeartRate Include Resting Heart Rate boolean
Include the daily resting heart rate alongside the windows. Defaults to true.
Optional

REFERENCE

Tool details

Behavior hints are published with the component in the Pipedream registry and surface as MCP tool annotations, so an agent can reason about a tool before it calls it.

Registry key
google_health-get-heart-rate
Version
0.0.2
App
Google Health
Authentication
OAuth
Read-only
Yes
Destructive
No
Open world
Yes