Skip to main content
GET
/
v2
/
timeseries
/
{user_id}
/
respiratory_rate
/
grouped
curl --request GET \
     --url {{BASE_URL}}/v2/timeseries/{user_id}/respiratory_rate/grouped?start_date={{START_DATE}}&end_date={{END_DATE}} \
     --header 'Accept: application/json' \
     --header 'x-vital-api-key: <API_KEY>'
from vital.client import Vital
from vital.environment import VitalEnvironment

client = Vital(
  api_key="YOUR_API_KEY",
  environment=VitalEnvironment.SANDBOX
)

data = client.vitals.respiratory_rate_grouped(
  user_id="<user_id>", 
  start_date="2021-10-01", 
  end_date="2021-10-02"
)
import { VitalClient, VitalEnvironment } from '@tryvital/vital-node';
import { VitalsRespiratoryRateGroupedRequest } from '@tryvital/vital-node/api/resources/vitals';

const client = new VitalClient({
    apiKey: '<my_api_key>',
    environment: VitalEnvironment.Sandbox,
});

const request: VitalsRespiratoryRateGroupedRequest = {
    startDate: "2022-05-01",
    endDate: "2022-06-01"
}

const data = await client.vitals.respiratoryRateGrouped(
    '<my_user_id>',
    request
);
import com.vital.api.Vital;
import com.vital.api.core.Environment;
import com.vital.api.resources.vitals.requests.VitalsRespiratoryRateGroupedRequest;

Vital vital = Vital.builder()
        .apiKey("YOUR_API_KEY")
        .environment(Environment.SANDBOX)
        .build();

VitalsRespiratoryRateGroupedRequest request = VitalsRespiratoryRateGroupedRequest.builder()
        .startDate("2022-05-01")
        .endDate("2022-06-01")
        .build();

var data = vital.vitals().respiratoryRateGrouped("<user_id>", request);
import (
  "context"

  vital "github.com/tryVital/vital-go"
  vitalclient "github.com/tryVital/vital-go/client"
)

client := vitalclient.NewClient(
  vitalclient.WithApiKey("<YOUR_API_KEY>"),
  vitalclient.WithBaseURL(vital.Environments.Sandbox),
)

EndDate := "2022-06-01"
request := &vital.VitalsRespiratoryRateGroupedRequest{
  StartDate: "2022-05-01",
  EndDate:   &EndDate,
}

response, err := client.Vitals.RespiratoryRateGrouped(context.TODO(), "*", request)
if err != nil {
  return err
}
fmt.Printf("Received data %s\n", response)
{
  "groups": {
    "oura": [
      {
        "data": [
          {
            "timestamp": "2023-02-13T14:30:52+00:00",
            "unit": "bpm",
            "value": 15.5
          }
        ],
        "source": {
          "provider": "oura",
          "type": "ring"
        }
      }
    ]
  }
}

View Full Response Schema »

The Response section on the page still needs work. Click here to check out the complete schema.
curl --request GET \
     --url {{BASE_URL}}/v2/timeseries/{user_id}/respiratory_rate/grouped?start_date={{START_DATE}}&end_date={{END_DATE}} \
     --header 'Accept: application/json' \
     --header 'x-vital-api-key: <API_KEY>'
from vital.client import Vital
from vital.environment import VitalEnvironment

client = Vital(
  api_key="YOUR_API_KEY",
  environment=VitalEnvironment.SANDBOX
)

data = client.vitals.respiratory_rate_grouped(
  user_id="<user_id>", 
  start_date="2021-10-01", 
  end_date="2021-10-02"
)
import { VitalClient, VitalEnvironment } from '@tryvital/vital-node';
import { VitalsRespiratoryRateGroupedRequest } from '@tryvital/vital-node/api/resources/vitals';

const client = new VitalClient({
    apiKey: '<my_api_key>',
    environment: VitalEnvironment.Sandbox,
});

const request: VitalsRespiratoryRateGroupedRequest = {
    startDate: "2022-05-01",
    endDate: "2022-06-01"
}

const data = await client.vitals.respiratoryRateGrouped(
    '<my_user_id>',
    request
);
import com.vital.api.Vital;
import com.vital.api.core.Environment;
import com.vital.api.resources.vitals.requests.VitalsRespiratoryRateGroupedRequest;

Vital vital = Vital.builder()
        .apiKey("YOUR_API_KEY")
        .environment(Environment.SANDBOX)
        .build();

VitalsRespiratoryRateGroupedRequest request = VitalsRespiratoryRateGroupedRequest.builder()
        .startDate("2022-05-01")
        .endDate("2022-06-01")
        .build();

var data = vital.vitals().respiratoryRateGrouped("<user_id>", request);
import (
  "context"

  vital "github.com/tryVital/vital-go"
  vitalclient "github.com/tryVital/vital-go/client"
)

client := vitalclient.NewClient(
  vitalclient.WithApiKey("<YOUR_API_KEY>"),
  vitalclient.WithBaseURL(vital.Environments.Sandbox),
)

EndDate := "2022-06-01"
request := &vital.VitalsRespiratoryRateGroupedRequest{
  StartDate: "2022-05-01",
  EndDate:   &EndDate,
}

response, err := client.Vitals.RespiratoryRateGrouped(context.TODO(), "*", request)
if err != nil {
  return err
}
fmt.Printf("Received data %s\n", response)
{
  "groups": {
    "oura": [
      {
        "data": [
          {
            "timestamp": "2023-02-13T14:30:52+00:00",
            "unit": "bpm",
            "value": 15.5
          }
        ],
        "source": {
          "provider": "oura",
          "type": "ring"
        }
      }
    ]
  }
}

Authorizations

x-vital-api-key
string
header
required

Vital Team API Key

Path Parameters

user_id
string<uuid>
required

Query Parameters

cursor
string | null
deprecated

The cursor for fetching the next page, or null to fetch the first page.

next_cursor
string | null

The cursor for fetching the next page, or null to fetch the first page.

provider
string
default:""

Provider oura/strava etc

start_date
string
required

Date from in YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be set to 00:00:00

end_date
string | null

Date to YYYY-MM-DD or ISO formatted date time. If a date is provided without a time, the time will be set to 23:59:59

Response

Successful Response

groups
Groups · object
required

For each matching provider or lab, a list of grouped timeseries values.

next
string | null
deprecated

The cursor for fetching the next page, or null if there is no more data.

next_cursor
string | null

The cursor for fetching the next page, or null if there is no more data.