tai-sho / oura-api-php

Ouraring API的PHP客户端库

v1.0.1 2024-06-09 06:59 UTC

This package is auto-updated.

Last update: 2024-09-09 07:44:41 UTC


README

Latest Stable Version Build Status Coverage Status PHP Version License Twitter Follow

Ouraring API的PHP客户端库。

要求

  • PHP 7.4或更高版本
  • Composer
  • Ouraring个人访问令牌(更多信息见下文)

安装

您可以通过Composer安装库。运行以下命令:

$ composer require tai-sho/oura-api-php

用法

个人访问令牌

此库需要个人访问令牌来验证与Oura API。您可以从Oura页面获取个人访问令牌:Oura API文档

初始化

首先,您需要使用API访问令牌初始化客户端。

require 'vendor/autoload.php';

use OuraApiPhp\Client;

$accessToken = 'your-access-token';
$client = new Client($accessToken);

示例

获取心率数据

$params = ['start_date' => '2024-01-01', 'end_date' => '2024-01-07'];
$response = $client->getHeartRate($params);
$data = json_decode($response->getBody()->getContents(), true);
print_r($data);

获取个人信息

$response = $client->getPersonalInfo();
$data = json_decode($response->getBody()->getContents(), true);
print_r($data);

获取锻炼数据

$params = ['start_date' => '2024-01-01', 'end_date' => '2024-01-07'];
$response = $client->getWorkout($params);
$data = json_decode($response->getBody()->getContents(), true);
print_r($data);

获取所有心率数据(处理分页)

$params = ['start_date' => '2024-01-01', 'end_date' => '2024-01-07'];
$responses = $client->getAllHeartRateData($params);
foreach ($responses as $response) {
    $data = json_decode($response->getBody()->getContents(), true);
    print_r($data);
}

支持的端点

客户端支持以下端点

  • getHeartRate(array $params = [])
  • getPersonalInfo(array $params = [])
  • getTag(array $params = [])
  • getEnhancedTag(array $params = [])
  • getWorkout(array $params = [])
  • getSession(array $params = [])
  • getDailyActivity(array $params = [])
  • getDailySleep(array $params = [])
  • getDailySpo2(array $params = [])
  • getDailyReadiness(array $params = [])
  • getSleep(array $params = [])
  • getSleepTime(array $params = [])
  • getRestModePeriod(array $params = [])
  • getRingConfiguration(array $params = [])
  • getDailyStress(array $params = [])
  • getTagById(string $documentId, array $params = [])
  • getEnhancedTagById(string $documentId, array $params = [])
  • getWorkoutById(string $documentId, array $params = [])
  • getSessionById(string $documentId, array $params = [])
  • getDailyActivityById(string $documentId, array $params = [])
  • getDailySleepById(string $documentId, array $params = [])
  • getDailySpo2ById(string $documentId, array $params = [])
  • getDailyReadinessById(string $documentId, array $params = [])
  • getSleepById(string $documentId, array $params = [])
  • getSleepTimeById(string $documentId, array $params = [])
  • getRestModePeriodById(string $documentId, array $params = [])
  • getRingConfigurationById(string $documentId, array $params = [])
  • getDailyStressById(string $documentId, array $params = [])

获取所有数据函数(处理分页)

  • getAllHeartRateData(array $params = [])
  • getAllWorkoutData(array $params = [])
  • getAllTagData(array $params = [])
  • getAllEnhancedTagData(array $params = [])
  • getAllSessionData(array $params = [])
  • getAllDailyActivityData(array $params = [])
  • getAllDailySleepData(array $params = [])
  • getAllDailySpo2Data(array $params = [])
  • getAllDailyReadinessData(array $params = [])
  • getAllSleepData(array $params = [])
  • getAllSleepTimeData(array $params = [])
  • getAllRestModePeriodData(array $params = [])
  • getAllRingConfigurationData(array $params = [])
  • getAllDailyStressData(array $params = [])

贡献

欢迎贡献!请提交一个拉取请求或打开一个问题来讨论更改。

许可

本项目采用MIT许可。有关详细信息,请参阅LICENSE文件。