Google Health API มีประเภทข้อมูลที่ติดตามรูปแบบการนอนหลับของผู้ใช้ รวมถึงระยะเวลา คุณภาพ และเมตริกทางสรีรวิทยาขณะพักผ่อน เมตริกเหล่านี้ช่วยให้แอปพลิเคชันให้ข้อมูลเชิงลึกเกี่ยวกับการฟื้นตัว สุขอนามัยในการนอนหลับ และ แนวโน้มด้านสุขภาพในระยะยาว
ระบบจะบันทึกเมตริกทางสรีรวิทยา เช่น ความผันแปรของอัตราการเต้นของหัวใจ (HRV), ความอิ่มตัวของออกซิเจน (SpO2) และอัตราการหายใจ ในช่วงนอนหลับโดยเฉพาะ เนื่องจากร่างกายอยู่ในสภาวะพักผ่อนที่มั่นคง ซึ่งช่วยให้ API สามารถ บันทึกข้อมูลพื้นฐานเกี่ยวกับสุขภาพด้านระบบประสาทอัตโนมัติและระบบทางเดินหายใจของผู้ใช้ได้โดยไม่มี การรบกวนจากความเครียดในเวลากลางวัน กิจกรรมทางกาย หรือสภาพแวดล้อมที่แตกต่างกัน
ทําความเข้าใจความแตกต่างระหว่างประเภทข้อมูลเหล่านี้เพื่อพิจารณาว่าเมตริกใด เหมาะกับแอปพลิเคชันของคุณ
ประเภทข้อมูลที่รองรับ
API รองรับประเภทข้อมูลต่อไปนี้สำหรับการวัดการนอนหลับ
| ประเภทข้อมูล | การดำเนินการ ที่ใช้ได้ |
ขอบเขต |
|---|---|---|
|
ความผันแปรของอัตราการเต้นของหัวใจรายวัน
dataType:
daily-heart-rate-variabilityfilter parameter: daily_heart_rate_variability
ประเภทบันทึก: รายวัน
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
ค่าความอิ่มตัวของออกซิเจนในเลือดรายวัน
dataType:
daily-oxygen-saturationfilter parameter: daily_oxygen_saturation
ประเภทบันทึก: รายวัน
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
อัตราการหายใจรายวัน
dataType:
daily-respiratory-ratefilter parameter: daily_respiratory_rate
ประเภทบันทึก: รายวัน
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
การหาค่าอุณหภูมิขณะนอนหลับในแต่ละวัน
dataType:
daily-sleep-temperature-derivationsfilter parameter: daily_sleep_temperature_derivations
ประเภทบันทึก: รายวัน
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
ความผันแปรของอัตราการเต้นของหัวใจ
dataType:
heart-rate-variabilityfilter parameter: heart_rate_variability
ประเภทระเบียน: ตัวอย่าง
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
ความอิ่มตัวของออกซิเจน
dataType:
oxygen-saturationfilter parameter: oxygen_saturation
ประเภทระเบียน: ตัวอย่าง
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
สรุปการนอนหลับเกี่ยวกับอัตราการหายใจ
dataType:
respiratory-rate-sleep-summaryfilter parameter: respiratory_rate_sleep_summary
ประเภทระเบียน: ตัวอย่าง
อุปกรณ์ที่เข้ากันได้
|
รายการ, ปรับยอด | .health_metrics_and_measurements.readonly.health_metrics_and_measurements.writeonly |
|
การนอนหลับ
dataType:
sleepพารามิเตอร์ตัวกรอง: sleep
ประเภทระเบียน: เซสชัน
อุปกรณ์ที่เข้ากันได้
|
list, get, reconcile, create, update, batchDelete | .sleep.readonly.sleep.writeonly |
เซสชันการนอนหลับและการตื่นสั้นๆ
เซสชันการนอนหลับ (Sleep) แสดงถึงเหตุการณ์การนอนหลับที่แยกกัน เช่น การนอนหลับในแต่ละคืนหรือการงีบหลับในตอนกลางวัน ซึ่งประกอบด้วยการแจกแจงรายละเอียดของ
ระยะการนอนหลับที่ไม่ทับซ้อนกันควบคู่ไปกับช่วงเวลาสั้นๆ ที่เปลี่ยนจากหลับเป็นตื่นที่เรียกว่า
การตื่นสั้นๆ
- เซสชันการนอนหลับ (
Sleep): แสดงถึงเหตุการณ์การนอนหลับที่แยกกัน (ช่วงระยะLIGHT,DEEP,REM,AWAKE) ซึ่งแบ่ง ไทม์ไลน์ต่อเนื่องของการพักผ่อนหลัก - การตื่นสั้นๆ (
shortAwakenings): การเปลี่ยนผ่านสู่การตื่นหรือ การตื่นที่เกิดขึ้นขณะพักผ่อน การตื่นสั้นๆ เป็นกลุ่มที่แยกต่างหากซึ่งอาจทับซ้อนกับระยะการนอนหลับโดยรอบ ซึ่งต่างจากAWAKEช่วงระยะมาตรฐาน (ซึ่งแบ่งความคืบหน้าของระยะการนอนหลับที่ต่อเนื่องกันซึ่งไม่ทับซ้อนกัน) โดยจะให้ข้อมูลเชิงลึกแบบละเอียดเกี่ยวกับความกระสับกระส่ายและการตื่นตัวเล็กๆ น้อยๆ โดยไม่รบกวนโครงสร้างระยะการนอนหลับหลัก
ตัวอย่าง
{
"name": "sleeps/12345",
"startTime": "2026-04-20T22:30:00Z",
"endTime": "2026-04-21T06:30:00Z",
"sleepType": "STAGES",
"sleepStages": [
{
"startTime": "2026-04-20T22:30:00Z",
"endTime": "2026-04-20T23:45:00Z",
"type": "LIGHT"
},
{
"startTime": "2026-04-20T23:45:00Z",
"endTime": "2026-04-21T01:15:00Z",
"type": "DEEP"
}
],
"shortAwakenings": [
{
"startTime": "2026-04-20T23:10:00Z",
"endTime": "2026-04-20T23:11:30Z",
"type": "AWAKE"
}
]
}
สร้างเซสชันการนอนหลับ
หากต้องการสร้างรายการเซสชันการนอนหลับ ให้ส่งคำขอ POST ไปยังปลายทาง sleep data
points การตอบกลับจะมีฟิลด์ name ที่มี
data-point-id ซึ่งใช้ในคำขอ
อัปเดต (Patch) หรือ
ลบได้
ส่งคำขอ
POST https://health.googleapis.com/v4/users/me/dataTypes/sleep/dataPoints
Authorization: Bearer access-token
Content-Type: application/json
{
"sleep": {
"interval": {
"startTime": "2026-06-07T22:00:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T06:00:00Z",
"endUtcOffset": "-14400s"
},
"type": "STAGES",
"stages": [
{
"startTime": "2026-06-07T22:00:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-07T22:30:00Z",
"endUtcOffset": "-14400s",
"type": "LIGHT"
},
{
"startTime": "2026-06-07T22:30:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-07T23:45:00Z",
"endUtcOffset": "-14400s",
"type": "DEEP"
},
{
"startTime": "2026-06-07T23:45:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T02:15:00Z",
"endUtcOffset": "-14400s",
"type": "LIGHT"
},
{
"startTime": "2026-06-08T02:15:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T02:45:00Z",
"endUtcOffset": "-14400s",
"type": "REM"
},
{
"startTime": "2026-06-08T02:45:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T05:15:00Z",
"endUtcOffset": "-14400s",
"type": "LIGHT"
},
{
"startTime": "2026-06-08T05:15:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T06:00:00Z",
"endUtcOffset": "-14400s",
"type": "REM"
}
]
}
}คำตอบ
{
"done": true,
"response": {
"@type": "type.googleapis.com/google.devicesandservices.health.v4.DataPoint",
"name": "users/user-id/dataTypes/sleep/dataPoints/data-point-id",
"sleep": {
"interval": {
"startTime": "2026-06-07T22:00:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T06:00:00Z",
"endUtcOffset": "-14400s"
},
"type": "STAGES",
"stages": [
{
"startTime": "2026-06-07T22:00:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-07T22:30:00Z",
"endUtcOffset": "-14400s",
"type": "LIGHT"
},
{
"startTime": "2026-06-07T22:30:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-07T23:45:00Z",
"endUtcOffset": "-14400s",
"type": "DEEP"
},
{
"startTime": "2026-06-07T23:45:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T02:15:00Z",
"endUtcOffset": "-14400s",
"type": "LIGHT"
},
{
"startTime": "2026-06-08T02:15:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T02:45:00Z",
"endUtcOffset": "-14400s",
"type": "REM"
},
{
"startTime": "2026-06-08T02:45:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T05:15:00Z",
"endUtcOffset": "-14400s",
"type": "LIGHT"
},
{
"startTime": "2026-06-08T05:15:00Z",
"startUtcOffset": "-14400s",
"endTime": "2026-06-08T06:00:00Z",
"endUtcOffset": "-14400s",
"type": "REM"
}
]
}
}
}การหาค่าอุณหภูมิขณะนอนหลับรายวัน
การหาค่าอุณหภูมิขณะนอนหลับรายวันจะวัดการเปลี่ยนแปลงของอุณหภูมิผิวหนังของผู้ใช้ขณะนอนหลับเมื่อเทียบกับค่าพื้นฐาน โดยปกติแล้ว ระบบจะรายงานข้อมูลนี้วันละครั้งหลังจากเซสชันการนอนหลับที่สำคัญ
อัตราการหายใจ
อัตราการหายใจจะวัดอัตราการหายใจต่อนาทีของผู้ใช้ ในระหว่างการนอนหลับ
เป็นเมตริกสำคัญสำหรับการตรวจสอบคุณภาพการนอนหลับและการรบกวนที่อาจเกิดขึ้น API
รองรับอัตราการหายใจตัวอย่าง (respiratory-rate) สรุปรายวัน
(daily-respiratory-rate) และสรุปการนอนหลับระดับเซสชัน
(respiratory-rate-sleep-summary)
ความผันแปรของอัตราการเต้นของหัวใจ (HRV)
HRV วัดความผันแปรของระยะเวลาระหว่างการเต้นของหัวใจแต่ละครั้ง ค่าความผันแปรของอัตราการเต้นของหัวใจเป็นตัวบ่งชี้สำคัญของสถานะระบบประสาทอัตโนมัติ โดยทั่วไปแล้ว ค่าความผันแปรของอัตราการเต้นของหัวใจที่สูงในระหว่างการนอนหลับหมายถึงการฟื้นตัวและความพร้อมที่ดีขึ้น ในขณะที่ค่าความผันแปรของอัตราการเต้นของหัวใจที่ต่ำอาจบ่งบอกถึงความเครียดหรือการออกกำลังกายหนักเกินไป API รองรับ HRV ตัวอย่าง (heart-rate-variability)
และข้อมูลสรุปรายวัน (daily-heart-rate-variability)
ความอิ่มตัวของออกซิเจน (SpO2)
SpO2 แสดงถึงเปอร์เซ็นต์ของฮีโมโกลบินที่อิ่มตัวด้วยออกซิเจนเทียบกับ
ฮีโมโกลบินทั้งหมดในเลือด การตรวจสอบ SpO2 ขณะนอนหลับเป็นสิ่งสำคัญในการ
ตรวจหาความผิดปกติเกี่ยวกับการหายใจที่อาจเกิดขึ้น และช่วยให้มั่นใจว่าผู้ใช้จะรักษาระดับออกซิเจน
ที่เพียงพอได้ตลอดทั้งคืน API รองรับตัวอย่าง SpO2
(oxygen-saturation) และข้อมูลสรุปรายวัน (daily-oxygen-saturation)
มุมมองแบบองค์รวมของสุขภาพและการฟื้นตัวจากการนอนหลับ
แม้ว่าเมตริกแต่ละรายการจะให้ข้อมูลเชิงลึกที่เฉพาะเจาะจง แต่เมตริกเหล่านี้ก็มีความสัมพันธ์กันอย่างลึกซึ้งและ เมื่อรวมกันแล้วจะให้มุมมองแบบองค์รวมเกี่ยวกับการฟื้นตัวของผู้ใช้ ระยะการนอนหลับ (หลับตื้น หลับลึก REM) เป็นรากฐานโครงสร้างของการพักผ่อน ในขณะที่เครื่องหมายทางสรีรวิทยา เช่น HRV และ SpO2 จะบ่งบอกว่าร่างกายตอบสนองต่อการพักผ่อนนั้นอย่างไร ตัวอย่างเช่น เซสชันการนอนหลับคุณภาพสูงที่มีการนอนหลับลึกที่เหมาะสมมักจะ สัมพันธ์กับ HRV ที่สูงขึ้น ซึ่งบ่งบอกถึงการฟื้นตัวที่มีประสิทธิภาพของระบบประสาทอัตโนมัติ
การรวมข้อมูลเหล่านี้เข้ากับการหาค่าอัตราการหายใจและอุณหภูมิขณะนอนหลับจะช่วยให้แอปพลิเคชันระบุการรบกวนที่อาจเกิดขึ้นได้ การเพิ่มขึ้นอย่างฉับพลันของอัตราการหายใจ หรือความคลาดเคลื่อนของอุณหภูมิขณะนอนหลับอาจช่วยให้ทราบว่าเหตุใดผู้ใช้จึงอาจ ใช้เวลาในระยะฟื้นฟูน้อยลง การวิเคราะห์ข้อมูลประเภทเหล่านี้ควบคู่กันจะช่วยให้นักพัฒนาแอปประเมินสุขอนามัยในการนอนหลับและแนวโน้มด้านสุขภาพในระยะยาวได้อย่างครอบคลุม
หลักเกณฑ์
เมื่อผสานรวมเมตริกการนอนหลับในแอป ให้ใช้หลักเกณฑ์ต่อไปนี้
- รายละเอียดเซสชัน: หากต้องการแสดงระยะการนอนหลับของผู้ใช้ (หลับตื้น หลับลึก REM ตื่น)
และการตื่นสั้นๆ ให้ค้นหาประเภทข้อมูล
sleep - การตรวจสอบสรีรวิทยา: หากต้องการตรวจสอบสุขภาพขั้นสูง ให้รวมข้อมูลเซสชันการนอนหลับกับเมตริกทางสรีรวิทยาและการฟื้นตัว เช่น
respiratory-rate-sleep-summary,daily-sleep-temperature-derivations,daily-heart-rate-variabilityและdaily-oxygen-saturation - การเทียบข้อมูล: ใช้การดำเนินการ
reconcileเพื่อให้แน่ใจว่าระบบจะผสานบันทึกการนอนหลับที่ทับซ้อนกันจากอุปกรณ์ต่างๆ (เช่น อุปกรณ์ที่สวมใส่ได้และเซ็นเซอร์ที่นอน) เข้ากับบันทึกการนอนหลับ "หลัก" รายการเดียว
คำนวณเวลารวมในช่วงหลับลึก
วิธีคำนวณระยะเวลารวมที่ผู้ใช้ใช้ในระยะหลับลึกที่ช่วยฟื้นฟูร่างกายในคืนหนึ่งๆ
- ค้นหา
sleepประเภทข้อมูลสำหรับช่วงเวลาที่ระบุ - วนซ้ำในรายการระยะ และระบุช่วงเวลาที่
stageTypeเป็นDEEP - คำนวณระยะเวลา (เวลาสิ้นสุด - เวลาเริ่มต้น) สำหรับช่วงการหลับลึกแต่ละช่วง แล้วนำมารวมกัน
ผลรวมที่ได้คือระยะเวลาจริงทั้งหมดของการนอนหลับลึกสำหรับเซสชันนั้น