Present when this device is shared from another organisation
Show child attributes
{"docsConfig":{"theme":"mint","$schema":"https://mintlify.com/docs.json","name":"Ontoto Docs","colors":{"primary":"#007BFF","light":"#5A9BFF","dark":"#0056B3"},"logo":{"light":"https://mintcdn.com/ontoto-fbe6101f/RAvqJ7QBQVtymFi1/logo/ontoto.svg?fit=max\u0026auto=format\u0026n=RAvqJ7QBQVtymFi1\u0026q=85\u0026s=4f12873e51d6f8c6dd60112d9de93a86","dark":"https://mintcdn.com/ontoto-fbe6101f/RAvqJ7QBQVtymFi1/logo/ontoto.svg?fit=max\u0026auto=format\u0026n=RAvqJ7QBQVtymFi1\u0026q=85\u0026s=4f12873e51d6f8c6dd60112d9de93a86"},"favicon":"https://mintcdn.com/ontoto-fbe6101f/MdF40awRA5TU8ZZ4/favicon.svg?fit=max\u0026auto=format\u0026n=MdF40awRA5TU8ZZ4\u0026q=85\u0026s=d94e3c3638fe22734da5265d32a25f82","api":{"openapi":"openapi.yaml","examples":{"defaults":"required","prefill":false}},"navbar":{"links":[],"primary":{"type":"button","label":"Dashboard","href":"https://beta.ontoto.com"}},"footer":{},"styling":{"latex":false},"navigation":{"pages":[]}},"deployment":{"deploymentMetadataValue":{"subdomain":"ontoto-fbe6101f","hasAudioNarration":false,"actualSubdomain":"ontoto-fbe6101f","customDomains":["docs.beta.ontoto.com"],"gitSource":{"type":"github","owner":"ontoto","repo":"ontoto-dashboard-typescript","deployBranch":"master","contentDirectory":"packages/docs","isPrivate":true,"mountPath":"","label":""},"chroma":{"liveDeploymentHistoryId":"6ac8740073d901d9064753e6","collectionId":"7d975bd7-a26b-45ac-9e99-7098f578f66e","schemaVersion":"v3","latestBuiltDeploymentHistoryId":"6ac8740073d901d9064753e6"},"entitlements":{},"buildId":"6ac8740073d901d9064753e6","clientVersion":"0.0.3964","searchFilterCounts":[{"language":"default","tag":"API Reference","count":14},{"language":"default","tag":"Getting Started","count":4},{"language":"default","tag":"Sensor Data","count":4},{"language":"default","tag":"Devices","count":2},{"language":"default","tag":"Device Groups","count":2},{"language":"default","tag":"Sites","count":2},{"language":"default","tag":"Outbound Delivery","count":1},{"language":"default","tag":"Dashboard Guide","count":1}]},"assistantConfig":{"enableAskAiButton":false,"enableStarterQuestions":false,"enableAskAiSearchBar":true},"hasChatPermissions":false,"hasWebMcpPermissions":false,"toggles":[{"name":"kill-isr","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-mintlify-slack","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-v7-file-tree","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"agent-integrations-settings","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-pr-grouping","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"custom-prefix","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"analytics-v7","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"user-flows-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"no-publish-flow","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workos-onboarding","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"llms-txt-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"pause-universal-search-reconcile","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving-live","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"stripTemperatureMiddleware","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"per-site-search-delta","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"support-platform-pylon-zendesk","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"snapshot-serving","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"instant-rollback","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications-server","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"granular-notifications","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-private-page-search","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automations-fable","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fixed-ai-action-pricing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"automation-resolve-merge-conflict","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"scoped-publishing","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"mintql","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"page-level-analytics","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-version-history-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-nav-generations","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-page-v2","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"workspace-projects","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"assistant-v5","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"byok-sep-25","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"fork-pr-previews","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"revalidation-jwt","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"vite-origin","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"editor-agent-model-picker","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"billing-updated-9-15","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"hobby-abuse-scan","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false},{"name":"dashboard-inbox","enabled":true,"variant":{"name":"disabled","enabled":false,"feature_enabled":true},"impressionData":false}],"isAtlas":false,"googleFontsInlined":false},"customCss":[],"page":{"pagePath":"api-reference/get-device","slug":"/api-reference/get-device","pageMetadata":{"openapi":"get /devices/{sn}","title":"Get device","description":"Returns full detail for a single device, including its sensors.","href":"/api-reference/get-device"},"description":{"compiledSource":"\"use strict\";\nconst {jsx: _jsx} = arguments[0];\nconst {useMDXComponents: _provideComponents} = arguments[0];\nfunction _createMdxContent(props) {\n const _components = {\n p: \"p\",\n ..._provideComponents(),\n ...props.components\n };\n return _jsx(_components.p, {\n children: \"Returns full detail for a single device, including its sensors.\"\n });\n}\nfunction MDXContent(props = {}) {\n const {wrapper: MDXLayout} = {\n ..._provideComponents(),\n ...props.components\n };\n return MDXLayout ? _jsx(MDXLayout, {\n ...props,\n children: _jsx(_createMdxContent, {\n ...props\n })\n }) : _createMdxContent(props);\n}\nreturn {\n default: MDXContent\n};\n","frontmatter":{},"scope":{}},"pageType":"default","mdx":{"mdxSource":{"compiledSource":"\"use strict\";const{Fragment:_Fragment,jsx:_jsx}=arguments[0];const{useMDXComponents:_provideComponents}=arguments[0];function _createMdxContent(props){return _jsx(_Fragment,{})}function MDXContent(props={}){const{wrapper:MDXLayout}={..._provideComponents(),...props.components};return MDXLayout?_jsx(MDXLayout,{...props,children:_jsx(_createMdxContent,{...props})}):_createMdxContent(props)}return{default:MDXContent}","frontmatter":{},"scope":{"config":{},"pageMetadata":{"openapi":"get /devices/{sn}","title":"Get device","description":"Returns full detail for a single device, including its sensors.","href":"/api-reference/get-device"}}},"mdxSourceWithNoJs":null},"mdxExtracts":{"tableOfContents":[],"codeExamples":{}},"jsLinks":["/_mintlify/custom/ontoto-fbe6101f/e92cd72e305e1d85/eslint.config.js"],"openApiReferenceData":{"operation":{"operationId":"getDevices:sn","summary":"Get device","description":"Returns full detail for a single device, including its sensors.","responses":{"200":"5ad3bf93-9f3f-427b-8deb-9d4559b014f1","400":"59f5ea5e-dede-4ad3-a33d-7dad2881238b","401":"a15ee347-0cf7-4efc-8abe-03d0b82296b9","403":"0ff53889-4ba3-40b3-8a48-110b1e2d67a9","404":"aac6c0d3-3c67-41b8-b72a-7883db98db59","409":"75b1a917-fa89-4255-ad70-48e3f7dea2c2","429":"df5da790-e67f-4623-a001-e77c9981d5da","500":"0baf2372-e58e-4b70-ab2d-5308fdabb526"},"parameters":["2f1a7f6f-8573-42f4-b4a5-7cbbed07ff6b"],"method":"get","type":"path","servers":["097f7554-67b8-4ade-8714-524e55fbb44c"],"security":["35bec235-e1a0-4b0a-bccd-5494a9acec23"],"path":"/devices/{sn}","baseUrlOptions":["https://api.beta.ontoto.com/v1"],"title":"Get device","codeSamples":[],"requiredOnlyExamples":true,"requestExampleType":"generated","responseExampleType":"generated"},"dependencies":{"parameters":{"2f1a7f6f-8573-42f4-b4a5-7cbbed07ff6b":{"in":"path","name":"sn","schema":{"type":"string","isRequired":true,"description":"Device serial number","uniqueKey":"","typeLabel":"string"},"required":true,"description":"Device serial number"}},"responses":{"5ad3bf93-9f3f-427b-8deb-9d4559b014f1":{"description":"Successful response","content":{"application/json":{"schema":{"description":"Device record","type":"object","properties":{"deviceKind":{"oneOf":[{"type":"string","title":"physical","description":"Physical hardware device","const":"physical","isRequired":true,"uniqueKey":"deviceKind.oneOf.0","typeLabel":"string"},{"type":"string","title":"weather","description":"Virtual device for weather forecast data integration","const":"weather","isRequired":true,"uniqueKey":"deviceKind.oneOf.1","typeLabel":"string"},{"type":"string","title":"virtual","description":"User-defined virtual device for external data ingestion or archiving","const":"virtual","isRequired":true,"uniqueKey":"deviceKind.oneOf.2","typeLabel":"string"}],"isRequired":true,"uniqueKey":"deviceKind","typeLabel":"string"},"serialNumber":{"type":"string","isRequired":true,"uniqueKey":"serialNumber","typeLabel":"string"},"alias":{"oneOf":[{"type":"string","description":"Server-set alias, primary display for UI purposes","isRequired":true,"uniqueKey":"alias.oneOf.0","typeLabel":"string"},{"type":"null","description":"Server-set alias, primary display for UI purposes","isRequired":true,"uniqueKey":"alias.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"alias","typeLabel":"string | null"},"description":{"oneOf":[{"type":"string","description":"Optional description","isRequired":true,"uniqueKey":"description.oneOf.0","typeLabel":"string"},{"type":"null","description":"Optional description","isRequired":true,"uniqueKey":"description.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"description","typeLabel":"string | null"},"name":{"oneOf":[{"type":"string","description":"Name synchronised with device. Displayed as fallback if alias is not set","isRequired":true,"uniqueKey":"name.oneOf.0","typeLabel":"string"},{"type":"null","description":"Name synchronised with device. Displayed as fallback if alias is not set","isRequired":true,"uniqueKey":"name.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"name","typeLabel":"string | null"},"orgUuid":{"description":"Organisation the device belongs to","type":"string","format":"uuid","isRequired":true,"uniqueKey":"orgUuid","typeLabel":"string\u003cuuid>"},"legacyDeviceId":{"oneOf":[{"type":"integer","description":"Legacy device id for backwards compatibility","maximum":9007199254740991,"minimum":-9007199254740991,"isRequired":true,"uniqueKey":"legacyDeviceId.oneOf.0","typeLabel":"integer"},{"type":"null","description":"Legacy device id for backwards compatibility","isRequired":true,"uniqueKey":"legacyDeviceId.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"legacyDeviceId","typeLabel":"integer | null"},"location":{"oneOf":[{"type":"object","description":"Device location in WGS84 coordinates","required":["lat","lon"],"properties":{"lat":{"type":"number","isRequired":true,"uniqueKey":"location.oneOf.0.lat","typeLabel":"number"},"lon":{"type":"number","isRequired":true,"uniqueKey":"location.oneOf.0.lon","typeLabel":"number"}},"isRequired":true,"uniqueKey":"location.oneOf.0","typeLabel":"object"},{"type":"null","description":"Device location in WGS84 coordinates","isRequired":true,"uniqueKey":"location.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"location","typeLabel":"object | null"},"samplingPeriodSeconds":{"oneOf":[{"type":"number","description":"Current sampling period in seconds","isRequired":true,"uniqueKey":"samplingPeriodSeconds.oneOf.0","typeLabel":"number"},{"type":"null","description":"Current sampling period in seconds","isRequired":true,"uniqueKey":"samplingPeriodSeconds.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"samplingPeriodSeconds","typeLabel":"number | null"},"txPeriodSeconds":{"oneOf":[{"type":"number","description":"Current transmission period in seconds","isRequired":true,"uniqueKey":"txPeriodSeconds.oneOf.0","typeLabel":"number"},{"type":"null","description":"Current transmission period in seconds","isRequired":true,"uniqueKey":"txPeriodSeconds.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"txPeriodSeconds","typeLabel":"number | null"},"state":{"oneOf":[{"type":"string","title":"testing","description":"Device is undergoing internal hardware testing and validation","const":"testing","isRequired":true,"uniqueKey":"state.oneOf.0","typeLabel":"string"},{"type":"string","title":"inventory","description":"Device is in stock and available for assignment to an organisation","const":"inventory","isRequired":true,"uniqueKey":"state.oneOf.1","typeLabel":"string"},{"type":"string","title":"unprovisioned","description":"Device is assigned to an organisation but has no active subscription","const":"unprovisioned","isRequired":true,"uniqueKey":"state.oneOf.2","typeLabel":"string"},{"type":"string","title":"provisioned","description":"Device has a subscription in the provisioned state and is ready to be deployed","const":"provisioned","isRequired":true,"uniqueKey":"state.oneOf.3","typeLabel":"string"},{"type":"string","title":"deployed","description":"Device is deployed in the field and pending its first transmission","const":"deployed","isRequired":true,"uniqueKey":"state.oneOf.4","typeLabel":"string"},{"type":"string","title":"active","description":"Device has an active subscription and is currently billing","const":"active","isRequired":true,"uniqueKey":"state.oneOf.5","typeLabel":"string"},{"type":"string","title":"suspended","description":"Device subscription has been suspended","const":"suspended","isRequired":true,"uniqueKey":"state.oneOf.6","typeLabel":"string"},{"type":"string","title":"overdue","description":"Device subscription is overdue","const":"overdue","isRequired":true,"uniqueKey":"state.oneOf.7","typeLabel":"string"},{"type":"string","title":"retired","description":"Device has been permanently decommissioned","const":"retired","isRequired":true,"uniqueKey":"state.oneOf.8","typeLabel":"string"}],"isRequired":true,"uniqueKey":"state","typeLabel":"string"},"health":{"description":"Health of the device","type":"object","properties":{"battery":{"description":"Current battery health","example":{"voltage":3.72,"percentage":87,"estimatedEmptyAt":"2027-11-12T08:00:00.000Z","isCharging":false},"type":"object","properties":{"voltage":{"oneOf":[{"type":"number","description":"Battery voltage, if supported","uniqueKey":"health.battery.voltage.oneOf.0","typeLabel":"number"},{"type":"null","description":"Battery voltage, if supported","uniqueKey":"health.battery.voltage.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.battery.voltage","typeLabel":"number | null"},"percentage":{"oneOf":[{"type":"number","description":"Battery state of charge as a percentage","uniqueKey":"health.battery.percentage.oneOf.0","typeLabel":"number"},{"type":"null","description":"Battery state of charge as a percentage","uniqueKey":"health.battery.percentage.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.battery.percentage","typeLabel":"number | null"},"estimatedEmptyAt":{"oneOf":[{"type":"string","description":"Estimated time the battery runs empty at the average power measured over the last 28 days, from rated power figures. Coulomb-counted batteries only; null until there are at least two power stats covering 7 days","format":"date-time","uniqueKey":"health.battery.estimatedEmptyAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Estimated time the battery runs empty at the average power measured over the last 28 days, from rated power figures. Coulomb-counted batteries only; null until there are at least two power stats covering 7 days","uniqueKey":"health.battery.estimatedEmptyAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.battery.estimatedEmptyAt","typeLabel":"string\u003cdate-time> | null"},"isCharging":{"oneOf":[{"type":"boolean","description":"If supported, whether the battery is currently charging","uniqueKey":"health.battery.isCharging.oneOf.0","typeLabel":"boolean"},{"type":"null","description":"If supported, whether the battery is currently charging","uniqueKey":"health.battery.isCharging.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.battery.isCharging","typeLabel":"boolean | null"}},"isRequired":true,"uniqueKey":"health.battery","typeLabel":"object"},"connection":{"description":"Current connection health","example":{"lastSeen":"2024-06-15T08:42:11.000Z","status":"online","signalStrength":{"rssi":-71,"rsrp":-95,"rsrq":-12,"signalQuality":"good"},"error":null,"txSuccessRate":null,"txProtocol":null,"nextTxTimestamp":"2024-06-15T09:42:11.000Z"},"type":"object","properties":{"status":{"oneOf":[{"type":"string","title":"online","description":"Device is transmitting on its expected schedule","const":"online","isRequired":true,"uniqueKey":"health.connection.status.oneOf.0","typeLabel":"string"},{"type":"string","title":"offline","description":"Device has missed two or more consecutive scheduled transmissions","const":"offline","isRequired":true,"uniqueKey":"health.connection.status.oneOf.1","typeLabel":"string"},{"type":"string","title":"degraded","description":"Device has missed its most recent scheduled transmission","const":"degraded","isRequired":true,"uniqueKey":"health.connection.status.oneOf.2","typeLabel":"string"},{"type":"string","title":"unknown","description":"Connection status cannot be determined","const":"unknown","isRequired":true,"uniqueKey":"health.connection.status.oneOf.3","typeLabel":"string"}],"isRequired":true,"uniqueKey":"health.connection.status","typeLabel":"string"},"lastSeen":{"oneOf":[{"type":"string","description":"Last transmission timestamp from the device","format":"date-time","uniqueKey":"health.connection.lastSeen.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Last transmission timestamp from the device","uniqueKey":"health.connection.lastSeen.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.lastSeen","typeLabel":"string\u003cdate-time> | null"},"signalStrength":{"oneOf":[{"type":"object","description":"For LTE devices, the network signal strength","example":{"rssi":-71,"rsrp":-95,"rsrq":-12,"signalQuality":"good"},"properties":{"rssi":{"oneOf":[{"type":"number","uniqueKey":"health.connection.signalStrength.oneOf.0.rssi.oneOf.0","typeLabel":"number"},{"type":"null","uniqueKey":"health.connection.signalStrength.oneOf.0.rssi.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.signalStrength.oneOf.0.rssi","typeLabel":"number | null"},"rsrp":{"oneOf":[{"type":"number","uniqueKey":"health.connection.signalStrength.oneOf.0.rsrp.oneOf.0","typeLabel":"number"},{"type":"null","uniqueKey":"health.connection.signalStrength.oneOf.0.rsrp.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.signalStrength.oneOf.0.rsrp","typeLabel":"number | null"},"rsrq":{"oneOf":[{"type":"number","uniqueKey":"health.connection.signalStrength.oneOf.0.rsrq.oneOf.0","typeLabel":"number"},{"type":"null","uniqueKey":"health.connection.signalStrength.oneOf.0.rsrq.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.signalStrength.oneOf.0.rsrq","typeLabel":"number | null"},"signalQuality":{"oneOf":[{"type":"string","title":"no_signal","description":"No usable signal detected","const":"no_signal","uniqueKey":"health.connection.signalStrength.oneOf.0.signalQuality.oneOf.0","typeLabel":"string"},{"type":"string","title":"weak","description":"Signal present but unreliable","const":"weak","uniqueKey":"health.connection.signalStrength.oneOf.0.signalQuality.oneOf.1","typeLabel":"string"},{"type":"string","title":"ok","description":"Signal sufficient for normal operation","const":"ok","uniqueKey":"health.connection.signalStrength.oneOf.0.signalQuality.oneOf.2","typeLabel":"string"},{"type":"string","title":"good","description":"Strong signal","const":"good","uniqueKey":"health.connection.signalStrength.oneOf.0.signalQuality.oneOf.3","typeLabel":"string"},{"type":"null","uniqueKey":"health.connection.signalStrength.oneOf.0.signalQuality.oneOf.4","typeLabel":"null"}],"uniqueKey":"health.connection.signalStrength.oneOf.0.signalQuality","typeLabel":"string · string · string · string · null"}},"uniqueKey":"health.connection.signalStrength.oneOf.0","typeLabel":"object"},{"type":"null","description":"For LTE devices, the network signal strength","uniqueKey":"health.connection.signalStrength.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.signalStrength","typeLabel":"object | null"},"error":{"oneOf":[{"type":"object","description":"Structured error from firmware, modem, or ingestion pipeline","required":["code"],"example":{"code":503,"message":"Scheduled transmission failed: modem registration timeout"},"properties":{"code":{"type":"number","isRequired":true,"uniqueKey":"health.connection.error.oneOf.0.code","typeLabel":"number"},"message":{"oneOf":[{"type":"string","uniqueKey":"health.connection.error.oneOf.0.message.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"health.connection.error.oneOf.0.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.error.oneOf.0.message","typeLabel":"string | null"}},"uniqueKey":"health.connection.error.oneOf.0","typeLabel":"object"},{"type":"null","uniqueKey":"health.connection.error.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.error","typeLabel":"object | null"},"txSuccessRate":{"oneOf":[{"type":"number","description":"Percentage of successful transmissions, if available","uniqueKey":"health.connection.txSuccessRate.oneOf.0","typeLabel":"number"},{"type":"null","description":"Percentage of successful transmissions, if available","uniqueKey":"health.connection.txSuccessRate.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.txSuccessRate","typeLabel":"number | null"},"txProtocol":{"oneOf":[{"type":"string","title":"coap","description":"For LTE devices, the protocol used for the last successful transmission","const":"coap","uniqueKey":"health.connection.txProtocol.oneOf.0","typeLabel":"string"},{"type":"string","title":"mqtt","description":"For LTE devices, the protocol used for the last successful transmission","const":"mqtt","uniqueKey":"health.connection.txProtocol.oneOf.1","typeLabel":"string"},{"type":"null","description":"For LTE devices, the protocol used for the last successful transmission","uniqueKey":"health.connection.txProtocol.oneOf.2","typeLabel":"null"}],"uniqueKey":"health.connection.txProtocol","typeLabel":"string · string · null"},"lteTxMode":{"description":"For LTE devices with satellite support, whether the last transmission was via terrestrial or satellite","type":"string","enum":["terrestrial","satellite"],"uniqueKey":"health.connection.lteTxMode","typeLabel":"enum\u003cstring>"},"nextTxTimestamp":{"oneOf":[{"type":"string","description":"Estimated next scheduled transmission time","format":"date-time","uniqueKey":"health.connection.nextTxTimestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Estimated next scheduled transmission time","uniqueKey":"health.connection.nextTxTimestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.connection.nextTxTimestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["status"],"isRequired":true,"uniqueKey":"health.connection","typeLabel":"object"},"sensors":{"description":"Current sensor health","example":{"status":"ok","metadataError":null,"errors":[],"lastDataTimestamp":"2024-06-15T08:41:03.000Z"},"type":"object","properties":{"status":{"oneOf":[{"type":"string","title":"ok","description":"All parameters are healthy","const":"ok","isRequired":true,"uniqueKey":"health.sensors.status.oneOf.0","typeLabel":"string"},{"type":"string","title":"error","description":"One or more parameters are in an error state","const":"error","isRequired":true,"uniqueKey":"health.sensors.status.oneOf.1","typeLabel":"string"},{"type":"string","title":"warning","description":"Sensor is operational but at least one parameter is faulty","const":"warning","isRequired":true,"uniqueKey":"health.sensors.status.oneOf.2","typeLabel":"string"},{"type":"string","title":"unknown","description":"Health cannot be determined (e.g. no data received yet)","const":"unknown","isRequired":true,"uniqueKey":"health.sensors.status.oneOf.3","typeLabel":"string"}],"isRequired":true,"uniqueKey":"health.sensors.status","typeLabel":"string"},"metadataError":{"oneOf":[{"type":"object","description":"Error code from transmission metadata, if any","required":["code"],"example":{"code":503,"message":"Scheduled transmission failed: modem registration timeout"},"properties":{"code":{"type":"number","isRequired":true,"uniqueKey":"health.sensors.metadataError.oneOf.0.code","typeLabel":"number"},"message":{"oneOf":[{"type":"string","uniqueKey":"health.sensors.metadataError.oneOf.0.message.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"health.sensors.metadataError.oneOf.0.message.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.sensors.metadataError.oneOf.0.message","typeLabel":"string | null"}},"uniqueKey":"health.sensors.metadataError.oneOf.0","typeLabel":"object"},{"type":"null","description":"Error code from transmission metadata, if any","uniqueKey":"health.sensors.metadataError.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.sensors.metadataError","typeLabel":"object | null"},"errors":{"oneOf":[{"type":"array","items":{"type":"object","properties":{"sensorAlias":{"description":"Sensor alias","type":"string","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].sensorAlias","typeLabel":"string"},"parameterFaults":{"description":"Array of parameter errors for the sensor","type":"array","items":{"type":"object","properties":{"parameterAlias":{"description":"Parameter alias","type":"string","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].parameterAlias","typeLabel":"string"},"summary":{"description":"Summary of the parameter fault","type":"object","properties":{"reason":{"oneOf":[{"type":"string","title":"null_value","description":"Value was null","const":"null_value","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.reason.oneOf.0","typeLabel":"string"},{"type":"string","title":"out_of_range","description":"Value fell outside the configured operating range","const":"out_of_range","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.reason.oneOf.1","typeLabel":"string"},{"type":"string","title":"evaluation_error","description":"Server-side computation failed (derived parameter formula, or GNSS post-processing)","const":"evaluation_error","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.reason.oneOf.2","typeLabel":"string"}],"isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.reason","typeLabel":"string"},"message":{"description":"Message describing the fault","type":"string","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.message","typeLabel":"string"},"faultyPointsCount":{"description":"Number of faulty data points in the last transmission","type":"number","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.faultyPointsCount","typeLabel":"number"},"totalPointsCount":{"description":"Total number of data points in the last transmission","type":"number","isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary.totalPointsCount","typeLabel":"number"}},"required":["reason","message","faultyPointsCount","totalPointsCount"],"isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX].summary","typeLabel":"object"}},"required":["parameterAlias","summary"],"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX].parameterFaults","typeLabel":"object[]"}},"required":["sensorAlias","parameterFaults"],"uniqueKey":"health.sensors.errors.oneOf.0.items.[INDEX]","typeLabel":"object"},"description":"Aggregated summary of sensor errors for the last transmission, grouped by sensor","uniqueKey":"health.sensors.errors.oneOf.0","typeLabel":"object[]"},{"type":"null","description":"Aggregated summary of sensor errors for the last transmission, grouped by sensor","uniqueKey":"health.sensors.errors.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.sensors.errors","typeLabel":"object[] | null"},"lastDataTimestamp":{"oneOf":[{"type":"string","description":"Timestamp of the most recent data point received from the device","format":"date-time","uniqueKey":"health.sensors.lastDataTimestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Timestamp of the most recent data point received from the device","uniqueKey":"health.sensors.lastDataTimestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"health.sensors.lastDataTimestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["status"],"isRequired":true,"uniqueKey":"health.sensors","typeLabel":"object"},"powerSource":{"oneOf":[{"type":"string","title":"battery","description":"For devices that support multiple power sources, the current power source","const":"battery","uniqueKey":"health.powerSource.oneOf.0","typeLabel":"string"},{"type":"string","title":"external","description":"For devices that support multiple power sources, the current power source","const":"external","uniqueKey":"health.powerSource.oneOf.1","typeLabel":"string"},{"type":"null","description":"For devices that support multiple power sources, the current power source","uniqueKey":"health.powerSource.oneOf.2","typeLabel":"null"}],"uniqueKey":"health.powerSource","typeLabel":"string · string · null"}},"required":["battery","connection","sensors"],"isRequired":true,"uniqueKey":"health","typeLabel":"object"},"lastTxTimestamp":{"oneOf":[{"type":"string","description":"Last received transmission timestamp","format":"date-time","isRequired":true,"uniqueKey":"lastTxTimestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Last received transmission timestamp","isRequired":true,"uniqueKey":"lastTxTimestamp.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"lastTxTimestamp","typeLabel":"string\u003cdate-time> | null"},"product":{"oneOf":[{"type":"string","description":"Product name for physical devices","isRequired":true,"uniqueKey":"product.oneOf.0","typeLabel":"string"},{"type":"null","description":"Product name for physical devices","isRequired":true,"uniqueKey":"product.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"product","typeLabel":"string | null"},"hardware":{"oneOf":[{"type":"object","description":"Hardware details for physical devices","required":["model","revision"],"properties":{"model":{"type":"string","isRequired":true,"uniqueKey":"hardware.oneOf.0.model","typeLabel":"string"},"revision":{"type":"string","isRequired":true,"uniqueKey":"hardware.oneOf.0.revision","typeLabel":"string"}},"isRequired":true,"uniqueKey":"hardware.oneOf.0","typeLabel":"object"},{"type":"null","description":"Hardware details for physical devices","isRequired":true,"uniqueKey":"hardware.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"hardware","typeLabel":"object | null"},"modems":{"description":"Modems attached to the device. Some device models may support two modems (LTE + satellite)","type":"array","items":{"type":"object","properties":{"type":{"oneOf":[{"type":"string","title":"astrocast","description":"Astrocast satellite modem","const":"astrocast","isRequired":true,"uniqueKey":"modems.items.[INDEX].type.oneOf.0","typeLabel":"string"},{"type":"string","title":"iridium","description":"Iridium satellite modem","const":"iridium","isRequired":true,"uniqueKey":"modems.items.[INDEX].type.oneOf.1","typeLabel":"string"},{"type":"string","title":"lte","description":"LTE / NB-IoT cellular modem","const":"lte","isRequired":true,"uniqueKey":"modems.items.[INDEX].type.oneOf.2","typeLabel":"string"},{"type":"string","title":"unknown","description":"Modem type could not be identified","const":"unknown","isRequired":true,"uniqueKey":"modems.items.[INDEX].type.oneOf.3","typeLabel":"string"}],"isRequired":true,"uniqueKey":"modems.items.[INDEX].type","typeLabel":"string"},"model":{"type":"string","isRequired":true,"uniqueKey":"modems.items.[INDEX].model","typeLabel":"string"},"imei":{"oneOf":[{"type":"string","uniqueKey":"modems.items.[INDEX].imei.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"modems.items.[INDEX].imei.oneOf.1","typeLabel":"null"}],"uniqueKey":"modems.items.[INDEX].imei","typeLabel":"string | null"},"iccid":{"oneOf":[{"type":"string","uniqueKey":"modems.items.[INDEX].iccid.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"modems.items.[INDEX].iccid.oneOf.1","typeLabel":"null"}],"uniqueKey":"modems.items.[INDEX].iccid","typeLabel":"string | null"},"uuid":{"oneOf":[{"type":"string","uniqueKey":"modems.items.[INDEX].uuid.oneOf.0","typeLabel":"string"},{"type":"null","uniqueKey":"modems.items.[INDEX].uuid.oneOf.1","typeLabel":"null"}],"uniqueKey":"modems.items.[INDEX].uuid","typeLabel":"string | null"}},"required":["type","model"],"uniqueKey":"modems.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"modems","typeLabel":"object[]"},"firmware":{"oneOf":[{"type":"object","description":"Firmware information","required":["string","version"],"properties":{"string":{"type":"string","isRequired":true,"uniqueKey":"firmware.oneOf.0.string","typeLabel":"string"},"version":{"type":"string","isRequired":true,"uniqueKey":"firmware.oneOf.0.version","typeLabel":"string"}},"isRequired":true,"uniqueKey":"firmware.oneOf.0","typeLabel":"object"},{"type":"null","description":"Firmware information","isRequired":true,"uniqueKey":"firmware.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"firmware","typeLabel":"object | null"},"tags":{"description":"Tags associated with the device","type":"array","items":{"type":"object","properties":{"id":{"type":"number","isRequired":true,"uniqueKey":"tags.items.[INDEX].id","typeLabel":"number"},"name":{"type":"string","isRequired":true,"uniqueKey":"tags.items.[INDEX].name","typeLabel":"string"},"colour":{"oneOf":[{"type":"string","isRequired":true,"uniqueKey":"tags.items.[INDEX].colour.oneOf.0","typeLabel":"string"},{"type":"null","isRequired":true,"uniqueKey":"tags.items.[INDEX].colour.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"tags.items.[INDEX].colour","typeLabel":"string | null"}},"required":["id","name","colour"],"uniqueKey":"tags.items.[INDEX]","typeLabel":"object"},"isRequired":true,"uniqueKey":"tags","typeLabel":"object[]"},"site":{"oneOf":[{"type":"object","description":"Site the device is assigned to, if any","required":["uuid","name"],"properties":{"uuid":{"description":"Site UUID","type":"string","format":"uuid","isRequired":true,"uniqueKey":"site.oneOf.0.uuid","typeLabel":"string\u003cuuid>"},"name":{"description":"Site name","type":"string","isRequired":true,"uniqueKey":"site.oneOf.0.name","typeLabel":"string"}},"uniqueKey":"site.oneOf.0","typeLabel":"object"},{"type":"null","description":"Site the device is assigned to, if any","uniqueKey":"site.oneOf.1","typeLabel":"null"}],"uniqueKey":"site","typeLabel":"object | null"},"sensors":{"description":"If requested via `includeSensors`, the sensors attached to the device","type":"array","items":{"description":"Sensor returned when expanding device or sensor list/detail responses","type":"object","properties":{"uuid":{"description":"Sensor UUID","type":"string","format":"uuid","isRequired":true,"uniqueKey":"sensors.items.[INDEX].uuid","typeLabel":"string\u003cuuid>"},"model":{"oneOf":[{"type":"string","title":"HPT604-V","description":"Sensor model identifier, if available","const":"HPT604-V","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.0","typeLabel":"string"},{"type":"string","title":"HPT604-ABS","description":"Sensor model identifier, if available","const":"HPT604-ABS","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.1","typeLabel":"string"},{"type":"string","title":"ATMOS41","description":"Sensor model identifier, if available","const":"ATMOS41","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.2","typeLabel":"string"},{"type":"string","title":"SPS30","description":"Sensor model identifier, if available","const":"SPS30","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.3","typeLabel":"string"},{"type":"string","title":"ATMOS22","description":"Sensor model identifier, if available","const":"ATMOS22","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.4","typeLabel":"string"},{"type":"string","title":"ONTOTO-RADAR","description":"Sensor model identifier, if available","const":"ONTOTO-RADAR","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.5","typeLabel":"string"},{"type":"string","title":"UE3002","description":"Sensor model identifier, if available","const":"UE3002","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.6","typeLabel":"string"},{"type":"string","title":"VW-GENERIC","description":"Sensor model identifier, if available","const":"VW-GENERIC","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.7","typeLabel":"string"},{"type":"string","title":"WDS308","description":"Sensor model identifier, if available","const":"WDS308","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.8","typeLabel":"string"},{"type":"string","title":"VIBWIRE-108-SDI12","description":"Sensor model identifier, if available","const":"VIBWIRE-108-SDI12","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.9","typeLabel":"string"},{"type":"string","title":"PULSE-RAIN","description":"Sensor model identifier, if available","const":"PULSE-RAIN","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.10","typeLabel":"string"},{"type":"string","title":"PULSE-WATER-METER","description":"Sensor model identifier, if available","const":"PULSE-WATER-METER","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.11","typeLabel":"string"},{"type":"string","title":"SEN50","description":"Sensor model identifier, if available","const":"SEN50","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.12","typeLabel":"string"},{"type":"string","title":"ANB-AQ5","description":"Sensor model identifier, if available","const":"ANB-AQ5","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.13","typeLabel":"string"},{"type":"string","title":"EP100G","description":"Sensor model identifier, if available","const":"EP100G","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.14","typeLabel":"string"},{"type":"string","title":"EP100GL","description":"Sensor model identifier, if available","const":"EP100GL","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.15","typeLabel":"string"},{"type":"string","title":"SENTEK","description":"Sensor model identifier, if available","const":"SENTEK","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.16","typeLabel":"string"},{"type":"string","title":"4-20MA","description":"Sensor model identifier, if available","const":"4-20MA","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.17","typeLabel":"string"},{"type":"string","title":"UNICONN","description":"Sensor model identifier, if available","const":"UNICONN","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.18","typeLabel":"string"},{"type":"string","title":"CBS-BUBBLER","description":"Sensor model identifier, if available","const":"CBS-BUBBLER","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.19","typeLabel":"string"},{"type":"string","title":"HPT915","description":"Sensor model identifier, if available","const":"HPT915","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.20","typeLabel":"string"},{"type":"string","title":"SMART-IPI","description":"Sensor model identifier, if available","const":"SMART-IPI","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.21","typeLabel":"string"},{"type":"string","title":"SO411","description":"Sensor model identifier, if available","const":"SO411","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.22","typeLabel":"string"},{"type":"string","title":"TDR310","description":"Sensor model identifier, if available","const":"TDR310","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.23","typeLabel":"string"},{"type":"string","title":"SMR02","description":"Sensor model identifier, if available","const":"SMR02","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.24","typeLabel":"string"},{"type":"string","title":"SMR07","description":"Sensor model identifier, if available","const":"SMR07","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.25","typeLabel":"string"},{"type":"string","title":"SMR04","description":"Sensor model identifier, if available","const":"SMR04","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.26","typeLabel":"string"},{"type":"string","title":"SMR05","description":"Sensor model identifier, if available","const":"SMR05","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.27","typeLabel":"string"},{"type":"string","title":"SMR09","description":"Sensor model identifier, if available","const":"SMR09","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.28","typeLabel":"string"},{"type":"string","title":"BAROMETER","description":"Sensor model identifier, if available","const":"BAROMETER","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.29","typeLabel":"string"},{"type":"string","title":"HWT9053","description":"Sensor model identifier, if available","const":"HWT9053","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.30","typeLabel":"string"},{"type":"string","title":"PONSEL-PH","description":"Sensor model identifier, if available","const":"PONSEL-PH","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.31","typeLabel":"string"},{"type":"string","title":"PONSEL-C4E","description":"Sensor model identifier, if available","const":"PONSEL-C4E","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.32","typeLabel":"string"},{"type":"string","title":"PONSEL-NTU","description":"Sensor model identifier, if available","const":"PONSEL-NTU","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.33","typeLabel":"string"},{"type":"string","title":"GEOKON-6180","description":"Sensor model identifier, if available","const":"GEOKON-6180","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.34","typeLabel":"string"},{"type":"string","title":"UF2000B","description":"Sensor model identifier, if available","const":"UF2000B","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.35","typeLabel":"string"},{"type":"string","title":"AS3935","description":"Sensor model identifier, if available","const":"AS3935","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.36","typeLabel":"string"},{"type":"string","title":"VM5XX","description":"Sensor model identifier, if available","const":"VM5XX","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.37","typeLabel":"string"},{"type":"string","title":"WXT536","description":"Sensor model identifier, if available","const":"WXT536","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.38","typeLabel":"string"},{"type":"string","title":"PT12","description":"Sensor model identifier, if available","const":"PT12","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.39","typeLabel":"string"},{"type":"string","title":"TILT","description":"Sensor model identifier, if available","const":"TILT","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.40","typeLabel":"string"},{"type":"string","title":"SMRMAX","description":"Sensor model identifier, if available","const":"SMRMAX","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.41","typeLabel":"string"},{"type":"string","title":"AQUA-TROLL-100","description":"Sensor model identifier, if available","const":"AQUA-TROLL-100","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.42","typeLabel":"string"},{"type":"string","title":"DAX-CTD","description":"Sensor model identifier, if available","const":"DAX-CTD","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.43","typeLabel":"string"},{"type":"string","title":"G6","description":"Sensor model identifier, if available","const":"G6","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.44","typeLabel":"string"},{"type":"string","title":"SMR-LEVEL-EC","description":"Sensor model identifier, if available","const":"SMR-LEVEL-EC","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.45","typeLabel":"string"},{"type":"string","title":"SOLINST-ABS","description":"Sensor model identifier, if available","const":"SOLINST-ABS","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.46","typeLabel":"string"},{"type":"string","title":"HPT604-VT","description":"Sensor model identifier, if available","const":"HPT604-VT","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.47","typeLabel":"string"},{"type":"string","title":"SMART-CONTRACT","description":"Sensor model identifier, if available","const":"SMART-CONTRACT","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.48","typeLabel":"string"},{"type":"string","title":"VW-SDI12","description":"Sensor model identifier, if available","const":"VW-SDI12","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.49","typeLabel":"string"},{"type":"string","title":"LEVEL-TROLL","description":"Sensor model identifier, if available","const":"LEVEL-TROLL","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.50","typeLabel":"string"},{"type":"string","title":"PL100","description":"Sensor model identifier, if available","const":"PL100","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.51","typeLabel":"string"},{"type":"string","title":"WEATHER-FORECAST","description":"Sensor model identifier, if available","const":"WEATHER-FORECAST","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.52","typeLabel":"string"},{"type":"string","title":"GNSS","description":"Sensor model identifier, if available","const":"GNSS","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.53","typeLabel":"string"},{"type":"string","title":"RDO-BLUE","description":"Sensor model identifier, if available","const":"RDO-BLUE","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.54","typeLabel":"string"},{"type":"null","description":"Sensor model identifier, if available","isRequired":true,"uniqueKey":"sensors.items.[INDEX].model.oneOf.55","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].model","typeLabel":"string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · null"},"type":{"oneOf":[{"type":"string","title":"absolute_pressure","description":"Sensor type, if available","const":"absolute_pressure","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.0","typeLabel":"string"},{"type":"string","title":"gauge_pressure","description":"Sensor type, if available","const":"gauge_pressure","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.1","typeLabel":"string"},{"type":"string","title":"absolute_pressure_conductivity","description":"Sensor type, if available","const":"absolute_pressure_conductivity","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.2","typeLabel":"string"},{"type":"string","title":"barometer","description":"Sensor type, if available","const":"barometer","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.3","typeLabel":"string"},{"type":"string","title":"weather","description":"Sensor type, if available","const":"weather","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.4","typeLabel":"string"},{"type":"string","title":"vibrating_wire","description":"Sensor type, if available","const":"vibrating_wire","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.5","typeLabel":"string"},{"type":"string","title":"pulse_rain","description":"Sensor type, if available","const":"pulse_rain","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.6","typeLabel":"string"},{"type":"string","title":"pulse_water_meter","description":"Sensor type, if available","const":"pulse_water_meter","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.7","typeLabel":"string"},{"type":"string","title":"dust","description":"Sensor type, if available","const":"dust","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.8","typeLabel":"string"},{"type":"string","title":"radar","description":"Sensor type, if available","const":"radar","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.9","typeLabel":"string"},{"type":"string","title":"ph","description":"Sensor type, if available","const":"ph","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.10","typeLabel":"string"},{"type":"string","title":"soil_moisture","description":"Sensor type, if available","const":"soil_moisture","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.11","typeLabel":"string"},{"type":"string","title":"gauge_pressure_temp","description":"Sensor type, if available","const":"gauge_pressure_temp","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.12","typeLabel":"string"},{"type":"string","title":"oxygen_gas","description":"Sensor type, if available","const":"oxygen_gas","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.13","typeLabel":"string"},{"type":"string","title":"ultrasonic_flow","description":"Sensor type, if available","const":"ultrasonic_flow","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.14","typeLabel":"string"},{"type":"string","title":"ma420","description":"Sensor type, if available","const":"ma420","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.15","typeLabel":"string"},{"type":"string","title":"wind","description":"Sensor type, if available","const":"wind","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.16","typeLabel":"string"},{"type":"string","title":"ultrasonic_distance","description":"Sensor type, if available","const":"ultrasonic_distance","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.17","typeLabel":"string"},{"type":"string","title":"bubbler_level","description":"Sensor type, if available","const":"bubbler_level","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.18","typeLabel":"string"},{"type":"string","title":"inclinometer","description":"Sensor type, if available","const":"inclinometer","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.19","typeLabel":"string"},{"type":"string","title":"conductivity","description":"Sensor type, if available","const":"conductivity","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.20","typeLabel":"string"},{"type":"string","title":"turbidity","description":"Sensor type, if available","const":"turbidity","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.21","typeLabel":"string"},{"type":"string","title":"lightning","description":"Sensor type, if available","const":"lightning","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.22","typeLabel":"string"},{"type":"string","title":"orp","description":"Sensor type, if available","const":"orp","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.23","typeLabel":"string"},{"type":"string","title":"dissolved_oxygen","description":"Sensor type, if available","const":"dissolved_oxygen","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.24","typeLabel":"string"},{"type":"string","title":"conductivity_ph","description":"Sensor type, if available","const":"conductivity_ph","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.25","typeLabel":"string"},{"type":"string","title":"linear_displacement","description":"Sensor type, if available","const":"linear_displacement","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.26","typeLabel":"string"},{"type":"string","title":"weather_forecast","description":"Sensor type, if available","const":"weather_forecast","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.27","typeLabel":"string"},{"type":"string","title":"gnss","description":"Sensor type, if available","const":"gnss","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.28","typeLabel":"string"},{"type":"null","description":"Sensor type, if available","example":"ph","isRequired":true,"uniqueKey":"sensors.items.[INDEX].type.oneOf.29","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].type","typeLabel":"string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · string · null"},"physicalSensor":{"oneOf":[{"type":"object","description":"Assigned physical sensor, if any","required":["uuid","serialNumber"],"properties":{"uuid":{"description":"Physical sensor UUID","type":"string","format":"uuid","isRequired":true,"uniqueKey":"sensors.items.[INDEX].physicalSensor.oneOf.0.uuid","typeLabel":"string\u003cuuid>"},"serialNumber":{"description":"Physical sensor serial number","type":"string","isRequired":true,"uniqueKey":"sensors.items.[INDEX].physicalSensor.oneOf.0.serialNumber","typeLabel":"string"}},"isRequired":true,"uniqueKey":"sensors.items.[INDEX].physicalSensor.oneOf.0","typeLabel":"object"},{"type":"null","description":"Assigned physical sensor, if any","isRequired":true,"uniqueKey":"sensors.items.[INDEX].physicalSensor.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].physicalSensor","typeLabel":"object | null"},"connectionType":{"oneOf":[{"type":"string","title":"integrated","description":"Indicates whether the sensor is built into the device (integrated) or connected via an external interface (external), if available","const":"integrated","example":"external","isRequired":true,"uniqueKey":"sensors.items.[INDEX].connectionType.oneOf.0","typeLabel":"string"},{"type":"string","title":"external","description":"Indicates whether the sensor is built into the device (integrated) or connected via an external interface (external), if available","const":"external","example":"external","isRequired":true,"uniqueKey":"sensors.items.[INDEX].connectionType.oneOf.1","typeLabel":"string"},{"type":"null","description":"Indicates whether the sensor is built into the device (integrated) or connected via an external interface (external), if available","example":"external","isRequired":true,"uniqueKey":"sensors.items.[INDEX].connectionType.oneOf.2","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].connectionType","typeLabel":"string · string · null"},"name":{"description":"Internal name used for the sensor","type":"string","isRequired":true,"uniqueKey":"sensors.items.[INDEX].name","typeLabel":"string"},"alias":{"description":"Sensor alias for display purposes","type":"string","isRequired":true,"uniqueKey":"sensors.items.[INDEX].alias","typeLabel":"string"},"deviceSerialNumber":{"description":"Serial number of the device that owns the sensor","type":"string","isRequired":true,"uniqueKey":"sensors.items.[INDEX].deviceSerialNumber","typeLabel":"string"},"parameters":{"description":"Parameters attached to this sensor","type":"array","items":{"description":"Parameter attached to a sensor","type":"object","properties":{"uuid":{"description":"Parameter UUID","type":"string","format":"uuid","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].uuid","typeLabel":"string\u003cuuid>"},"sensorUuid":{"description":"Sensor containing the parameter","type":"string","format":"uuid","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sensorUuid","typeLabel":"string\u003cuuid>"},"deviceSerialNumber":{"description":"Device that owns the parameter","type":"string","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].deviceSerialNumber","typeLabel":"string"},"alias":{"description":"Parameter display alias","type":"string","minLength":1,"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].alias","typeLabel":"string"},"name":{"description":"Unique parameter name","type":"string","minLength":1,"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].name","typeLabel":"string"},"sourceType":{"oneOf":[{"type":"string","title":"derived","description":"Parameter computed from a formula or aggregation","const":"derived","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType.oneOf.0","typeLabel":"string"},{"type":"string","title":"raw","description":"Parameter measured directly by the device","const":"raw","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType.oneOf.1","typeLabel":"string"},{"type":"string","title":"imported","description":"Parameter ingested from an external (third party) source","const":"imported","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType.oneOf.2","typeLabel":"string"},{"type":"string","title":"weather_forecast","description":"Parameter populated from a weather forecast provider","const":"weather_forecast","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType.oneOf.3","typeLabel":"string"},{"type":"string","title":"gnss","description":"Parameter produced by GNSS post-processing","const":"gnss","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType.oneOf.4","typeLabel":"string"},{"type":"string","title":"gnss_field","description":"Individual GNSS solution field (e.g. lat, lon, height)","const":"gnss_field","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType.oneOf.5","typeLabel":"string"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].sourceType","typeLabel":"string"},"parameterType":{"oneOf":[{"type":"string","title":"unknown","description":"Unspecified or unrecognised quantity","const":"unknown","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.0","typeLabel":"string"},{"type":"string","title":"conductivity","description":"Electrical conductivity","const":"conductivity","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.1","typeLabel":"string"},{"type":"string","title":"barometric_pressure","description":"Atmospheric (barometric) pressure","const":"barometric_pressure","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.2","typeLabel":"string"},{"type":"string","title":"absolute_pressure","description":"Absolute pressure (referenced to vacuum)","const":"absolute_pressure","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.3","typeLabel":"string"},{"type":"string","title":"compensated_level","description":"Water level after barometric compensation","const":"compensated_level","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.4","typeLabel":"string"},{"type":"string","title":"gauge_pressure","description":"Gauge pressure (referenced to atmosphere)","const":"gauge_pressure","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.5","typeLabel":"string"},{"type":"string","title":"level","description":"Water level / depth","const":"level","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.6","typeLabel":"string"},{"type":"string","title":"ph","description":"pH","const":"ph","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.7","typeLabel":"string"},{"type":"string","title":"moisture","description":"Soil moisture content","const":"moisture","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.8","typeLabel":"string"},{"type":"string","title":"temperature","description":"Temperature","const":"temperature","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.9","typeLabel":"string"},{"type":"string","title":"humidity","description":"Relative humidity","const":"humidity","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.10","typeLabel":"string"},{"type":"string","title":"pm","description":"Particulate matter concentration","const":"pm","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.11","typeLabel":"string"},{"type":"string","title":"frequency","description":"Frequency (e.g. vibrating-wire output)","const":"frequency","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.12","typeLabel":"string"},{"type":"string","title":"pulse","description":"Raw pulse count","const":"pulse","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.13","typeLabel":"string"},{"type":"string","title":"distance","description":"Distance","const":"distance","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.14","typeLabel":"string"},{"type":"string","title":"count","description":"Generic counted quantity","const":"count","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.15","typeLabel":"string"},{"type":"string","title":"wind_speed","description":"Wind speed","const":"wind_speed","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.16","typeLabel":"string"},{"type":"string","title":"wind_direction","description":"Wind direction","const":"wind_direction","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.17","typeLabel":"string"},{"type":"string","title":"wind_gust","description":"Wind gust speed","const":"wind_gust","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.18","typeLabel":"string"},{"type":"string","title":"solar","description":"Solar radiation","const":"solar","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.19","typeLabel":"string"},{"type":"string","title":"precipitation","description":"Rainfall depth","const":"precipitation","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.20","typeLabel":"string"},{"type":"string","title":"oxygen_gas","description":"Gaseous oxygen concentration","const":"oxygen_gas","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.21","typeLabel":"string"},{"type":"string","title":"dissolved_oxygen","description":"Dissolved oxygen concentration","const":"dissolved_oxygen","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.22","typeLabel":"string"},{"type":"string","title":"relative_permittivity","description":"Relative dielectric permittivity","const":"relative_permittivity","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.23","typeLabel":"string"},{"type":"string","title":"resistance","description":"Electrical resistance","const":"resistance","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.24","typeLabel":"string"},{"type":"string","title":"orp","description":"Oxidation-reduction potential","const":"orp","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.25","typeLabel":"string"},{"type":"string","title":"angle","description":"Angle / tilt","const":"angle","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.26","typeLabel":"string"},{"type":"string","title":"salinity","description":"Salinity","const":"salinity","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.27","typeLabel":"string"},{"type":"string","title":"turbidity","description":"Water turbidity","const":"turbidity","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.28","typeLabel":"string"},{"type":"string","title":"volume","description":"Volume","const":"volume","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.29","typeLabel":"string"},{"type":"string","title":"voltage","description":"Voltage","const":"voltage","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.30","typeLabel":"string"},{"type":"string","title":"current","description":"Electric current","const":"current","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.31","typeLabel":"string"},{"type":"string","title":"absolute_pressure_msl","description":"Absolute pressure adjusted to mean sea level","const":"absolute_pressure_msl","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.32","typeLabel":"string"},{"type":"string","title":"displacement","description":"Linear displacement","const":"displacement","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.33","typeLabel":"string"},{"type":"string","title":"tds","description":"Total dissolved solids","const":"tds","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.34","typeLabel":"string"},{"type":"string","title":"resistivity","description":"Electrical resistivity","const":"resistivity","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.35","typeLabel":"string"},{"type":"string","title":"density","description":"Density","const":"density","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.36","typeLabel":"string"},{"type":"string","title":"noise_level","description":"Sound level / noise","const":"noise_level","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.37","typeLabel":"string"},{"type":"string","title":"uv_index","description":"Ultraviolet index","const":"uv_index","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.38","typeLabel":"string"},{"type":"string","title":"probability","description":"Probability (0-1 or 0-100%)","const":"probability","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.39","typeLabel":"string"},{"type":"string","title":"gnss","description":"GNSS solution (multi-field result)","const":"gnss","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.40","typeLabel":"string"},{"type":"string","title":"ratio","description":"Dimensionless ratio","const":"ratio","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.41","typeLabel":"string"},{"type":"string","title":"status","description":"Discrete status / state code","const":"status","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.42","typeLabel":"string"},{"type":"string","title":"displacement_rate","description":"Rate of displacement (velocity)","const":"displacement_rate","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.43","typeLabel":"string"},{"type":"string","title":"geodetic_coordinates","description":"Geodetic latitude/longitude pair","const":"geodetic_coordinates","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.44","typeLabel":"string"},{"type":"string","title":"ellipsoidal_height","description":"Height above the reference ellipsoid","const":"ellipsoidal_height","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.45","typeLabel":"string"},{"type":"string","title":"orthometric_height","description":"Height above the geoid (orthometric)","const":"orthometric_height","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.46","typeLabel":"string"},{"type":"string","title":"projected_coordinates","description":"Projected coordinates (e.g. UTM easting/northing)","const":"projected_coordinates","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.47","typeLabel":"string"},{"type":"string","title":"partial_pressure","description":"Partial pressure of a gas component","const":"partial_pressure","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.48","typeLabel":"string"},{"type":"string","title":"flow_rate","description":"Volumetric flow rate","const":"flow_rate","example":"temperature","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType.oneOf.49","typeLabel":"string"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].parameterType","typeLabel":"string"},"baseUnit":{"oneOf":[{"type":"string","description":"Storage unit (UCUM code)","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].baseUnit.oneOf.0","typeLabel":"string"},{"type":"null","description":"Storage unit (UCUM code)","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].baseUnit.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].baseUnit","typeLabel":"string | null"},"displayUnit":{"oneOf":[{"type":"string","description":"Display unit (UCUM code)","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].displayUnit.oneOf.0","typeLabel":"string"},{"type":"null","description":"Display unit (UCUM code)","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].displayUnit.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].displayUnit","typeLabel":"string | null"},"displayPrecision":{"oneOf":[{"type":"number","description":"Display decimal places. Null truncates to at most 6 decimal places.","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].displayPrecision.oneOf.0","typeLabel":"number"},{"type":"null","description":"Display decimal places. Null truncates to at most 6 decimal places.","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].displayPrecision.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].displayPrecision","typeLabel":"number | null"},"suppressFaults":{"description":"Whether fault status is suppressed for this parameter","type":"boolean","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].suppressFaults","typeLabel":"boolean"},"status":{"oneOf":[{"type":"string","title":"ok","description":"No issues","const":"ok","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].status.oneOf.0","typeLabel":"string"},{"type":"string","title":"data_fault","description":"Latest data points are faulty (null, out-of-range, or evaluation error)","const":"data_fault","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].status.oneOf.1","typeLabel":"string"},{"type":"string","title":"config_error","description":"Parameter configuration is invalid and cannot be evaluated","const":"config_error","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].status.oneOf.2","typeLabel":"string"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].status","typeLabel":"string"},"createdAt":{"oneOf":[{"type":"string","description":"Creation date","format":"date-time","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].createdAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Creation date","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].createdAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].createdAt","typeLabel":"string\u003cdate-time> | null"},"updatedAt":{"oneOf":[{"type":"string","description":"Last update date","format":"date-time","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].updatedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Last update date","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].updatedAt.oneOf.1","typeLabel":"null"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].updatedAt","typeLabel":"string\u003cdate-time> | null"},"configErrorMessage":{"oneOf":[{"type":"string","description":"Configuration error message, if any","uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].configErrorMessage.oneOf.0","typeLabel":"string"},{"type":"null","description":"Configuration error message, if any","uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].configErrorMessage.oneOf.1","typeLabel":"null"}],"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].configErrorMessage","typeLabel":"string | null"},"lastFaultSummary":{"oneOf":[{"type":"object","description":"Summary of faulty data points in the last transmission","required":["reason","message","faultyPointsCount","totalPointsCount"],"properties":{"reason":{"oneOf":[{"type":"string","title":"null_value","description":"Value was null","const":"null_value","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.reason.oneOf.0","typeLabel":"string"},{"type":"string","title":"out_of_range","description":"Value fell outside the configured operating range","const":"out_of_range","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.reason.oneOf.1","typeLabel":"string"},{"type":"string","title":"evaluation_error","description":"Server-side computation failed (derived parameter formula, or GNSS post-processing)","const":"evaluation_error","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.reason.oneOf.2","typeLabel":"string"}],"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.reason","typeLabel":"string"},"message":{"description":"Message describing the fault","type":"string","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.message","typeLabel":"string"},"faultyPointsCount":{"description":"Number of faulty data points in the last transmission","type":"number","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.faultyPointsCount","typeLabel":"number"},"totalPointsCount":{"description":"Total number of data points in the last transmission","type":"number","isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0.totalPointsCount","typeLabel":"number"}},"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.0","typeLabel":"object"},{"type":"null","description":"Summary of faulty data points in the last transmission","uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary.oneOf.1","typeLabel":"null"}],"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultSummary","typeLabel":"object | null"},"lastFaultTimestamp":{"oneOf":[{"type":"string","description":"Transmission timestamp of the last fault","format":"date-time","uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultTimestamp.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Transmission timestamp of the last fault","uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultTimestamp.oneOf.1","typeLabel":"null"}],"uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX].lastFaultTimestamp","typeLabel":"string\u003cdate-time> | null"}},"required":["uuid","sensorUuid","deviceSerialNumber","alias","name","sourceType","parameterType","baseUnit","displayUnit","displayPrecision","suppressFaults","status","createdAt","updatedAt"],"title":"SensorParameterSummary","uniqueKey":"sensors.items.[INDEX].parameters.items.[INDEX]","typeLabel":"SensorParameterSummary · object"},"isRequired":true,"uniqueKey":"sensors.items.[INDEX].parameters","typeLabel":"SensorParameterSummary · object[]"},"channelIndex":{"description":"Order the sensor is read on the device","type":"number","isRequired":true,"uniqueKey":"sensors.items.[INDEX].channelIndex","typeLabel":"number"},"isActive":{"description":"Whether the device is currently programmed to read the sensor. Will be false when the device firmware is not currently programmed to read this sensor.","type":"boolean","isRequired":true,"uniqueKey":"sensors.items.[INDEX].isActive","typeLabel":"boolean"},"enabled":{"description":"For configurable sensors, whether this sensor instance is currently enabled and sampled by the device. Always true for non-configurable sensors.","type":"boolean","isRequired":true,"uniqueKey":"sensors.items.[INDEX].enabled","typeLabel":"boolean"},"lastActivatedAt":{"oneOf":[{"type":"string","description":"Timestamp of when the sensor was last activated","format":"date-time","uniqueKey":"sensors.items.[INDEX].lastActivatedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Timestamp of when the sensor was last activated","uniqueKey":"sensors.items.[INDEX].lastActivatedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"sensors.items.[INDEX].lastActivatedAt","typeLabel":"string\u003cdate-time> | null"},"lastDeactivatedAt":{"oneOf":[{"type":"string","description":"Timestamp of when the sensor was last deactivated","format":"date-time","uniqueKey":"sensors.items.[INDEX].lastDeactivatedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Timestamp of when the sensor was last deactivated","uniqueKey":"sensors.items.[INDEX].lastDeactivatedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"sensors.items.[INDEX].lastDeactivatedAt","typeLabel":"string\u003cdate-time> | null"}},"required":["uuid","model","type","physicalSensor","connectionType","name","alias","deviceSerialNumber","parameters","channelIndex","isActive","enabled"],"title":"SensorItem","uniqueKey":"sensors.items.[INDEX]","typeLabel":"SensorItem · object"},"uniqueKey":"sensors","typeLabel":"SensorItem · object[]"},"queuedCommand":{"oneOf":[{"type":"object","description":"If a command is currently queued or processing for this device, a summary of the command","required":["uuid","status","createdAt","txMode"],"properties":{"uuid":{"description":"Command UUID","type":"string","format":"uuid","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.uuid","typeLabel":"string\u003cuuid>"},"status":{"oneOf":[{"type":"string","title":"processing","description":"Command is being prepared for transmission","const":"processing","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.0","typeLabel":"string"},{"type":"string","title":"queued","description":"Command is queued and waiting for the device to receive it","const":"queued","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.1","typeLabel":"string"},{"type":"string","title":"awaiting_ack","description":"Command delivery was detected and is waiting for a configuration acknowledgement","const":"awaiting_ack","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.2","typeLabel":"string"},{"type":"string","title":"received","description":"Command has been delivered to and acknowledged by the device","const":"received","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.3","typeLabel":"string"},{"type":"string","title":"cancelled","description":"Command was cancelled before delivery","const":"cancelled","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.4","typeLabel":"string"},{"type":"string","title":"expired","description":"Command was not delivered within its validity window","const":"expired","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.5","typeLabel":"string"},{"type":"string","title":"failed","description":"Command delivery failed","const":"failed","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status.oneOf.6","typeLabel":"string"}],"isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.status","typeLabel":"string"},"createdAt":{"description":"Time command was created","type":"string","format":"date-time","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.createdAt","typeLabel":"string\u003cdate-time>"},"txMode":{"oneOf":[{"type":"string","title":"astrocast","description":"Modem type the command is sent over. Satellite modems (iridium/astrocast) cannot be cancelled.","const":"astrocast","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.txMode.oneOf.0","typeLabel":"string"},{"type":"string","title":"iridium","description":"Modem type the command is sent over. Satellite modems (iridium/astrocast) cannot be cancelled.","const":"iridium","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.txMode.oneOf.1","typeLabel":"string"},{"type":"string","title":"lte","description":"Modem type the command is sent over. Satellite modems (iridium/astrocast) cannot be cancelled.","const":"lte","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.txMode.oneOf.2","typeLabel":"string"},{"type":"string","title":"unknown","description":"Modem type the command is sent over. Satellite modems (iridium/astrocast) cannot be cancelled.","const":"unknown","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.txMode.oneOf.3","typeLabel":"string"},{"type":"null","description":"Modem type the command is sent over. Satellite modems (iridium/astrocast) cannot be cancelled.","isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.txMode.oneOf.4","typeLabel":"null"}],"isRequired":true,"uniqueKey":"queuedCommand.oneOf.0.txMode","typeLabel":"string · string · string · string · null"}},"uniqueKey":"queuedCommand.oneOf.0","typeLabel":"object"},{"type":"null","description":"If a command is currently queued or processing for this device, a summary of the command","uniqueKey":"queuedCommand.oneOf.1","typeLabel":"null"}],"uniqueKey":"queuedCommand","typeLabel":"object | null"},"gnss":{"oneOf":[{"type":"object","description":"For devices with GNSS support, the GNSS processing configuration","required":["enableLeverArmCompensation","isBaseStation"],"properties":{"enableLeverArmCompensation":{"description":"Whether lever arm compensation is enabled for position correction","type":"boolean","isRequired":true,"uniqueKey":"gnss.oneOf.0.enableLeverArmCompensation","typeLabel":"boolean"},"isBaseStation":{"description":"Whether this device is registered as a GNSS base station. If true, postprocessing config will be unused.","type":"boolean","isRequired":true,"uniqueKey":"gnss.oneOf.0.isBaseStation","typeLabel":"boolean"},"processingMode":{"oneOf":[{"type":"string","title":"static","description":"GNSS processing mode (static or kinematic)","const":"static","uniqueKey":"gnss.oneOf.0.processingMode.oneOf.0","typeLabel":"string"},{"type":"string","title":"kinematic","description":"GNSS processing mode (static or kinematic)","const":"kinematic","uniqueKey":"gnss.oneOf.0.processingMode.oneOf.1","typeLabel":"string"},{"type":"null","description":"GNSS processing mode (static or kinematic)","uniqueKey":"gnss.oneOf.0.processingMode.oneOf.2","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.processingMode","typeLabel":"string · string · null"},"antennaType":{"oneOf":[{"type":"string","description":"Antenna model/type string","uniqueKey":"gnss.oneOf.0.antennaType.oneOf.0","typeLabel":"string"},{"type":"null","description":"Antenna model/type string","uniqueKey":"gnss.oneOf.0.antennaType.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.antennaType","typeLabel":"string | null"},"arpHeight":{"oneOf":[{"type":"number","description":"Antenna reference point (ARP) height in metres, measured from marker to bottom of mounting screw","uniqueKey":"gnss.oneOf.0.arpHeight.oneOf.0","typeLabel":"number"},{"type":"null","description":"Antenna reference point (ARP) height in metres, measured from marker to bottom of mounting screw","uniqueKey":"gnss.oneOf.0.arpHeight.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.arpHeight","typeLabel":"number | null"},"azimuth":{"oneOf":[{"type":"number","description":"Azimuth angle of installation in degrees","uniqueKey":"gnss.oneOf.0.azimuth.oneOf.0","typeLabel":"number"},{"type":"null","description":"Azimuth angle of installation in degrees","uniqueKey":"gnss.oneOf.0.azimuth.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.azimuth","typeLabel":"number | null"},"baseStation":{"oneOf":[{"type":"object","title":"GnssBaseStationSummary","description":"Reference base station used for GNSS processing","required":["id","type","name","status","isEnabled"],"properties":{"id":{"description":"Base station ID","type":"number","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.id","typeLabel":"number"},"type":{"oneOf":[{"type":"string","title":"cors","description":"Public Continuously Operating Reference Station network","const":"cors","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.type.oneOf.0","typeLabel":"string"},{"type":"string","title":"private","description":"Privately operated reference station","const":"private","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.type.oneOf.1","typeLabel":"string"},{"type":"string","title":"device","description":"Another Ontoto GNSS device acting as a base station","const":"device","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.type.oneOf.2","typeLabel":"string"}],"isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.type","typeLabel":"string"},"name":{"type":"string","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.name","typeLabel":"string"},"status":{"oneOf":[{"type":"string","title":"active","description":"Receiving data on schedule","const":"active","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.status.oneOf.0","typeLabel":"string"},{"type":"string","title":"inactive","description":"Configured but not currently expected to transmit","const":"inactive","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.status.oneOf.1","typeLabel":"string"},{"type":"string","title":"no_data","description":"No data has been received recently","const":"no_data","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.status.oneOf.2","typeLabel":"string"},{"type":"string","title":"error","description":"Base station is reporting errors","const":"error","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.status.oneOf.3","typeLabel":"string"},{"type":"string","title":"unknown","description":"Status cannot be determined","const":"unknown","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.status.oneOf.4","typeLabel":"string"}],"isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.status","typeLabel":"string"},"isEnabled":{"type":"boolean","isRequired":true,"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0.isEnabled","typeLabel":"boolean"}},"uniqueKey":"gnss.oneOf.0.baseStation.oneOf.0","typeLabel":"GnssBaseStationSummary · object"},{"type":"null","description":"Reference base station used for GNSS processing","uniqueKey":"gnss.oneOf.0.baseStation.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.baseStation","typeLabel":"GnssBaseStationSummary · object | null"},"lastProcessingStatus":{"oneOf":[{"type":"object","description":"Status of the last processing attempt, including optional error message","required":["status"],"properties":{"status":{"oneOf":[{"type":"string","title":"success","description":"Last run produced a valid solution","const":"success","isRequired":true,"uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0.status.oneOf.0","typeLabel":"string"},{"type":"string","title":"failed","description":"Last run completed with errors","const":"failed","isRequired":true,"uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0.status.oneOf.1","typeLabel":"string"},{"type":"string","title":"pending","description":"Run is queued or in progress","const":"pending","isRequired":true,"uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0.status.oneOf.2","typeLabel":"string"},{"type":"string","title":"never_processed","description":"No processing has been attempted yet","const":"never_processed","isRequired":true,"uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0.status.oneOf.3","typeLabel":"string"}],"isRequired":true,"uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0.status","typeLabel":"string"},"error":{"type":"string","uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0.error","typeLabel":"string"}},"uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.0","typeLabel":"object"},{"type":"null","description":"Status of the last processing attempt, including optional error message","uniqueKey":"gnss.oneOf.0.lastProcessingStatus.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.lastProcessingStatus","typeLabel":"object | null"},"lastProcessedAt":{"oneOf":[{"type":"string","description":"Timestamp of the last processing attempt","format":"date-time","uniqueKey":"gnss.oneOf.0.lastProcessedAt.oneOf.0","typeLabel":"string\u003cdate-time>"},{"type":"null","description":"Timestamp of the last processing attempt","uniqueKey":"gnss.oneOf.0.lastProcessedAt.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss.oneOf.0.lastProcessedAt","typeLabel":"string\u003cdate-time> | null"}},"uniqueKey":"gnss.oneOf.0","typeLabel":"object"},{"type":"null","description":"For devices with GNSS support, the GNSS processing configuration","uniqueKey":"gnss.oneOf.1","typeLabel":"null"}],"uniqueKey":"gnss","typeLabel":"object | null"},"sharedBy":{"oneOf":[{"type":"object","title":"SharedBy","description":"Present when this device is shared from another organisation","required":["orgUuid","orgName","permissionLevel"],"properties":{"orgUuid":{"description":"Source organisation UUID that shared this resource","type":"string","isRequired":true,"uniqueKey":"sharedBy.oneOf.0.orgUuid","typeLabel":"string"},"orgName":{"description":"Source organisation name that shared this resource","type":"string","isRequired":true,"uniqueKey":"sharedBy.oneOf.0.orgName","typeLabel":"string"},"permissionLevel":{"oneOf":[{"type":"string","title":"read","description":"Recipient can view the resource but not modify it","const":"read","isRequired":true,"uniqueKey":"sharedBy.oneOf.0.permissionLevel.oneOf.0","typeLabel":"string"},{"type":"string","title":"write","description":"Recipient can view and modify the resource","const":"write","isRequired":true,"uniqueKey":"sharedBy.oneOf.0.permissionLevel.oneOf.1","typeLabel":"string"}],"isRequired":true,"uniqueKey":"sharedBy.oneOf.0.permissionLevel","typeLabel":"string"}},"uniqueKey":"sharedBy.oneOf.0","typeLabel":"SharedBy · object"},{"type":"null","description":"Present when this device is shared from another organisation","uniqueKey":"sharedBy.oneOf.1","typeLabel":"null"}],"uniqueKey":"sharedBy","typeLabel":"SharedBy · object | null"}},"required":["deviceKind","serialNumber","alias","description","name","orgUuid","legacyDeviceId","location","samplingPeriodSeconds","txPeriodSeconds","state","health","lastTxTimestamp","product","hardware","modems","firmware","tags"],"title":"DeviceItem","uniqueKey":"","typeLabel":"DeviceItem · object"},"example":{"deviceKind":"physical","serialNumber":"2CF44434E908","alias":"North mine piezometer","description":"Vibrating wire settlement gauge","name":"NW-PZ-01","orgUuid":"f47ac10b-58cc-4372-a567-0e02b2c3d479","legacyDeviceId":10042,"site":{"uuid":"31d09506-82da-4f9d-960f-a871bae63258","name":"River Dam"},"location":{"lat":-42.8814,"lon":147.3258},"samplingPeriodSeconds":600,"txPeriodSeconds":3600,"state":"active","health":{"battery":{"voltage":3.72,"percentage":87,"estimatedEmptyAt":"2024-08-10T08:42:11.000Z","isCharging":false},"connection":{"lastSeen":"2024-06-15T08:42:11.000Z","status":"online","signalStrength":{"rssi":-71,"rsrp":-95,"rsrq":-12,"signalQuality":"good"},"error":null,"txProtocol":"coap","nextTxTimestamp":"2024-06-15T09:42:11.000Z"},"sensors":{"status":"ok","metadataError":null,"errors":null,"lastDataTimestamp":"2024-06-15T08:41:03.000Z"},"powerSource":"battery"},"lastTxTimestamp":"2024-06-15T08:42:11.000Z","product":"Greyhound","hardware":{"model":"GH5","revision":"1.2"},"modems":[{"type":"lte","model":"EG800Q","imei":"861234056789012","iccid":"89014103211118510720"}],"firmware":{"string":"GH5_REV1.2_VW_1_ff","version":"2.4.1"},"tags":[{"id":12,"name":"Dam monitoring","colour":"#1E88E5"}],"queuedCommand":null,"gnss":null,"sharedBy":null,"sensors":[{"uuid":"b2c3d4e5-f6a7-48b9-80d1-e2f3a4b5c6d7","model":"VW-GENERIC","type":"vibrating_wire","physicalSensor":null,"connectionType":"integrated","name":"VibratingWire_CH1","alias":"VW channel 1","deviceSerialNumber":"2CF44434E908","parameters":[{"uuid":"c3d4e5f6-a7b8-49c0-91e2-f3a4b5c6d7e8","sensorUuid":"b2c3d4e5-f6a7-48b9-80d1-e2f3a4b5c6d7","deviceSerialNumber":"2CF44434E908","alias":"Frequency","name":"frequency_1","sourceType":"raw","parameterType":"frequency","baseUnit":"Hz","displayUnit":"Hz","displayPrecision":2,"suppressFaults":false,"configErrorMessage":null,"status":"ok","lastFaultSummary":null,"lastFaultTimestamp":null,"createdAt":"2024-01-10T00:00:00.000Z","updatedAt":"2024-06-01T12:00:00.000Z"}],"channelIndex":0,"isActive":true,"lastActivatedAt":"2024-01-01T00:00:00.000Z","lastDeactivatedAt":null,"enabled":true}]},"examples":{"Example":{"title":"Example","value":{"deviceKind":"physical","serialNumber":"2CF44434E908","alias":"North mine piezometer","description":"Vibrating wire settlement gauge","name":"NW-PZ-01","orgUuid":"f47ac10b-58cc-4372-a567-0e02b2c3d479","legacyDeviceId":10042,"site":{"uuid":"31d09506-82da-4f9d-960f-a871bae63258","name":"River Dam"},"location":{"lat":-42.8814,"lon":147.3258},"samplingPeriodSeconds":600,"txPeriodSeconds":3600,"state":"active","health":{"battery":{"voltage":3.72,"percentage":87,"estimatedEmptyAt":"2024-08-10T08:42:11.000Z","isCharging":false},"connection":{"lastSeen":"2024-06-15T08:42:11.000Z","status":"online","signalStrength":{"rssi":-71,"rsrp":-95,"rsrq":-12,"signalQuality":"good"},"error":null,"txProtocol":"coap","nextTxTimestamp":"2024-06-15T09:42:11.000Z"},"sensors":{"status":"ok","metadataError":null,"errors":null,"lastDataTimestamp":"2024-06-15T08:41:03.000Z"},"powerSource":"battery"},"lastTxTimestamp":"2024-06-15T08:42:11.000Z","product":"Greyhound","hardware":{"model":"GH5","revision":"1.2"},"modems":[{"type":"lte","model":"EG800Q","imei":"861234056789012","iccid":"89014103211118510720"}],"firmware":{"string":"GH5_REV1.2_VW_1_ff","version":"2.4.1"},"tags":[{"id":12,"name":"Dam monitoring","colour":"#1E88E5"}],"queuedCommand":null,"gnss":null,"sharedBy":null,"sensors":[{"uuid":"b2c3d4e5-f6a7-48b9-80d1-e2f3a4b5c6d7","model":"VW-GENERIC","type":"vibrating_wire","physicalSensor":null,"connectionType":"integrated","name":"VibratingWire_CH1","alias":"VW channel 1","deviceSerialNumber":"2CF44434E908","parameters":[{"uuid":"c3d4e5f6-a7b8-49c0-91e2-f3a4b5c6d7e8","sensorUuid":"b2c3d4e5-f6a7-48b9-80d1-e2f3a4b5c6d7","deviceSerialNumber":"2CF44434E908","alias":"Frequency","name":"frequency_1","sourceType":"raw","parameterType":"frequency","baseUnit":"Hz","displayUnit":"Hz","displayPrecision":2,"suppressFaults":false,"configErrorMessage":null,"status":"ok","lastFaultSummary":null,"lastFaultTimestamp":null,"createdAt":"2024-01-10T00:00:00.000Z","updatedAt":"2024-06-01T12:00:00.000Z"}],"channelIndex":0,"isActive":true,"lastActivatedAt":"2024-01-01T00:00:00.000Z","lastDeactivatedAt":null,"enabled":true}]}}},"exampleType":"examples"}},"exampleType":"examples"},"59f5ea5e-dede-4ad3-a33d-7dad2881238b":{"description":"Invalid request format","content":{"application/json":{"schema":{"example":{"message":"Invalid request body"},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrBadRequest","uniqueKey":"","typeLabel":"ErrBadRequest · object"},"examples":{"Example":{"title":"Example","value":{"message":"Invalid request body"}}},"exampleType":"generated"}},"exampleType":"generated"},"a15ee347-0cf7-4efc-8abe-03d0b82296b9":{"description":"Client must be authenticated","content":{"application/json":{"schema":{"example":{"message":"Authentication required"},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrUnauthorized","uniqueKey":"","typeLabel":"ErrUnauthorized · object"},"examples":{"Example":{"title":"Example","value":{"message":"Authentication required"}}},"exampleType":"generated"}},"exampleType":"generated"},"0ff53889-4ba3-40b3-8a48-110b1e2d67a9":{"description":"Client does not have necessary permissions to access the resource","content":{"application/json":{"schema":{"example":{"message":"You do not have permission to access this resource"},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrForbidden","uniqueKey":"","typeLabel":"ErrForbidden · object"},"examples":{"Example":{"title":"Example","value":{"message":"You do not have permission to access this resource"}}},"exampleType":"generated"}},"exampleType":"generated"},"aac6c0d3-3c67-41b8-b72a-7883db98db59":{"description":"Resource not found","content":{"application/json":{"schema":{"example":{"message":"Resource not found"},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrNotFound","uniqueKey":"","typeLabel":"ErrNotFound · object"},"examples":{"Example":{"title":"Example","value":{"message":"Resource not found"}}},"exampleType":"generated"}},"exampleType":"generated"},"75b1a917-fa89-4255-ad70-48e3f7dea2c2":{"description":"Request could not be completed due to a uniqueness constraint","content":{"application/json":{"schema":{"example":{"message":"Duplicate entry"},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrConflict","uniqueKey":"","typeLabel":"ErrConflict · object"},"examples":{"Example":{"title":"Example","value":{"message":"Duplicate entry"}}},"exampleType":"generated"}},"exampleType":"generated"},"df5da790-e67f-4623-a001-e77c9981d5da":{"description":"Rate limit exceeded. The response carries RateLimit-Limit, RateLimit-Remaining and RateLimit-Reset, plus Retry-After with the seconds to wait before retrying.","content":{"application/json":{"schema":{"example":{"message":"Rate limit of 200 requests per minute exceeded. Retry in 12s."},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrTooManyRequests","uniqueKey":"","typeLabel":"ErrTooManyRequests · object"},"examples":{"Example":{"title":"Example","value":{"message":"Rate limit of 200 requests per minute exceeded. Retry in 12s."}}},"exampleType":"generated"}},"exampleType":"generated"},"0baf2372-e58e-4b70-ab2d-5308fdabb526":{"description":"Unexpected server error","content":{"application/json":{"schema":{"example":{"message":"Internal server error"},"type":"object","properties":{"message":{"description":"Human readable message describing the issue","type":"string","isRequired":true,"uniqueKey":"message","typeLabel":"string"}},"required":["message"],"title":"ErrInternalServerError","uniqueKey":"","typeLabel":"ErrInternalServerError · object"},"examples":{"Example":{"title":"Example","value":{"message":"Internal server error"}}},"exampleType":"generated"}},"exampleType":"generated"}},"security":{"35bec235-e1a0-4b0a-bccd-5494a9acec23":{"ApiKeyAuth":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"ApiKeyAuth"}}},"servers":{"097f7554-67b8-4ade-8714-524e55fbb44c":{"url":"https://api.beta.ontoto.com/v1"}},"processedSecurityOptions":[{"schemes":[{"scheme":{"type":"apiKey","in":"header","name":"x-api-key","scopes":[],"schemeName":"ApiKeyAuth"},"schema":{"title":"x-api-key","type":"string","isRequired":true,"typeLabel":"string","deprecated":false},"schemeName":"ApiKeyAuth","name":"x-api-key"}],"title":"ApiKeyAuth"}]},"originalFileLocation":"openapi.yaml"},"subdomain":"ontoto-fbe6101f","siteName":"Ontoto Docs","title":"Get device - Ontoto Docs","navMaps":{"firstHrefInVersion":{},"firstHrefInLanguage":{}},"lastModified":"2026-05-07T06:42:31.134Z","originalFileLocation":"api-reference/get-device.mdx"},"headHtml":"\u003cscript data-mint-head>(function(){var d=document.documentElement,p=null;if(!p){try{p=localStorage.getItem(\"isDarkMode\")}catch(e){}if(p==='true')p='dark';else if(p==='false')p='light';if(p!=='light'\u0026\u0026p!=='dark'\u0026\u0026p!=='system')p=\"system\"}var r=p==='system'?(matchMedia(\"(prefers-color-scheme: dark)\").matches?'dark':'light'):p;d.classList.remove(r==='dark'?'light':'dark');d.classList.add(r);d.setAttribute(\"data-theme-preference\",p)})();\u003c/script>\u003cmeta data-mint-head name=\"description\" content=\"Returns full detail for a single device, including its sensors.\">\u003cmeta data-mint-head name=\"application-name\" content=\"Ontoto Docs\">\u003cmeta data-mint-head name=\"generator\" content=\"Mintlify\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon/android-chrome-192x192.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"apple-touch-icon\" type=\"image/png\" sizes=\"180x180\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon/apple-touch-icon.png\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon/favicon-16x16.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon/favicon-32x32.png\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon/favicon.ico\" media=\"(prefers-color-scheme: light)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"192x192\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon-dark/android-chrome-192x192.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"16x16\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon-dark/favicon-16x16.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"icon\" type=\"image/png\" sizes=\"32x32\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon-dark/favicon-32x32.png\" media=\"(prefers-color-scheme: dark)\">\u003clink data-mint-head rel=\"shortcut icon\" type=\"image/x-icon\" href=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon-dark/favicon.ico\" media=\"(prefers-color-scheme: dark)\">\u003cmeta data-mint-head property=\"og:title\" content=\"Get device - Ontoto Docs\">\u003cmeta data-mint-head property=\"og:description\" content=\"Returns full detail for a single device, including its sensors.\">\u003cmeta data-mint-head property=\"og:site_name\" content=\"Ontoto Docs\">\u003cmeta data-mint-head property=\"og:url\" content=\"https://docs.beta.ontoto.com/api-reference/get-device\">\u003cmeta data-mint-head property=\"og:type\" content=\"website\">\u003cmeta data-mint-head property=\"og:image\" content=\"https://ontoto-fbe6101f.mintlify.app/_mintlify/api/og/v2?division=Devices\u0026amp;title=Get+device\u0026amp;description=Returns+full+detail+for+a+single+device%2C+including+its+sensors.\u0026amp;theme=640bf5f6d407b9aa95653549\u0026amp;signature=632cdea04b6922df90e8f9367c00f874e18aaf47fdbf1b11b93837a921939b3a\">\u003cmeta data-mint-head property=\"og:image:width\" content=\"1200\">\u003cmeta data-mint-head property=\"og:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"twitter:card\" content=\"summary_large_image\">\u003cmeta data-mint-head name=\"twitter:title\" content=\"Get device - Ontoto Docs\">\u003cmeta data-mint-head name=\"twitter:description\" content=\"Returns full detail for a single device, including its sensors.\">\u003cmeta data-mint-head name=\"twitter:image\" content=\"https://ontoto-fbe6101f.mintlify.app/_mintlify/api/og/v2?division=Devices\u0026amp;title=Get+device\u0026amp;description=Returns+full+detail+for+a+single+device%2C+including+its+sensors.\u0026amp;theme=640bf5f6d407b9aa95653549\u0026amp;signature=632cdea04b6922df90e8f9367c00f874e18aaf47fdbf1b11b93837a921939b3a\">\u003cmeta data-mint-head name=\"twitter:image:width\" content=\"1200\">\u003cmeta data-mint-head name=\"twitter:image:height\" content=\"630\">\u003cmeta data-mint-head name=\"msapplication-config\" content=\"/mintlify-assets/_mintlify/favicons/ontoto-fbe6101f/MdH7qCWRs4ewz4pg/_generated/favicon/browserconfig.xml\">\u003cmeta data-mint-head name=\"apple-mobile-web-app-title\" content=\"Ontoto Docs\">\u003cmeta data-mint-head name=\"msapplication-TileColor\" content=\"#007BFF\">\u003clink data-mint-head rel=\"canonical\" href=\"https://docs.beta.ontoto.com/api-reference/get-device\">\u003clink data-mint-head rel=\"alternate\" type=\"application/xml\" href=\"/sitemap.xml\">\u003clink data-mint-head rel=\"alternate\" type=\"text/markdown\" href=\"/api-reference/get-device.md\">\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@graph\":[{\"@type\":\"Organization\",\"@id\":\"https://docs.beta.ontoto.com/#organization\",\"name\":\"Ontoto Docs\",\"url\":\"https://docs.beta.ontoto.com\",\"logo\":{\"@type\":\"ImageObject\",\"url\":\"https://mintcdn.com/ontoto-fbe6101f/RAvqJ7QBQVtymFi1/logo/ontoto.svg?fit=max\u0026auto=format\u0026n=RAvqJ7QBQVtymFi1\u0026q=85\u0026s=4f12873e51d6f8c6dd60112d9de93a86\"}},{\"@type\":\"WebSite\",\"@id\":\"https://docs.beta.ontoto.com#website\",\"name\":\"Ontoto Docs\",\"url\":\"https://docs.beta.ontoto.com\",\"publisher\":{\"@id\":\"https://docs.beta.ontoto.com/#organization\"}},{\"@type\":\"WebPage\",\"@id\":\"https://docs.beta.ontoto.com/api-reference/get-device#webpage\",\"url\":\"https://docs.beta.ontoto.com/api-reference/get-device\",\"name\":\"Get device\",\"description\":\"Returns full detail for a single device, including its sensors.\",\"dateModified\":\"2026-05-07T06:42:31.134Z\",\"isPartOf\":{\"@id\":\"https://docs.beta.ontoto.com#website\"},\"breadcrumb\":{\"@id\":\"https://docs.beta.ontoto.com/api-reference/get-device#breadcrumb\"}},{\"@type\":\"BreadcrumbList\",\"@id\":\"https://docs.beta.ontoto.com/api-reference/get-device#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Devices\",\"item\":\"https://docs.beta.ontoto.com/api-reference/list-devices\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Get device\",\"item\":\"https://docs.beta.ontoto.com/api-reference/get-device\"}]},{\"@type\":[\"TechArticle\",\"APIReference\"],\"@id\":\"https://docs.beta.ontoto.com/api-reference/get-device#apireference\",\"headline\":\"Get device\",\"name\":\"Get device\",\"description\":\"Returns full detail for a single device, including its sensors.\",\"url\":\"https://docs.beta.ontoto.com/api-reference/get-device\",\"mainEntityOfPage\":{\"@id\":\"https://docs.beta.ontoto.com/api-reference/get-device#webpage\"},\"dateModified\":\"2026-05-07T06:42:31.134Z\",\"publisher\":{\"@id\":\"https://docs.beta.ontoto.com/#organization\"},\"isPartOf\":{\"@id\":\"https://docs.beta.ontoto.com#website\"}}]}\u003c/script>\u003cscript data-mint-head type=\"application/ld+json\">{\"@context\":\"https://schema.org\",\"@type\":\"WebSite\",\"name\":\"Ontoto Docs\",\"creator\":{\"@type\":\"Organization\",\"name\":\"Mintlify\",\"url\":\"https://mintlify.com\"}}\u003c/script>","siteName":"Ontoto Docs","nav":{"global":null,"tabs":[{"tab":"Dashboard Guide","pages":[{"title":"Dashboard Guide","href":"/dashboard/introduction"}]},{"tab":"API Reference","groups":[{"group":"Getting Started","pages":[{"title":"Introduction","href":"/api-reference/introduction"},{"title":"Authentication","href":"/api-reference/authentication"},{"title":"Errors","href":"/api-reference/errors"}]},{"group":"Devices","pages":[{"openapi":"get /devices","title":"List devices","description":"Returns all devices accessible to the API token, with optional filtering.","href":"/api-reference/list-devices"},{"openapi":"get /devices/{sn}","title":"Get device","href":"/api-reference/get-device"}]},{"group":"Sensor Data","pages":[{"openapi":"post /sensor-data","title":"Fetch sensor data","description":"Query time-series sensor readings for one or more parameters. Supports time range filtering, aggregation intervals, and multi-parameter selection across devices.","href":"/api-reference/fetch-sensor-data"},{"openapi":"post /sensor-data/latest","title":"Fetch latest sensor data","href":"/api-reference/fetch-latest-sensor-data"},{"openapi":"post /sensor-data/gnss","title":"Fetch GNSS sensor data","href":"/api-reference/fetch-gnss-sensor-data"},{"openapi":"post /sensor-data/gnss/latest","title":"Fetch latest GNSS sensor data","href":"/api-reference/fetch-latest-gnss-sensor-data"}]},{"group":"Device Groups","pages":[{"openapi":"get /device-groups","title":"List device groups","href":"/api-reference/list-device-groups"},{"openapi":"get /device-groups/{uuid}","title":"Get device group","href":"/api-reference/get-device-group"}]},{"group":"Sites","pages":[{"openapi":"get /sites","title":"List sites","href":"/api-reference/list-sites"},{"openapi":"get /sites/{uuid}","title":"Get site","href":"/api-reference/get-site"}]},{"group":"Outbound Delivery","pages":[{"title":"HTTP delivery","href":"/api-reference/http-delivery"}]}]}]},"title":"Get device - Ontoto Docs","buildId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","deploymentId":"dpl_HcHmUS6i3UwswnTHJUEdcTtwfdTQ","dynamics":["c2aa737661","2b790eda92","b0f84f53ff","a9bb46feb3"],"chunks":["OpenApiReferenceProvider-BRm_l__d.js","utils-f1l1Oc-G.js","cloneDeep-izs3Hzxb.js","_Uint8Array-BVIqJ90l.js","isObjectLike-C8vmzPEN.js","isArray-Dcu1dQ5t.js","utils-BlhqDhJO.js","toString-BX-iyh8G.js","isSymbol-CSH9U2Gm.js","addUniqueKeysToSchema-DHCB7rsC.js","snippetPresets-CYXLx6Hv.js","style-to-object-BY3JEAdk.js","v4-DIgz8zy6.js","ApiExamples-B78P2dEq.js","isEqual-BfaiBbcl.js","usePlaygroundInputsStore-C4YLPVAh.js","shallow-vlLnTDkQ.js","getApiPlaygroundDisplay-D_98hhvf.js","CodeSnippet-DtnZHGqq.js","CodeSnippets-CLFb8KJt.js","Page-kQh739Uz.js","getPastedJson-Cq-zlbnU.js","icon-sN3t983t.js","MethodPill-P_YQ2s09.js","DuplicateIcon-BVzyNsGJ.js","createIcon-B3jqgqC6.js","DynamicMarkdown-Crwq6WG_.js","SectionHeading-C7pGS2Bb.js","axios-vUo_bRtp.js","Markdown-BuPH8yuW.js","clsx-CCOYKgaU.js","lib--scc4DXi.js","lib-B8HbPgcC.js","html-void-elements-mCSPHezU.js","dist-BnkC_6oA.js","katex-YMM-FMeD.js","marked.esm-CZWythHk.js","AssistantPageLink-BM4S31-f.js"]}