openapi.json 41 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056
  1. {
  2. "openapi": "3.0.3",
  3. "info": {
  4. "title": "user_status",
  5. "version": "0.0.1",
  6. "description": "User status",
  7. "license": {
  8. "name": "agpl"
  9. }
  10. },
  11. "components": {
  12. "securitySchemes": {
  13. "basic_auth": {
  14. "type": "http",
  15. "scheme": "basic"
  16. },
  17. "bearer_auth": {
  18. "type": "http",
  19. "scheme": "bearer"
  20. }
  21. },
  22. "schemas": {
  23. "Capabilities": {
  24. "type": "object",
  25. "required": [
  26. "user_status"
  27. ],
  28. "properties": {
  29. "user_status": {
  30. "type": "object",
  31. "required": [
  32. "enabled",
  33. "restore",
  34. "supports_emoji"
  35. ],
  36. "properties": {
  37. "enabled": {
  38. "type": "boolean"
  39. },
  40. "restore": {
  41. "type": "boolean"
  42. },
  43. "supports_emoji": {
  44. "type": "boolean"
  45. }
  46. }
  47. }
  48. }
  49. },
  50. "ClearAt": {
  51. "type": "object",
  52. "required": [
  53. "type",
  54. "time"
  55. ],
  56. "properties": {
  57. "type": {
  58. "type": "string",
  59. "enum": [
  60. "period",
  61. "end-of"
  62. ]
  63. },
  64. "time": {
  65. "oneOf": [
  66. {
  67. "type": "integer",
  68. "format": "int64"
  69. },
  70. {
  71. "$ref": "#/components/schemas/ClearAtTimeType"
  72. }
  73. ]
  74. }
  75. }
  76. },
  77. "ClearAtTimeType": {
  78. "type": "string",
  79. "enum": [
  80. "day",
  81. "week"
  82. ]
  83. },
  84. "OCSMeta": {
  85. "type": "object",
  86. "required": [
  87. "status",
  88. "statuscode"
  89. ],
  90. "properties": {
  91. "status": {
  92. "type": "string"
  93. },
  94. "statuscode": {
  95. "type": "integer"
  96. },
  97. "message": {
  98. "type": "string"
  99. },
  100. "totalitems": {
  101. "type": "string"
  102. },
  103. "itemsperpage": {
  104. "type": "string"
  105. }
  106. }
  107. },
  108. "Predefined": {
  109. "type": "object",
  110. "required": [
  111. "id",
  112. "icon",
  113. "message",
  114. "clearAt",
  115. "visible"
  116. ],
  117. "properties": {
  118. "id": {
  119. "type": "string"
  120. },
  121. "icon": {
  122. "type": "string"
  123. },
  124. "message": {
  125. "type": "string"
  126. },
  127. "clearAt": {
  128. "$ref": "#/components/schemas/ClearAt",
  129. "nullable": true
  130. },
  131. "visible": {
  132. "type": "boolean",
  133. "nullable": true
  134. }
  135. }
  136. },
  137. "Private": {
  138. "allOf": [
  139. {
  140. "$ref": "#/components/schemas/Public"
  141. },
  142. {
  143. "type": "object",
  144. "required": [
  145. "messageId",
  146. "messageIsPredefined",
  147. "statusIsUserDefined"
  148. ],
  149. "properties": {
  150. "messageId": {
  151. "type": "string",
  152. "nullable": true
  153. },
  154. "messageIsPredefined": {
  155. "type": "boolean"
  156. },
  157. "statusIsUserDefined": {
  158. "type": "boolean"
  159. }
  160. }
  161. }
  162. ]
  163. },
  164. "Public": {
  165. "type": "object",
  166. "required": [
  167. "userId",
  168. "message",
  169. "icon",
  170. "clearAt",
  171. "status"
  172. ],
  173. "properties": {
  174. "userId": {
  175. "type": "string"
  176. },
  177. "message": {
  178. "type": "string",
  179. "nullable": true
  180. },
  181. "icon": {
  182. "type": "string",
  183. "nullable": true
  184. },
  185. "clearAt": {
  186. "type": "integer",
  187. "format": "int64",
  188. "nullable": true
  189. },
  190. "status": {
  191. "type": "string"
  192. }
  193. }
  194. }
  195. }
  196. },
  197. "paths": {
  198. "/ocs/v2.php/apps/user_status/api/v1/statuses": {
  199. "get": {
  200. "operationId": "statuses-find-all",
  201. "summary": "Find statuses of users",
  202. "tags": [
  203. "statuses"
  204. ],
  205. "security": [
  206. {
  207. "bearer_auth": []
  208. },
  209. {
  210. "basic_auth": []
  211. }
  212. ],
  213. "parameters": [
  214. {
  215. "name": "limit",
  216. "in": "query",
  217. "description": "Maximum number of statuses to find",
  218. "schema": {
  219. "type": "integer",
  220. "format": "int64",
  221. "nullable": true
  222. }
  223. },
  224. {
  225. "name": "offset",
  226. "in": "query",
  227. "description": "Offset for finding statuses",
  228. "schema": {
  229. "type": "integer",
  230. "format": "int64",
  231. "nullable": true
  232. }
  233. },
  234. {
  235. "name": "OCS-APIRequest",
  236. "in": "header",
  237. "description": "Required to be true for the API request to pass",
  238. "required": true,
  239. "schema": {
  240. "type": "boolean",
  241. "default": true
  242. }
  243. }
  244. ],
  245. "responses": {
  246. "200": {
  247. "description": "Statuses returned",
  248. "content": {
  249. "application/json": {
  250. "schema": {
  251. "type": "object",
  252. "required": [
  253. "ocs"
  254. ],
  255. "properties": {
  256. "ocs": {
  257. "type": "object",
  258. "required": [
  259. "meta",
  260. "data"
  261. ],
  262. "properties": {
  263. "meta": {
  264. "$ref": "#/components/schemas/OCSMeta"
  265. },
  266. "data": {
  267. "type": "array",
  268. "items": {
  269. "$ref": "#/components/schemas/Public"
  270. }
  271. }
  272. }
  273. }
  274. }
  275. }
  276. }
  277. }
  278. }
  279. }
  280. }
  281. },
  282. "/ocs/v2.php/apps/user_status/api/v1/statuses/{userId}": {
  283. "get": {
  284. "operationId": "statuses-find",
  285. "summary": "Find the status of a user",
  286. "tags": [
  287. "statuses"
  288. ],
  289. "security": [
  290. {
  291. "bearer_auth": []
  292. },
  293. {
  294. "basic_auth": []
  295. }
  296. ],
  297. "parameters": [
  298. {
  299. "name": "userId",
  300. "in": "path",
  301. "description": "ID of the user",
  302. "required": true,
  303. "schema": {
  304. "type": "string"
  305. }
  306. },
  307. {
  308. "name": "OCS-APIRequest",
  309. "in": "header",
  310. "description": "Required to be true for the API request to pass",
  311. "required": true,
  312. "schema": {
  313. "type": "boolean",
  314. "default": true
  315. }
  316. }
  317. ],
  318. "responses": {
  319. "200": {
  320. "description": "Status returned",
  321. "content": {
  322. "application/json": {
  323. "schema": {
  324. "type": "object",
  325. "required": [
  326. "ocs"
  327. ],
  328. "properties": {
  329. "ocs": {
  330. "type": "object",
  331. "required": [
  332. "meta",
  333. "data"
  334. ],
  335. "properties": {
  336. "meta": {
  337. "$ref": "#/components/schemas/OCSMeta"
  338. },
  339. "data": {
  340. "$ref": "#/components/schemas/Public"
  341. }
  342. }
  343. }
  344. }
  345. }
  346. }
  347. }
  348. },
  349. "404": {
  350. "description": "The user was not found",
  351. "content": {
  352. "text/plain": {
  353. "schema": {
  354. "type": "string"
  355. }
  356. }
  357. }
  358. }
  359. }
  360. }
  361. },
  362. "/ocs/v2.php/apps/user_status/api/v1/user_status": {
  363. "get": {
  364. "operationId": "user_status-get-status",
  365. "summary": "Get the status of the current user",
  366. "tags": [
  367. "user_status"
  368. ],
  369. "security": [
  370. {
  371. "bearer_auth": []
  372. },
  373. {
  374. "basic_auth": []
  375. }
  376. ],
  377. "parameters": [
  378. {
  379. "name": "OCS-APIRequest",
  380. "in": "header",
  381. "description": "Required to be true for the API request to pass",
  382. "required": true,
  383. "schema": {
  384. "type": "boolean",
  385. "default": true
  386. }
  387. }
  388. ],
  389. "responses": {
  390. "200": {
  391. "description": "The status was found successfully",
  392. "content": {
  393. "application/json": {
  394. "schema": {
  395. "type": "object",
  396. "required": [
  397. "ocs"
  398. ],
  399. "properties": {
  400. "ocs": {
  401. "type": "object",
  402. "required": [
  403. "meta",
  404. "data"
  405. ],
  406. "properties": {
  407. "meta": {
  408. "$ref": "#/components/schemas/OCSMeta"
  409. },
  410. "data": {
  411. "$ref": "#/components/schemas/Private"
  412. }
  413. }
  414. }
  415. }
  416. }
  417. }
  418. }
  419. },
  420. "404": {
  421. "description": "The user was not found",
  422. "content": {
  423. "text/plain": {
  424. "schema": {
  425. "type": "string"
  426. }
  427. }
  428. }
  429. }
  430. }
  431. }
  432. },
  433. "/ocs/v2.php/apps/user_status/api/v1/user_status/status": {
  434. "put": {
  435. "operationId": "user_status-set-status",
  436. "summary": "Update the status type of the current user",
  437. "tags": [
  438. "user_status"
  439. ],
  440. "security": [
  441. {
  442. "bearer_auth": []
  443. },
  444. {
  445. "basic_auth": []
  446. }
  447. ],
  448. "parameters": [
  449. {
  450. "name": "statusType",
  451. "in": "query",
  452. "description": "The new status type",
  453. "required": true,
  454. "schema": {
  455. "type": "string"
  456. }
  457. },
  458. {
  459. "name": "OCS-APIRequest",
  460. "in": "header",
  461. "description": "Required to be true for the API request to pass",
  462. "required": true,
  463. "schema": {
  464. "type": "boolean",
  465. "default": true
  466. }
  467. }
  468. ],
  469. "responses": {
  470. "200": {
  471. "description": "The status was updated successfully",
  472. "content": {
  473. "application/json": {
  474. "schema": {
  475. "type": "object",
  476. "required": [
  477. "ocs"
  478. ],
  479. "properties": {
  480. "ocs": {
  481. "type": "object",
  482. "required": [
  483. "meta",
  484. "data"
  485. ],
  486. "properties": {
  487. "meta": {
  488. "$ref": "#/components/schemas/OCSMeta"
  489. },
  490. "data": {
  491. "$ref": "#/components/schemas/Private"
  492. }
  493. }
  494. }
  495. }
  496. }
  497. }
  498. }
  499. },
  500. "400": {
  501. "description": "The status type is invalid",
  502. "content": {
  503. "text/plain": {
  504. "schema": {
  505. "type": "string"
  506. }
  507. }
  508. }
  509. }
  510. }
  511. }
  512. },
  513. "/ocs/v2.php/apps/user_status/api/v1/user_status/message/predefined": {
  514. "put": {
  515. "operationId": "user_status-set-predefined-message",
  516. "summary": "Set the message to a predefined message for the current user",
  517. "tags": [
  518. "user_status"
  519. ],
  520. "security": [
  521. {
  522. "bearer_auth": []
  523. },
  524. {
  525. "basic_auth": []
  526. }
  527. ],
  528. "parameters": [
  529. {
  530. "name": "messageId",
  531. "in": "query",
  532. "description": "ID of the predefined message",
  533. "required": true,
  534. "schema": {
  535. "type": "string"
  536. }
  537. },
  538. {
  539. "name": "clearAt",
  540. "in": "query",
  541. "description": "When the message should be cleared",
  542. "schema": {
  543. "type": "integer",
  544. "format": "int64",
  545. "nullable": true
  546. }
  547. },
  548. {
  549. "name": "OCS-APIRequest",
  550. "in": "header",
  551. "description": "Required to be true for the API request to pass",
  552. "required": true,
  553. "schema": {
  554. "type": "boolean",
  555. "default": true
  556. }
  557. }
  558. ],
  559. "responses": {
  560. "200": {
  561. "description": "The message was updated successfully",
  562. "content": {
  563. "application/json": {
  564. "schema": {
  565. "type": "object",
  566. "required": [
  567. "ocs"
  568. ],
  569. "properties": {
  570. "ocs": {
  571. "type": "object",
  572. "required": [
  573. "meta",
  574. "data"
  575. ],
  576. "properties": {
  577. "meta": {
  578. "$ref": "#/components/schemas/OCSMeta"
  579. },
  580. "data": {
  581. "$ref": "#/components/schemas/Private"
  582. }
  583. }
  584. }
  585. }
  586. }
  587. }
  588. }
  589. },
  590. "400": {
  591. "description": "The clearAt or message-id is invalid",
  592. "content": {
  593. "text/plain": {
  594. "schema": {
  595. "type": "string"
  596. }
  597. }
  598. }
  599. }
  600. }
  601. }
  602. },
  603. "/ocs/v2.php/apps/user_status/api/v1/user_status/message/custom": {
  604. "put": {
  605. "operationId": "user_status-set-custom-message",
  606. "summary": "Set the message to a custom message for the current user",
  607. "tags": [
  608. "user_status"
  609. ],
  610. "security": [
  611. {
  612. "bearer_auth": []
  613. },
  614. {
  615. "basic_auth": []
  616. }
  617. ],
  618. "parameters": [
  619. {
  620. "name": "statusIcon",
  621. "in": "query",
  622. "description": "Icon of the status",
  623. "schema": {
  624. "type": "string",
  625. "nullable": true
  626. }
  627. },
  628. {
  629. "name": "message",
  630. "in": "query",
  631. "description": "Message of the status",
  632. "schema": {
  633. "type": "string",
  634. "nullable": true
  635. }
  636. },
  637. {
  638. "name": "clearAt",
  639. "in": "query",
  640. "description": "When the message should be cleared",
  641. "schema": {
  642. "type": "integer",
  643. "format": "int64",
  644. "nullable": true
  645. }
  646. },
  647. {
  648. "name": "OCS-APIRequest",
  649. "in": "header",
  650. "description": "Required to be true for the API request to pass",
  651. "required": true,
  652. "schema": {
  653. "type": "boolean",
  654. "default": true
  655. }
  656. }
  657. ],
  658. "responses": {
  659. "200": {
  660. "description": "The message was updated successfully",
  661. "content": {
  662. "application/json": {
  663. "schema": {
  664. "type": "object",
  665. "required": [
  666. "ocs"
  667. ],
  668. "properties": {
  669. "ocs": {
  670. "type": "object",
  671. "required": [
  672. "meta",
  673. "data"
  674. ],
  675. "properties": {
  676. "meta": {
  677. "$ref": "#/components/schemas/OCSMeta"
  678. },
  679. "data": {
  680. "$ref": "#/components/schemas/Private"
  681. }
  682. }
  683. }
  684. }
  685. }
  686. }
  687. }
  688. },
  689. "400": {
  690. "description": "The clearAt or icon is invalid or the message is too long",
  691. "content": {
  692. "text/plain": {
  693. "schema": {
  694. "type": "string"
  695. }
  696. }
  697. }
  698. }
  699. }
  700. }
  701. },
  702. "/ocs/v2.php/apps/user_status/api/v1/user_status/message": {
  703. "delete": {
  704. "operationId": "user_status-clear-message",
  705. "summary": "Clear the message of the current user",
  706. "tags": [
  707. "user_status"
  708. ],
  709. "security": [
  710. {
  711. "bearer_auth": []
  712. },
  713. {
  714. "basic_auth": []
  715. }
  716. ],
  717. "parameters": [
  718. {
  719. "name": "OCS-APIRequest",
  720. "in": "header",
  721. "description": "Required to be true for the API request to pass",
  722. "required": true,
  723. "schema": {
  724. "type": "boolean",
  725. "default": true
  726. }
  727. }
  728. ],
  729. "responses": {
  730. "200": {
  731. "description": "Message cleared successfully",
  732. "content": {
  733. "application/json": {
  734. "schema": {
  735. "type": "object",
  736. "required": [
  737. "ocs"
  738. ],
  739. "properties": {
  740. "ocs": {
  741. "type": "object",
  742. "required": [
  743. "meta",
  744. "data"
  745. ],
  746. "properties": {
  747. "meta": {
  748. "$ref": "#/components/schemas/OCSMeta"
  749. },
  750. "data": {}
  751. }
  752. }
  753. }
  754. }
  755. }
  756. }
  757. }
  758. }
  759. }
  760. },
  761. "/ocs/v2.php/apps/user_status/api/v1/user_status/revert/{messageId}": {
  762. "delete": {
  763. "operationId": "user_status-revert-status",
  764. "summary": "Revert the status to the previous status",
  765. "tags": [
  766. "user_status"
  767. ],
  768. "security": [
  769. {
  770. "bearer_auth": []
  771. },
  772. {
  773. "basic_auth": []
  774. }
  775. ],
  776. "parameters": [
  777. {
  778. "name": "messageId",
  779. "in": "path",
  780. "description": "ID of the message to delete",
  781. "required": true,
  782. "schema": {
  783. "type": "string"
  784. }
  785. },
  786. {
  787. "name": "OCS-APIRequest",
  788. "in": "header",
  789. "description": "Required to be true for the API request to pass",
  790. "required": true,
  791. "schema": {
  792. "type": "boolean",
  793. "default": true
  794. }
  795. }
  796. ],
  797. "responses": {
  798. "200": {
  799. "description": "Status reverted",
  800. "content": {
  801. "application/json": {
  802. "schema": {
  803. "type": "object",
  804. "required": [
  805. "ocs"
  806. ],
  807. "properties": {
  808. "ocs": {
  809. "type": "object",
  810. "required": [
  811. "meta",
  812. "data"
  813. ],
  814. "properties": {
  815. "meta": {
  816. "$ref": "#/components/schemas/OCSMeta"
  817. },
  818. "data": {
  819. "oneOf": [
  820. {
  821. "$ref": "#/components/schemas/Private"
  822. },
  823. {}
  824. ]
  825. }
  826. }
  827. }
  828. }
  829. }
  830. }
  831. }
  832. }
  833. }
  834. }
  835. },
  836. "/ocs/v2.php/apps/user_status/api/v1/predefined_statuses": {
  837. "get": {
  838. "operationId": "predefined_status-find-all",
  839. "summary": "Get all predefined messages",
  840. "tags": [
  841. "predefined_status"
  842. ],
  843. "security": [
  844. {
  845. "bearer_auth": []
  846. },
  847. {
  848. "basic_auth": []
  849. }
  850. ],
  851. "parameters": [
  852. {
  853. "name": "OCS-APIRequest",
  854. "in": "header",
  855. "description": "Required to be true for the API request to pass",
  856. "required": true,
  857. "schema": {
  858. "type": "boolean",
  859. "default": true
  860. }
  861. }
  862. ],
  863. "responses": {
  864. "200": {
  865. "description": "Predefined statuses returned",
  866. "content": {
  867. "application/json": {
  868. "schema": {
  869. "type": "object",
  870. "required": [
  871. "ocs"
  872. ],
  873. "properties": {
  874. "ocs": {
  875. "type": "object",
  876. "required": [
  877. "meta",
  878. "data"
  879. ],
  880. "properties": {
  881. "meta": {
  882. "$ref": "#/components/schemas/OCSMeta"
  883. },
  884. "data": {
  885. "type": "array",
  886. "items": {
  887. "$ref": "#/components/schemas/Predefined"
  888. }
  889. }
  890. }
  891. }
  892. }
  893. }
  894. }
  895. }
  896. }
  897. }
  898. }
  899. },
  900. "/ocs/v2.php/apps/user_status/api/v1/heartbeat": {
  901. "put": {
  902. "operationId": "heartbeat-heartbeat",
  903. "summary": "Keep the status alive",
  904. "tags": [
  905. "heartbeat"
  906. ],
  907. "security": [
  908. {
  909. "bearer_auth": []
  910. },
  911. {
  912. "basic_auth": []
  913. }
  914. ],
  915. "parameters": [
  916. {
  917. "name": "status",
  918. "in": "query",
  919. "description": "Only online, away",
  920. "required": true,
  921. "schema": {
  922. "type": "string"
  923. }
  924. },
  925. {
  926. "name": "OCS-APIRequest",
  927. "in": "header",
  928. "description": "Required to be true for the API request to pass",
  929. "required": true,
  930. "schema": {
  931. "type": "boolean",
  932. "default": true
  933. }
  934. }
  935. ],
  936. "responses": {
  937. "200": {
  938. "description": "Status successfully updated",
  939. "content": {
  940. "application/json": {
  941. "schema": {
  942. "type": "object",
  943. "required": [
  944. "ocs"
  945. ],
  946. "properties": {
  947. "ocs": {
  948. "type": "object",
  949. "required": [
  950. "meta",
  951. "data"
  952. ],
  953. "properties": {
  954. "meta": {
  955. "$ref": "#/components/schemas/OCSMeta"
  956. },
  957. "data": {
  958. "$ref": "#/components/schemas/Private"
  959. }
  960. }
  961. }
  962. }
  963. }
  964. }
  965. }
  966. },
  967. "400": {
  968. "description": "Invalid status to update",
  969. "content": {
  970. "application/json": {
  971. "schema": {
  972. "type": "object",
  973. "required": [
  974. "ocs"
  975. ],
  976. "properties": {
  977. "ocs": {
  978. "type": "object",
  979. "required": [
  980. "meta",
  981. "data"
  982. ],
  983. "properties": {
  984. "meta": {
  985. "$ref": "#/components/schemas/OCSMeta"
  986. },
  987. "data": {}
  988. }
  989. }
  990. }
  991. }
  992. }
  993. }
  994. },
  995. "500": {
  996. "description": "",
  997. "content": {
  998. "application/json": {
  999. "schema": {
  1000. "type": "object",
  1001. "required": [
  1002. "ocs"
  1003. ],
  1004. "properties": {
  1005. "ocs": {
  1006. "type": "object",
  1007. "required": [
  1008. "meta",
  1009. "data"
  1010. ],
  1011. "properties": {
  1012. "meta": {
  1013. "$ref": "#/components/schemas/OCSMeta"
  1014. },
  1015. "data": {}
  1016. }
  1017. }
  1018. }
  1019. }
  1020. }
  1021. }
  1022. },
  1023. "204": {
  1024. "description": "User has no status to keep alive",
  1025. "content": {
  1026. "application/json": {
  1027. "schema": {
  1028. "type": "object",
  1029. "required": [
  1030. "ocs"
  1031. ],
  1032. "properties": {
  1033. "ocs": {
  1034. "type": "object",
  1035. "required": [
  1036. "meta",
  1037. "data"
  1038. ],
  1039. "properties": {
  1040. "meta": {
  1041. "$ref": "#/components/schemas/OCSMeta"
  1042. },
  1043. "data": {}
  1044. }
  1045. }
  1046. }
  1047. }
  1048. }
  1049. }
  1050. }
  1051. }
  1052. }
  1053. }
  1054. },
  1055. "tags": []
  1056. }