openAPISpec.yaml 80 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788899091929394959697989910010110210310410510610710810911011111211311411511611711811912012112212312412512612712812913013113213313413513613713813914014114214314414514614714814915015115215315415515615715815916016116216316416516616716816917017117217317417517617717817918018118218318418518618718818919019119219319419519619719819920020120220320420520620720820921021121221321421521621721821922022122222322422522622722822923023123223323423523623723823924024124224324424524624724824925025125225325425525625725825926026126226326426526626726826927027127227327427527627727827928028128228328428528628728828929029129229329429529629729829930030130230330430530630730830931031131231331431531631731831932032132232332432532632732832933033133233333433533633733833934034134234334434534634734834935035135235335435535635735835936036136236336436536636736836937037137237337437537637737837938038138238338438538638738838939039139239339439539639739839940040140240340440540640740840941041141241341441541641741841942042142242342442542642742842943043143243343443543643743843944044144244344444544644744844945045145245345445545645745845946046146246346446546646746846947047147247347447547647747847948048148248348448548648748848949049149249349449549649749849950050150250350450550650750850951051151251351451551651751851952052152252352452552652752852953053153253353453553653753853954054154254354454554654754854955055155255355455555655755855956056156256356456556656756856957057157257357457557657757857958058158258358458558658758858959059159259359459559659759859960060160260360460560660760860961061161261361461561661761861962062162262362462562662762862963063163263363463563663763863964064164264364464564664764864965065165265365465565665765865966066166266366466566666766866967067167267367467567667767867968068168268368468568668768868969069169269369469569669769869970070170270370470570670770870971071171271371471571671771871972072172272372472572672772872973073173273373473573673773873974074174274374474574674774874975075175275375475575675775875976076176276376476576676776876977077177277377477577677777877978078178278378478578678778878979079179279379479579679779879980080180280380480580680780880981081181281381481581681781881982082182282382482582682782882983083183283383483583683783883984084184284384484584684784884985085185285385485585685785885986086186286386486586686786886987087187287387487587687787887988088188288388488588688788888989089189289389489589689789889990090190290390490590690790890991091191291391491591691791891992092192292392492592692792892993093193293393493593693793893994094194294394494594694794894995095195295395495595695795895996096196296396496596696796896997097197297397497597697797897998098198298398498598698798898999099199299399499599699799899910001001100210031004100510061007100810091010101110121013101410151016101710181019102010211022102310241025102610271028102910301031103210331034103510361037103810391040104110421043104410451046104710481049105010511052105310541055105610571058105910601061106210631064106510661067106810691070107110721073107410751076107710781079108010811082108310841085108610871088108910901091109210931094109510961097109810991100110111021103110411051106110711081109111011111112111311141115111611171118111911201121112211231124112511261127112811291130113111321133113411351136113711381139114011411142114311441145114611471148114911501151115211531154115511561157115811591160116111621163116411651166116711681169117011711172117311741175117611771178117911801181118211831184118511861187118811891190119111921193119411951196119711981199120012011202120312041205120612071208120912101211121212131214121512161217121812191220122112221223122412251226122712281229123012311232123312341235123612371238123912401241124212431244124512461247124812491250125112521253125412551256125712581259126012611262126312641265126612671268126912701271127212731274127512761277127812791280128112821283128412851286128712881289129012911292129312941295129612971298129913001301130213031304130513061307130813091310131113121313131413151316131713181319132013211322132313241325132613271328132913301331133213331334133513361337133813391340134113421343134413451346134713481349135013511352135313541355135613571358135913601361136213631364136513661367136813691370137113721373137413751376137713781379138013811382138313841385138613871388138913901391139213931394139513961397139813991400140114021403140414051406140714081409141014111412141314141415141614171418141914201421142214231424142514261427142814291430143114321433143414351436143714381439144014411442144314441445144614471448144914501451145214531454145514561457145814591460146114621463146414651466146714681469147014711472147314741475147614771478147914801481148214831484148514861487148814891490149114921493149414951496149714981499150015011502150315041505150615071508150915101511151215131514151515161517151815191520152115221523152415251526152715281529153015311532153315341535153615371538153915401541154215431544154515461547154815491550155115521553155415551556155715581559156015611562156315641565156615671568156915701571157215731574157515761577157815791580158115821583158415851586158715881589159015911592159315941595159615971598159916001601160216031604160516061607160816091610161116121613161416151616161716181619162016211622162316241625162616271628162916301631163216331634163516361637163816391640164116421643164416451646164716481649165016511652165316541655165616571658165916601661166216631664166516661667166816691670167116721673167416751676167716781679168016811682168316841685168616871688168916901691169216931694169516961697169816991700170117021703170417051706170717081709171017111712171317141715171617171718171917201721172217231724172517261727172817291730173117321733173417351736173717381739174017411742174317441745174617471748174917501751175217531754175517561757175817591760176117621763176417651766176717681769177017711772177317741775177617771778177917801781178217831784178517861787178817891790179117921793179417951796179717981799180018011802180318041805180618071808180918101811181218131814181518161817181818191820182118221823182418251826182718281829183018311832183318341835183618371838183918401841184218431844184518461847184818491850185118521853185418551856185718581859186018611862186318641865186618671868186918701871187218731874187518761877187818791880188118821883188418851886188718881889189018911892189318941895189618971898189919001901190219031904190519061907190819091910191119121913191419151916191719181919192019211922192319241925192619271928192919301931193219331934193519361937193819391940194119421943194419451946194719481949195019511952195319541955195619571958195919601961196219631964196519661967196819691970197119721973197419751976197719781979198019811982198319841985198619871988198919901991199219931994199519961997199819992000200120022003200420052006200720082009201020112012201320142015201620172018201920202021202220232024202520262027202820292030203120322033203420352036203720382039204020412042204320442045204620472048204920502051205220532054205520562057205820592060206120622063206420652066206720682069207020712072207320742075207620772078207920802081208220832084208520862087208820892090209120922093209420952096209720982099210021012102210321042105210621072108210921102111211221132114211521162117211821192120212121222123212421252126212721282129213021312132213321342135213621372138213921402141214221432144214521462147214821492150215121522153215421552156215721582159216021612162216321642165216621672168216921702171217221732174217521762177217821792180218121822183218421852186218721882189219021912192219321942195219621972198219922002201220222032204220522062207220822092210221122122213221422152216221722182219222022212222222322242225222622272228222922302231223222332234223522362237223822392240224122422243224422452246224722482249225022512252225322542255225622572258225922602261226222632264226522662267226822692270227122722273227422752276227722782279228022812282228322842285228622872288228922902291229222932294229522962297229822992300230123022303230423052306230723082309231023112312231323142315231623172318231923202321232223232324232523262327232823292330233123322333233423352336233723382339234023412342234323442345234623472348234923502351235223532354235523562357235823592360236123622363236423652366236723682369237023712372237323742375237623772378237923802381238223832384238523862387238823892390239123922393239423952396239723982399240024012402240324042405240624072408240924102411241224132414241524162417241824192420242124222423242424252426242724282429243024312432243324342435243624372438243924402441244224432444244524462447244824492450245124522453245424552456245724582459246024612462246324642465246624672468246924702471247224732474247524762477247824792480248124822483248424852486248724882489249024912492249324942495249624972498249925002501250225032504250525062507250825092510251125122513251425152516251725182519252025212522252325242525252625272528252925302531253225332534253525362537253825392540254125422543254425452546254725482549255025512552255325542555
  1. openapi: "3.0.0"
  2. info:
  3. version: 1.0.0
  4. title: SensLog Telemetry
  5. servers:
  6. - url: http://127.0.0.1:8080
  7. - url: https://theros.wirelessinfo.cz
  8. paths:
  9. /info:
  10. get: # done
  11. operationId: infoGET
  12. summary: Information about running instance
  13. responses:
  14. 200:
  15. description: Instance information
  16. content:
  17. application/json:
  18. schema:
  19. $ref: "#/components/schemas/Info"
  20. default:
  21. description: unexpected error
  22. content:
  23. application/json:
  24. schema:
  25. $ref: "#/components/schemas/Error"
  26. /campaigns:
  27. get: # done
  28. operationId: campaignsGET
  29. summary: Publish info about all campaigns
  30. parameters:
  31. - $ref: '#/components/parameters/zoneParam'
  32. - $ref: '#/components/parameters/navigationLinksParam'
  33. responses:
  34. 200:
  35. description: JSON array of basic info of each campaign
  36. content:
  37. application/json:
  38. schema:
  39. type: array
  40. items:
  41. $ref: '#/components/schemas/CampaignBasicInfo'
  42. default:
  43. description: unexpected error
  44. content:
  45. application/json:
  46. schema:
  47. $ref: '#/components/schemas/Error'
  48. /campaigns/{campaignId}:
  49. get: # done
  50. operationId: campaignIdGET
  51. summary: Publish info about a campaign
  52. parameters:
  53. - $ref: '#/components/parameters/campaignIdParam'
  54. - $ref: '#/components/parameters/zoneParam'
  55. - $ref: '#/components/parameters/navigationLinksParam'
  56. responses:
  57. 200:
  58. description: JSON object containing info about a campaign
  59. content:
  60. application/json:
  61. schema:
  62. $ref: '#/components/schemas/CampaignDetailInfo'
  63. default:
  64. description: unexpected error
  65. content:
  66. application/json:
  67. schema:
  68. $ref: '#/components/schemas/Error'
  69. /campaigns/{campaignId}/units:
  70. get: # done
  71. operationId: campaignIdUnitsGET
  72. summary: Publish info about the campaign's units
  73. parameters:
  74. - $ref: '#/components/parameters/campaignIdParam'
  75. - $ref: '#/components/parameters/zoneParam'
  76. - $ref: '#/components/parameters/navigationLinksParam'
  77. responses:
  78. 200:
  79. description: JSON Array containing info about campaign's units
  80. content:
  81. application/json:
  82. schema:
  83. type: array
  84. items:
  85. $ref: '#/components/schemas/CampaignUnitBasicInfo'
  86. default:
  87. description: unexpected error
  88. content:
  89. application/json:
  90. schema:
  91. $ref: '#/components/schemas/Error'
  92. /campaigns/{campaignId}/units/observations:
  93. get: # done
  94. operationId: campaignIdUnitsObservationsGET
  95. summary: Publish info about all data of units merged together within the campaign
  96. parameters:
  97. - $ref: '#/components/parameters/campaignIdParam'
  98. - $ref: '#/components/parameters/fromParam'
  99. - $ref: '#/components/parameters/toParam'
  100. - $ref: '#/components/parameters/zoneParam'
  101. - $ref: '#/components/parameters/offsetParam'
  102. - $ref: '#/components/parameters/limitParam'
  103. - $ref: '#/components/parameters/navigationLinksParam'
  104. responses:
  105. 200:
  106. description: JSON containing stream of telemetry data
  107. content:
  108. application/json:
  109. schema:
  110. $ref: '#/components/schemas/CampaignObservation'
  111. default:
  112. description: unexpected error
  113. content:
  114. application/json:
  115. schema:
  116. $ref: '#/components/schemas/Error'
  117. /campaigns/{campaignId}/units/observations/locations:
  118. get: # done
  119. operationId: campaignIdUnitsObservationsLocationsGET
  120. summary: Publish info about all data of units merged together within the campaign
  121. parameters:
  122. - $ref: '#/components/parameters/campaignIdParam'
  123. - $ref: '#/components/parameters/limitPerUnitParam'
  124. - $ref: '#/components/parameters/fromParam'
  125. - $ref: '#/components/parameters/toParam'
  126. - $ref: '#/components/parameters/zoneParam'
  127. - $ref: '#/components/parameters/sortParam'
  128. - $ref: '#/components/parameters/navigationLinksParam'
  129. responses:
  130. 200:
  131. description: JSON containing stream of telemetry data
  132. content:
  133. application/json:
  134. schema:
  135. $ref: '#/components/schemas/CampaignUnitsLocations'
  136. default:
  137. description: unexpected error
  138. content:
  139. application/json:
  140. schema:
  141. $ref: '#/components/schemas/Error'
  142. /campaigns/{campaignId}/units/{unitId}:
  143. get: # done
  144. operationId: campaignIdUnitIdGET
  145. summary: Publish info about the unit within its campaign's scope
  146. parameters:
  147. - $ref: '#/components/parameters/campaignIdParam'
  148. - $ref: '#/components/parameters/unitIdParam'
  149. - $ref: '#/components/parameters/zoneParam'
  150. - $ref: '#/components/parameters/navigationLinksParam'
  151. responses:
  152. 200:
  153. description: JSON Object containing info about the unit within its campaign' scope
  154. content:
  155. application/json:
  156. schema:
  157. $ref: '#/components/schemas/CampaignUnitDetailInfo'
  158. default:
  159. description: unexpected error
  160. content:
  161. application/json:
  162. schema:
  163. $ref: '#/components/schemas/Error'
  164. /campaigns/{campaignId}/units/{unitId}/observations:
  165. get: # done
  166. operationId: campaignIdUnitIdObservationsGET
  167. summary: Publish info about all data of the unit within the campaign
  168. parameters:
  169. - $ref: '#/components/parameters/campaignIdParam'
  170. - $ref: '#/components/parameters/unitIdParam'
  171. - $ref: '#/components/parameters/fromParam'
  172. - $ref: '#/components/parameters/toParam'
  173. - $ref: '#/components/parameters/zoneParam'
  174. - $ref: '#/components/parameters/offsetParam'
  175. - $ref: '#/components/parameters/limitParam'
  176. - $ref: '#/components/parameters/navigationLinksParam'
  177. responses:
  178. 200:
  179. description: JSON containing stream of telemetry data
  180. content:
  181. application/json:
  182. schema:
  183. $ref: '#/components/schemas/CampaignUnitObservation'
  184. default:
  185. description: unexpected error
  186. content:
  187. application/json:
  188. schema:
  189. $ref: '#/components/schemas/Error'
  190. /campaigns/{campaignId}/units/{unitId}/observations/locations:
  191. get: # done
  192. operationId: campaignIdUnitIdLocationsGET
  193. summary: Publish locations of the unit within the campaign
  194. parameters:
  195. - $ref: '#/components/parameters/campaignIdParam'
  196. - $ref: '#/components/parameters/unitIdParam'
  197. - $ref: '#/components/parameters/fromParam'
  198. - $ref: '#/components/parameters/toParam'
  199. - $ref: '#/components/parameters/zoneParam'
  200. - $ref: '#/components/parameters/offsetParam'
  201. - $ref: '#/components/parameters/limitParam'
  202. - $ref: '#/components/parameters/filterParam'
  203. - $ref: '#/components/parameters/navigationLinksParam'
  204. responses:
  205. 200:
  206. description: JSON containing stream of locations
  207. content:
  208. application/json:
  209. schema:
  210. $ref: '#/components/schemas/CampaignUnitLocation'
  211. default:
  212. description: unexpected error
  213. content:
  214. application/json:
  215. schema:
  216. $ref: '#/components/schemas/Error'
  217. /campaigns/{campaignId}/units/{unitId}/sensors:
  218. get: # done
  219. operationId: campaignIdUnitIdSensorsGET
  220. summary: Publish info about all sensors of the unit within the campaign
  221. parameters:
  222. - $ref: '#/components/parameters/campaignIdParam'
  223. - $ref: '#/components/parameters/unitIdParam'
  224. - $ref: '#/components/parameters/navigationLinksParam'
  225. responses:
  226. 200:
  227. description: JSON containing information of sensors assigned to the unit within its campaign
  228. content:
  229. application/json:
  230. schema:
  231. type: array
  232. items:
  233. $ref: '#/components/schemas/CampaignUnitBasicSensor'
  234. default:
  235. description: unexpected error
  236. content:
  237. application/json:
  238. schema:
  239. $ref: '#/components/schemas/Error'
  240. /campaigns/{campaignId}/units/{unitId}/sensors/{sensorId}:
  241. get: # done
  242. operationId: campaignIdUnitIdSensorIdGET
  243. summary: Publish info about all sensors asociated with the unit and the campaign
  244. parameters:
  245. - $ref: '#/components/parameters/campaignIdParam'
  246. - $ref: '#/components/parameters/unitIdParam'
  247. - $ref: '#/components/parameters/sensorIdParam'
  248. - $ref: '#/components/parameters/navigationLinksParam'
  249. responses:
  250. 200:
  251. description: JSON Object containing info about the sensor
  252. content:
  253. application/json:
  254. schema:
  255. $ref: '#/components/schemas/CampaignUnitDetailedSensor'
  256. default:
  257. description: unexpected error
  258. content:
  259. application/json:
  260. schema:
  261. $ref: '#/components/schemas/Error'
  262. /campaigns/{campaignId}/units/{unitId}/sensors/{sensorId}/observations:
  263. get: # done // DODO fromParam and toParam are missing?
  264. operationId: campaignIdUnitIdSensorIdObservationsGET
  265. summary: Publish info about all data of the unit within the campaign
  266. parameters:
  267. - $ref: '#/components/parameters/campaignIdParam'
  268. - $ref: '#/components/parameters/unitIdParam'
  269. - $ref: '#/components/parameters/sensorIdParam'
  270. - $ref: '#/components/parameters/zoneParam'
  271. - $ref: '#/components/parameters/offsetParam'
  272. - $ref: '#/components/parameters/limitParam'
  273. - $ref: '#/components/parameters/navigationLinksParam'
  274. responses:
  275. 200:
  276. description: JSON containing stream of telemetry data
  277. content:
  278. application/json:
  279. schema:
  280. $ref: '#/components/schemas/CampaignUnitSensorObservation'
  281. default:
  282. description: unexpected error
  283. content:
  284. application/json:
  285. schema:
  286. $ref: '#/components/schemas/Error'
  287. /units:
  288. get: # done
  289. operationId: unitsGET
  290. summary: Publish info about all units
  291. parameters:
  292. - $ref: '#/components/parameters/navigationLinksParam'
  293. responses:
  294. 200:
  295. description: JSON array of basic info of each unit
  296. content:
  297. application/json:
  298. schema:
  299. type: array
  300. items:
  301. $ref: '#/components/schemas/UnitBasicInfo'
  302. default:
  303. description: unexpected error
  304. content:
  305. application/json:
  306. schema:
  307. $ref: '#/components/schemas/Error'
  308. /units/{unitId}:
  309. get: # done
  310. operationId: unitIdGET
  311. summary: Publish info about the unit
  312. parameters:
  313. - $ref: '#/components/parameters/unitIdParam'
  314. - $ref: '#/components/parameters/navigationLinksParam'
  315. responses:
  316. 200:
  317. description: JSON Object of info of the unit
  318. content:
  319. application/json:
  320. schema:
  321. $ref: '#/components/schemas/UnitDetailInfo'
  322. default:
  323. description: unexpected error
  324. content:
  325. application/json:
  326. schema:
  327. $ref: '#/components/schemas/Error'
  328. /units/{unitId}/sensors:
  329. get: # done
  330. operationId: unitIdSensorsGET
  331. summary: Publish info about sensors assigned to the unit
  332. parameters:
  333. - $ref: '#/components/parameters/unitIdParam'
  334. - $ref: '#/components/parameters/navigationLinksParam'
  335. responses:
  336. 200:
  337. description: JSON Array of info of the sensors
  338. content:
  339. application/json:
  340. schema:
  341. type: array
  342. items:
  343. $ref: '#/components/schemas/UnitSensorBasicInfo'
  344. default:
  345. description: unexpected error
  346. content:
  347. application/json:
  348. schema:
  349. $ref: '#/components/schemas/Error'
  350. /units/{unitId}/campaigns:
  351. get: # done
  352. operationId: unitIdCampaignsGET
  353. summary: Publish info about campaigns where the unit was/is assigned
  354. parameters:
  355. - $ref: '#/components/parameters/unitIdParam'
  356. - $ref: '#/components/parameters/zoneParam'
  357. - $ref: '#/components/parameters/navigationLinksParam'
  358. responses:
  359. 200:
  360. description: JSON Array of info about campaigns
  361. content:
  362. application/json:
  363. schema:
  364. type: array
  365. items:
  366. $ref: '#/components/schemas/UnitCampaignBasicInfo'
  367. default:
  368. description: unexpected error
  369. content:
  370. application/json:
  371. schema:
  372. $ref: '#/components/schemas/Error'
  373. /sensors:
  374. get: # done
  375. operationId: sensorsGET
  376. summary: Publish info about all sensors
  377. parameters:
  378. - $ref: '#/components/parameters/navigationLinksParam'
  379. responses:
  380. 200:
  381. description: JSON Array of info about sensors
  382. content:
  383. application/json:
  384. schema:
  385. type: array
  386. items:
  387. $ref: '#/components/schemas/SensorBasicInfo'
  388. default:
  389. description: unexpected error
  390. content:
  391. application/json:
  392. schema:
  393. $ref: '#/components/schemas/Error'
  394. /sensors/{sensorId}:
  395. get: # done
  396. operationId: sensorIdGET
  397. summary: Publish info about the sensor
  398. parameters:
  399. - $ref: '#/components/parameters/sensorIdParam'
  400. - $ref: '#/components/parameters/navigationLinksParam'
  401. responses:
  402. 200:
  403. description: JSON Object of info about the sensor
  404. content:
  405. application/json:
  406. schema:
  407. $ref: '#/components/schemas/SensorDetailInfo'
  408. default:
  409. description: unexpected error
  410. content:
  411. application/json:
  412. schema:
  413. $ref: '#/components/schemas/Error'
  414. /sensors/{sensorId}/units:
  415. get: # done
  416. operationId: sensorIdUnitsGET
  417. summary: Publish info about units to whom the sensor is assigned
  418. parameters:
  419. - $ref: '#/components/parameters/sensorIdParam'
  420. - $ref: '#/components/parameters/navigationLinksParam'
  421. responses:
  422. 200:
  423. description: JSON Array of info about the units
  424. content:
  425. application/json:
  426. schema:
  427. type: array
  428. items:
  429. $ref: '#/components/schemas/SensorUnitBasicInfo'
  430. default:
  431. description: unexpected error
  432. content:
  433. application/json:
  434. schema:
  435. $ref: '#/components/schemas/Error'
  436. /phenomenons:
  437. get: # done
  438. operationId: phenomenonsGET
  439. summary: Publish info about all phenomenons
  440. parameters:
  441. - $ref: '#/components/parameters/navigationLinksParam'
  442. responses:
  443. 200:
  444. description: JSON Array of info about phenomenons
  445. content:
  446. application/json:
  447. schema:
  448. type: array
  449. items:
  450. $ref: '#/components/schemas/PhenomenonBasicInfo'
  451. default:
  452. description: unexpected error
  453. content:
  454. application/json:
  455. schema:
  456. $ref: '#/components/schemas/Error'
  457. /phenomenons/{phenomenonId}:
  458. get: # done
  459. operationId: phenomenonIdGET
  460. summary: Publish info about the phenomenon
  461. parameters:
  462. - $ref: '#/components/parameters/phenomenonIdParam'
  463. - $ref: '#/components/parameters/navigationLinksParam'
  464. responses:
  465. 200:
  466. description: JSON Object of info about the phenomenon
  467. content:
  468. application/json:
  469. schema:
  470. $ref: '#/components/schemas/PhenomenonDetailInfo'
  471. default:
  472. description: unexpected error
  473. content:
  474. application/json:
  475. schema:
  476. $ref: '#/components/schemas/Error'
  477. /phenomenons/{phenomenonId}/sensors:
  478. get: # done
  479. operationId: phenomenonIdSensorsGET
  480. summary: Publish info about sensors of the phenomenon
  481. parameters:
  482. - $ref: '#/components/parameters/phenomenonIdParam'
  483. - $ref: '#/components/parameters/navigationLinksParam'
  484. responses:
  485. 200:
  486. description: JSON Array of info about sensors
  487. content:
  488. application/json:
  489. schema:
  490. type: array
  491. items:
  492. $ref: '#/components/schemas/PhenomenonSensorBasicInfo'
  493. default:
  494. description: unexpected error
  495. content:
  496. application/json:
  497. schema:
  498. $ref: '#/components/schemas/Error'
  499. /drivers:
  500. get: # done
  501. operationId: driversGET
  502. summary: Publish basic info about all drivers
  503. parameters:
  504. - $ref: '#/components/parameters/navigationLinksParam'
  505. responses:
  506. 200:
  507. description: JSON Array of basic info about drivers
  508. content:
  509. application/json:
  510. schema:
  511. type: array
  512. items:
  513. $ref: '#/components/schemas/DriverBasicInfo'
  514. default:
  515. description: unexpected error
  516. content:
  517. application/json:
  518. schema:
  519. $ref: '#/components/schemas/Error'
  520. /drivers/{driverId}:
  521. get:
  522. operationId: driverIdGET
  523. summary: Publish detailed info about the driver
  524. parameters:
  525. - $ref: '#/components/parameters/driverIdParam'
  526. - $ref: '#/components/parameters/navigationLinksParam'
  527. responses:
  528. 200:
  529. description: JSON Object of detailed info about the driver
  530. content:
  531. application/json:
  532. schema:
  533. $ref: '#/components/schemas/DriverDetailInfo'
  534. default:
  535. description: unexpected error
  536. content:
  537. application/json:
  538. schema:
  539. $ref: '#/components/schemas/Error'
  540. /drivers/{driverId}/units:
  541. get:
  542. operationId: driverIdUnitsGET
  543. summary: Publish basic info about driver's units
  544. parameters:
  545. - $ref: '#/components/parameters/driverIdParam'
  546. - $ref: '#/components/parameters/fromParam'
  547. - $ref: '#/components/parameters/toParam'
  548. - $ref: '#/components/parameters/navigationLinksParam'
  549. responses:
  550. 200:
  551. description: JSON Array of basic info about units
  552. content:
  553. application/json:
  554. schema:
  555. type: array
  556. items:
  557. $ref: '#/components/schemas/DriverUnitBasicInfo'
  558. default:
  559. description: unexpected error
  560. content:
  561. application/json:
  562. schema:
  563. $ref: '#/components/schemas/Error'
  564. /drivers/{driverId}/units/{unitId}:
  565. get:
  566. operationId: driverIdUnitIdGET
  567. summary: Publish detailed info about driver's unit
  568. parameters:
  569. - $ref: '#/components/parameters/driverIdParam'
  570. - $ref: '#/components/parameters/unitIdParam'
  571. - $ref: '#/components/parameters/navigationLinksParam'
  572. responses:
  573. 200:
  574. description: JSON Object of detailed info about driver's unit
  575. content:
  576. application/json:
  577. schema:
  578. $ref: '#/components/schemas/DriverUnitDetailInfo'
  579. default:
  580. description: unexpected error
  581. content:
  582. application/json:
  583. schema:
  584. $ref: '#/components/schemas/Error'
  585. /drivers/{driverId}/units/{unitId}/actions:
  586. get:
  587. operationId: driverIdUnitIdActionsGET
  588. summary: Publish basic info actions performed on the unit by the driver
  589. parameters:
  590. - $ref: '#/components/parameters/driverIdParam'
  591. - $ref: '#/components/parameters/unitIdParam'
  592. - $ref: '#/components/parameters/navigationLinksParam'
  593. responses:
  594. 200:
  595. description: JSON Object of actions
  596. content:
  597. application/json:
  598. schema:
  599. type: array
  600. items:
  601. $ref: '#/components/schemas/DriverUnitActionBasicInfo'
  602. default:
  603. description: unexpected error
  604. content:
  605. application/json:
  606. schema:
  607. $ref: '#/components/schemas/Error'
  608. /drivers/{driverId}/actions:
  609. get:
  610. operationId: driverIdActionsGET
  611. summary: Publish basic info about driver's actions
  612. parameters:
  613. - $ref: '#/components/parameters/driverIdParam'
  614. - $ref: '#/components/parameters/navigationLinksParam'
  615. responses:
  616. 200:
  617. description: JSON Array of basic info about driver's actions'
  618. content:
  619. application/json:
  620. schema:
  621. type: array
  622. items:
  623. $ref: '#/components/schemas/DriverActionBasicInfo'
  624. default:
  625. description: unexpected error
  626. content:
  627. application/json:
  628. schema:
  629. $ref: '#/components/schemas/Error'
  630. /drivers/{driverId}/actions/{actionId}:
  631. get:
  632. operationId: driverIdActionIdGET
  633. summary: Publish detailed info about the driver's action
  634. parameters:
  635. - $ref: '#/components/parameters/driverIdParam'
  636. - $ref: '#/components/parameters/actionIdParam'
  637. - $ref: '#/components/parameters/navigationLinksParam'
  638. responses:
  639. 200:
  640. description: JSON Object of detailed info about the driver's action
  641. content:
  642. application/json:
  643. schema:
  644. $ref: '#/components/schemas/DriverActionDetailInfo'
  645. default:
  646. description: unexpected error
  647. content:
  648. application/json:
  649. schema:
  650. $ref: '#/components/schemas/Error'
  651. /drivers/{driverId}/actions/{actionId}/units:
  652. get:
  653. operationId: driverIdActionIdUnitsGET
  654. summary: Publish basic info about units on which the driver performed its action
  655. parameters:
  656. - $ref: '#/components/parameters/driverIdParam'
  657. - $ref: '#/components/parameters/actionIdParam'
  658. - $ref: '#/components/parameters/navigationLinksParam'
  659. responses:
  660. 200:
  661. description: JSON Array of units
  662. content:
  663. application/json:
  664. schema:
  665. type: array
  666. items:
  667. $ref: '#/components/schemas/DriverActionUnitBasicInfo'
  668. default:
  669. description: unexpected error
  670. content:
  671. application/json:
  672. schema:
  673. $ref: '#/components/schemas/Error'
  674. /drivers/{driverId}/units/{unitId}/actions/{actionId}:
  675. get:
  676. operationId: driverIdUnitIdActionIdGET
  677. summary: Publish detailed info about the action performed on the unit by the driver
  678. parameters:
  679. - $ref: '#/components/parameters/driverIdParam'
  680. - $ref: '#/components/parameters/unitIdParam'
  681. - $ref: '#/components/parameters/actionIdParam'
  682. - $ref: '#/components/parameters/navigationLinksParam'
  683. responses:
  684. 200:
  685. description: JSON Object of the action
  686. content:
  687. application/json:
  688. schema:
  689. $ref: '#/components/schemas/DriverUnitActionDetailInfo'
  690. default:
  691. description: unexpected error
  692. content:
  693. application/json:
  694. schema:
  695. $ref: '#/components/schemas/Error'
  696. /drivers/{driverId}/units/{unitId}/actions/{actionId}/events:
  697. get:
  698. operationId: driverIdUnitIdActionIdEventsGET
  699. summary: Publish basic info about events that where performed on the unit byt the driver with the specific action
  700. parameters:
  701. - $ref: '#/components/parameters/driverIdParam'
  702. - $ref: '#/components/parameters/unitIdParam'
  703. - $ref: '#/components/parameters/actionIdParam'
  704. - $ref: '#/components/parameters/navigationLinksParam'
  705. responses:
  706. 200:
  707. description: JSON Array of events
  708. content:
  709. application/json:
  710. schema:
  711. type: array
  712. items:
  713. $ref: '#/components/schemas/EventBasicInfo'
  714. default:
  715. description: unexpected error
  716. content:
  717. application/json:
  718. schema:
  719. $ref: '#/components/schemas/Error'
  720. /drivers/{driverId}/units/{unitId}/actions/{actionId}/events/{eventId}:
  721. get:
  722. operationId: driverIdUnitIdActionIdEventsGET
  723. summary: Publish basic info about events that where performed on the unit byt the driver with the specific action
  724. parameters:
  725. - $ref: '#/components/parameters/driverIdParam'
  726. - $ref: '#/components/parameters/unitIdParam'
  727. - $ref: '#/components/parameters/actionIdParam'
  728. - $ref: '#/components/parameters/eventIdParam'
  729. - $ref: '#/components/parameters/navigationLinksParam'
  730. responses:
  731. 200:
  732. description: JSON Array of events
  733. content:
  734. application/json:
  735. schema:
  736. $ref: '#/components/schemas/EventDetailInfo'
  737. default:
  738. description: unexpected error
  739. content:
  740. application/json:
  741. schema:
  742. $ref: '#/components/schemas/Error'
  743. /drivers/{driverId}/units/{unitId}/actions/{actionId}/events/{eventId}/observations:
  744. get:
  745. operationId: driverIdUnitIdActionIdEventIdObservationsGET
  746. summary: Publish telemetry observations created by the driver while performing specific action on the unit at the time/event
  747. parameters:
  748. - $ref: '#/components/parameters/driverIdParam'
  749. - $ref: '#/components/parameters/unitIdParam'
  750. - $ref: '#/components/parameters/actionIdParam'
  751. - $ref: '#/components/parameters/eventIdParam'
  752. - $ref: '#/components/parameters/zoneParam'
  753. - $ref: '#/components/parameters/offsetParam'
  754. - $ref: '#/components/parameters/limitParam'
  755. - $ref: '#/components/parameters/navigationLinksParam'
  756. responses:
  757. 200:
  758. description: JSON Object of telemetry observations
  759. content:
  760. application/json:
  761. schema:
  762. $ref: '#/components/schemas/ActionEventObservation'
  763. default:
  764. description: unexpected error
  765. content:
  766. application/json:
  767. schema:
  768. $ref: '#/components/schemas/Error'
  769. /drivers/{driverId}/units/{unitId}/actions/{actionId}/events/{eventId}/observations/locations:
  770. get:
  771. operationId: driverIdUnitIdActionIdEventIdLocationsGET
  772. summary: Publish locations created by the driver while performing specific action on the unit at the time/event
  773. parameters:
  774. - $ref: '#/components/parameters/driverIdParam'
  775. - $ref: '#/components/parameters/unitIdParam'
  776. - $ref: '#/components/parameters/actionIdParam'
  777. - $ref: '#/components/parameters/eventIdParam'
  778. - $ref: '#/components/parameters/fromParam'
  779. - $ref: '#/components/parameters/toParam'
  780. - $ref: '#/components/parameters/zoneParam'
  781. - $ref: '#/components/parameters/offsetParam'
  782. - $ref: '#/components/parameters/limitParam'
  783. - $ref: '#/components/parameters/navigationLinksParam'
  784. responses:
  785. 200:
  786. description: JSON containing stream of locations
  787. content:
  788. application/json:
  789. schema:
  790. $ref: '#/components/schemas/ActionEventLocation'
  791. default:
  792. description: unexpected error
  793. content:
  794. application/json:
  795. schema:
  796. $ref: '#/components/schemas/Error'
  797. components:
  798. parameters:
  799. campaignIdParam:
  800. in: path
  801. name: campaignId
  802. schema:
  803. type: integer
  804. format: int64
  805. required: true
  806. description: Numeric ID of the campaign to get
  807. unitIdParam:
  808. in: path
  809. name: unitId
  810. schema:
  811. type: integer
  812. required: true
  813. description: Numeric ID of the unit to get
  814. sensorIdParam:
  815. in: path
  816. name: sensorId
  817. schema:
  818. type: integer
  819. required: true
  820. description: Numeric ID of the sensor to get
  821. phenomenonIdParam:
  822. in: path
  823. name: phenomenonId
  824. schema:
  825. type: integer
  826. format: int64
  827. required: true
  828. description: Numeric ID of the phenomenon to get
  829. driverIdParam:
  830. in: path
  831. name: driverId
  832. schema:
  833. type: integer
  834. format: int64
  835. required: true
  836. description: Numeric ID of the driver to get
  837. actionIdParam:
  838. in: path
  839. name: actionId
  840. schema:
  841. type: integer
  842. format: int64
  843. required: true
  844. description: Numeric ID of the action to get
  845. eventIdParam:
  846. in: path
  847. name: eventId
  848. schema:
  849. type: integer
  850. format: int64
  851. required: true
  852. description: Numeric ID of the event to get
  853. zoneParam:
  854. in: query
  855. name: zone
  856. schema:
  857. type: string
  858. default: UTC
  859. required: false
  860. examples:
  861. UTC:
  862. value: UTC
  863. GMT:
  864. value: GMT
  865. navigationLinksParam:
  866. in: query
  867. name: navigationLinks
  868. schema:
  869. type: boolean
  870. default: true
  871. description: Option to disable @NavigationLinks in a response
  872. limitParam:
  873. in: query
  874. name: limit
  875. schema:
  876. type: integer
  877. format: int64
  878. required: false
  879. example: 100
  880. offsetParam:
  881. in: query
  882. name: offset
  883. schema:
  884. type: integer
  885. format: int64
  886. example: 100
  887. fromParam:
  888. in: query
  889. name: from
  890. schema:
  891. type: string
  892. format: date-time
  893. required: false
  894. example: 2017-07-21T17:32:28Z
  895. toParam:
  896. in: query
  897. name: to
  898. schema:
  899. type: string
  900. format: date-time
  901. required: false
  902. example: 2017-07-21T17:32:28Z
  903. limitPerUnitParam:
  904. in: query
  905. name: limitPerUnit
  906. required: true
  907. schema:
  908. type: integer
  909. default: 1
  910. examples:
  911. One locations:
  912. value: 1
  913. summary: One location of each unit
  914. sortParam:
  915. in: query
  916. name: sort
  917. schema:
  918. type: string
  919. enum: [ asc, desc ]
  920. default: asc
  921. examples:
  922. Descending Order:
  923. value: desc
  924. summary: Last location of the units. Last location is combination of sort=desc & limitPerUnit=1
  925. Ascending Order:
  926. value: asc
  927. filterParam:
  928. in: query
  929. name: filter
  930. schema:
  931. type: string
  932. required: false
  933. examples:
  934. Value of Sensor ID 105 > 10:
  935. value: sensorId(105)gt10
  936. summary: Filter locations of units having value of sensor id 105 > 10
  937. Value:
  938. value: driverId(34245)eq3
  939. summary: Filter locations of units driven by Driver ID 34245 == Activity 3
  940. schemas:
  941. CampaignBasicInfo:
  942. type: object
  943. required:
  944. - id
  945. - fromTime
  946. - toTime
  947. x-NavigationLinks:
  948. Campaign@NavigationLink:
  949. type: string
  950. format: uri
  951. x-graph-properties:
  952. linkTo: campaignIdGET
  953. color: blue
  954. properties:
  955. Campaign@NavigationLink:
  956. $ref: '#/components/schemas/CampaignBasicInfo/x-NavigationLinks/Campaign@NavigationLink'
  957. id:
  958. type: integer
  959. format: int64
  960. description:
  961. type: string
  962. fromTime:
  963. type: string
  964. format: date-time
  965. toTime:
  966. type: string
  967. format: date-time
  968. example:
  969. Campaign@NavigationLink: "<domain>/campaigns/1"
  970. id: 1
  971. description: "Campaign 1"
  972. fromTime: "2023-01-25 15:35:32Z"
  973. toTime: "2023-03-20 10:35:32Z"
  974. CampaignDetailInfo:
  975. type: object
  976. required:
  977. - id
  978. - fromTime
  979. - toTime
  980. x-NavigationLinks:
  981. self@NavigationLink:
  982. type: string
  983. format: uri
  984. x-graph-properties:
  985. linkTo: campaignIdGET
  986. Observations@NavigationLink:
  987. type: string
  988. format: uri
  989. x-graph-properties:
  990. linkTo: campaignIdUnitsObservationsGET
  991. Locations@NavigationLink:
  992. type: string
  993. format: uri
  994. x-graph-properties:
  995. linkTo: campaignIdUnitsObservationsLocationsGET
  996. Units@NavigationLink:
  997. type: string
  998. format: uri
  999. x-graph-properties:
  1000. linkTo: campaignIdUnitsGET
  1001. properties:
  1002. self@NavigationLink:
  1003. $ref: '#/components/schemas/CampaignDetailInfo/x-NavigationLinks/self@NavigationLink'
  1004. Observations@NavigationLink:
  1005. $ref: '#/components/schemas/CampaignDetailInfo/x-NavigationLinks/Observations@NavigationLink'
  1006. Locations@NavigationLink:
  1007. $ref: '#/components/schemas/CampaignDetailInfo/x-NavigationLinks/Locations@NavigationLink'
  1008. Units@NavigationLink:
  1009. $ref: '#/components/schemas/CampaignDetailInfo/x-NavigationLinks/Units@NavigationLink'
  1010. id:
  1011. description: Identifier of the campaign
  1012. type: integer
  1013. format: int64
  1014. description:
  1015. description: Text description of the campaign
  1016. type: string
  1017. fromTime:
  1018. description: Time when the campaign starts
  1019. type: string
  1020. format: date-time
  1021. toTime:
  1022. description: Time when the campaign ends
  1023. type: string
  1024. format: date-time
  1025. example:
  1026. self@NavigationLink: "<domain>/campaigns/1"
  1027. Observations@NavigationLink: "<domain>/campaigns/1/units/observations"
  1028. Locations@NavigationLink: "<domain>/campaigns/1/units/observations/locations"
  1029. Units@NavigationLink: "<domain>/campaigns/1/units"
  1030. id: 1
  1031. description: "Campaign example"
  1032. fromTime: "2023-01-25 15:35:32Z"
  1033. toTime: "2023-03-20 10:35:32Z"
  1034. CampaignUnitBasicInfo:
  1035. type: object
  1036. required:
  1037. - unitId
  1038. - name
  1039. - fromTime
  1040. - toTime
  1041. x-NavigationLinks:
  1042. Unit@NavigationLink:
  1043. type: string
  1044. format: uri
  1045. x-graph-properties:
  1046. linkTo: unitIdGET
  1047. CampaignUnit@NavigationLink:
  1048. type: string
  1049. format: uri
  1050. x-graph-properties:
  1051. linkTo: campaignIdUnitIdGET
  1052. properties:
  1053. Unit@NavigationLink:
  1054. $ref: '#/components/schemas/CampaignUnitBasicInfo/x-NavigationLinks/Unit@NavigationLink'
  1055. CampaignUnit@NavigationLink:
  1056. $ref: '#/components/schemas/CampaignUnitBasicInfo/x-NavigationLinks/CampaignUnit@NavigationLink'
  1057. unitId:
  1058. description: Identifier of the unit
  1059. type: integer
  1060. format: int64
  1061. name:
  1062. type: string
  1063. description:
  1064. type: string
  1065. fromTime:
  1066. description: Time when the validity of the unit starts within the campaign
  1067. type: string
  1068. format: date-time
  1069. toTime:
  1070. description: Time when the validity of the unit ends within the campaign
  1071. type: string
  1072. format: date-time
  1073. example:
  1074. Unit@NavigationLink: "<domain>/units/25"
  1075. CampaignUnit@NavigationLink: "<domain>/campaigns/1/units/25"
  1076. unitId: 25
  1077. name: "Unit name"
  1078. description: "Purpose of the Unit 25"
  1079. fromTime: "2023-01-25 15:35:32Z"
  1080. toTime: "2023-03-20 10:35:32Z"
  1081. CampaignUnitDetailInfo:
  1082. type: object
  1083. required:
  1084. - unitId
  1085. - imei
  1086. - fromTime
  1087. - toTime
  1088. x-NavigationLinks:
  1089. self@NavigationLink:
  1090. type: string
  1091. format: uri
  1092. x-graph-properties:
  1093. linkTo: campaignIdUnitIdGET
  1094. Unit@NavigationLink:
  1095. type: string
  1096. format: uri
  1097. x-graph-properties:
  1098. linkTo: unitIdGET
  1099. Campaign@NavigationLink:
  1100. type: string
  1101. format: uri
  1102. x-graph-properties:
  1103. linkTo: campaignIdGET
  1104. Sensors@NavigationLink:
  1105. type: string
  1106. format: uri
  1107. x-graph-properties:
  1108. linkTo: campaignIdUnitIdSensorsGET
  1109. Observations@NavigationLink:
  1110. type: string
  1111. format: uri
  1112. x-graph-properties:
  1113. linkTo: campaignIdUnitIdObservationsGET
  1114. Locations@NavigationLink:
  1115. type: string
  1116. format: uri
  1117. x-graph-properties:
  1118. linkTo: campaignIdUnitIdLocationsGET
  1119. properties:
  1120. self@NavigationLink:
  1121. $ref: '#/components/schemas/CampaignUnitDetailInfo/x-NavigationLinks/self@NavigationLink'
  1122. Unit@NavigationLink:
  1123. $ref: '#/components/schemas/CampaignUnitDetailInfo/x-NavigationLinks/Unit@NavigationLink'
  1124. Campaign@NavigationLink:
  1125. $ref: '#/components/schemas/CampaignUnitDetailInfo/x-NavigationLinks/Campaign@NavigationLink'
  1126. Sensors@NavigationLink:
  1127. $ref: '#/components/schemas/CampaignUnitDetailInfo/x-NavigationLinks/Sensors@NavigationLink'
  1128. Observations@NavigationLink:
  1129. $ref: '#/components/schemas/CampaignUnitDetailInfo/x-NavigationLinks/Observations@NavigationLink'
  1130. Locations@NavigationLink:
  1131. $ref: '#/components/schemas/CampaignUnitDetailInfo/x-NavigationLinks/Locations@NavigationLink'
  1132. unitId:
  1133. description: Identifier of the unit
  1134. type: integer
  1135. format: int64
  1136. imei:
  1137. type: string
  1138. description:
  1139. type: string
  1140. fromTime:
  1141. description: Time when the validity of the unit starts within the campaign
  1142. type: string
  1143. format: date-time
  1144. toTime:
  1145. description: Time when the validity of the unit ends within the campaign
  1146. type: string
  1147. format: date-time
  1148. example:
  1149. self@NavigationLink: "<domain>/campaigns/1/units/25"
  1150. Unit@NavigationLink: "<domain>/units/25"
  1151. Campaign@NavigationLink: "<domain>/campaigns/1"
  1152. Sensors@NavigationLink: "<domain>/campaigns/1/units/25/sensors"
  1153. Observations@NavigationLink: "<domain>/campaigns/1/units/25/observations"
  1154. Locations@NavigationLink: "<domain>/campaigns/1/units/25/observations/locations"
  1155. unitId: 25
  1156. imei: "3434533453"
  1157. description: "Purpose of the Unit 25"
  1158. fromTime: "2023-01-25 15:35:32Z"
  1159. toTime: "2023-03-20 10:35:32Z"
  1160. CampaignUnitBasicSensor:
  1161. type: object
  1162. required:
  1163. - sensorId
  1164. - name
  1165. - type
  1166. x-NavigationLinks:
  1167. CampaignSensor@NavigationLink:
  1168. type: string
  1169. format: uri
  1170. x-graph-properties:
  1171. linkTo: campaignIdUnitIdSensorIdGET
  1172. properties:
  1173. CampaignSensor@NavigationLink:
  1174. $ref: '#/components/schemas/CampaignUnitBasicSensor/x-NavigationLinks/CampaignSensor@NavigationLink'
  1175. sensorId:
  1176. description: Identifier of the unit
  1177. type: integer
  1178. format: int64
  1179. name:
  1180. type: string
  1181. type:
  1182. type: string
  1183. example:
  1184. CampaignSensor@NavigationLink: "<domain>/campaigns/1/units/25/sensors/105"
  1185. sensorId: 105
  1186. name: "Sensor 105"
  1187. type: "X"
  1188. CampaignUnitDetailedSensor:
  1189. type: object
  1190. required:
  1191. - sensorId
  1192. - name
  1193. - phenomenon
  1194. - type
  1195. x-NavigationLinks:
  1196. self@NavigationLink:
  1197. type: string
  1198. format: uri
  1199. x-graph-properties:
  1200. linkTo: campaignIdUnitIdSensorIdGET
  1201. Sensor@NavigationLink:
  1202. type: string
  1203. format: uri
  1204. x-graph-properties:
  1205. linkTo: sensorIdGET
  1206. CampaignUnit@NavigationLink:
  1207. type: string
  1208. format: uri
  1209. x-graph-properties:
  1210. linkTo: campaignIdUnitIdGET
  1211. Phenomenon@NavigationLink:
  1212. type: string
  1213. format: uri
  1214. x-graph-properties:
  1215. linkTo: phenomenonIdGET
  1216. Observations@NavigationLink:
  1217. type: string
  1218. format: uri
  1219. x-graph-properties:
  1220. linkTo: campaignIdUnitIdSensorIdObservationsGET
  1221. properties:
  1222. self@NavigationLink:
  1223. $ref: '#/components/schemas/CampaignUnitDetailedSensor/x-NavigationLinks/self@NavigationLink'
  1224. Sensor@NavigationLink:
  1225. $ref: '#/components/schemas/CampaignUnitDetailedSensor/x-NavigationLinks/Sensor@NavigationLink'
  1226. CampaignUnit@NavigationLink:
  1227. $ref: '#/components/schemas/CampaignUnitDetailedSensor/x-NavigationLinks/CampaignUnit@NavigationLink'
  1228. Phenomenon@NavigationLink:
  1229. $ref: '#/components/schemas/CampaignUnitDetailedSensor/x-NavigationLinks/Phenomenon@NavigationLink'
  1230. Observations@NavigationLink:
  1231. $ref: '#/components/schemas/CampaignUnitDetailedSensor/x-NavigationLinks/Observations@NavigationLink'
  1232. sensorId:
  1233. type: integer
  1234. format: int64
  1235. name:
  1236. type: string
  1237. phenomenon:
  1238. type: string
  1239. type:
  1240. type: string
  1241. description:
  1242. type: string
  1243. example:
  1244. self@NavigationLink: "<domain>/campaigns/1/units/25/sensors/105"
  1245. Sensor@NavigationLink: "<domain>/sensors/105"
  1246. CampaignUnit@NavigationLink: "<domain>/campaigns/1/units/25"
  1247. Phenomenon@NavigationLink: "<domain>/phenomenons/15"
  1248. Observations@NavigationLink: "<domain>/campaigns/1/units/25/sensors/105/observations"
  1249. sensorId: 105
  1250. name: "Sensor 105"
  1251. description: "Description of the sensor 105"
  1252. type: "type of sensor"
  1253. phenomenon: "Temperature"
  1254. CampaignObservation:
  1255. type: object
  1256. required:
  1257. - params
  1258. - hasNext
  1259. - size
  1260. - offset
  1261. - data
  1262. x-NavigationLinks:
  1263. Campaign@NavigationLink:
  1264. type: string
  1265. format: uri
  1266. x-graph-properties:
  1267. linkTo: campaignIdGET
  1268. next@NavigationLink:
  1269. type: string
  1270. format: uri
  1271. x-graph-properties:
  1272. linkTo: campaignIdUnitsObservationsGET
  1273. properties:
  1274. Campaign@NavigationLink:
  1275. $ref: '#/components/schemas/CampaignObservation/x-NavigationLinks/Campaign@NavigationLink'
  1276. next@NavigationLink:
  1277. $ref: '#/components/schemas/CampaignObservation/x-NavigationLinks/next@NavigationLink'
  1278. params:
  1279. type: object
  1280. description: Used params in URL
  1281. hasNext:
  1282. type: boolean
  1283. size:
  1284. type: integer
  1285. offset:
  1286. type: integer
  1287. data:
  1288. type: array
  1289. items:
  1290. $ref: '#/components/schemas/CampaignDataObservation'
  1291. example:
  1292. Campaign@NavigationLink: "<domain>/campaigns/1"
  1293. next@NavigationLink: "<domain>/campaigns/1/observations?offset=500"
  1294. size: 500
  1295. offset: 0
  1296. data:
  1297. - size: 500 TODO
  1298. CampaignUnitObservation:
  1299. type: object
  1300. required:
  1301. - params
  1302. - hasNext
  1303. - size
  1304. - offset
  1305. - data
  1306. x-NavigationLinks:
  1307. CampaignUnit@NavigationLink:
  1308. type: string
  1309. format: uri
  1310. x-graph-properties:
  1311. linkTo: campaignIdUnitIdGET
  1312. next@NavigationLink:
  1313. type: string
  1314. format: uri
  1315. x-graph-properties:
  1316. linkTo: campaignIdUnitIdObservationsGET
  1317. properties:
  1318. CampaignUnit@NavigationLink:
  1319. $ref: '#/components/schemas/CampaignUnitObservation/x-NavigationLinks/CampaignUnit@NavigationLink'
  1320. next@NavigationLink:
  1321. $ref: '#/components/schemas/CampaignUnitObservation/x-NavigationLinks/next@NavigationLink'
  1322. params:
  1323. type: object
  1324. description: Used params in URL
  1325. hasNext:
  1326. type: boolean
  1327. size:
  1328. type: integer
  1329. offset:
  1330. type: integer
  1331. data:
  1332. type: array
  1333. items:
  1334. $ref: '#/components/schemas/UnitDataObservation'
  1335. example:
  1336. CampaignUnit@NavigationLink: "<domain>/campaigns/1/units/25"
  1337. next@NavigationLink: "<domain>/campaigns/1/units/25/observations?offset=500"
  1338. params: []
  1339. size: 500
  1340. hasNext: true
  1341. offset: 0
  1342. data: []
  1343. CampaignUnitSensorObservation:
  1344. type: object
  1345. required:
  1346. - params
  1347. - size
  1348. - offset
  1349. - hasNext
  1350. - data
  1351. x-NavigationLinks:
  1352. CampaignSensor@NavigationLink:
  1353. type: string
  1354. format: uri
  1355. x-graph-properties:
  1356. linkTo: campaignIdUnitIdSensorIdGET
  1357. next@NavigationLink:
  1358. type: string
  1359. format: uri
  1360. x-graph-properties:
  1361. linkTo: campaignIdUnitIdSensorIdObservationsGET
  1362. properties:
  1363. CampaignSensor@NavigationLink:
  1364. $ref: '#/components/schemas/CampaignUnitSensorObservation/x-NavigationLinks/CampaignSensor@NavigationLink'
  1365. next@NavigationLink:
  1366. $ref: '#/components/schemas/CampaignUnitSensorObservation/x-NavigationLinks/next@NavigationLink'
  1367. params:
  1368. type: object
  1369. description: Used params in URL
  1370. size:
  1371. type: integer
  1372. offset:
  1373. type: integer
  1374. hasNext:
  1375. type: boolean
  1376. data:
  1377. type: array
  1378. items:
  1379. $ref: '#/components/schemas/SensorDataObservation'
  1380. example:
  1381. CampaignSensor@NavigationLink: "<domain>/campaigns/1/units/25/sensors/105"
  1382. next@NavigationLink: "<domain>/campaigns/1/units/25/sensors/105/observations?offset=500"
  1383. size: 500
  1384. offset: 0
  1385. data: []
  1386. ActionEventObservation:
  1387. type: object
  1388. required:
  1389. - params
  1390. - hasNext
  1391. - size
  1392. - offset
  1393. - data
  1394. x-NavigationLinks:
  1395. Event@NavigationLink:
  1396. type: string
  1397. format: uri
  1398. x-graph-properties:
  1399. linkTo: driverIdUnitIdActionIdEventIdGET
  1400. next@NavigationLink:
  1401. type: string
  1402. format: uri
  1403. x-graph-properties:
  1404. linkTo: driverIdUnitIdActionIdEventIdObservationsGET
  1405. properties:
  1406. Event@NavigationLink:
  1407. $ref: '#/components/schemas/ActionEventObservation/x-NavigationLinks/Event@NavigationLink'
  1408. next@NavigationLink:
  1409. $ref: '#/components/schemas/ActionEventObservation/x-NavigationLinks/next@NavigationLink'
  1410. params:
  1411. type: object
  1412. description: Used params in URL
  1413. hasNext:
  1414. type: boolean
  1415. size:
  1416. type: integer
  1417. offset:
  1418. type: integer
  1419. data:
  1420. type: array
  1421. items:
  1422. $ref: '#/components/schemas/UnitDataObservation'
  1423. example:
  1424. Event@NavigationLink: "<domain>/drivers/42/units/105/actions/258/events/999"
  1425. next@NavigationLink: "<domain>/drivers/42/units/25/actions/258/events/999/observations?offset=500"
  1426. params: []
  1427. size: 500
  1428. hasNext: true
  1429. offset: 0
  1430. data: []
  1431. CampaignDataObservation:
  1432. type: object
  1433. required:
  1434. - unitId
  1435. - timestamp
  1436. - speed
  1437. - location
  1438. - observedValues
  1439. properties:
  1440. unitId:
  1441. type: integer
  1442. format: int64
  1443. timestamp:
  1444. type: string
  1445. format: date-time
  1446. speed:
  1447. type: integer
  1448. format: int64
  1449. location:
  1450. $ref: '#/components/schemas/Location'
  1451. observedValues:
  1452. type: object
  1453. example:
  1454. unitId: 25
  1455. timestamp: "2023-01-25 15:35:32Z"
  1456. location:
  1457. longitude: 49.7384
  1458. latitude: 13.3736
  1459. altitude: 350.3
  1460. observedValues:
  1461. 105: 1434
  1462. UnitDataObservation:
  1463. type: object
  1464. required:
  1465. - timestamp
  1466. - speed
  1467. - location
  1468. - observedValues
  1469. properties:
  1470. timestamp:
  1471. type: string
  1472. format: date-time
  1473. speed:
  1474. type: integer
  1475. format: int64
  1476. location:
  1477. $ref: '#/components/schemas/Location'
  1478. observedValues:
  1479. type: object
  1480. example:
  1481. timestamp: "2023-01-25 15:35:32Z"
  1482. speed: 34
  1483. location:
  1484. longitude: 49.7384
  1485. latitude: 13.3736
  1486. altitude: 350.3
  1487. observedValues:
  1488. 105: 1434
  1489. SensorDataObservation:
  1490. type: object
  1491. required:
  1492. - timestamp
  1493. - value
  1494. - speed
  1495. - location
  1496. properties:
  1497. timestamp:
  1498. type: string
  1499. format: date-time
  1500. value:
  1501. type: integer
  1502. format: int64
  1503. speed:
  1504. type: integer
  1505. format: int64
  1506. location:
  1507. $ref: '#/components/schemas/Location'
  1508. example:
  1509. timestamp: "2023-01-25 15:35:32Z"
  1510. value: 1434
  1511. speed: 34
  1512. location:
  1513. longitude: 49.7384
  1514. latitude: 13.3736
  1515. altitude: 350.3
  1516. CampaignUnitLocation:
  1517. type: object
  1518. required:
  1519. - params
  1520. - hasNext
  1521. - size
  1522. - offset
  1523. - data
  1524. x-NavigationLinks:
  1525. Campaign@NavigationLink:
  1526. type: string
  1527. format: uri
  1528. x-graph-properties:
  1529. linkTo: campaignIdGET
  1530. Unit@NavigationLink:
  1531. type: string
  1532. format: uri
  1533. x-graph-properties:
  1534. linkTo: campaignIdUnitIdGET
  1535. next@NavigationLink:
  1536. type: string
  1537. format: uri
  1538. x-graph-properties:
  1539. linkTo: campaignIdUnitIdLocationsGET
  1540. properties:
  1541. Campaign@NavigationLink:
  1542. $ref: '#/components/schemas/CampaignUnitLocation/x-NavigationLinks/Campaign@NavigationLink'
  1543. Unit@NavigationLink:
  1544. $ref: '#/components/schemas/CampaignUnitLocation/x-NavigationLinks/Unit@NavigationLink'
  1545. next@NavigationLink:
  1546. $ref: '#/components/schemas/CampaignUnitLocation/x-NavigationLinks/next@NavigationLink'
  1547. params:
  1548. type: object
  1549. description: Used params in URL
  1550. hasNext:
  1551. type: boolean
  1552. size:
  1553. type: integer
  1554. offset:
  1555. type: integer
  1556. data:
  1557. type: array
  1558. items:
  1559. type: object
  1560. properties:
  1561. timestamp:
  1562. type: string
  1563. format: date-time
  1564. location:
  1565. description: Array in a format [longitude, latitude, altitude]
  1566. type: array
  1567. items:
  1568. type: integer
  1569. example:
  1570. Campaign@NavigationLink: "<domain>/campaigns/1"
  1571. Unit@NavigationLink: "<domain>/campaigns/1/units/25"
  1572. next@NavigationLink: "<domain>/campaigns/1/units/25/observations/locations?offset=500"
  1573. params:
  1574. offset: 0
  1575. limit: 500
  1576. navigationLinks: true
  1577. size: 500
  1578. hasNext: true
  1579. offset: 0
  1580. data:
  1581. - timestamp: "2023-01-25 15:35:32Z"
  1582. location: [49.7384, 13.3736, 350.3]
  1583. CampaignUnitsLocations:
  1584. type: object
  1585. required:
  1586. - size
  1587. - data
  1588. x-NavigationLinks:
  1589. Campaign@NavigationLink:
  1590. type: string
  1591. format: uri
  1592. x-graph-properties:
  1593. linkTo: campaignIdGET
  1594. properties:
  1595. Campaign@NavigationLink:
  1596. $ref: '#/components/schemas/CampaignUnitsLocations/x-NavigationLinks/Campaign@NavigationLink'
  1597. params:
  1598. type: object
  1599. description: Used params in URL
  1600. size:
  1601. type: integer
  1602. data:
  1603. type: array
  1604. items:
  1605. type: object
  1606. required:
  1607. - unitId
  1608. - timestamp
  1609. - location
  1610. properties:
  1611. unitId:
  1612. type: integer
  1613. format: int64
  1614. timestamp:
  1615. type: string
  1616. format: date-time
  1617. location:
  1618. description: Array in a format [longitude, latitude, altitude]
  1619. type: array
  1620. items:
  1621. type: integer
  1622. example:
  1623. Campaign@NavigationLink: "<domain>/campaigns/1"
  1624. params:
  1625. from: "2023-01-25 15:35:32Z"
  1626. to: "2023-01-25 15:35:32Z"
  1627. navigationLinks: true
  1628. size: 8
  1629. data:
  1630. - unitId: 25
  1631. timestamp: "2023-01-25 15:35:32Z"
  1632. location: [ 49.7384, 13.3736, 350.3 ]
  1633. ActionEventLocation:
  1634. type: object
  1635. required:
  1636. - params
  1637. - hasNext
  1638. - size
  1639. - offset
  1640. - data
  1641. x-NavigationLinks:
  1642. Event@NavigationLink:
  1643. type: string
  1644. format: uri
  1645. x-graph-properties:
  1646. linkTo: driverIdUnitIdActionIdEventIdGET
  1647. next@NavigationLink:
  1648. type: string
  1649. format: uri
  1650. x-graph-properties:
  1651. linkTo: driverIdUnitIdActionIdEventIdLocationsGET
  1652. properties:
  1653. Event@NavigationLink:
  1654. $ref: '#/components/schemas/ActionEventLocation/x-NavigationLinks/Event@NavigationLink'
  1655. next@NavigationLink:
  1656. $ref: '#/components/schemas/ActionEventLocation/x-NavigationLinks/next@NavigationLink'
  1657. params:
  1658. type: object
  1659. description: Used params in URL
  1660. hasNext:
  1661. type: boolean
  1662. size:
  1663. type: integer
  1664. offset:
  1665. type: integer
  1666. data:
  1667. type: array
  1668. items:
  1669. type: object
  1670. properties:
  1671. timestamp:
  1672. type: string
  1673. format: date-time
  1674. location:
  1675. description: Array in a format [longitude, latitude, altitude]
  1676. type: array
  1677. items:
  1678. type: integer
  1679. example:
  1680. Event@NavigationLink: "<domain>/drivers/42/units/105/actions/258/events/999"
  1681. next@NavigationLink: "<domain>/drivers/42/units/25/actions/258/events/999/observations/locations?offset=500"
  1682. params:
  1683. offset: 0
  1684. limit: 500
  1685. navigationLinks: true
  1686. size: 500
  1687. hasNext: true
  1688. offset: 0
  1689. data:
  1690. - timestamp: "2023-01-25 15:35:32Z"
  1691. location: [49.7384, 13.3736, 350.3]
  1692. Location:
  1693. type: object
  1694. properties:
  1695. longitude:
  1696. type: number
  1697. format: float
  1698. latitude:
  1699. type: number
  1700. format: float
  1701. altitude:
  1702. type: number
  1703. format: float
  1704. example:
  1705. longitude: 49.7384
  1706. latitude: 13.3736
  1707. altitude: 350.3
  1708. UnitBasicInfo:
  1709. type: object
  1710. required:
  1711. - unitId
  1712. - name
  1713. x-NavigationLinks:
  1714. Unit@NavigationLink:
  1715. type: string
  1716. format: uri
  1717. x-graph-properties:
  1718. linkTo: unitIdGET
  1719. properties:
  1720. Unit@NavigationLink:
  1721. $ref: '#/components/schemas/UnitBasicInfo/x-NavigationLinks/Unit@NavigationLink'
  1722. unitId:
  1723. description: Identifier of the unit
  1724. type: integer
  1725. format: int64
  1726. name:
  1727. type: string
  1728. description:
  1729. type: string
  1730. example:
  1731. Unit@NavigationLink: "<domain>/units/25"
  1732. unitId: 25
  1733. name: "Mobile Unit"
  1734. description: "Mobile Unit 25"
  1735. UnitDetailInfo:
  1736. type: object
  1737. required:
  1738. - unitId
  1739. - name
  1740. - imei
  1741. x-NavigationLinks:
  1742. self@NavigationLink:
  1743. type: string
  1744. format: uri
  1745. x-graph-properties:
  1746. linkTo: unitIdGET
  1747. Sensors@NavigationLink:
  1748. type: string
  1749. format: uri
  1750. x-graph-properties:
  1751. linkTo: unitIdSensorsGET
  1752. Campaigns@NavigationLink:
  1753. type: string
  1754. format: uri
  1755. x-graph-properties:
  1756. linkTo: unitIdCampaignsGET
  1757. properties:
  1758. self@NavigationLink:
  1759. $ref: '#/components/schemas/UnitDetailInfo/x-NavigationLinks/self@NavigationLink'
  1760. Sensors@NavigationLink:
  1761. $ref: '#/components/schemas/UnitDetailInfo/x-NavigationLinks/Sensors@NavigationLink'
  1762. Campaigns@NavigationLink:
  1763. $ref: '#/components/schemas/UnitDetailInfo/x-NavigationLinks/Campaigns@NavigationLink'
  1764. unitId:
  1765. description: Identifier of the unit
  1766. type: integer
  1767. format: int64
  1768. name:
  1769. type: string
  1770. imei:
  1771. type: string
  1772. description:
  1773. type: string
  1774. example:
  1775. self@NavigationLink: "<domain>/units/25"
  1776. Sensors@NavigationLink: "<domain>/units/25/sensors"
  1777. Campaigns@NavigationLink: "<domain>/units/25/campaigns"
  1778. unitId: 25
  1779. name: "Mobile Unit"
  1780. description: "Mobile Unit 25"
  1781. imei: "3434535323345"
  1782. UnitSensorBasicInfo:
  1783. type: object
  1784. required:
  1785. - sensorId
  1786. - name
  1787. x-NavigationLinks:
  1788. Sensor@NavigationLink:
  1789. type: string
  1790. format: uri
  1791. x-graph-properties:
  1792. linkTo: sensorIdGET
  1793. properties:
  1794. Sensor@NavigationLink:
  1795. $ref: '#/components/schemas/UnitSensorBasicInfo/x-NavigationLinks/Sensor@NavigationLink'
  1796. sensorId:
  1797. description: Identifier of the unit
  1798. type: integer
  1799. format: int64
  1800. name:
  1801. type: string
  1802. type:
  1803. type: string
  1804. example:
  1805. Sensor@NavigationLink: "<domain>/sensors/105"
  1806. sensorId: 105
  1807. name: "Sensor 105"
  1808. type: "temperature"
  1809. UnitCampaignBasicInfo:
  1810. type: object
  1811. required:
  1812. - id
  1813. - fromTime
  1814. - toTime
  1815. x-NavigationLinks:
  1816. Campaign@NavigationLink:
  1817. type: string
  1818. format: uri
  1819. x-graph-properties:
  1820. linkTo: campaignIdGET
  1821. properties:
  1822. Campaign@NavigationLink:
  1823. $ref: '#/components/schemas/UnitCampaignBasicInfo/x-NavigationLinks/Campaign@NavigationLink'
  1824. id:
  1825. type: integer
  1826. format: int64
  1827. description: Identifier of the campaign
  1828. description:
  1829. type: string
  1830. description: Description of the campaign
  1831. fromTime:
  1832. type: string
  1833. format: date-time
  1834. description: Time from the unit was active in the campaign
  1835. toTime:
  1836. type: string
  1837. format: date-time
  1838. description: Time until the unit was active in the campaign
  1839. example:
  1840. Campaign@NavigationLink: "<domain>/campaigns/1"
  1841. id: 1
  1842. description: "Campaign 1"
  1843. fromTime: "2023-01-25 15:35:32Z"
  1844. toTime: "2023-03-20 10:35:32Z"
  1845. DriverActionUnitBasicInfo:
  1846. type: object
  1847. required:
  1848. - unitId
  1849. - name
  1850. x-NavigationLinks:
  1851. DriverActionUnit@NavigationLink:
  1852. type: string
  1853. format: uri
  1854. x-graph-properties:
  1855. linkTo: driverIdUnitIdActionIdGET
  1856. properties:
  1857. DriverActionUnit@NavigationLink:
  1858. $ref: '#/components/schemas/DriverActionUnitBasicInfo/x-NavigationLinks/DriverActionUnit@NavigationLink'
  1859. unitId:
  1860. description: Identifier of the unit
  1861. type: integer
  1862. format: int64
  1863. name:
  1864. type: string
  1865. description:
  1866. type: string
  1867. example:
  1868. DriverActionUnit@NavigationLink: "<domain>/drivers/42/units/25/actions/258"
  1869. unitId: 25
  1870. name: "Unit name"
  1871. description: "Purpose of the Unit 25"
  1872. SensorBasicInfo:
  1873. type: object
  1874. required:
  1875. - id
  1876. - name
  1877. x-NavigationLinks:
  1878. Sensor@NavigationLink:
  1879. type: string
  1880. format: uri
  1881. x-graph-properties:
  1882. linkTo: sensorIdGET
  1883. properties:
  1884. Sensor@NavigationLink:
  1885. $ref: '#/components/schemas/SensorBasicInfo/x-NavigationLinks/Sensor@NavigationLink'
  1886. id:
  1887. type: integer
  1888. format: int64
  1889. name:
  1890. type: string
  1891. description:
  1892. type: string
  1893. example:
  1894. Sensor@NavigationLink: "<domain>/sensors/105"
  1895. id: 105
  1896. name: "Sensor 105"
  1897. description: "Description of the sensor 105"
  1898. SensorDetailInfo:
  1899. type: object
  1900. required:
  1901. - sensorId
  1902. - ioId
  1903. - name
  1904. - phenomenon
  1905. x-NavigationLinks:
  1906. self@NavigationLink:
  1907. type: string
  1908. format: uri
  1909. x-graph-properties:
  1910. linkTo: sensorIdGET
  1911. Units@NavigationLink:
  1912. type: string
  1913. format: uri
  1914. x-graph-properties:
  1915. linkTo: sensorIdUnitsGET
  1916. Phenomenon@NavigationLink:
  1917. type: string
  1918. format: uri
  1919. x-graph-properties:
  1920. linkTo: phenomenonIdGET
  1921. properties:
  1922. self@NavigationLink:
  1923. $ref: '#/components/schemas/SensorDetailInfo/x-NavigationLinks/self@NavigationLink'
  1924. Units@NavigationLink:
  1925. $ref: '#/components/schemas/SensorDetailInfo/x-NavigationLinks/Units@NavigationLink'
  1926. Phenomenon@NavigationLink:
  1927. $ref: '#/components/schemas/SensorDetailInfo/x-NavigationLinks/Phenomenon@NavigationLink'
  1928. sensorId:
  1929. type: integer
  1930. format: int64
  1931. ioId:
  1932. type: integer
  1933. format: int16
  1934. name:
  1935. type: string
  1936. phenomenon:
  1937. type: string
  1938. type:
  1939. type: string
  1940. description:
  1941. type: string
  1942. example:
  1943. self@NavigationLink: "<domain>/sensors/105"
  1944. Phenomenon@NavigationLink: "<domain>/phenomenons/15"
  1945. Units@NavigationLink: "<domain>/sensors/105/units"
  1946. sensorId: 105
  1947. name: "Sensor 105"
  1948. description: "Description of the sensor 105"
  1949. type: "type of sensor"
  1950. phenomenon: "Temperature"
  1951. SensorUnitBasicInfo:
  1952. type: object
  1953. required:
  1954. - unitId
  1955. - name
  1956. properties:
  1957. Unit@NavigationLink:
  1958. type: string
  1959. format: uri
  1960. unitId:
  1961. description: Identifier of the unit
  1962. type: integer
  1963. format: int64
  1964. name:
  1965. type: string
  1966. description:
  1967. type: string
  1968. example:
  1969. Unit@NavigationLink: "<domain>/units/25"
  1970. unitId: 25
  1971. name: "Mobile Unit"
  1972. description: "Mobile Unit 25"
  1973. PhenomenonBasicInfo:
  1974. type: object
  1975. required:
  1976. - id
  1977. - name
  1978. x-NavigationLinks:
  1979. Phenomenon@NavigationLink:
  1980. type: string
  1981. format: uri
  1982. x-graph-properties:
  1983. linkTo: phenomenonIdGET
  1984. properties:
  1985. Phenomenon@NavigationLink:
  1986. $ref: '#/components/schemas/PhenomenonBasicInfo/x-NavigationLinks/Phenomenon@NavigationLink'
  1987. id:
  1988. type: integer
  1989. format: int64
  1990. name:
  1991. type: string
  1992. example:
  1993. Phenomenon@NavigationLink: "<domain>/phenomenons/15"
  1994. id: 15
  1995. name: "Temperature"
  1996. PhenomenonDetailInfo:
  1997. type: object
  1998. required:
  1999. - id
  2000. - name
  2001. - uom
  2002. x-NavigationLinks:
  2003. self@NavigationLink:
  2004. type: string
  2005. format: uri
  2006. x-graph-properties:
  2007. linkTo: phenomenonIdGET
  2008. Sensors@NavigationLink:
  2009. type: string
  2010. format: uri
  2011. x-graph-properties:
  2012. linkTo: phenomenonIdSensorsGET
  2013. properties:
  2014. self@NavigationLink:
  2015. $ref: '#/components/schemas/PhenomenonDetailInfo/x-NavigationLinks/self@NavigationLink'
  2016. Sensors@NavigationLink:
  2017. $ref: '#/components/schemas/PhenomenonDetailInfo/x-NavigationLinks/Sensors@NavigationLink'
  2018. id:
  2019. type: integer
  2020. format: int64
  2021. name:
  2022. type: string
  2023. uom:
  2024. type: string
  2025. maxLength: 30
  2026. uomLink:
  2027. type: string
  2028. format: uri
  2029. example:
  2030. self@NavigationLink: "<domain>/phenomenons/15"
  2031. Sensors@NavigationLink: "<domain>/phenomenons/15/sensors"
  2032. id: 15
  2033. name: "Temperature"
  2034. uom: "uom"
  2035. uomLink: "uom link"
  2036. PhenomenonSensorBasicInfo:
  2037. type: object
  2038. required:
  2039. - Phenomenon@NavigationLink
  2040. - Sensor@NavigationLink
  2041. - sensorId
  2042. - name
  2043. x-NavigationLinks:
  2044. Phenomenon@NavigationLink:
  2045. type: string
  2046. format: uri
  2047. x-graph-properties:
  2048. linkTo: phenomenonIdGET
  2049. Sensor@NavigationLink:
  2050. type: string
  2051. format: uri
  2052. x-graph-properties:
  2053. linkTo: sensorIdGET
  2054. properties:
  2055. Phenomenon@NavigationLink:
  2056. $ref: '#/components/schemas/PhenomenonSensorBasicInfo/x-NavigationLinks/Phenomenon@NavigationLink'
  2057. Sensor@NavigationLink:
  2058. $ref: '#/components/schemas/PhenomenonSensorBasicInfo/x-NavigationLinks/Sensor@NavigationLink'
  2059. sensorId:
  2060. type: integer
  2061. format: int64
  2062. name:
  2063. type: string
  2064. description:
  2065. type: string
  2066. example:
  2067. Phenomenon@NavigationLink: "<domain>/phenomenons/15"
  2068. Sensor@NavigationLink: "<domain>/sensors/105"
  2069. sensorId: 105
  2070. name: "Sensor 105"
  2071. description: "Description of Sensor 105"
  2072. DriverBasicInfo:
  2073. type: object
  2074. required:
  2075. - id
  2076. - name
  2077. x-NavigationLinks:
  2078. Driver@NavigationLink:
  2079. type: string
  2080. format: uri
  2081. x-graph-properties:
  2082. linkTo: driverIdGET
  2083. properties:
  2084. Driver@NavigationLink:
  2085. $ref: '#/components/schemas/DriverBasicInfo/x-NavigationLinks/Driver@NavigationLink'
  2086. id:
  2087. type: integer
  2088. format: int64
  2089. name:
  2090. type: string
  2091. example:
  2092. Driver@NavigationLink: "<domain>/drivers/42"
  2093. id: 42
  2094. name: "Steve Smith"
  2095. DriverDetailInfo:
  2096. type: object
  2097. required:
  2098. - id
  2099. - name
  2100. x-NavigationLinks:
  2101. self@NavigationLink:
  2102. type: string
  2103. format: uri
  2104. x-graph-properties:
  2105. linkTo: driverIdGET
  2106. Units@NavigationLink:
  2107. type: string
  2108. format: uri
  2109. x-graph-properties:
  2110. linkTo: driverIdUnitsGET
  2111. Actions@NavigationLink:
  2112. type: string
  2113. format: uri
  2114. x-graph-properties:
  2115. linkTo: driverIdActionsGET
  2116. properties:
  2117. self@NavigationLink:
  2118. $ref: '#/components/schemas/DriverDetailInfo/x-NavigationLinks/self@NavigationLink'
  2119. Units@NavigationLink:
  2120. $ref: '#/components/schemas/DriverDetailInfo/x-NavigationLinks/Units@NavigationLink'
  2121. Actions@NavigationLink:
  2122. $ref: '#/components/schemas/DriverDetailInfo/x-NavigationLinks/Actions@NavigationLink'
  2123. id:
  2124. type: integer
  2125. format: int64
  2126. name:
  2127. type: string
  2128. example:
  2129. self@NavigationLink: "<domain>/drivers/42"
  2130. Units@NavigationLink: "<domain>/drivers/42/units"
  2131. Actions@NavigationLink: "<domain>/drivers/42/actions"
  2132. id: 42
  2133. name: "Steve Smith"
  2134. DriverUnitBasicInfo:
  2135. type: object
  2136. required:
  2137. - unitId
  2138. - name
  2139. x-NavigationLinks:
  2140. DriverUnit@NavigationLink:
  2141. type: string
  2142. format: uri
  2143. x-graph-properties:
  2144. linkTo: driverIdUnitsGET
  2145. properties:
  2146. DriverUnit@NavigationLink:
  2147. $ref: '#/components/schemas/DriverUnitBasicInfo/x-NavigationLinks/DriverUnit@NavigationLink'
  2148. unitId:
  2149. description: Identifier of the unit
  2150. type: integer
  2151. format: int64
  2152. name:
  2153. type: string
  2154. description:
  2155. type: string
  2156. example:
  2157. DriverUnit@NavigationLink: "<domain>/drivers/42/units/25"
  2158. unitId: 25
  2159. name: "Unit name"
  2160. description: "Purpose of the Unit 25"
  2161. DriverUnitDetailInfo:
  2162. type: object
  2163. required:
  2164. - unitId
  2165. - imei
  2166. - name
  2167. x-NavigationLinks:
  2168. self@NavigationLink:
  2169. type: string
  2170. format: uri
  2171. x-graph-properties:
  2172. linkTo: driverIdUnitIdGET
  2173. Unit@NavigationLink:
  2174. type: string
  2175. format: uri
  2176. x-graph-properties:
  2177. linkTo: unitIdGET
  2178. Actions@NavigationLink:
  2179. type: string
  2180. format: uri
  2181. x-graph-properties:
  2182. linkTo: driverIdUnitIdActionsGET
  2183. properties:
  2184. self@NavigationLink:
  2185. $ref: '#/components/schemas/DriverUnitDetailInfo/x-NavigationLinks/self@NavigationLink'
  2186. Unit@NavigationLink:
  2187. $ref: '#/components/schemas/DriverUnitDetailInfo/x-NavigationLinks/Unit@NavigationLink'
  2188. Actions@NavigationLink:
  2189. $ref: '#/components/schemas/DriverUnitDetailInfo/x-NavigationLinks/Unit@NavigationLink'
  2190. unitId:
  2191. description: Identifier of the unit
  2192. type: integer
  2193. format: int64
  2194. name:
  2195. type: string
  2196. imei:
  2197. type: string
  2198. description:
  2199. type: string
  2200. example:
  2201. self@NavigationLink: "<domain>/drivers/42/units/25"
  2202. Unit@NavigationLink: "<domain>/units/25"
  2203. Actions@NavigationLink: "<domain>/drivers/42/units/25/actions"
  2204. unitId: 25
  2205. name: "Mobile Unit"
  2206. description: "Mobile Unit 25"
  2207. imei: "3434535323345"
  2208. DriverActionBasicInfo:
  2209. type: object
  2210. required:
  2211. - id
  2212. - name
  2213. x-NavigationLinks:
  2214. DriverAction@NavigationLink:
  2215. type: string
  2216. format: uri
  2217. x-graph-properties:
  2218. linkTo: driverIdActionIdGET
  2219. properties:
  2220. DriverAction@NavigationLink:
  2221. $ref: '#/components/schemas/DriverActionBasicInfo/x-NavigationLinks/DriverAction@NavigationLink'
  2222. id:
  2223. type: integer
  2224. format: int64
  2225. name:
  2226. type: string
  2227. example:
  2228. DriverAction@NavigationLink: "<domain>/drivers/42/actions/258"
  2229. id: 258
  2230. name: "Delivering"
  2231. DriverUnitActionBasicInfo:
  2232. type: object
  2233. required:
  2234. - id
  2235. - name
  2236. x-NavigationLinks:
  2237. DriverUntAction@NavigationLink:
  2238. type: string
  2239. format: uri
  2240. x-graph-properties:
  2241. linkTo: driverIdUnitIdActionIdGET
  2242. properties:
  2243. DriverUntAction@NavigationLink:
  2244. $ref: '#/components/schemas/DriverUnitActionBasicInfo/x-NavigationLinks/DriverUntAction@NavigationLink'
  2245. id:
  2246. type: integer
  2247. format: int64
  2248. name:
  2249. type: string
  2250. example:
  2251. DriverUntAction@NavigationLink: "<domain>/drivers/42/units/{25}/actions/258"
  2252. id: 258
  2253. name: "Delivering"
  2254. DriverActionDetailInfo:
  2255. type: object
  2256. x-NavigationLinks:
  2257. self@NavigationLink:
  2258. type: string
  2259. format: uri
  2260. x-graph-properties:
  2261. linkTo: driverIdActionIdGET
  2262. Driver@NavigationLink:
  2263. type: string
  2264. format: uri
  2265. x-graph-properties:
  2266. linkTo: driverIdGET
  2267. Units@NavigationLink:
  2268. type: string
  2269. format: uri
  2270. x-graph-properties:
  2271. linkTo: driverIdActionIdUnitsGET
  2272. properties:
  2273. self@NavigationLink:
  2274. $ref: '#/components/schemas/DriverActionDetailInfo/x-NavigationLinks/self@NavigationLink'
  2275. Driver@NavigationLink:
  2276. $ref: '#/components/schemas/DriverActionDetailInfo/x-NavigationLinks/Driver@NavigationLink'
  2277. Units@NavigationLink:
  2278. $ref: '#/components/schemas/DriverActionDetailInfo/x-NavigationLinks/Units@NavigationLink'
  2279. id:
  2280. type: integer
  2281. format: int64
  2282. name:
  2283. type: string
  2284. example:
  2285. self@NavigationLink: "<domain>/drivers/42/actions/258"
  2286. Driver@NavigationLink: "<domain>/drivers/42"
  2287. Units@NavigationLink: "<domain>/drivers/42/actions/258/units"
  2288. id: 258
  2289. name: "Delivering"
  2290. DriverUnitActionDetailInfo:
  2291. type: object
  2292. x-NavigationLinks:
  2293. self@NavigationLink:
  2294. type: string
  2295. format: uri
  2296. x-graph-properties:
  2297. linkTo: driverIdUnitIdActionIdGET
  2298. Driver@NavigationLink:
  2299. type: string
  2300. format: uri
  2301. x-graph-properties:
  2302. linkTo: driverIdGET
  2303. DriverUnit@NavigationLink:
  2304. type: string
  2305. format: uri
  2306. x-graph-properties:
  2307. linkTo: driverIdUnitIdGET
  2308. properties:
  2309. self@NavigationLink:
  2310. $ref: '#/components/schemas/DriverUnitActionDetailInfo/x-NavigationLinks/self@NavigationLink'
  2311. Driver@NavigationLink:
  2312. $ref: '#/components/schemas/DriverUnitActionDetailInfo/x-NavigationLinks/Driver@NavigationLink'
  2313. DriverUnit@NavigationLink:
  2314. $ref: '#/components/schemas/DriverUnitActionDetailInfo/x-NavigationLinks/DriverUnit@NavigationLink'
  2315. id:
  2316. type: integer
  2317. format: int64
  2318. name:
  2319. type: string
  2320. example:
  2321. self@NavigationLink: "<domain>/drivers/42/units/25/actions/258"
  2322. Driver@NavigationLink: "<domain>/drivers/42"
  2323. DriverUnit@NavigationLink: "<domain>/drivers/42/units/25"
  2324. id: 258
  2325. name: "Delivering"
  2326. EventBasicInfo:
  2327. type: object
  2328. required:
  2329. - id
  2330. - fromTime
  2331. - toTime
  2332. x-NavigationLinks:
  2333. Event@NavigationLink:
  2334. type: string
  2335. format: uri
  2336. x-graph-properties:
  2337. linkTo: driverIdUnitIdActionIdEventIdGET
  2338. properties:
  2339. Event@NavigationLink:
  2340. $ref: '#/components/schemas/EventBasicInfo/x-NavigationLinks/Event@NavigationLink'
  2341. id:
  2342. type: integer
  2343. format: int64
  2344. fromTime:
  2345. description: Time when the event starts
  2346. type: string
  2347. format: date-time
  2348. toTime:
  2349. description: Time when the end ends
  2350. type: string
  2351. format: date-time
  2352. example:
  2353. Event@NavigationLink: "<domain>/drivers/42/units/105/actions/258/events/999"
  2354. id: 999
  2355. fromTime: "2023-01-25 15:35:32Z"
  2356. toTime: "2023-03-20 10:35:32Z"
  2357. EventDetailInfo:
  2358. type: object
  2359. required:
  2360. - id
  2361. - fromTime
  2362. - toTime
  2363. x-NavigationLinks:
  2364. self@NavigationLink:
  2365. type: string
  2366. format: uri
  2367. x-graph-properties:
  2368. linkTo: driverIdUnitIdActionIdEventIdGET
  2369. Driver@NavigationLink:
  2370. type: string
  2371. format: uri
  2372. x-graph-properties:
  2373. linkTo: driverIdGET
  2374. DriverUnit@NavigationLink:
  2375. type: string
  2376. format: uri
  2377. x-graph-properties:
  2378. linkTo: driverIdUnitIdGET
  2379. Action@NavigationLink:
  2380. type: string
  2381. format: uri
  2382. x-graph-properties:
  2383. linkTo: driverIdActionIdGET
  2384. Observations@NavigationLink:
  2385. type: string
  2386. format: uri
  2387. x-graph-properties:
  2388. linkTo: driverIdUnitIdActionIdEventIdObservationsGET
  2389. Locations@NavigationLink:
  2390. type: string
  2391. format: uri
  2392. x-graph-properties:
  2393. linkTo: driverIdUnitIdActionIdEventIdLocationsGET
  2394. properties:
  2395. self@NavigationLink:
  2396. $ref: '#/components/schemas/EventDetailInfo/x-NavigationLinks/self@NavigationLink'
  2397. Driver@NavigationLink:
  2398. $ref: '#/components/schemas/EventDetailInfo/x-NavigationLinks/Driver@NavigationLink'
  2399. DriverUnit@NavigationLink:
  2400. $ref: '#/components/schemas/EventDetailInfo/x-NavigationLinks/DriverUnit@NavigationLink'
  2401. Action@NavigationLink:
  2402. $ref: '#/components/schemas/EventDetailInfo/x-NavigationLinks/Action@NavigationLink'
  2403. Observations@NavigationLink:
  2404. $ref: '#/components/schemas/EventDetailInfo/x-NavigationLinks/Observations@NavigationLink'
  2405. Locations@NavigationLink:
  2406. $ref: '#/components/schemas/EventDetailInfo/x-NavigationLinks/Locations@NavigationLink'
  2407. id:
  2408. type: integer
  2409. format: int64
  2410. fromTime:
  2411. description: Time when the event starts
  2412. type: string
  2413. format: date-time
  2414. toTime:
  2415. description: Time when the end ends
  2416. type: string
  2417. format: date-time
  2418. example:
  2419. self@NavigationLink: "<domain>/drivers/42/units/105/actions/258/events/999"
  2420. Driver@NavigationLink: "<domain>/drivers/42"
  2421. DriverUnit@NavigationLink: "<domain>/drivers/42/units/105"
  2422. Action@NavigationLink: "<domain>/actions/258"
  2423. Observations@NavigationLink: "<domain>/drivers/42/units/105/actions/258/events/999/observations"
  2424. Locations@NavigationLink: "<domain>/drivers/42/units/105/actions/258/events/999/observations/locations"
  2425. id: 999
  2426. fromTime: "2023-01-25 15:35:32Z"
  2427. toTime: "2023-03-20 10:35:32Z"
  2428. Info:
  2429. required:
  2430. - name
  2431. - version
  2432. - build
  2433. - uptime
  2434. - uptimeMillis
  2435. properties:
  2436. name:
  2437. type: string
  2438. version:
  2439. type: string
  2440. build:
  2441. type: string
  2442. uptimeMillis:
  2443. type: integer
  2444. format: int64
  2445. uptime:
  2446. type: string
  2447. example:
  2448. name: "senslog-telemetry"
  2449. version: "1.1.0"
  2450. build: "123456789"
  2451. uptimeMillis: 1684862333
  2452. uptime: "1:20:00"
  2453. Error:
  2454. required:
  2455. - code
  2456. - message
  2457. properties:
  2458. code:
  2459. type: integer
  2460. format: int32
  2461. message:
  2462. type: string
  2463. example:
  2464. code: 404
  2465. message: "Not Found"