curl --request POST \
--url https://api.decodahealth.com/user/patient/measurement \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--header 'TENANT: <tenant>' \
--data '
{
"patientId": "<string>",
"height": 123,
"weight": 123,
"systolicBp": 123,
"diastolicBp": 123,
"pulse": 123,
"temperature": 123,
"waistCircumference": 123,
"noteId": "<string>",
"measurementDate": "2023-11-07T05:31:56Z",
"eventId": "<string>",
"createdDate": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.decodahealth.com/user/patient/measurement"
payload = {
"patientId": "<string>",
"height": 123,
"weight": 123,
"systolicBp": 123,
"diastolicBp": 123,
"pulse": 123,
"temperature": 123,
"waistCircumference": 123,
"noteId": "<string>",
"measurementDate": "2023-11-07T05:31:56Z",
"eventId": "<string>",
"createdDate": "2023-11-07T05:31:56Z"
}
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
patientId: '<string>',
height: 123,
weight: 123,
systolicBp: 123,
diastolicBp: 123,
pulse: 123,
temperature: 123,
waistCircumference: 123,
noteId: '<string>',
measurementDate: '2023-11-07T05:31:56Z',
eventId: '<string>',
createdDate: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.decodahealth.com/user/patient/measurement', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.decodahealth.com/user/patient/measurement",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'patientId' => '<string>',
'height' => 123,
'weight' => 123,
'systolicBp' => 123,
'diastolicBp' => 123,
'pulse' => 123,
'temperature' => 123,
'waistCircumference' => 123,
'noteId' => '<string>',
'measurementDate' => '2023-11-07T05:31:56Z',
'eventId' => '<string>',
'createdDate' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"Content-Type: application/json",
"TENANT: <tenant>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.decodahealth.com/user/patient/measurement"
payload := strings.NewReader("{\n \"patientId\": \"<string>\",\n \"height\": 123,\n \"weight\": 123,\n \"systolicBp\": 123,\n \"diastolicBp\": 123,\n \"pulse\": 123,\n \"temperature\": 123,\n \"waistCircumference\": 123,\n \"noteId\": \"<string>\",\n \"measurementDate\": \"2023-11-07T05:31:56Z\",\n \"eventId\": \"<string>\",\n \"createdDate\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.decodahealth.com/user/patient/measurement")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"patientId\": \"<string>\",\n \"height\": 123,\n \"weight\": 123,\n \"systolicBp\": 123,\n \"diastolicBp\": 123,\n \"pulse\": 123,\n \"temperature\": 123,\n \"waistCircumference\": 123,\n \"noteId\": \"<string>\",\n \"measurementDate\": \"2023-11-07T05:31:56Z\",\n \"eventId\": \"<string>\",\n \"createdDate\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/user/patient/measurement")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"patientId\": \"<string>\",\n \"height\": 123,\n \"weight\": 123,\n \"systolicBp\": 123,\n \"diastolicBp\": 123,\n \"pulse\": 123,\n \"temperature\": 123,\n \"waistCircumference\": 123,\n \"noteId\": \"<string>\",\n \"measurementDate\": \"2023-11-07T05:31:56Z\",\n \"eventId\": \"<string>\",\n \"createdDate\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"patientId": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"id": "<string>",
"height": 123,
"weight": 123,
"systolicBp": 123,
"diastolicBp": 123,
"pulse": 123,
"temperature": 123,
"waistCircumference": 123,
"noteId": "<string>",
"measurementDate": "2023-11-07T05:31:56Z",
"eventId": "<string>",
"creatorId": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Add Measurement
Add a new measurement for a patient.
curl --request POST \
--url https://api.decodahealth.com/user/patient/measurement \
--header 'API-KEY: <api-key>' \
--header 'Content-Type: application/json' \
--header 'TENANT: <tenant>' \
--data '
{
"patientId": "<string>",
"height": 123,
"weight": 123,
"systolicBp": 123,
"diastolicBp": 123,
"pulse": 123,
"temperature": 123,
"waistCircumference": 123,
"noteId": "<string>",
"measurementDate": "2023-11-07T05:31:56Z",
"eventId": "<string>",
"createdDate": "2023-11-07T05:31:56Z"
}
'import requests
url = "https://api.decodahealth.com/user/patient/measurement"
payload = {
"patientId": "<string>",
"height": 123,
"weight": 123,
"systolicBp": 123,
"diastolicBp": 123,
"pulse": 123,
"temperature": 123,
"waistCircumference": 123,
"noteId": "<string>",
"measurementDate": "2023-11-07T05:31:56Z",
"eventId": "<string>",
"createdDate": "2023-11-07T05:31:56Z"
}
headers = {
"TENANT": "<tenant>",
"API-KEY": "<api-key>",
"Content-Type": "application/json"
}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {TENANT: '<tenant>', 'API-KEY': '<api-key>', 'Content-Type': 'application/json'},
body: JSON.stringify({
patientId: '<string>',
height: 123,
weight: 123,
systolicBp: 123,
diastolicBp: 123,
pulse: 123,
temperature: 123,
waistCircumference: 123,
noteId: '<string>',
measurementDate: '2023-11-07T05:31:56Z',
eventId: '<string>',
createdDate: '2023-11-07T05:31:56Z'
})
};
fetch('https://api.decodahealth.com/user/patient/measurement', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://api.decodahealth.com/user/patient/measurement",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'patientId' => '<string>',
'height' => 123,
'weight' => 123,
'systolicBp' => 123,
'diastolicBp' => 123,
'pulse' => 123,
'temperature' => 123,
'waistCircumference' => 123,
'noteId' => '<string>',
'measurementDate' => '2023-11-07T05:31:56Z',
'eventId' => '<string>',
'createdDate' => '2023-11-07T05:31:56Z'
]),
CURLOPT_HTTPHEADER => [
"API-KEY: <api-key>",
"Content-Type: application/json",
"TENANT: <tenant>"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://api.decodahealth.com/user/patient/measurement"
payload := strings.NewReader("{\n \"patientId\": \"<string>\",\n \"height\": 123,\n \"weight\": 123,\n \"systolicBp\": 123,\n \"diastolicBp\": 123,\n \"pulse\": 123,\n \"temperature\": 123,\n \"waistCircumference\": 123,\n \"noteId\": \"<string>\",\n \"measurementDate\": \"2023-11-07T05:31:56Z\",\n \"eventId\": \"<string>\",\n \"createdDate\": \"2023-11-07T05:31:56Z\"\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("TENANT", "<tenant>")
req.Header.Add("API-KEY", "<api-key>")
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://api.decodahealth.com/user/patient/measurement")
.header("TENANT", "<tenant>")
.header("API-KEY", "<api-key>")
.header("Content-Type", "application/json")
.body("{\n \"patientId\": \"<string>\",\n \"height\": 123,\n \"weight\": 123,\n \"systolicBp\": 123,\n \"diastolicBp\": 123,\n \"pulse\": 123,\n \"temperature\": 123,\n \"waistCircumference\": 123,\n \"noteId\": \"<string>\",\n \"measurementDate\": \"2023-11-07T05:31:56Z\",\n \"eventId\": \"<string>\",\n \"createdDate\": \"2023-11-07T05:31:56Z\"\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://api.decodahealth.com/user/patient/measurement")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["TENANT"] = '<tenant>'
request["API-KEY"] = '<api-key>'
request["Content-Type"] = 'application/json'
request.body = "{\n \"patientId\": \"<string>\",\n \"height\": 123,\n \"weight\": 123,\n \"systolicBp\": 123,\n \"diastolicBp\": 123,\n \"pulse\": 123,\n \"temperature\": 123,\n \"waistCircumference\": 123,\n \"noteId\": \"<string>\",\n \"measurementDate\": \"2023-11-07T05:31:56Z\",\n \"eventId\": \"<string>\",\n \"createdDate\": \"2023-11-07T05:31:56Z\"\n}"
response = http.request(request)
puts response.read_body{
"patientId": "<string>",
"createdDate": "2023-11-07T05:31:56Z",
"id": "<string>",
"height": 123,
"weight": 123,
"systolicBp": 123,
"diastolicBp": 123,
"pulse": 123,
"temperature": 123,
"waistCircumference": 123,
"noteId": "<string>",
"measurementDate": "2023-11-07T05:31:56Z",
"eventId": "<string>",
"creatorId": "<string>"
}{
"detail": [
{
"loc": [
"<string>"
],
"msg": "<string>",
"type": "<string>"
}
]
}Headers
The tenant you are making this request on behalf of
Your api key
Body
Base schema for measurement fields (excluding creator_id and id).
The height of the patient in cms.
The weight of the patient in kgs.
The waist circumference of the patient in cms.
The date and time the measurement was taken. Defaults to now if not provided.
The event that the measurement was taken for.
When the measurement was taken. Defaults to current time if not provided.
Response
Successful Response
Schema for reading measurements. creator_id is optional for legacy measurements.
The height of the patient in cms.
The weight of the patient in kgs.
The waist circumference of the patient in cms.
The date and time the measurement was taken. Defaults to now if not provided.
The event that the measurement was taken for.
ID of the user who created this measurement (optional for legacy measurements)
