{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://raw.githubusercontent.com/api-evangelist/carium/main/json-schema/carium-post-lachesis-v1-timeseries-request-schema.json",
  "title": "PostLachesisV1TimeseriesRequest",
  "x-generated": "2026-10-07",
  "x-method": "derived",
  "x-generator": "derive-json-schema.py",
  "x-source": "openapi/_ae-authored/carium-openapi-generated.yml#/components/schemas/PostLachesisV1TimeseriesRequest",
  "type": "object",
  "properties": {
    "data": {
      "type": "array",
      "description": "Array of timeseries objects"
    },
    "data[].type": {
      "type": "string",
      "description": "Should be \"time-series\""
    },
    "data[].attributes.individual-id": {
      "type": "string",
      "description": "The individual ID"
    },
    "data[].attributes.type": {
      "type": "string",
      "description": "Metric type (e.g., BodyMass)"
    },
    "data[].attributes.data": {
      "type": "array",
      "description": "Array of metric data points"
    },
    "data[].attributes.data[].type": {
      "type": "string",
      "description": "Metric point type (e.g., BloodGlucose, BloodPressure, BodyMass, OxygenSaturation, Pulse)"
    },
    "data[].attributes.data[].time": {
      "type": "string",
      "description": "Timestamp of the metric point"
    },
    "data[].attributes.data[].value": {
      "type": "number",
      "description": "Value for simple metric points"
    },
    "data[].attributes.data[].context": {
      "type": "string",
      "description": "Context for metrics that require it (e.g., FASTING)"
    },
    "data[].attributes.data[].systolic": {
      "type": "integer",
      "description": "Systolic value for BloodPressure"
    },
    "data[].attributes.data[].diastolic": {
      "type": "integer",
      "description": "Diastolic value for BloodPressure"
    }
  },
  "required": [
    "data",
    "data[].type",
    "data[].attributes.individual-id",
    "data[].attributes.type",
    "data[].attributes.data",
    "data[].attributes.data[].type",
    "data[].attributes.data[].time"
  ]
}