curl --request GET \
--url {{BASE_URL}}/v2/summary/sleep_cycle/{user_id}?start_date={{START_DATE}}&end_date={{END_DATE}} \
--header 'Accept: application/json' \
--header 'x-vital-api-key: <API_KEY>'
from junction import Junction
from junction.environment import JunctionEnvironment
client = Junction(
api_key="YOUR_API_KEY",
environment=JunctionEnvironment.SANDBOX,
)
data = client.sleep_cycle.get(
"<user_id>",
start_date="2021-01-01",
end_date="2021-01-02",
)
import { JunctionClient, JunctionEnvironment } from "@junction-api/sdk";
const client = new JunctionClient({
apiKey: "YOUR_API_KEY",
environment: JunctionEnvironment.Sandbox,
});
const data = await client.sleepCycle.get({
userId: "<user_id>",
startDate: "2021-01-01",
endDate: "2021-01-02",
});
import com.junction.api.Junction;
import com.junction.api.core.Environment;
import com.junction.api.resources.sleepcycle.requests.GetSleepCycleRequest;
Junction client = Junction.builder()
.apiKey("YOUR_API_KEY")
.environment(Environment.SANDBOX)
.build();
var data = client.sleepCycle().get(
"<user_id>",
GetSleepCycleRequest.builder()
.startDate("2021-01-01")
.endDate("2021-01-02")
.build()
);
import (
"context"
junction "github.com/junction-api/junction-go"
"github.com/junction-api/junction-go/client"
"github.com/junction-api/junction-go/option"
)
c := client.NewClient(
option.WithApiKey("YOUR_API_KEY"),
option.WithBaseURL(junction.Environments.Sandbox),
)
endDate := "2021-01-02"
response, err := c.SleepCycle.Get(context.TODO(), &junction.GetSleepCycleRequest{
UserId: "<user_id>",
StartDate: "2021-01-01",
EndDate: &endDate,
})
if err != nil {
return err
}
fmt.Printf("Received data %s\n", response)
{
"sleep_cycle": [
{
"created_at": "2023-02-27T20:31:24+00:00",
"id": "f1b3b3b3-1b3b-1b3b-1b3b-1b3b3b3b3b3b",
"session_end": "2022-01-01T08:00:00",
"session_start": "2022-01-01T00:00:00",
"sleep_id": "f1b3b3b3-1b3b-1b3b-1b3b-1b3b3b3b3b3b",
"source": {
"device_id": "550e8400-e29b-41d4-a716-446655440000",
"provider": "oura",
"type": "ring"
},
"source_provider": "oura",
"source_type": "ring",
"stage_end_offset_second": [
300,
600,
900,
1200
],
"stage_start_offset_second": [
0,
300,
600,
900
],
"stage_type": [
1,
2,
3,
1
],
"time_zone": "America/Los_Angeles",
"updated_at": "2023-02-28T01:22:38+00:00",
"user_id": "f1b3b3b3-1b3b-1b3b-1b3b-1b3b3b3b3b3b"
}
]
}{
"detail": "<unknown>"
}Sleep Cycle
Summary
Retrieve sleep cycle analysis data for a specific user, including sleep stage breakdowns and cycle metrics.
GET
/
v2
/
summary
/
sleep_cycle
/
{user_id}
curl --request GET \
--url {{BASE_URL}}/v2/summary/sleep_cycle/{user_id}?start_date={{START_DATE}}&end_date={{END_DATE}} \
--header 'Accept: application/json' \
--header 'x-vital-api-key: <API_KEY>'
from junction import Junction
from junction.environment import JunctionEnvironment
client = Junction(
api_key="YOUR_API_KEY",
environment=JunctionEnvironment.SANDBOX,
)
data = client.sleep_cycle.get(
"<user_id>",
start_date="2021-01-01",
end_date="2021-01-02",
)
import { JunctionClient, JunctionEnvironment } from "@junction-api/sdk";
const client = new JunctionClient({
apiKey: "YOUR_API_KEY",
environment: JunctionEnvironment.Sandbox,
});
const data = await client.sleepCycle.get({
userId: "<user_id>",
startDate: "2021-01-01",
endDate: "2021-01-02",
});
import com.junction.api.Junction;
import com.junction.api.core.Environment;
import com.junction.api.resources.sleepcycle.requests.GetSleepCycleRequest;
Junction client = Junction.builder()
.apiKey("YOUR_API_KEY")
.environment(Environment.SANDBOX)
.build();
var data = client.sleepCycle().get(
"<user_id>",
GetSleepCycleRequest.builder()
.startDate("2021-01-01")
.endDate("2021-01-02")
.build()
);
import (
"context"
junction "github.com/junction-api/junction-go"
"github.com/junction-api/junction-go/client"
"github.com/junction-api/junction-go/option"
)
c := client.NewClient(
option.WithApiKey("YOUR_API_KEY"),
option.WithBaseURL(junction.Environments.Sandbox),
)
endDate := "2021-01-02"
response, err := c.SleepCycle.Get(context.TODO(), &junction.GetSleepCycleRequest{
UserId: "<user_id>",
StartDate: "2021-01-01",
EndDate: &endDate,
})
if err != nil {
return err
}
fmt.Printf("Received data %s\n", response)
{
"sleep_cycle": [
{
"created_at": "2023-02-27T20:31:24+00:00",
"id": "f1b3b3b3-1b3b-1b3b-1b3b-1b3b3b3b3b3b",
"session_end": "2022-01-01T08:00:00",
"session_start": "2022-01-01T00:00:00",
"sleep_id": "f1b3b3b3-1b3b-1b3b-1b3b-1b3b3b3b3b3b",
"source": {
"device_id": "550e8400-e29b-41d4-a716-446655440000",
"provider": "oura",
"type": "ring"
},
"source_provider": "oura",
"source_type": "ring",
"stage_end_offset_second": [
300,
600,
900,
1200
],
"stage_start_offset_second": [
0,
300,
600,
900
],
"stage_type": [
1,
2,
3,
1
],
"time_zone": "America/Los_Angeles",
"updated_at": "2023-02-28T01:22:38+00:00",
"user_id": "f1b3b3b3-1b3b-1b3b-1b3b-1b3b3b3b3b3b"
}
]
}{
"detail": "<unknown>"
}curl --request GET \
--url {{BASE_URL}}/v2/summary/sleep_cycle/{user_id}?start_date={{START_DATE}}&end_date={{END_DATE}} \
--header 'Accept: application/json' \
--header 'x-vital-api-key: <API_KEY>'
from junction import Junction
from junction.environment import JunctionEnvironment
client = Junction(
api_key="YOUR_API_KEY",
environment=JunctionEnvironment.SANDBOX,
)
data = client.sleep_cycle.get(
"<user_id>",
start_date="2021-01-01",
end_date="2021-01-02",
)
import { JunctionClient, JunctionEnvironment } from "@junction-api/sdk";
const client = new JunctionClient({
apiKey: "YOUR_API_KEY",
environment: JunctionEnvironment.Sandbox,
});
const data = await client.sleepCycle.get({
userId: "<user_id>",
startDate: "2021-01-01",
endDate: "2021-01-02",
});
import com.junction.api.Junction;
import com.junction.api.core.Environment;
import com.junction.api.resources.sleepcycle.requests.GetSleepCycleRequest;
Junction client = Junction.builder()
.apiKey("YOUR_API_KEY")
.environment(Environment.SANDBOX)
.build();
var data = client.sleepCycle().get(
"<user_id>",
GetSleepCycleRequest.builder()
.startDate("2021-01-01")
.endDate("2021-01-02")
.build()
);
import (
"context"
junction "github.com/junction-api/junction-go"
"github.com/junction-api/junction-go/client"
"github.com/junction-api/junction-go/option"
)
c := client.NewClient(
option.WithApiKey("YOUR_API_KEY"),
option.WithBaseURL(junction.Environments.Sandbox),
)
endDate := "2021-01-02"
response, err := c.SleepCycle.Get(context.TODO(), &junction.GetSleepCycleRequest{
UserId: "<user_id>",
StartDate: "2021-01-01",
EndDate: &endDate,
})
if err != nil {
return err
}
fmt.Printf("Received data %s\n", response)
Authorizations
Vital Team API Key
Path Parameters
Query Parameters
Start date in YYYY-MM-DD
End date (inclusive) in YYYY-MM-DD
Provider oura/strava etc
Response
Successful Response
Show child attributes
Show child attributes
Was this page helpful?
⌘I