選択できるのは25トピックまでです。 トピックは、先頭が英数字で、英数字とダッシュ('-')を使用した35文字以内のものにしてください。
 
 
 

1403 行
34 KiB

  1. openapi: 3.0.0
  2. info:
  3. title: RES LEVIS API
  4. description: API for RES LEVIS project
  5. contact:
  6. email: info@reslevis.com
  7. license:
  8. name: Apache 2.0
  9. url: http://www.apache.org/licenses/LICENSE-2.0.html
  10. version: 1.0.4
  11. servers:
  12. - url: http://192.168.1.3/reslevis
  13. description: Res Levis
  14. - url: https://webhook.site/014887a9-bfa4-48a8-a349-935d8f8f8096
  15. description: Res Levis Webhook
  16. tags:
  17. - name: Admins
  18. description: Secured Admin-only calls
  19. - name: Developers
  20. description: Operations available to regular developers
  21. paths:
  22. /getBuildings:
  23. get:
  24. tags:
  25. - Developers
  26. summary: Get the buildings
  27. description: |
  28. Get the buildings
  29. operationId: getBuildings
  30. parameters:
  31. - name: id
  32. in: query
  33. description: id of the item to get
  34. required: false
  35. schema:
  36. type: string
  37. - name: searchString
  38. in: query
  39. description: pass an optional search string for looking up inventory
  40. required: false
  41. schema:
  42. type: string
  43. - name: skip
  44. in: query
  45. description: number of records to skip for pagination
  46. required: false
  47. schema:
  48. minimum: 0
  49. type: integer
  50. format: int32
  51. - name: limit
  52. in: query
  53. description: maximum number of records to return
  54. required: false
  55. schema:
  56. maximum: 1000
  57. minimum: 0
  58. type: integer
  59. format: int32
  60. responses:
  61. "200":
  62. description: search results matching criteria
  63. content:
  64. application/json:
  65. schema:
  66. type: array
  67. items:
  68. $ref: "#/components/schemas/BuildingItem"
  69. "400":
  70. description: bad input parameter
  71. servers:
  72. - url: ""
  73. description: ""
  74. /postBuilding:
  75. post:
  76. tags:
  77. - Developers
  78. summary: Post a building item
  79. description: Post a building
  80. operationId: postBuilding
  81. requestBody:
  82. description: plan item
  83. content:
  84. application/json:
  85. schema:
  86. $ref: "#/components/schemas/BuildingItem"
  87. responses:
  88. "201":
  89. description: item created
  90. "400":
  91. description: "invalid input, object invalid"
  92. "409":
  93. description: an existing item already exists
  94. servers:
  95. - url: ""
  96. description: ""
  97. /removeBuilding:
  98. post:
  99. tags:
  100. - Developers
  101. summary: Remove a building item
  102. description: Remove a building
  103. operationId: removeBuilding
  104. requestBody:
  105. description: plan item
  106. content:
  107. application/json:
  108. schema:
  109. $ref: "#/components/schemas/removeItem"
  110. responses:
  111. "201":
  112. description: item removed
  113. "400":
  114. description: "invalid input, object invalid"
  115. "409":
  116. description: the item can't be removed
  117. servers:
  118. - url: ""
  119. description: ""
  120. /getPlans:
  121. get:
  122. tags:
  123. - Developers
  124. summary: Get the plans
  125. description: |
  126. Get the plans
  127. operationId: getPlans
  128. parameters:
  129. - name: id
  130. in: query
  131. description: id of the item to get
  132. required: false
  133. schema:
  134. type: string
  135. - name: searchString
  136. in: query
  137. description: pass an optional search string for looking up inventory
  138. required: false
  139. schema:
  140. type: string
  141. - name: skip
  142. in: query
  143. description: number of records to skip for pagination
  144. required: false
  145. schema:
  146. minimum: 0
  147. type: integer
  148. format: int32
  149. - name: limit
  150. in: query
  151. description: maximum number of records to return
  152. required: false
  153. schema:
  154. maximum: 1000
  155. minimum: 0
  156. type: integer
  157. format: int32
  158. responses:
  159. "200":
  160. description: search results matching criteria
  161. content:
  162. application/json:
  163. schema:
  164. type: array
  165. items:
  166. $ref: "#/components/schemas/PlanItem"
  167. "400":
  168. description: bad input parameter
  169. servers:
  170. - url: ""
  171. description: ""
  172. /postPlan:
  173. post:
  174. tags:
  175. - Developers
  176. summary: Post a plan item
  177. description: Post a plan
  178. operationId: postPlan
  179. requestBody:
  180. description: plan item
  181. content:
  182. application/json:
  183. schema:
  184. $ref: "#/components/schemas/PlanItem"
  185. responses:
  186. "201":
  187. description: item created
  188. "400":
  189. description: "invalid input, object invalid"
  190. "409":
  191. description: an existing item already exists
  192. servers:
  193. - url: ""
  194. description: ""
  195. /removePlan:
  196. post:
  197. tags:
  198. - Developers
  199. summary: Remove a plan item
  200. description: Remove a plan
  201. operationId: removePlan
  202. requestBody:
  203. description: plan item
  204. content:
  205. application/json:
  206. schema:
  207. $ref: "#/components/schemas/removeItem"
  208. responses:
  209. "201":
  210. description: item removed
  211. "400":
  212. description: "invalid input, object invalid"
  213. "409":
  214. description: the item can't be removed
  215. servers:
  216. - url: ""
  217. description: ""
  218. /getZones:
  219. get:
  220. tags:
  221. - Developers
  222. summary: Get the zones
  223. description: |
  224. Get the zones
  225. operationId: getZones
  226. parameters:
  227. - name: id
  228. in: query
  229. description: id of the item to get
  230. required: false
  231. schema:
  232. type: string
  233. - name: searchString
  234. in: query
  235. description: pass an optional search string for looking up inventory
  236. required: false
  237. schema:
  238. type: string
  239. - name: skip
  240. in: query
  241. description: number of records to skip for pagination
  242. required: false
  243. schema:
  244. minimum: 0
  245. type: integer
  246. format: int32
  247. - name: limit
  248. in: query
  249. description: maximum number of records to return
  250. required: false
  251. schema:
  252. maximum: 1000
  253. minimum: 0
  254. type: integer
  255. format: int32
  256. responses:
  257. "200":
  258. description: search results matching criteria
  259. content:
  260. application/json:
  261. schema:
  262. type: array
  263. items:
  264. $ref: "#/components/schemas/ZoneItem"
  265. "400":
  266. description: bad input parameter
  267. servers:
  268. - url: ""
  269. description: ""
  270. /postZone:
  271. post:
  272. tags:
  273. - Developers
  274. summary: Post a zone item
  275. description: Post a zone item
  276. operationId: postZone
  277. requestBody:
  278. description: zone item
  279. content:
  280. application/json:
  281. schema:
  282. $ref: "#/components/schemas/ZoneItem"
  283. responses:
  284. "201":
  285. description: item created
  286. "400":
  287. description: "invalid input, object invalid"
  288. "409":
  289. description: an existing item already exists
  290. servers:
  291. - url: ""
  292. description: ""
  293. /removeZone:
  294. post:
  295. tags:
  296. - Developers
  297. summary: Remove a plan item
  298. description: Remove a plan
  299. operationId: removeZone
  300. requestBody:
  301. description: zone item to be removed
  302. content:
  303. application/json:
  304. schema:
  305. $ref: "#/components/schemas/removeItem"
  306. responses:
  307. "201":
  308. description: item removed
  309. "400":
  310. description: "invalid input, object invalid"
  311. "409":
  312. description: the item can't be removed
  313. servers:
  314. - url: ""
  315. description: ""
  316. /getGateways:
  317. get:
  318. tags:
  319. - Developers
  320. summary: Get the gateways
  321. description: |
  322. Get the gateways
  323. operationId: getGateways
  324. parameters:
  325. - name: id
  326. in: query
  327. description: id of the item to get
  328. required: false
  329. schema:
  330. type: string
  331. - name: searchString
  332. in: query
  333. description: pass an optional search string for looking up inventory
  334. required: false
  335. schema:
  336. type: string
  337. - name: skip
  338. in: query
  339. description: number of records to skip for pagination
  340. required: false
  341. schema:
  342. minimum: 0
  343. type: integer
  344. format: int32
  345. - name: limit
  346. in: query
  347. description: maximum number of records to return
  348. required: false
  349. schema:
  350. maximum: 1000
  351. minimum: 0
  352. type: integer
  353. format: int32
  354. responses:
  355. "200":
  356. description: search results matching criteria
  357. content:
  358. application/json:
  359. schema:
  360. type: array
  361. items:
  362. $ref: "#/components/schemas/GatewayItem"
  363. "400":
  364. description: bad input parameter
  365. servers:
  366. - url: ""
  367. description: ""
  368. /postGateway:
  369. post:
  370. tags:
  371. - Developers
  372. summary: Post a gateway item
  373. description: Post a gateway item
  374. operationId: postGateway
  375. requestBody:
  376. description: gateway item
  377. content:
  378. application/json:
  379. schema:
  380. $ref: "#/components/schemas/GatewayItem"
  381. responses:
  382. "201":
  383. description: item created
  384. "400":
  385. description: "invalid input, object invalid"
  386. "409":
  387. description: an existing item already exists
  388. servers:
  389. - url: ""
  390. description: ""
  391. /removeGateway:
  392. post:
  393. tags:
  394. - Developers
  395. summary: Remove a gateway item
  396. description: Remove a gateway
  397. operationId: removeGateway
  398. requestBody:
  399. description: gateway item to be removed
  400. content:
  401. application/json:
  402. schema:
  403. $ref: "#/components/schemas/removeItem"
  404. responses:
  405. "201":
  406. description: item removed
  407. "400":
  408. description: "invalid input, object invalid"
  409. "409":
  410. description: the item can't be removed
  411. servers:
  412. - url: ""
  413. description: ""
  414. /getTrackers:
  415. get:
  416. tags:
  417. - Developers
  418. summary: Get the trackers
  419. description: |
  420. Get the trackers
  421. operationId: getTrackers
  422. parameters:
  423. - name: id
  424. in: query
  425. description: id of the item to get
  426. required: false
  427. schema:
  428. type: string
  429. - name: searchString
  430. in: query
  431. description: pass an optional search string for looking up inventory
  432. required: false
  433. schema:
  434. type: string
  435. - name: skip
  436. in: query
  437. description: number of records to skip for pagination
  438. required: false
  439. schema:
  440. minimum: 0
  441. type: integer
  442. format: int32
  443. - name: limit
  444. in: query
  445. description: maximum number of records to return
  446. required: false
  447. schema:
  448. maximum: 1000
  449. minimum: 0
  450. type: integer
  451. format: int32
  452. responses:
  453. "200":
  454. description: search results matching criteria
  455. content:
  456. application/json:
  457. schema:
  458. type: array
  459. items:
  460. $ref: "#/components/schemas/TrackerItem"
  461. "400":
  462. description: bad input parameter
  463. servers:
  464. - url: ""
  465. description: ""
  466. /postTracker:
  467. post:
  468. tags:
  469. - Developers
  470. summary: Post a tracker item
  471. description: Post a tracker item
  472. operationId: postTracker
  473. requestBody:
  474. description: tracker item
  475. content:
  476. application/json:
  477. schema:
  478. $ref: "#/components/schemas/TrackerItem"
  479. responses:
  480. "201":
  481. description: item created
  482. "400":
  483. description: "invalid input, object invalid"
  484. "409":
  485. description: an existing item already exists
  486. servers:
  487. - url: ""
  488. description: ""
  489. /removeTracker:
  490. post:
  491. tags:
  492. - Developers
  493. summary: Remove a tracker item
  494. description: Remove a tracker
  495. operationId: removeTracker
  496. requestBody:
  497. description: tracker item to be removed
  498. content:
  499. application/json:
  500. schema:
  501. $ref: "#/components/schemas/removeItem"
  502. responses:
  503. "201":
  504. description: item removed
  505. "400":
  506. description: "invalid input, object invalid"
  507. "409":
  508. description: the item can't be removed
  509. servers:
  510. - url: ""
  511. description: ""
  512. /getOperators:
  513. get:
  514. tags:
  515. - Developers
  516. summary: Get the operators
  517. description: |
  518. Get the operators
  519. operationId: getOperators
  520. parameters:
  521. - name: id
  522. in: query
  523. description: id of the item to get
  524. required: false
  525. schema:
  526. type: string
  527. - name: searchString
  528. in: query
  529. description: pass an optional search string for looking up inventory
  530. required: false
  531. schema:
  532. type: string
  533. - name: skip
  534. in: query
  535. description: number of records to skip for pagination
  536. required: false
  537. schema:
  538. minimum: 0
  539. type: integer
  540. format: int32
  541. - name: limit
  542. in: query
  543. description: maximum number of records to return
  544. required: false
  545. schema:
  546. maximum: 1000
  547. minimum: 0
  548. type: integer
  549. format: int32
  550. responses:
  551. "200":
  552. description: search results matching criteria
  553. content:
  554. application/json:
  555. schema:
  556. type: array
  557. items:
  558. $ref: "#/components/schemas/OperatorItem"
  559. "400":
  560. description: bad input parameter
  561. servers:
  562. - url: ""
  563. description: ""
  564. /postOperator:
  565. post:
  566. tags:
  567. - Developers
  568. summary: Post an operator item
  569. description: Post an operator item
  570. operationId: postOperator
  571. requestBody:
  572. description: operator item
  573. content:
  574. application/json:
  575. schema:
  576. $ref: "#/components/schemas/OperatorItem"
  577. responses:
  578. "201":
  579. description: item created
  580. "400":
  581. description: "invalid input, object invalid"
  582. "409":
  583. description: an existing item already exists
  584. servers:
  585. - url: ""
  586. description: ""
  587. /removeOperator:
  588. post:
  589. tags:
  590. - Developers
  591. summary: Remove an operator item
  592. description: Remove an operator
  593. operationId: removeOperator
  594. requestBody:
  595. description: operator item to be removed
  596. content:
  597. application/json:
  598. schema:
  599. $ref: "#/components/schemas/removeItem"
  600. responses:
  601. "201":
  602. description: item removed
  603. "400":
  604. description: "invalid input, object invalid"
  605. "409":
  606. description: the item can't be removed
  607. servers:
  608. - url: ""
  609. description: ""
  610. /getSubjects:
  611. get:
  612. tags:
  613. - Developers
  614. summary: Get the subjects
  615. description: |
  616. Get the subjects
  617. operationId: getSubjects
  618. parameters:
  619. - name: id
  620. in: query
  621. description: id of the item to get
  622. required: false
  623. schema:
  624. type: string
  625. - name: searchString
  626. in: query
  627. description: pass an optional search string for looking up inventory
  628. required: false
  629. schema:
  630. type: string
  631. - name: skip
  632. in: query
  633. description: number of records to skip for pagination
  634. required: false
  635. schema:
  636. minimum: 0
  637. type: integer
  638. format: int32
  639. - name: limit
  640. in: query
  641. description: maximum number of records to return
  642. required: false
  643. schema:
  644. maximum: 1000
  645. minimum: 0
  646. type: integer
  647. format: int32
  648. responses:
  649. "200":
  650. description: search results matching criteria
  651. content:
  652. application/json:
  653. schema:
  654. type: array
  655. items:
  656. $ref: "#/components/schemas/SubjectItem"
  657. "400":
  658. description: bad input parameter
  659. servers:
  660. - url: ""
  661. description: ""
  662. /postSubject:
  663. post:
  664. tags:
  665. - Developers
  666. summary: Post a subject item
  667. description: Post a subject
  668. operationId: postSubject
  669. requestBody:
  670. description: subject item
  671. content:
  672. application/json:
  673. schema:
  674. $ref: "#/components/schemas/SubjectItem"
  675. responses:
  676. "201":
  677. description: item created
  678. "400":
  679. description: "invalid input, object invalid"
  680. "409":
  681. description: an existing item already exists
  682. servers:
  683. - url: ""
  684. description: ""
  685. /removeSubject:
  686. post:
  687. tags:
  688. - Developers
  689. summary: Remove a subject item
  690. description: Remove a subject
  691. operationId: removeSubject
  692. requestBody:
  693. description: subject item to be removed
  694. content:
  695. application/json:
  696. schema:
  697. $ref: "#/components/schemas/removeItem"
  698. responses:
  699. "201":
  700. description: item removed
  701. "400":
  702. description: "invalid input, object invalid"
  703. "409":
  704. description: the item can't be removed
  705. servers:
  706. - url: ""
  707. description: ""
  708. /getAlarms:
  709. get:
  710. tags:
  711. - Developers
  712. summary: Get the alarms
  713. description: |
  714. Get the alarms
  715. operationId: getAlarms
  716. parameters:
  717. - name: id
  718. in: query
  719. description: id of the item to get
  720. required: false
  721. schema:
  722. type: string
  723. - name: searchString
  724. in: query
  725. description: pass an optional search string for looking up inventory
  726. required: false
  727. schema:
  728. type: string
  729. - name: skip
  730. in: query
  731. description: number of records to skip for pagination
  732. required: false
  733. schema:
  734. minimum: 0
  735. type: integer
  736. format: int32
  737. - name: limit
  738. in: query
  739. description: maximum number of records to return
  740. required: false
  741. schema:
  742. maximum: 1000
  743. minimum: 0
  744. type: integer
  745. format: int32
  746. responses:
  747. "200":
  748. description: search results matching criteria
  749. content:
  750. application/json:
  751. schema:
  752. type: array
  753. items:
  754. $ref: "#/components/schemas/AlarmItem"
  755. "400":
  756. description: bad input parameter
  757. servers:
  758. - url: ""
  759. description: ""
  760. /postAlarm:
  761. post:
  762. tags:
  763. - Developers
  764. summary: Post an alarm
  765. description: Post an alarm
  766. operationId: postAlarm
  767. requestBody:
  768. description: alarm item
  769. content:
  770. application/json:
  771. schema:
  772. $ref: "#/components/schemas/AlarmItem"
  773. responses:
  774. "201":
  775. description: item created
  776. "400":
  777. description: "invalid input, object invalid"
  778. "409":
  779. description: an existing item already exists
  780. servers:
  781. - url: ""
  782. description: ""
  783. /removeAlarm:
  784. post:
  785. tags:
  786. - Developers
  787. summary: Remove an alarm item
  788. description: Remove an alarm
  789. operationId: removeAlarm
  790. requestBody:
  791. description: alarm item to be removed
  792. content:
  793. application/json:
  794. schema:
  795. $ref: "#/components/schemas/removeItem"
  796. responses:
  797. "201":
  798. description: item removed
  799. "400":
  800. description: "invalid input, object invalid"
  801. "409":
  802. description: the item can't be removed
  803. servers:
  804. - url: ""
  805. description: ""
  806. /getTracks:
  807. get:
  808. tags:
  809. - Developers
  810. summary: Get the tracks
  811. description: |
  812. Get the tracks
  813. operationId: getTracks
  814. parameters:
  815. - name: id
  816. in: query
  817. description: id of the item to get
  818. required: false
  819. schema:
  820. type: string
  821. - name: searchString
  822. in: query
  823. description: pass an optional search string for looking up inventory
  824. required: false
  825. schema:
  826. type: string
  827. - name: skip
  828. in: query
  829. description: number of records to skip for pagination
  830. required: false
  831. schema:
  832. minimum: 0
  833. type: integer
  834. format: int32
  835. - name: limit
  836. in: query
  837. description: maximum number of records to return
  838. required: false
  839. schema:
  840. maximum: 1000
  841. minimum: 0
  842. type: integer
  843. format: int32
  844. responses:
  845. "200":
  846. description: search results matching criteria
  847. content:
  848. application/json:
  849. schema:
  850. type: array
  851. items:
  852. $ref: "#/components/schemas/TrackItem"
  853. "400":
  854. description: bad input parameter
  855. servers:
  856. - url: ""
  857. description: ""
  858. /postTrack:
  859. post:
  860. tags:
  861. - Developers
  862. summary: Post a track
  863. description: Post a track
  864. operationId: postTrack
  865. requestBody:
  866. description: track item
  867. content:
  868. application/json:
  869. schema:
  870. $ref: "#/components/schemas/TrackItem"
  871. responses:
  872. "201":
  873. description: item created
  874. "400":
  875. description: "invalid input, object invalid"
  876. "409":
  877. description: an existing item already exists
  878. servers:
  879. - url: ""
  880. description: ""
  881. /removeTrack:
  882. post:
  883. tags:
  884. - Developers
  885. summary: Remove a track item
  886. description: Remove a track
  887. operationId: removeTrack
  888. requestBody:
  889. description: track item to be removed
  890. content:
  891. application/json:
  892. schema:
  893. $ref: "#/components/schemas/removeItem"
  894. responses:
  895. "201":
  896. description: item removed
  897. "400":
  898. description: "invalid input, object invalid"
  899. "409":
  900. description: the item can't be removed
  901. servers:
  902. - url: ""
  903. description: ""
  904. /getSettings:
  905. get:
  906. tags:
  907. - Developers
  908. summary: Get the groups of settings
  909. description: |
  910. Get the settings
  911. operationId: getSettings
  912. parameters:
  913. - name: id
  914. in: query
  915. description: id of the item to get
  916. required: false
  917. schema:
  918. type: string
  919. - name: searchString
  920. in: query
  921. description: pass an optional search string for looking up inventory
  922. required: false
  923. schema:
  924. type: string
  925. - name: skip
  926. in: query
  927. description: number of records to skip for pagination
  928. required: false
  929. schema:
  930. minimum: 0
  931. type: integer
  932. format: int32
  933. - name: limit
  934. in: query
  935. description: maximum number of records to return
  936. required: false
  937. schema:
  938. maximum: 1000
  939. minimum: 0
  940. type: integer
  941. format: int32
  942. responses:
  943. "200":
  944. description: search results matching criteria
  945. content:
  946. application/json:
  947. schema:
  948. type: array
  949. items:
  950. $ref: "#/components/schemas/TrackItem"
  951. "400":
  952. description: bad input parameter
  953. servers:
  954. - url: ""
  955. description: ""
  956. /postSetting:
  957. post:
  958. tags:
  959. - Developers
  960. summary: Post a group of settings
  961. description: Post a group settings
  962. operationId: postSetting
  963. requestBody:
  964. description: group of settings item
  965. content:
  966. application/json:
  967. schema:
  968. $ref: "#/components/schemas/SettingItem"
  969. responses:
  970. "201":
  971. description: item created
  972. "400":
  973. description: "invalid input, object invalid"
  974. "409":
  975. description: an existing item already exists
  976. servers:
  977. - url: ""
  978. description: ""
  979. /removeSetting:
  980. post:
  981. tags:
  982. - Developers
  983. summary: Remove a group of settings item
  984. description: Remove a group of settings
  985. operationId: removeSetting
  986. requestBody:
  987. description: group of setting item to be removed
  988. content:
  989. application/json:
  990. schema:
  991. $ref: "#/components/schemas/removeItem"
  992. responses:
  993. "201":
  994. description: item removed
  995. "400":
  996. description: "invalid input, object invalid"
  997. "409":
  998. description: the item can't be removed
  999. servers:
  1000. - url: ""
  1001. description: ""
  1002. components:
  1003. schemas:
  1004. removeItem:
  1005. required:
  1006. - id
  1007. type: object
  1008. properties:
  1009. id:
  1010. type: string
  1011. format: uuid
  1012. description: Item to be removed
  1013. BuildingItem:
  1014. required:
  1015. - id
  1016. - name
  1017. type: object
  1018. properties:
  1019. id:
  1020. type: string
  1021. description: ID
  1022. format: uuid
  1023. name:
  1024. type: string
  1025. description: Name
  1026. example: Hospital
  1027. city:
  1028. type: string
  1029. description: City
  1030. address:
  1031. type: string
  1032. description: Address
  1033. latitude:
  1034. type: number
  1035. description: Latitude
  1036. longitude:
  1037. type: number
  1038. description: Longitude
  1039. description: A building or an area that groups together several plan
  1040. PlanItem:
  1041. required:
  1042. - id
  1043. - name
  1044. type: object
  1045. properties:
  1046. id:
  1047. type: string
  1048. description: ID
  1049. format: uuid
  1050. name:
  1051. type: string
  1052. description: Name
  1053. example: Building 1 - Floor 1
  1054. image:
  1055. type: string
  1056. description: Image
  1057. format: uri
  1058. example: The URL of the image
  1059. scale:
  1060. type: number
  1061. description: Scale
  1062. example: 1
  1063. Building:
  1064. type: string
  1065. description: Building
  1066. format: dbid
  1067. description: A plan is floor or a space of a building
  1068. ZoneItem:
  1069. required:
  1070. - id
  1071. - name
  1072. type: object
  1073. properties:
  1074. id:
  1075. type: string
  1076. description: ID
  1077. format: uuid
  1078. name:
  1079. type: string
  1080. description: Name
  1081. example: Floor 1 - Room 1
  1082. groups:
  1083. type: string
  1084. description: Groups
  1085. Plan:
  1086. type: string
  1087. description: Plan
  1088. format: dbid
  1089. Building:
  1090. type: string
  1091. description: Building
  1092. format: dbid
  1093. description: A zone is a room or a sub-area of a plan
  1094. GatewayItem:
  1095. required:
  1096. - id
  1097. - name
  1098. type: object
  1099. properties:
  1100. id:
  1101. type: string
  1102. description: ID
  1103. format: uuid
  1104. name:
  1105. type: string
  1106. description: Name
  1107. mac:
  1108. type: string
  1109. description: MAC
  1110. status:
  1111. type: boolean
  1112. description: Status
  1113. model:
  1114. type: string
  1115. description: Model
  1116. ip:
  1117. type: string
  1118. description: IP
  1119. position:
  1120. type: string
  1121. description: Position
  1122. x:
  1123. type: number
  1124. description: X
  1125. "y":
  1126. type: number
  1127. description: "Y"
  1128. Plan:
  1129. type: string
  1130. description: Plan
  1131. format: dbid
  1132. Zone:
  1133. type: string
  1134. description: Zone
  1135. format: dbid
  1136. Building:
  1137. type: string
  1138. description: Building
  1139. format: dbid
  1140. notes:
  1141. type: string
  1142. description: Notes
  1143. description: A gateway of the system
  1144. TrackerItem:
  1145. required:
  1146. - id
  1147. - name
  1148. type: object
  1149. properties:
  1150. id:
  1151. type: string
  1152. description: ID
  1153. format: uuid
  1154. name:
  1155. type: string
  1156. description: Name
  1157. mac:
  1158. type: string
  1159. description: MAC
  1160. status:
  1161. type: string
  1162. description: Status
  1163. model:
  1164. type: string
  1165. description: Model
  1166. position:
  1167. type: string
  1168. description: Position
  1169. x:
  1170. type: number
  1171. description: X
  1172. "y":
  1173. type: number
  1174. description: "Y"
  1175. Zone:
  1176. type: string
  1177. description: Zone
  1178. format: dbid
  1179. Building:
  1180. type: string
  1181. description: Building
  1182. format: dbid
  1183. notes:
  1184. type: string
  1185. description: Notes
  1186. description: A tracker of the system
  1187. OperatorItem:
  1188. required:
  1189. - id
  1190. - name
  1191. type: object
  1192. properties:
  1193. id:
  1194. type: string
  1195. description: ID
  1196. name:
  1197. type: string
  1198. description: Name
  1199. phone:
  1200. type: string
  1201. description: Phone
  1202. zones:
  1203. type: string
  1204. description: Zones
  1205. groups:
  1206. type: string
  1207. description: Groups
  1208. notes:
  1209. type: string
  1210. description: Notes
  1211. Building:
  1212. type: string
  1213. description: Building
  1214. format: dbid
  1215. description: An operator who monitors the subjects
  1216. SubjectItem:
  1217. required:
  1218. - id
  1219. - name
  1220. type: object
  1221. properties:
  1222. id:
  1223. type: string
  1224. description: ID
  1225. name:
  1226. type: string
  1227. description: Name
  1228. role:
  1229. type: string
  1230. description: Role
  1231. phone:
  1232. type: string
  1233. description: Phone
  1234. zones:
  1235. type: string
  1236. description: Zones
  1237. groups:
  1238. type: string
  1239. description: Groups
  1240. Building:
  1241. type: string
  1242. description: Building
  1243. format: dbid
  1244. notes:
  1245. type: string
  1246. description: Notes
  1247. description: Person or object monitored by the operators
  1248. AlarmItem:
  1249. required:
  1250. - id
  1251. type: object
  1252. properties:
  1253. id:
  1254. type: string
  1255. description: ID
  1256. time:
  1257. type: string
  1258. description: Time
  1259. format: time
  1260. type:
  1261. type: string
  1262. description: Type
  1263. status:
  1264. type: string
  1265. description: Status
  1266. gateway:
  1267. type: string
  1268. description: Gateway
  1269. format: uuid
  1270. gatewayMac:
  1271. type: string
  1272. description: Gateway MAC
  1273. gatewayName:
  1274. type: string
  1275. description: Gateway name
  1276. Tracker:
  1277. type: string
  1278. description: Tracker
  1279. format: dbid
  1280. trackerMac:
  1281. type: string
  1282. description: Tracker MAC
  1283. trackerName:
  1284. type: string
  1285. description: Tracker name
  1286. Subject:
  1287. type: string
  1288. description: Subject
  1289. format: dbid
  1290. subjectName:
  1291. type: string
  1292. description: Subject name
  1293. Operator:
  1294. type: string
  1295. description: Operator
  1296. format: dbid
  1297. operatorName:
  1298. type: string
  1299. description: Operator name
  1300. Zone:
  1301. type: string
  1302. description: Zone
  1303. format: dbid
  1304. zoneName:
  1305. type: string
  1306. description: Zone name
  1307. Building:
  1308. type: string
  1309. description: Building
  1310. format: dbid
  1311. buildingName:
  1312. type: string
  1313. description: Building name
  1314. description: Alarm triggered if a monitored subject is lost or out of their zone
  1315. TrackItem:
  1316. required:
  1317. - id
  1318. type: object
  1319. properties:
  1320. id:
  1321. type: string
  1322. time:
  1323. type: string
  1324. description: Time
  1325. format: date-time
  1326. type:
  1327. type: string
  1328. description: Type
  1329. status:
  1330. type: string
  1331. description: Status
  1332. enum:
  1333. - lost
  1334. - detected
  1335. - away
  1336. - help
  1337. Gateway:
  1338. type: string
  1339. description: Gateway
  1340. format: dbid
  1341. gatewayMac:
  1342. type: string
  1343. description: Gateway MAC
  1344. gatewayName:
  1345. type: string
  1346. description: Gateway name
  1347. Tracker:
  1348. type: string
  1349. description: Tracker
  1350. format: dbid
  1351. trackerMac:
  1352. type: string
  1353. description: Tracker MAC
  1354. trackerName:
  1355. type: string
  1356. description: Tracker name
  1357. Subject:
  1358. type: string
  1359. description: Subject
  1360. format: dbid
  1361. subjectName:
  1362. type: string
  1363. description: Subject name
  1364. Zone:
  1365. type: string
  1366. description: Zone
  1367. format: dbid
  1368. zoneName:
  1369. type: string
  1370. description: Zone name
  1371. signal:
  1372. type: number
  1373. Building:
  1374. type: string
  1375. description: Building
  1376. format: dbid
  1377. buildingName:
  1378. type: string
  1379. description: Building name
  1380. description: Log of a state change of a tracker with respect to a gateway
  1381. SettingItem:
  1382. required:
  1383. - id
  1384. type: object
  1385. properties:
  1386. id:
  1387. type: string
  1388. name:
  1389. type: string
  1390. description: Setting name
  1391. role:
  1392. type: string
  1393. description: Role
  1394. enum:
  1395. - developer
  1396. - administrator
  1397. - user
  1398. debug:
  1399. type: boolean
  1400. description: Debug mode
  1401. format: boolean
  1402. description: General setting of the app