sidechat.js 2.5.4 → 2.5.6

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/dist/classes/SidechatAPIClient.d.ts +11 -2
  2. package/dist/classes/SidechatAPIClient.d.ts.map +1 -1
  3. package/dist/index.cjs +39 -9
  4. package/dist/index.mjs +39 -9
  5. package/docs/sidechat.js/2.5.5/SidechatAPIClient.html +3 -0
  6. package/docs/sidechat.js/{2.4.4 → 2.5.5}/SidechatAPIError.html +1 -1
  7. package/docs/sidechat.js/2.5.5/SidechatColorList.html +3 -0
  8. package/docs/sidechat.js/{2.4.7 → 2.5.5}/classes_SidechatAPIClient.js.html +152 -9
  9. package/docs/sidechat.js/2.5.5/classes_SidechatAPIError.js.html +16 -0
  10. package/docs/sidechat.js/2.5.5/classes_SidechatColorList.js.html +79 -0
  11. package/docs/sidechat.js/2.5.5/data/search.json +1 -0
  12. package/docs/sidechat.js/2.5.5/global.html +3 -0
  13. package/docs/sidechat.js/2.5.5/index.html +4 -0
  14. package/docs/sidechat.js/2.5.5/tutorial-Authentication.html +14 -0
  15. package/docs/sidechat.js/2.5.5/tutorial-Email Registration.html +6 -0
  16. package/docs/sidechat.js/{2.4.7 → 2.5.5}/types_SidechatTypes.js.html +23 -3
  17. package/docs/sidechat.js/2.5.6/SidechatAPIClient.html +3 -0
  18. package/docs/sidechat.js/2.5.6/SidechatAPIError.html +3 -0
  19. package/docs/sidechat.js/2.5.6/SidechatColorList.html +3 -0
  20. package/docs/sidechat.js/{2.4.6 → 2.5.6}/classes_SidechatAPIClient.js.html +181 -11
  21. package/docs/sidechat.js/2.5.6/classes_SidechatAPIError.js.html +16 -0
  22. package/docs/sidechat.js/2.5.6/classes_SidechatColorList.js.html +79 -0
  23. package/docs/sidechat.js/2.5.6/data/search.json +1 -0
  24. package/docs/sidechat.js/2.5.6/global.html +3 -0
  25. package/docs/sidechat.js/2.5.6/index.html +4 -0
  26. package/docs/sidechat.js/{2.4.6 → 2.5.6}/scripts/core.js +1 -1
  27. package/docs/sidechat.js/{2.4.6 → 2.5.6}/scripts/core.min.js +1 -1
  28. package/docs/sidechat.js/{2.4.6 → 2.5.6}/styles/clean-jsdoc-theme-base.css +3 -5
  29. package/docs/sidechat.js/2.5.6/styles/clean-jsdoc-theme-without-scrollbar.min.css +1 -0
  30. package/docs/sidechat.js/2.5.6/styles/clean-jsdoc-theme.min.css +1 -0
  31. package/docs/sidechat.js/2.5.6/tutorial-Authentication.html +14 -0
  32. package/docs/sidechat.js/2.5.6/tutorial-Email Registration.html +6 -0
  33. package/docs/sidechat.js/{2.4.6 → 2.5.6}/types_SidechatTypes.js.html +23 -3
  34. package/jsdoc.json +10 -0
  35. package/package.json +4 -4
  36. package/src/classes/SidechatAPIClient.js +39 -9
  37. package/src/tests/commentTest.js +22 -0
  38. package/src/tests/postTest.js +1 -1
  39. package/src/tests/updatesTest.js +19 -0
  40. package/docs/sidechat.js/1.0.0/data/search.json +0 -1
  41. package/docs/sidechat.js/1.0.0/global.html +0 -3
  42. package/docs/sidechat.js/1.0.0/index.html +0 -4
  43. package/docs/sidechat.js/1.0.0/index.js.html +0 -363
  44. package/docs/sidechat.js/1.0.0/scripts/core.js +0 -702
  45. package/docs/sidechat.js/1.0.0/scripts/core.min.js +0 -23
  46. package/docs/sidechat.js/1.0.0/styles/clean-jsdoc-theme-base.css +0 -975
  47. package/docs/sidechat.js/1.0.0/styles/clean-jsdoc-theme-dark.css +0 -407
  48. package/docs/sidechat.js/1.0.0/styles/clean-jsdoc-theme-light.css +0 -388
  49. package/docs/sidechat.js/1.0.0/styles/clean-jsdoc-theme.min.css +0 -1
  50. package/docs/sidechat.js/1.0.0/types_SidechatTypes.js.html +0 -82
  51. package/docs/sidechat.js/2.0.0-alpha.0/SidechatAPIClient.html +0 -3
  52. package/docs/sidechat.js/2.0.0-alpha.0/SidechatAPIError.html +0 -3
  53. package/docs/sidechat.js/2.0.0-alpha.0/classes_SidechatAPIClient.js.html +0 -418
  54. package/docs/sidechat.js/2.0.0-alpha.0/classes_SidechatAPIError.js.html +0 -16
  55. package/docs/sidechat.js/2.0.0-alpha.0/data/search.json +0 -1
  56. package/docs/sidechat.js/2.0.0-alpha.0/global.html +0 -3
  57. package/docs/sidechat.js/2.0.0-alpha.0/index.html +0 -4
  58. package/docs/sidechat.js/2.0.0-alpha.0/scripts/core.js +0 -702
  59. package/docs/sidechat.js/2.0.0-alpha.0/scripts/core.min.js +0 -23
  60. package/docs/sidechat.js/2.0.0-alpha.0/styles/clean-jsdoc-theme-base.css +0 -975
  61. package/docs/sidechat.js/2.0.0-alpha.0/styles/clean-jsdoc-theme-dark.css +0 -407
  62. package/docs/sidechat.js/2.0.0-alpha.0/styles/clean-jsdoc-theme-light.css +0 -388
  63. package/docs/sidechat.js/2.0.0-alpha.0/styles/clean-jsdoc-theme.min.css +0 -1
  64. package/docs/sidechat.js/2.0.0-alpha.0/tutorial-Authentication.html +0 -13
  65. package/docs/sidechat.js/2.0.0-alpha.0/tutorial-Email Registration.html +0 -6
  66. package/docs/sidechat.js/2.0.0-alpha.0/tutorial-Email Verification.html +0 -6
  67. package/docs/sidechat.js/2.0.0-alpha.0/types_SidechatTypes.js.html +0 -98
  68. package/docs/sidechat.js/2.4.0/SidechatAPIClient.html +0 -3
  69. package/docs/sidechat.js/2.4.0/SidechatAPIError.html +0 -3
  70. package/docs/sidechat.js/2.4.0/SidechatColorList.html +0 -3
  71. package/docs/sidechat.js/2.4.0/classes_SidechatAPIClient.js.html +0 -956
  72. package/docs/sidechat.js/2.4.0/classes_SidechatAPIError.js.html +0 -16
  73. package/docs/sidechat.js/2.4.0/classes_SidechatColorList.js.html +0 -79
  74. package/docs/sidechat.js/2.4.0/data/search.json +0 -1
  75. package/docs/sidechat.js/2.4.0/fonts/Inconsolata-Regular.ttf +0 -0
  76. package/docs/sidechat.js/2.4.0/fonts/OpenSans-Regular.ttf +0 -0
  77. package/docs/sidechat.js/2.4.0/fonts/WorkSans-Bold.ttf +0 -0
  78. package/docs/sidechat.js/2.4.0/global.html +0 -3
  79. package/docs/sidechat.js/2.4.0/index.html +0 -4
  80. package/docs/sidechat.js/2.4.0/scripts/core.js +0 -702
  81. package/docs/sidechat.js/2.4.0/scripts/core.min.js +0 -23
  82. package/docs/sidechat.js/2.4.0/scripts/resize.js +0 -90
  83. package/docs/sidechat.js/2.4.0/scripts/search.js +0 -265
  84. package/docs/sidechat.js/2.4.0/scripts/search.min.js +0 -6
  85. package/docs/sidechat.js/2.4.0/scripts/third-party/Apache-License-2.0.txt +0 -202
  86. package/docs/sidechat.js/2.4.0/scripts/third-party/fuse.js +0 -9
  87. package/docs/sidechat.js/2.4.0/scripts/third-party/hljs-line-num-original.js +0 -369
  88. package/docs/sidechat.js/2.4.0/scripts/third-party/hljs-line-num.js +0 -1
  89. package/docs/sidechat.js/2.4.0/scripts/third-party/hljs-original.js +0 -5171
  90. package/docs/sidechat.js/2.4.0/scripts/third-party/hljs.js +0 -1
  91. package/docs/sidechat.js/2.4.0/scripts/third-party/popper.js +0 -5
  92. package/docs/sidechat.js/2.4.0/scripts/third-party/tippy.js +0 -1
  93. package/docs/sidechat.js/2.4.0/scripts/third-party/tocbot.js +0 -672
  94. package/docs/sidechat.js/2.4.0/scripts/third-party/tocbot.min.js +0 -1
  95. package/docs/sidechat.js/2.4.0/styles/clean-jsdoc-theme-base.css +0 -975
  96. package/docs/sidechat.js/2.4.0/styles/clean-jsdoc-theme-dark.css +0 -407
  97. package/docs/sidechat.js/2.4.0/styles/clean-jsdoc-theme-light.css +0 -388
  98. package/docs/sidechat.js/2.4.0/styles/clean-jsdoc-theme.min.css +0 -1
  99. package/docs/sidechat.js/2.4.0/tutorial-Authentication.html +0 -14
  100. package/docs/sidechat.js/2.4.0/tutorial-Email Registration.html +0 -6
  101. package/docs/sidechat.js/2.4.0/types_SidechatTypes.js.html +0 -134
  102. package/docs/sidechat.js/2.4.4/SidechatAPIClient.html +0 -3
  103. package/docs/sidechat.js/2.4.4/SidechatColorList.html +0 -3
  104. package/docs/sidechat.js/2.4.4/classes_SidechatAPIClient.js.html +0 -1100
  105. package/docs/sidechat.js/2.4.4/classes_SidechatAPIError.js.html +0 -16
  106. package/docs/sidechat.js/2.4.4/classes_SidechatColorList.js.html +0 -79
  107. package/docs/sidechat.js/2.4.4/data/search.json +0 -1
  108. package/docs/sidechat.js/2.4.4/fonts/Inconsolata-Regular.ttf +0 -0
  109. package/docs/sidechat.js/2.4.4/fonts/OpenSans-Regular.ttf +0 -0
  110. package/docs/sidechat.js/2.4.4/fonts/WorkSans-Bold.ttf +0 -0
  111. package/docs/sidechat.js/2.4.4/global.html +0 -3
  112. package/docs/sidechat.js/2.4.4/index.html +0 -4
  113. package/docs/sidechat.js/2.4.4/scripts/core.js +0 -726
  114. package/docs/sidechat.js/2.4.4/scripts/core.min.js +0 -23
  115. package/docs/sidechat.js/2.4.4/scripts/resize.js +0 -90
  116. package/docs/sidechat.js/2.4.4/scripts/search.js +0 -265
  117. package/docs/sidechat.js/2.4.4/scripts/search.min.js +0 -6
  118. package/docs/sidechat.js/2.4.4/scripts/third-party/Apache-License-2.0.txt +0 -202
  119. package/docs/sidechat.js/2.4.4/scripts/third-party/fuse.js +0 -9
  120. package/docs/sidechat.js/2.4.4/scripts/third-party/hljs-line-num-original.js +0 -369
  121. package/docs/sidechat.js/2.4.4/scripts/third-party/hljs-line-num.js +0 -1
  122. package/docs/sidechat.js/2.4.4/scripts/third-party/hljs-original.js +0 -5171
  123. package/docs/sidechat.js/2.4.4/scripts/third-party/hljs.js +0 -1
  124. package/docs/sidechat.js/2.4.4/scripts/third-party/popper.js +0 -5
  125. package/docs/sidechat.js/2.4.4/scripts/third-party/tippy.js +0 -1
  126. package/docs/sidechat.js/2.4.4/scripts/third-party/tocbot.js +0 -672
  127. package/docs/sidechat.js/2.4.4/scripts/third-party/tocbot.min.js +0 -1
  128. package/docs/sidechat.js/2.4.4/styles/clean-jsdoc-theme-base.css +0 -1161
  129. package/docs/sidechat.js/2.4.4/styles/clean-jsdoc-theme-without-scrollbar.min.css +0 -1
  130. package/docs/sidechat.js/2.4.4/styles/clean-jsdoc-theme.min.css +0 -1
  131. package/docs/sidechat.js/2.4.4/tutorial-Authentication.html +0 -14
  132. package/docs/sidechat.js/2.4.4/tutorial-Email Registration.html +0 -6
  133. package/docs/sidechat.js/2.4.4/types_SidechatTypes.js.html +0 -160
  134. package/docs/sidechat.js/2.4.6/SidechatAPIClient.html +0 -3
  135. package/docs/sidechat.js/2.4.6/SidechatAPIError.html +0 -3
  136. package/docs/sidechat.js/2.4.6/SidechatColorList.html +0 -3
  137. package/docs/sidechat.js/2.4.6/classes_SidechatAPIError.js.html +0 -16
  138. package/docs/sidechat.js/2.4.6/classes_SidechatColorList.js.html +0 -79
  139. package/docs/sidechat.js/2.4.6/data/search.json +0 -1
  140. package/docs/sidechat.js/2.4.6/fonts/Inconsolata-Regular.ttf +0 -0
  141. package/docs/sidechat.js/2.4.6/fonts/OpenSans-Regular.ttf +0 -0
  142. package/docs/sidechat.js/2.4.6/fonts/WorkSans-Bold.ttf +0 -0
  143. package/docs/sidechat.js/2.4.6/global.html +0 -3
  144. package/docs/sidechat.js/2.4.6/index.html +0 -4
  145. package/docs/sidechat.js/2.4.6/scripts/resize.js +0 -90
  146. package/docs/sidechat.js/2.4.6/scripts/search.js +0 -265
  147. package/docs/sidechat.js/2.4.6/scripts/search.min.js +0 -6
  148. package/docs/sidechat.js/2.4.6/scripts/third-party/Apache-License-2.0.txt +0 -202
  149. package/docs/sidechat.js/2.4.6/scripts/third-party/fuse.js +0 -9
  150. package/docs/sidechat.js/2.4.6/scripts/third-party/hljs-line-num-original.js +0 -369
  151. package/docs/sidechat.js/2.4.6/scripts/third-party/hljs-line-num.js +0 -1
  152. package/docs/sidechat.js/2.4.6/scripts/third-party/hljs-original.js +0 -5171
  153. package/docs/sidechat.js/2.4.6/scripts/third-party/hljs.js +0 -1
  154. package/docs/sidechat.js/2.4.6/scripts/third-party/popper.js +0 -5
  155. package/docs/sidechat.js/2.4.6/scripts/third-party/tippy.js +0 -1
  156. package/docs/sidechat.js/2.4.6/scripts/third-party/tocbot.js +0 -672
  157. package/docs/sidechat.js/2.4.6/scripts/third-party/tocbot.min.js +0 -1
  158. package/docs/sidechat.js/2.4.6/styles/clean-jsdoc-theme-without-scrollbar.min.css +0 -1
  159. package/docs/sidechat.js/2.4.6/styles/clean-jsdoc-theme.min.css +0 -1
  160. package/docs/sidechat.js/2.4.6/tutorial-Authentication.html +0 -14
  161. package/docs/sidechat.js/2.4.6/tutorial-Email Registration.html +0 -6
  162. package/docs/sidechat.js/2.4.7/SidechatAPIClient.html +0 -3
  163. package/docs/sidechat.js/2.4.7/SidechatAPIError.html +0 -3
  164. package/docs/sidechat.js/2.4.7/SidechatColorList.html +0 -3
  165. package/docs/sidechat.js/2.4.7/classes_SidechatAPIError.js.html +0 -16
  166. package/docs/sidechat.js/2.4.7/classes_SidechatColorList.js.html +0 -79
  167. package/docs/sidechat.js/2.4.7/data/search.json +0 -1
  168. package/docs/sidechat.js/2.4.7/fonts/Inconsolata-Regular.ttf +0 -0
  169. package/docs/sidechat.js/2.4.7/fonts/OpenSans-Regular.ttf +0 -0
  170. package/docs/sidechat.js/2.4.7/fonts/WorkSans-Bold.ttf +0 -0
  171. package/docs/sidechat.js/2.4.7/global.html +0 -3
  172. package/docs/sidechat.js/2.4.7/index.html +0 -4
  173. package/docs/sidechat.js/2.4.7/scripts/resize.js +0 -90
  174. package/docs/sidechat.js/2.4.7/scripts/search.js +0 -265
  175. package/docs/sidechat.js/2.4.7/scripts/search.min.js +0 -6
  176. package/docs/sidechat.js/2.4.7/scripts/third-party/Apache-License-2.0.txt +0 -202
  177. package/docs/sidechat.js/2.4.7/scripts/third-party/fuse.js +0 -9
  178. package/docs/sidechat.js/2.4.7/scripts/third-party/hljs-line-num-original.js +0 -369
  179. package/docs/sidechat.js/2.4.7/scripts/third-party/hljs-line-num.js +0 -1
  180. package/docs/sidechat.js/2.4.7/scripts/third-party/hljs-original.js +0 -5171
  181. package/docs/sidechat.js/2.4.7/scripts/third-party/hljs.js +0 -1
  182. package/docs/sidechat.js/2.4.7/scripts/third-party/popper.js +0 -5
  183. package/docs/sidechat.js/2.4.7/scripts/third-party/tippy.js +0 -1
  184. package/docs/sidechat.js/2.4.7/scripts/third-party/tocbot.js +0 -672
  185. package/docs/sidechat.js/2.4.7/scripts/third-party/tocbot.min.js +0 -1
  186. package/docs/sidechat.js/2.4.7/styles/clean-jsdoc-theme-dark.css +0 -412
  187. package/docs/sidechat.js/2.4.7/styles/clean-jsdoc-theme-light.css +0 -482
  188. package/docs/sidechat.js/2.4.7/styles/clean-jsdoc-theme-scrollbar.css +0 -30
  189. package/docs/sidechat.js/2.4.7/tutorial-Authentication.html +0 -14
  190. package/docs/sidechat.js/2.4.7/tutorial-Email Registration.html +0 -6
  191. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/fonts/Inconsolata-Regular.ttf +0 -0
  192. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/fonts/OpenSans-Regular.ttf +0 -0
  193. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/fonts/WorkSans-Bold.ttf +0 -0
  194. /package/docs/sidechat.js/{2.4.7 → 2.5.5}/scripts/core.js +0 -0
  195. /package/docs/sidechat.js/{2.4.7 → 2.5.5}/scripts/core.min.js +0 -0
  196. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/resize.js +0 -0
  197. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/search.js +0 -0
  198. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/search.min.js +0 -0
  199. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/Apache-License-2.0.txt +0 -0
  200. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/fuse.js +0 -0
  201. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/hljs-line-num-original.js +0 -0
  202. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/hljs-line-num.js +0 -0
  203. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/hljs-original.js +0 -0
  204. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/hljs.js +0 -0
  205. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/popper.js +0 -0
  206. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/tippy.js +0 -0
  207. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/tocbot.js +0 -0
  208. /package/docs/sidechat.js/{1.0.0 → 2.5.5}/scripts/third-party/tocbot.min.js +0 -0
  209. /package/docs/sidechat.js/{2.4.7 → 2.5.5}/styles/clean-jsdoc-theme-base.css +0 -0
  210. /package/docs/sidechat.js/{2.4.4 → 2.5.5}/styles/clean-jsdoc-theme-dark.css +0 -0
  211. /package/docs/sidechat.js/{2.4.4 → 2.5.5}/styles/clean-jsdoc-theme-light.css +0 -0
  212. /package/docs/sidechat.js/{2.4.4 → 2.5.5}/styles/clean-jsdoc-theme-scrollbar.css +0 -0
  213. /package/docs/sidechat.js/{2.4.7 → 2.5.5}/styles/clean-jsdoc-theme-without-scrollbar.min.css +0 -0
  214. /package/docs/sidechat.js/{2.4.7 → 2.5.5}/styles/clean-jsdoc-theme.min.css +0 -0
  215. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/fonts/Inconsolata-Regular.ttf +0 -0
  216. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/fonts/OpenSans-Regular.ttf +0 -0
  217. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/fonts/WorkSans-Bold.ttf +0 -0
  218. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/resize.js +0 -0
  219. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/search.js +0 -0
  220. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/search.min.js +0 -0
  221. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/Apache-License-2.0.txt +0 -0
  222. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/fuse.js +0 -0
  223. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/hljs-line-num-original.js +0 -0
  224. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/hljs-line-num.js +0 -0
  225. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/hljs-original.js +0 -0
  226. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/hljs.js +0 -0
  227. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/popper.js +0 -0
  228. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/tippy.js +0 -0
  229. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/tocbot.js +0 -0
  230. /package/docs/sidechat.js/{2.0.0-alpha.0 → 2.5.6}/scripts/third-party/tocbot.min.js +0 -0
  231. /package/docs/sidechat.js/{2.4.6 → 2.5.6}/styles/clean-jsdoc-theme-dark.css +0 -0
  232. /package/docs/sidechat.js/{2.4.6 → 2.5.6}/styles/clean-jsdoc-theme-light.css +0 -0
  233. /package/docs/sidechat.js/{2.4.6 → 2.5.6}/styles/clean-jsdoc-theme-scrollbar.css +0 -0
@@ -201,12 +201,13 @@ declare class SidechatAPIClient {
201
201
  * @param {String} text - text content of comment
202
202
  * @param {String} groupID - alphanumeric ID of group in which the parent post resides
203
203
  * @param {String} [replyCommentID] - alphanumeric ID of comment to reply to. Falls back to parentPostID
204
+ * @param {String} [topLevelReplyID] - alphanumeric ID of the top-level comment to reply to. Used only when replying to replies. Falls back to parentPostID
204
205
  * @param {SidechatSimpleAsset[]} [assetList] - list of assets to attach
205
206
  * @param {Boolean} [disableDMs] - prevent direct messages being sent to comment's author
206
207
  * @param {Boolean} [anonymous] - whether or not to hide user's name and icon on comment
207
208
  * @returns {SidechatPostOrComment} created comment
208
209
  */
209
- createComment: (parentPostID: string, text: string, groupID: string, replyCommentID?: string, assetList?: SidechatSimpleAsset[], disableDMs?: boolean, anonymous?: boolean) => SidechatPostOrComment;
210
+ createComment: (parentPostID: string, text: string, groupID: string, replyCommentID?: string, topLevelReplyID?: string, assetList?: SidechatSimpleAsset[], disableDMs?: boolean, anonymous?: boolean) => SidechatPostOrComment;
210
211
  /**
211
212
  * Creates a new post in the specified group
212
213
  * @method
@@ -253,7 +254,7 @@ declare class SidechatAPIClient {
253
254
  */
254
255
  uploadAsset: (uri: string, mimeType: string, name?: string) => string;
255
256
  /**
256
- * Sets the conversation icon of the current user
257
+ * Sets the conversation icon of a user
257
258
  * @method
258
259
  * @since 2.2.1
259
260
  * @param {String} userID - alphanumeric ID of user
@@ -262,6 +263,14 @@ declare class SidechatAPIClient {
262
263
  * @param {String} secondaryColor - hex string (including #) of secondary color
263
264
  */
264
265
  setUserIcon: (userID: string, emoji: string, primaryColor: string, secondaryColor: string) => Promise<any>;
266
+ /**
267
+ * Sets the bio text of a user
268
+ * @method
269
+ * @since 2.5.6
270
+ * @param {String} userID - alphanumeric ID of user
271
+ * @param {String} bio - text to set as bio
272
+ */
273
+ setUserBio: (userID: string, bio: string) => Promise<any>;
265
274
  /**
266
275
  * Checks if user can set their username to a string
267
276
  * @method
@@ -1 +1 @@
1
- {"version":3,"file":"SidechatAPIClient.d.ts","sourceRoot":"","sources":["../../src/classes/SidechatAPIClient.js"],"names":[],"mappings":";AAGA;;;;GAIG;AACH;IA2BE;;;;OAIG;IACH,oBAHW,iBAAiB,oBAU3B;IAtCD;;;SAGK;IACL,WAFU,iBAAiB,CAEjB;IAEV;;;;;OAKG;IACH,oBAKE;IAEF;;;;OAIG;IACH,gBAAqC;IAgBrC;;;;OAIG;IACH,kBAFW,iBAAiB,UAI1B;IAEF;;;;;OAKG;IACH,kCAEE;IAEF;;;;;;;;;OASG;IACH,yCANW,KAAK,GAAC,MAAM,GAAC,KAAK,GAAC,QAAQ,GAAC,OAAO,GAAC,SAAS,0EAuBtD;IAEF;;;;;OAKG;IACH,mDAgBE;IAEF;;;;;;OAMG;IACH,mEAmBE;IAEF;;;;;;OAMG;IACH,8DAsBE;IAEF;;;;;;OAMG;IACH,+CAwBE;IAEF;;;;OAIG;IACH,2CAsBE;IAEF;;;;;OAKG;IACH,6CAuBE;IAEF;;;;;;OAMG;IACH,oDAGE;IAEF;;;;;OAKG;IACH,+CAqBE;IAEF;;;;;;;;OAQG;IACH,4CAJW,KAAK,GAAC,QAAQ,GAAC,KAAK,WACpB,oBAAoB,KAClB,sBAAsB,CAyBjC;IAEF;;;;;;OAMG;IACH,kCAFW,kBAAkB,kBAwB3B;IAEF;;;;;;;OAOG;IACH,uDAFa,qBAAqB,CAuBhC;IAEF;;;;;;OAMG;IACH,8BAHW,OAAO,GAAC,UAAU,KAChB,qBAAqB,EAAE,CAyBlC;IAEF;;;;;;OAMG;IACH,qCAFa,qBAAqB,EAAE,CAqElC;IAEF;;;;;;OAMG;IACH,2CAFa,aAAa,EAAE,CAqB1B;IAEF;;;;;OAKG;IACH,uBAFa,oBAAoB,EAAE,CAoBjC;IAEF;;;;;OAKG;IACH,sBAFa,mBAAmB,CAoB9B;IAEF;;;;;;OAMG;IACH,wCAFa,aAAa,CAoBxB;IAEF;;;;;;OAMG;IACH,yEAwBE;IAEF;;;;;;;;;;;;OAYG;IACH,0GALW,mBAAmB,EAAE,gDAGnB,qBAAqB,CAsChC;IAEF;;;;;;;;;;;OAWG;IACH,wDANW,mBAAmB,EAAE,2EAInB,qBAAqB,CAqChC;IAEF;;;;;OAKG;IACH,+DAqBE;IAEF;;;;;;OAMG;IACH,kEAsBE;IAEF;;;;;OAKG;IACH,kDAqBE;IAEF;;;;;;;;OAQG;IACH,sEAyCE;IAEF;;;;;;;;OAQG;IACH,2GA2BE;IAEF;;;;;;OAMG;IACH,6CAwBE;IAEF;;;;;;OAMG;IACH,gEAqBE;IAEF;;;;;OAKG;IACH,mDAqBE;IAEF;;;;OAIG;IACH,kCAkBE;IAEF;;;;OAIG;IACH,wHAiCE;IAEF;;;;;OAKG;IACH,cAHa,oBAAoB,EAAE,CA0BjC;IAEF;;;;;;OAMG;IACH,6BAHa,oBAAoB,CAwB/B;IAEF;;;;;;;;;OASG;IACH,kEAJW,aAAa,EAAE,uCA6BxB;IAEF;;;;;;;;;OASG;IACH,6FAHW,MAAM,kBAkCf;CACH"}
1
+ {"version":3,"file":"SidechatAPIClient.d.ts","sourceRoot":"","sources":["../../src/classes/SidechatAPIClient.js"],"names":[],"mappings":";AAGA;;;;GAIG;AACH;IA2BE;;;;OAIG;IACH,oBAHW,iBAAiB,oBAU3B;IAtCD;;;SAGK;IACL,WAFU,iBAAiB,CAEjB;IAEV;;;;;OAKG;IACH,oBAKE;IAEF;;;;OAIG;IACH,gBAAqC;IAgBrC;;;;OAIG;IACH,kBAFW,iBAAiB,UAI1B;IAEF;;;;;OAKG;IACH,kCAEE;IAEF;;;;;;;;;OASG;IACH,yCANW,KAAK,GAAC,MAAM,GAAC,KAAK,GAAC,QAAQ,GAAC,OAAO,GAAC,SAAS,0EAuBtD;IAEF;;;;;OAKG;IACH,mDAgBE;IAEF;;;;;;OAMG;IACH,mEAmBE;IAEF;;;;;;OAMG;IACH,8DAsBE;IAEF;;;;;;OAMG;IACH,+CAwBE;IAEF;;;;OAIG;IACH,2CAsBE;IAEF;;;;;OAKG;IACH,6CAuBE;IAEF;;;;;;OAMG;IACH,oDAGE;IAEF;;;;;OAKG;IACH,+CAqBE;IAEF;;;;;;;;OAQG;IACH,4CAJW,KAAK,GAAC,QAAQ,GAAC,KAAK,WACpB,oBAAoB,KAClB,sBAAsB,CAwBjC;IAEF;;;;;;OAMG;IACH,kCAFW,kBAAkB,kBAwB3B;IAEF;;;;;;;OAOG;IACH,uDAFa,qBAAqB,CAuBhC;IAEF;;;;;;OAMG;IACH,8BAHW,OAAO,GAAC,UAAU,KAChB,qBAAqB,EAAE,CAyBlC;IAEF;;;;;;OAMG;IACH,qCAFa,qBAAqB,EAAE,CAqElC;IAEF;;;;;;OAMG;IACH,2CAFa,aAAa,EAAE,CAqB1B;IAEF;;;;;OAKG;IACH,uBAFa,oBAAoB,EAAE,CAoBjC;IAEF;;;;;OAKG;IACH,sBAFa,mBAAmB,CAoB9B;IAEF;;;;;;OAMG;IACH,wCAFa,aAAa,CAoBxB;IAEF;;;;;;OAMG;IACH,yEAwBE;IAEF;;;;;;;;;;;;;OAaG;IACH,oIALW,mBAAmB,EAAE,gDAGnB,qBAAqB,CAwChC;IAEF;;;;;;;;;;;OAWG;IACH,wDANW,mBAAmB,EAAE,2EAInB,qBAAqB,CAqChC;IAEF;;;;;OAKG;IACH,+DAqBE;IAEF;;;;;;OAMG;IACH,kEAsBE;IAEF;;;;;OAKG;IACH,kDAqBE;IAEF;;;;;;;;OAQG;IACH,sEAsCE;IAEF;;;;;;;;OAQG;IACH,2GA2BE;IAEF;;;;;;OAMG;IACH,0DAsBE;IAEF;;;;;;OAMG;IACH,6CAwBE;IAEF;;;;;;OAMG;IACH,gEAqBE;IAEF;;;;;OAKG;IACH,mDAqBE;IAEF;;;;OAIG;IACH,kCAkBE;IAEF;;;;OAIG;IACH,wHAiCE;IAEF;;;;;OAKG;IACH,cAHa,oBAAoB,EAAE,CA0BjC;IAEF;;;;;;OAMG;IACH,6BAHa,oBAAoB,CAwB/B;IAEF;;;;;;;;;OASG;IACH,kEAJW,aAAa,EAAE,uCA6BxB;IAEF;;;;;;;;;OASG;IACH,6FAHW,MAAM,kBAkCf;CACH"}
package/dist/index.cjs CHANGED
@@ -518,8 +518,7 @@ class SidechatAPIClient {
518
518
  }
519
519
  try {
520
520
  const res = await fetch(
521
- `${this.apiRoot}/v1/posts?${
522
- cursor ? "cursor=" + encodeURIComponent(cursor) + "&" : ""
521
+ `${this.apiRoot}/v1/posts?${cursor ? "cursor=" + encodeURIComponent(cursor) + "&" : ""
523
522
  }group_id=${groupID}&type=${category}`,
524
523
  {
525
524
  method: "GET",
@@ -855,6 +854,7 @@ class SidechatAPIClient {
855
854
  * @param {String} text - text content of comment
856
855
  * @param {String} groupID - alphanumeric ID of group in which the parent post resides
857
856
  * @param {String} [replyCommentID] - alphanumeric ID of comment to reply to. Falls back to parentPostID
857
+ * @param {String} [topLevelReplyID] - alphanumeric ID of the top-level comment to reply to. Used only when replying to replies. Falls back to parentPostID
858
858
  * @param {SidechatSimpleAsset[]} [assetList] - list of assets to attach
859
859
  * @param {Boolean} [disableDMs] - prevent direct messages being sent to comment's author
860
860
  * @param {Boolean} [anonymous] - whether or not to hide user's name and icon on comment
@@ -864,7 +864,8 @@ class SidechatAPIClient {
864
864
  parentPostID,
865
865
  text,
866
866
  groupID,
867
- replyCommentID = parentPostID,
867
+ replyCommentID,
868
+ topLevelReplyID,
868
869
  assetList = [],
869
870
  disableDMs = false,
870
871
  anonymous = false
@@ -884,7 +885,8 @@ class SidechatAPIClient {
884
885
  assets: assetList,
885
886
  group_ids: [groupID],
886
887
  text: text,
887
- reply_post_id: replyCommentID,
888
+ reply_post_id: topLevelReplyID || replyCommentID || parentPostID,
889
+ reply_comment_post_id: replyCommentID || parentPostID,
888
890
  parent_post_id: parentPostID,
889
891
  dms_disabled: disableDMs,
890
892
  using_identity: !anonymous,
@@ -1062,10 +1064,7 @@ class SidechatAPIClient {
1062
1064
  uri: uri,
1063
1065
  });
1064
1066
 
1065
- const urlReq = await this.sendRequest(
1066
- `/v1/assets/upload_url?content_type=${imageType}`,
1067
- "GET"
1068
- );
1067
+ const urlReq = await this.sendRequest(`/v1/assets/upload_url?content_type=${imageType}`);
1069
1068
  const urlJson = await urlReq.json();
1070
1069
 
1071
1070
  try {
@@ -1089,7 +1088,7 @@ class SidechatAPIClient {
1089
1088
  };
1090
1089
 
1091
1090
  /**
1092
- * Sets the conversation icon of the current user
1091
+ * Sets the conversation icon of a user
1093
1092
  * @method
1094
1093
  * @since 2.2.1
1095
1094
  * @param {String} userID - alphanumeric ID of user
@@ -1126,6 +1125,37 @@ class SidechatAPIClient {
1126
1125
  }
1127
1126
  };
1128
1127
 
1128
+ /**
1129
+ * Sets the bio text of a user
1130
+ * @method
1131
+ * @since 2.5.6
1132
+ * @param {String} userID - alphanumeric ID of user
1133
+ * @param {String} bio - text to set as bio
1134
+ */
1135
+ setUserBio = async (userID, bio) => {
1136
+ if (!this.userToken) {
1137
+ throw new SidechatAPIError("User is not authenticated.");
1138
+ }
1139
+ try {
1140
+ const res = await fetch(`${this.apiRoot}/v1/users/${userID}`, {
1141
+ method: "PATCH",
1142
+ headers: {
1143
+ ...this.defaultHeaders,
1144
+ "App-Version": "5.4.22",
1145
+ Authorization: `Bearer ${this.userToken}`,
1146
+ },
1147
+ body: JSON.stringify({
1148
+ bio: bio
1149
+ }),
1150
+ });
1151
+ const json = await res.json();
1152
+ return await json;
1153
+ } catch (err) {
1154
+ console.error(err);
1155
+ throw new SidechatAPIError(`Failed to set bio.`);
1156
+ }
1157
+ };
1158
+
1129
1159
  /**
1130
1160
  * Checks if user can set their username to a string
1131
1161
  * @method
package/dist/index.mjs CHANGED
@@ -514,8 +514,7 @@ class SidechatAPIClient {
514
514
  }
515
515
  try {
516
516
  const res = await fetch(
517
- `${this.apiRoot}/v1/posts?${
518
- cursor ? "cursor=" + encodeURIComponent(cursor) + "&" : ""
517
+ `${this.apiRoot}/v1/posts?${cursor ? "cursor=" + encodeURIComponent(cursor) + "&" : ""
519
518
  }group_id=${groupID}&type=${category}`,
520
519
  {
521
520
  method: "GET",
@@ -851,6 +850,7 @@ class SidechatAPIClient {
851
850
  * @param {String} text - text content of comment
852
851
  * @param {String} groupID - alphanumeric ID of group in which the parent post resides
853
852
  * @param {String} [replyCommentID] - alphanumeric ID of comment to reply to. Falls back to parentPostID
853
+ * @param {String} [topLevelReplyID] - alphanumeric ID of the top-level comment to reply to. Used only when replying to replies. Falls back to parentPostID
854
854
  * @param {SidechatSimpleAsset[]} [assetList] - list of assets to attach
855
855
  * @param {Boolean} [disableDMs] - prevent direct messages being sent to comment's author
856
856
  * @param {Boolean} [anonymous] - whether or not to hide user's name and icon on comment
@@ -860,7 +860,8 @@ class SidechatAPIClient {
860
860
  parentPostID,
861
861
  text,
862
862
  groupID,
863
- replyCommentID = parentPostID,
863
+ replyCommentID,
864
+ topLevelReplyID,
864
865
  assetList = [],
865
866
  disableDMs = false,
866
867
  anonymous = false
@@ -880,7 +881,8 @@ class SidechatAPIClient {
880
881
  assets: assetList,
881
882
  group_ids: [groupID],
882
883
  text: text,
883
- reply_post_id: replyCommentID,
884
+ reply_post_id: topLevelReplyID || replyCommentID || parentPostID,
885
+ reply_comment_post_id: replyCommentID || parentPostID,
884
886
  parent_post_id: parentPostID,
885
887
  dms_disabled: disableDMs,
886
888
  using_identity: !anonymous,
@@ -1058,10 +1060,7 @@ class SidechatAPIClient {
1058
1060
  uri: uri,
1059
1061
  });
1060
1062
 
1061
- const urlReq = await this.sendRequest(
1062
- `/v1/assets/upload_url?content_type=${imageType}`,
1063
- "GET"
1064
- );
1063
+ const urlReq = await this.sendRequest(`/v1/assets/upload_url?content_type=${imageType}`);
1065
1064
  const urlJson = await urlReq.json();
1066
1065
 
1067
1066
  try {
@@ -1085,7 +1084,7 @@ class SidechatAPIClient {
1085
1084
  };
1086
1085
 
1087
1086
  /**
1088
- * Sets the conversation icon of the current user
1087
+ * Sets the conversation icon of a user
1089
1088
  * @method
1090
1089
  * @since 2.2.1
1091
1090
  * @param {String} userID - alphanumeric ID of user
@@ -1122,6 +1121,37 @@ class SidechatAPIClient {
1122
1121
  }
1123
1122
  };
1124
1123
 
1124
+ /**
1125
+ * Sets the bio text of a user
1126
+ * @method
1127
+ * @since 2.5.6
1128
+ * @param {String} userID - alphanumeric ID of user
1129
+ * @param {String} bio - text to set as bio
1130
+ */
1131
+ setUserBio = async (userID, bio) => {
1132
+ if (!this.userToken) {
1133
+ throw new SidechatAPIError("User is not authenticated.");
1134
+ }
1135
+ try {
1136
+ const res = await fetch(`${this.apiRoot}/v1/users/${userID}`, {
1137
+ method: "PATCH",
1138
+ headers: {
1139
+ ...this.defaultHeaders,
1140
+ "App-Version": "5.4.22",
1141
+ Authorization: `Bearer ${this.userToken}`,
1142
+ },
1143
+ body: JSON.stringify({
1144
+ bio: bio
1145
+ }),
1146
+ });
1147
+ const json = await res.json();
1148
+ return await json;
1149
+ } catch (err) {
1150
+ console.error(err);
1151
+ throw new SidechatAPIError(`Failed to set bio.`);
1152
+ }
1153
+ };
1154
+
1125
1155
  /**
1126
1156
  * Checks if user can set their username to a string
1127
1157
  * @method
@@ -0,0 +1,3 @@
1
+ <!DOCTYPE html><html lang="en" style="font-size:16px"><head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Class: SidechatAPIClient</title><!--[if lt IE 9]>
2
+ <script src="//html5shiv.googlecode.com/svn/trunk/html5.js"></script>
3
+ <![endif]--><script src="scripts/third-party/hljs.js" defer="defer"></script><script src="scripts/third-party/hljs-line-num.js" defer="defer"></script><script src="scripts/third-party/popper.js" defer="defer"></script><script src="scripts/third-party/tippy.js" defer="defer"></script><script src="scripts/third-party/tocbot.min.js"></script><script>var baseURL="/",locationPathname="";baseURL=(baseURL=(baseURL="https://micahlindley.com/sidechat.js/").replace(/https?:\/\//i,"")).substr(baseURL.indexOf("/"))</script><link rel="stylesheet" href="styles/clean-jsdoc-theme.min.css"><svg aria-hidden="true" version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" style="display:none"><defs><symbol id="copy-icon" viewbox="0 0 488.3 488.3"><g><path d="M314.25,85.4h-227c-21.3,0-38.6,17.3-38.6,38.6v325.7c0,21.3,17.3,38.6,38.6,38.6h227c21.3,0,38.6-17.3,38.6-38.6V124 C352.75,102.7,335.45,85.4,314.25,85.4z M325.75,449.6c0,6.4-5.2,11.6-11.6,11.6h-227c-6.4,0-11.6-5.2-11.6-11.6V124 c0-6.4,5.2-11.6,11.6-11.6h227c6.4,0,11.6,5.2,11.6,11.6V449.6z"/><path d="M401.05,0h-227c-21.3,0-38.6,17.3-38.6,38.6c0,7.5,6,13.5,13.5,13.5s13.5-6,13.5-13.5c0-6.4,5.2-11.6,11.6-11.6h227 c6.4,0,11.6,5.2,11.6,11.6v325.7c0,6.4-5.2,11.6-11.6,11.6c-7.5,0-13.5,6-13.5,13.5s6,13.5,13.5,13.5c21.3,0,38.6-17.3,38.6-38.6 V38.6C439.65,17.3,422.35,0,401.05,0z"/></g></symbol><symbol id="search-icon" viewBox="0 0 512 512"><g><g><path d="M225.474,0C101.151,0,0,101.151,0,225.474c0,124.33,101.151,225.474,225.474,225.474 c124.33,0,225.474-101.144,225.474-225.474C450.948,101.151,349.804,0,225.474,0z M225.474,409.323 c-101.373,0-183.848-82.475-183.848-183.848S124.101,41.626,225.474,41.626s183.848,82.475,183.848,183.848 S326.847,409.323,225.474,409.323z"/></g></g><g><g><path d="M505.902,476.472L386.574,357.144c-8.131-8.131-21.299-8.131-29.43,0c-8.131,8.124-8.131,21.306,0,29.43l119.328,119.328 c4.065,4.065,9.387,6.098,14.715,6.098c5.321,0,10.649-2.033,14.715-6.098C514.033,497.778,514.033,484.596,505.902,476.472z"/></g></g></symbol><symbol id="font-size-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M11.246 15H4.754l-2 5H.6L7 4h2l6.4 16h-2.154l-2-5zm-.8-2L8 6.885 5.554 13h4.892zM21 12.535V12h2v8h-2v-.535a4 4 0 1 1 0-6.93zM19 18a2 2 0 1 0 0-4 2 2 0 0 0 0 4z"/></symbol><symbol id="add-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M11 11V5h2v6h6v2h-6v6h-2v-6H5v-2z"/></symbol><symbol id="minus-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M5 11h14v2H5z"/></symbol><symbol id="dark-theme-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M10 7a7 7 0 0 0 12 4.9v.1c0 5.523-4.477 10-10 10S2 17.523 2 12 6.477 2 12 2h.1A6.979 6.979 0 0 0 10 7zm-6 5a8 8 0 0 0 15.062 3.762A9 9 0 0 1 8.238 4.938 7.999 7.999 0 0 0 4 12z"/></symbol><symbol id="light-theme-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 18a6 6 0 1 1 0-12 6 6 0 0 1 0 12zm0-2a4 4 0 1 0 0-8 4 4 0 0 0 0 8zM11 1h2v3h-2V1zm0 19h2v3h-2v-3zM3.515 4.929l1.414-1.414L7.05 5.636 5.636 7.05 3.515 4.93zM16.95 18.364l1.414-1.414 2.121 2.121-1.414 1.414-2.121-2.121zm2.121-14.85l1.414 1.415-2.121 2.121-1.414-1.414 2.121-2.121zM5.636 16.95l1.414 1.414-2.121 2.121-1.414-1.414 2.121-2.121zM23 11v2h-3v-2h3zM4 11v2H1v-2h3z"/></symbol><symbol id="reset-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M18.537 19.567A9.961 9.961 0 0 1 12 22C6.477 22 2 17.523 2 12S6.477 2 12 2s10 4.477 10 10c0 2.136-.67 4.116-1.81 5.74L17 12h3a8 8 0 1 0-2.46 5.772l.997 1.795z"/></symbol><symbol id="down-icon" viewBox="0 0 16 16"><path fill-rule="evenodd" clip-rule="evenodd" d="M12.7803 6.21967C13.0732 6.51256 13.0732 6.98744 12.7803 7.28033L8.53033 11.5303C8.23744 11.8232 7.76256 11.8232 7.46967 11.5303L3.21967 7.28033C2.92678 6.98744 2.92678 6.51256 3.21967 6.21967C3.51256 5.92678 3.98744 5.92678 4.28033 6.21967L8 9.93934L11.7197 6.21967C12.0126 5.92678 12.4874 5.92678 12.7803 6.21967Z"></path></symbol><symbol id="codepen-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M16.5 13.202L13 15.535v3.596L19.197 15 16.5 13.202zM14.697 12L12 10.202 9.303 12 12 13.798 14.697 12zM20 10.869L18.303 12 20 13.131V10.87zM19.197 9L13 4.869v3.596l3.5 2.333L19.197 9zM7.5 10.798L11 8.465V4.869L4.803 9 7.5 10.798zM4.803 15L11 19.131v-3.596l-3.5-2.333L4.803 15zM4 13.131L5.697 12 4 10.869v2.262zM2 9a1 1 0 0 1 .445-.832l9-6a1 1 0 0 1 1.11 0l9 6A1 1 0 0 1 22 9v6a1 1 0 0 1-.445.832l-9 6a1 1 0 0 1-1.11 0l-9-6A1 1 0 0 1 2 15V9z"/></symbol><symbol id="close-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M12 10.586l4.95-4.95 1.414 1.414-4.95 4.95 4.95 4.95-1.414 1.414-4.95-4.95-4.95 4.95-1.414-1.414 4.95-4.95-4.95-4.95L7.05 5.636z"/></symbol><symbol id="menu-icon" viewBox="0 0 24 24"><path fill="none" d="M0 0h24v24H0z"/><path d="M3 4h18v2H3V4zm0 7h18v2H3v-2zm0 7h18v2H3v-2z"/></symbol></defs></svg></head><body data-theme="dark"><div class="sidebar-container"><div class="sidebar" id="sidebar"><a href="/" class="sidebar-title sidebar-title-anchor">sidechat.js</a><div class="sidebar-items-container"><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-tutorials"><div>Tutorials</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="tutorial-Authentication.html">Authentication</a></div><div class="sidebar-section-children"><a href="tutorial-Email Registration.html">Email Registration</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-classes"><div>Classes</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="SidechatAPIClient.html">SidechatAPIClient</a></div><div class="sidebar-section-children"><a href="SidechatAPIError.html">SidechatAPIError</a></div><div class="sidebar-section-children"><a href="SidechatColorList.html">SidechatColorList</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-global"><div>Global</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="global.html#SidechatAssetMetadata">SidechatAssetMetadata</a></div><div class="sidebar-section-children"><a href="global.html#SidechatAuthToken">SidechatAuthToken</a></div><div class="sidebar-section-children"><a href="global.html#SidechatColor">SidechatColor</a></div><div class="sidebar-section-children"><a href="global.html#SidechatCurrentUser">SidechatCurrentUser</a></div><div class="sidebar-section-children"><a href="global.html#SidechatCursorString">SidechatCursorString</a></div><div class="sidebar-section-children"><a href="global.html#SidechatDirectMessage">SidechatDirectMessage</a></div><div class="sidebar-section-children"><a href="global.html#SidechatDirectThread">SidechatDirectThread</a></div><div class="sidebar-section-children"><a href="global.html#SidechatGroup">SidechatGroup</a></div><div class="sidebar-section-children"><a href="global.html#SidechatIdentity">SidechatIdentity</a></div><div class="sidebar-section-children"><a href="global.html#SidechatLibraryAsset">SidechatLibraryAsset</a></div><div class="sidebar-section-children"><a href="global.html#SidechatMembership">SidechatMembership</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPoll">SidechatPoll</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPollChoice">SidechatPollChoice</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPostsAndCursor">SidechatPostsAndCursor</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPrivateAssetURL">SidechatPrivateAssetURL</a></div><div class="sidebar-section-children"><a href="global.html#SidechatSimpleAsset">SidechatSimpleAsset</a></div><div class="sidebar-section-children"><a href="global.html#SidechatVoteString">SidechatVoteString</a></div></div></div></div></div><div class="navbar-container" id="VuAckcnZhf"><nav class="navbar"><div class="navbar-left-items"><div class="navbar-item"><a id="" href="https://offsides.micahlindley.com" target="_blank">Offsides (Sidechat for Android)</a></div></div><div class="navbar-right-items"><div class="navbar-right-item"><button class="icon-button search-button" aria-label="open-search"><svg><use xlink:href="#search-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button theme-toggle" aria-label="toggle-theme"><svg><use class="theme-svg-use" xlink:href="#light-theme-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button font-size" aria-label="change-font-size"><svg><use xlink:href="#font-size-icon"></use></svg></button></div></div><nav></nav></nav></div><div class="toc-container"><div class="toc-content"><span class="bold">On this page</span><div id="eed4d2a0bfd64539bb9df78095dec881"></div></div></div><div class="body-wrapper"><div class="main-content"><div class="main-wrapper"><section><header><h1 id="SidechatAPIClient-title" class="has-anchor">SidechatAPIClient</h1><div class="class-description"><p>API client class for making requests to Sidechat's private API. You'll need to <a href="tutorial-Authentication.html">authenticate</a> before using most of the methods.</p></div></header><article><div class="container-overview"><h2 id="constructor" class="has-anchor">Constructor</h2><h3 class="name has-anchor" id="SidechatAPIClient"><span class="type-signature"></span>new SidechatAPIClient<span class="signature">(token<span class="signature-attributes">opt</span>, rootUrl)</span></h3><div class="description"><p>Create a new instance of the API client</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>token</code></td><td class="type"><span class="param-type"><a href="global.html#SidechatAuthToken">SidechatAuthToken</a></span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>user bearer token</p></td></tr><tr><td class="name"><code>rootUrl</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>custom API root URL for mocking or using other server</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.0.0-alpha.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line9">line 9</a></li></ul></dd></div></dl></div><h2 id="members" class="subsection-title has-anchor">Members</h2><h3 class="name has-anchor" id="apiRoot"><span class="type-signature"></span>apiRoot<span class="type-signature"> :String</span></h3><div class="description"><p>Root URL for every API request</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">String</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-default bold">Default Value</dt><dd class="tag-default"><ul><li data-skip-pre-process="true">"https://api.sidechat.lol"</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line34">line 34</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="defaultHeaders"><span class="type-signature">(constant) </span>defaultHeaders<span class="type-signature"> :Object</span></h3><div class="description"><p>Default headers for every API request</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type">Object</span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line22">line 22</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="userToken"><span class="type-signature"></span>userToken<span class="type-signature"> :<a href="global.html#SidechatAuthToken">SidechatAuthToken</a></span></h3><div class="description"><p>User bearer token</p></div><div class="member-item-container flex"><strong>Type:</strong><ul><li><span class="param-type"><a href="global.html#SidechatAuthToken">SidechatAuthToken</a></span></li></ul></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line14">line 14</a></li></ul></dd></div></dl><h2 id="methods" class="subsection-title has-anchor">Methods</h2><h3 class="name has-anchor" id="checkEmailVerification"><span class="type-signature"></span>checkEmailVerification<span class="signature">()</span></h3><div class="description"><p>Check is the user's email is verified.</p></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line219">line 219</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="checkUsername"><span class="type-signature"></span>checkUsername<span class="signature">(username)</span><span class="type-signature"> &rarr; {Boolean}</span></h3><div class="description"><p>Checks if user can set their username to a string</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>username</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>string to check</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.6</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line947">line 947</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>whether or not username is valid and unused</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Boolean</span></dd></dl></div><h3 class="name has-anchor" id="createComment"><span class="type-signature"></span>createComment<span class="signature">(parentPostID, text, groupID, replyCommentID<span class="signature-attributes">opt</span>, topLevelReplyID<span class="signature-attributes">opt</span>, assetList<span class="signature-attributes">opt</span>, disableDMs<span class="signature-attributes">opt</span>, anonymous<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>}</span></h3><div class="description"><p>Creates a comment on a post</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>parentPostID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>alphanumeric ID of post on which this comment is made</p></td></tr><tr><td class="name"><code>text</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>text content of comment</p></td></tr><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>alphanumeric ID of group in which the parent post resides</p></td></tr><tr><td class="name"><code>replyCommentID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>alphanumeric ID of comment to reply to. Falls back to parentPostID</p></td></tr><tr><td class="name"><code>topLevelReplyID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>alphanumeric ID of the top-level comment to reply to. Used only when replying to replies. Falls back to parentPostID</p></td></tr><tr><td class="name"><code>assetList</code></td><td class="type"><span class="param-type">Array.&lt;<a href="global.html#SidechatSimpleAsset">SidechatSimpleAsset</a>></span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>list of assets to attach</p></td></tr><tr><td class="name"><code>disableDMs</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>prevent direct messages being sent to comment's author</p></td></tr><tr><td class="name"><code>anonymous</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>whether or not to hide user's name and icon on comment</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.2.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line672">line 672</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>created comment</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a></span></dd></dl></div><h3 class="name has-anchor" id="createPost"><span class="type-signature"></span>createPost<span class="signature">(text, groupID, assetList<span class="signature-attributes">opt</span>, disableDMs<span class="signature-attributes">opt</span>, disableComments<span class="signature-attributes">opt</span>, anonymous<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>}</span></h3><div class="description"><p>Creates a new post in the specified group</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>text</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>text content of comment</p></td></tr><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>alphanumeric ID of group in which the parent post resides</p></td></tr><tr><td class="name"><code>assetList</code></td><td class="type"><span class="param-type">Array.&lt;<a href="global.html#SidechatSimpleAsset">SidechatSimpleAsset</a>></span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>list of assets to attach.</p></td></tr><tr><td class="name"><code>disableDMs</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>prevent direct messages from being sent to post's author</p></td></tr><tr><td class="name"><code>disableComments</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>whether or not comments should be disabled on post</p></td></tr><tr><td class="name"><code>anonymous</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>whether or not to hide user's name and icon on post</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.2.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line724">line 724</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>the created post</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a></span></dd></dl></div><h3 class="name has-anchor" id="deletePostOrComment"><span class="type-signature"></span>deletePostOrComment<span class="signature">(postOrCommentID)</span></h3><div class="description"><p>Deletes a post or comment that the user created</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>postOrCommentID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of post to delete</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.2.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line767">line 767</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="getAssetLibrary"><span class="type-signature"></span>getAssetLibrary<span class="signature">()</span><span class="type-signature"> &rarr; {Array.&lt;<a href="global.html#SidechatLibraryAsset">SidechatLibraryAsset</a>>}</span></h3><div class="description"><p>Retrieves the entire accessible asset library. Be warned that as of the time of this documentation, it's a 1.5MB JSON download and this request is very expensive.</p></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.0.6</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line552">line 552</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Array.&lt;<a href="global.html#SidechatLibraryAsset">SidechatLibraryAsset</a>></span></dd></dl></div><h3 class="name has-anchor" id="getAvailableGroups"><span class="type-signature"></span>getAvailableGroups<span class="signature">(onePage)</span><span class="type-signature"> &rarr; {Array.&lt;<a href="global.html#SidechatGroup">SidechatGroup</a>>}</span></h3><div class="description"><p>Gets groups to be displayed on the &quot;Explore Groups&quot; page</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>onePage</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="description last"><p>whether or not results should be returned as a single page</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.0.0-alpha.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line525">line 525</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Array.&lt;<a href="global.html#SidechatGroup">SidechatGroup</a>></span></dd></dl></div><h3 class="name has-anchor" id="getCurrentUser"><span class="type-signature"></span>getCurrentUser<span class="signature">()</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatCurrentUser">SidechatCurrentUser</a>}</span></h3><div class="description"><p>Gets the current authenticated user and a list of the groups of which they are members.</p></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.1.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line578">line 578</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatCurrentUser">SidechatCurrentUser</a></span></dd></dl></div><h3 class="name has-anchor" id="getDMThread"><span class="type-signature"></span>getDMThread<span class="signature">(id)</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatDirectThread">SidechatDirectThread</a>}</span></h3><div class="description"><p>Gets a single direct message thread</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>id</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of the chat to fetch</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.4.4</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1135">line 1135</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatDirectThread">SidechatDirectThread</a></span></dd></dl></div><h3 class="name has-anchor" id="getDMs"><span class="type-signature"></span>getDMs<span class="signature">()</span><span class="type-signature"> &rarr; {Array.&lt;<a href="global.html#SidechatDirectThread">SidechatDirectThread</a>>}</span></h3><div class="description"><p>Gets a list of the user's direct messages</p></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.4.4</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1103">line 1103</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Array.&lt;<a href="global.html#SidechatDirectThread">SidechatDirectThread</a>></span></dd></dl></div><h3 class="name has-anchor" id="getGroupChats"><span class="type-signature"></span>getGroupChats<span class="signature">()</span></h3><div class="description"><p>Retrieves joinable group chats</p></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.5</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1037">line 1037</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="getGroupMetadata"><span class="type-signature"></span>getGroupMetadata<span class="signature">(groupID<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatGroup">SidechatGroup</a>}</span></h3><div class="description"><p>Gets the metadata of a group from its ID</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>alphanumeric ID of a group to get. Falls back to user's primary group.</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.1.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line605">line 605</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatGroup">SidechatGroup</a></span></dd></dl></div><h3 class="name has-anchor" id="getGroupPosts"><span class="type-signature"></span>getGroupPosts<span class="signature">(groupID, category, cursor<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatPostsAndCursor">SidechatPostsAndCursor</a>}</span></h3><div class="description"><p>Fetches posts from the specified category in a group</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>group ID</p></td></tr><tr><td class="name"><code>category</code></td><td class="type"><span class="param-type">"hot"</span> |<wbr> <span class="param-type">"recent"</span> |<wbr> <span class="param-type">"top"</span></td><td class="attributes"></td><td class="description last"><p>category to filter posts</p></td></tr><tr><td class="name"><code>cursor</code></td><td class="type"><span class="param-type"><a href="global.html#SidechatCursorString">SidechatCursorString</a></span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>cursor string</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line324">line 324</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>List of posts and cursor</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatPostsAndCursor">SidechatPostsAndCursor</a></span></dd></dl></div><h3 class="name has-anchor" id="getPost"><span class="type-signature"></span>getPost<span class="signature">(postID, includeDeleted)</span><span class="type-signature"> &rarr; {<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>}</span></h3><div class="description"><p>Fetches a single post with just its ID</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>postID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>ID of post to fetch</p></td></tr><tr><td class="name"><code>includeDeleted</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="description last"><p>undocumented</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line387">line 387</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>post object</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type"><a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a></span></dd></dl></div><h3 class="name has-anchor" id="getPostComments"><span class="type-signature"></span>getPostComments<span class="signature">(postID)</span><span class="type-signature"> &rarr; {Array.&lt;<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>>}</span></h3><div class="description"><p>Get all the commments on a post</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>postID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>post ID to get comments for</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.0.0-alpha.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line449">line 449</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>list of comments</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Array.&lt;<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>></span></dd></dl></div><h3 class="name has-anchor" id="getUpdates"><span class="type-signature"></span>getUpdates<span class="signature">(groupID<span class="signature-attributes">opt</span>)</span></h3><div class="description"><p>Get updated status for user and group</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>ID of a specific group to retrieve info from. Falls back to user's primary group.</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.1.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line292">line 292</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="getUserAndGroup"><span class="type-signature"></span>getUserAndGroup<span class="signature">(groupID<span class="signature-attributes">opt</span>)</span></h3><div class="description"><p>Get updated status for user and group</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>ID of a specific group to retrieve info from. Falls back to user's primary group.</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="important tag-deprecated bold">Deprecated</dt><dd><ul><li>since 2.1.0, will be removed by 3.0.0. Please use `getUpdates` instead!</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line281">line 281</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="getUserContent"><span class="type-signature"></span>getUserContent<span class="signature">(contentType)</span><span class="type-signature"> &rarr; {Array.&lt;<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>>}</span></h3><div class="description"><p>Fetches the posts or comments that the user has created</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>contentType</code></td><td class="type"><span class="param-type">"posts"</span> |<wbr> <span class="param-type">"comments"</span></td><td class="description last"><p>type of user content to fetch</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.5</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line417">line 417</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>post object</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">Array.&lt;<a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a>></span></dd></dl></div><h3 class="name has-anchor" id="joinGroupChat"><span class="type-signature"></span>joinGroupChat<span class="signature">()</span></h3><div class="description"><p>Joins a group chat</p></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.5</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1062">line 1062</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="loginViaSMS"><span class="type-signature"></span>loginViaSMS<span class="signature">(phoneNumber)</span></h3><div class="description"><p>Initiate the login process with a phone number. Should be followed up with verifySMSCode().</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>phoneNumber</code></td><td class="type"><span class="param-type">Number</span></td><td class="description last"><p>US phone number (WITHOUT +1) to send verification code to</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line104">line 104</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="readActivity"><span class="type-signature"></span>readActivity<span class="signature">(activityID)</span></h3><div class="description"><p>Marks an activity item as read</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>activityID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of activity object</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.2</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1009">line 1009</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="registerEmail"><span class="type-signature"></span>registerEmail<span class="signature">(email)</span></h3><div class="description"><p>Initiate the email setup process. Should be followed up with checkEmailVerification().</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>email</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>school email address to send verification code to</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line188">line 188</a></li></ul></dd></div><div class="details-item-container"><dt class="tag-tutorial bold">Tutorials</dt><dd class="tag-tutorial"><ul><li><a href="tutorial-Email Registration.html">Email Registration</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="sendDM"><span class="type-signature"></span>sendDM<span class="signature">(chatID, text, clientID, assets, anonymous)</span></h3><div class="description"><p>Sends a message to an existing direct message thread - note that you must first use startDM() to start a thread.</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>chatID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of the chat to send to</p></td></tr><tr><td class="name"><code>text</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>text content of message</p></td></tr><tr><td class="name"><code>clientID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric device ID</p></td></tr><tr><td class="name"><code>assets</code></td><td class="type"><span class="param-type">Array.&lt;SidechatAsset></span></td><td class="description last"><p>array of assets to send</p></td></tr><tr><td class="name"><code>anonymous</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="description last"><p>whether the DM should be sent anonymously</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.4.4</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1168">line 1168</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="sendRequest"><span class="type-signature"></span>sendRequest<span class="signature">(endpoint, method<span class="signature-attributes">opt</span>, body<span class="signature-attributes">opt</span>, headers<span class="signature-attributes">opt</span>, stripHeaders<span class="signature-attributes">opt</span>)</span></h3><div class="description"><p>Run an arbitrary API request using the current client's authentication</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>endpoint</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>API endpoint to request (e.g. &quot;/v1/posts&quot;)</p></td></tr><tr><td class="name"><code>method</code></td><td class="type"><span class="param-type">"GET"</span> |<wbr> <span class="param-type">"POST"</span> |<wbr> <span class="param-type">"PUT"</span> |<wbr> <span class="param-type">"DELETE"</span> |<wbr> <span class="param-type">"PATCH"</span> |<wbr> <span class="param-type">"OPTIONS"</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>HTTP method to use</p></td></tr><tr><td class="name"><code>body</code></td><td class="type"><span class="param-type">Object</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>body to send with the request</p></td></tr><tr><td class="name"><code>headers</code></td><td class="type"><span class="param-type">Object</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>custom headers to send with the request</p></td></tr><tr><td class="name"><code>stripHeaders</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>remove the default headers from the request</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.4.9</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line79">line 79</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setAPIRoot"><span class="type-signature"></span>setAPIRoot<span class="signature">(url)</span></h3><div class="description"><p>Manually set the root URL for all API requests. This can be used for mocking requests or redirecting them to a different server</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>url</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>new root URL to set</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.9</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line65">line 65</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setAge"><span class="type-signature"></span>setAge<span class="signature">(age, registrationID)</span></h3><div class="description"><p>Set the user's age. If this function succeeds, the user will be authenticated for future requests.</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>age</code></td><td class="type"><span class="param-type">Number</span></td><td class="description last"><p>user's age in years</p></td></tr><tr><td class="name"><code>registrationID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>the registration ID generated by verifySMSCode()</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line157">line 157</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setDeviceID"><span class="type-signature"></span>setDeviceID<span class="signature">(deviceId)</span></h3><div class="description"><p>Set the device ID of the current user</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>deviceId</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>the device ID to set</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line249">line 249</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setGroupMembership"><span class="type-signature"></span>setGroupMembership<span class="signature">(groupID, isMember)</span></h3><div class="description"><p>Joins or leaves a group</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>groupID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of group to join or leave</p></td></tr><tr><td class="name"><code>isMember</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="description last"><p>whether or not the user should be a member of the group</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.8</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line632">line 632</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setToken"><span class="type-signature"></span>setToken<span class="signature">(token)</span></h3><div class="description"><p>Manually set the currently signed in user's token. Generally try to avoid this and instead either pass a token to the constructor or login automatically through the auth functions</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>token</code></td><td class="type"><span class="param-type"><a href="global.html#SidechatAuthToken">SidechatAuthToken</a></span></td><td class="description last"><p>user bearer token</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line55">line 55</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setUserIcon"><span class="type-signature"></span>setUserIcon<span class="signature">(userID, emoji, primaryColor, secondaryColor)</span></h3><div class="description"><p>Sets the conversation icon of the current user</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>userID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of user</p></td></tr><tr><td class="name"><code>emoji</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>emoji to set as icon</p></td></tr><tr><td class="name"><code>primaryColor</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>hex string (including #) of primary color</p></td></tr><tr><td class="name"><code>secondaryColor</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>hex string (including #) of secondary color</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.2.1</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line911">line 911</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setUsername"><span class="type-signature"></span>setUsername<span class="signature">(userID, username)</span></h3><div class="description"><p>Changes the username of the current user</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>userID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of user</p></td></tr><tr><td class="name"><code>username</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>new username to set</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.3.6</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line980">line 980</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="setVote"><span class="type-signature"></span>setVote<span class="signature">(postID, action)</span></h3><div class="description"><p>Upvote or downvote, or unvote a post</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>postID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>post ID to vote on</p></td></tr><tr><td class="name"><code>action</code></td><td class="type"><span class="param-type"><a href="global.html#SidechatVoteString">SidechatVoteString</a></span></td><td class="description last"><p>whether to upvote, downvote, or reset vote</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.0.0-alpha.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line355">line 355</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="startDM"><span class="type-signature"></span>startDM<span class="signature">(text, clientID, postID, anonymous, postContext)</span></h3><div class="description"><p>Creates a new direct message thread</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>text</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>text content of message</p></td></tr><tr><td class="name"><code>clientID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of devide</p></td></tr><tr><td class="name"><code>postID</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of post or comment</p></td></tr><tr><td class="name"><code>anonymous</code></td><td class="type"><span class="param-type">Boolean</span></td><td class="description last"><p>whether the DM should be sent anonymously</p></td></tr><tr><td class="name"><code>postContext</code></td><td class="type"><span class="param-type">"feed"</span></td><td class="description last"><p>context of post (mostly undocumented, defaults to &quot;feed&quot;)</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.4.4</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line1205">line 1205</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="uploadAsset"><span class="type-signature"></span>uploadAsset<span class="signature">(uri, mimeType, name<span class="signature-attributes">opt</span>)</span><span class="type-signature"> &rarr; {String}</span></h3><div class="description"><p>Uploads an asset to AWS S3 for use in posts and comments. Currently photos only</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th>Attributes</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>uri</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>URI of the asset to upload</p></td></tr><tr><td class="name"><code>mimeType</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes"></td><td class="description last"><p>mimetype of the asset (e.g. &quot;image/png&quot;)</p></td></tr><tr><td class="name"><code>name</code></td><td class="type"><span class="param-type">String</span></td><td class="attributes">&lt;optional><br></td><td class="description last"><p>filename of the asset</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.5.1</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line859">line 859</a></li></ul></dd></div></dl><div class="method-member-container mt-20"><strong>Returns:</strong><div class="param-desc"><p>URL of the uploaded asset</p></div><dl class="param-type"><dt>Type:&nbsp;</dt><dd><span class="param-type">String</span></dd></dl></div><h3 class="name has-anchor" id="verifySMSCode"><span class="type-signature"></span>verifySMSCode<span class="signature">(phoneNumber, code)</span></h3><div class="description"><p>Verify the code sent via SMS with loginViaSMS(). If this function succeeds, the user will be authenticated for future requests.</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>phoneNumber</code></td><td class="type"><span class="param-type">Number</span></td><td class="description last"><p>US phone number (WITHOUT +1) that verification code was sent to</p></td></tr><tr><td class="name"><code>code</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>the verification code</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>1.0.0</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line129">line 129</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="viewPollResults"><span class="type-signature"></span>viewPollResults<span class="signature">(pollId)</span></h3><div class="description"><p>Marks that the user has viewed results on a poll. Note that this does not actually return the results of the poll.</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>pollId</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of poll to vote on</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.5.4</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line827">line 827</a></li></ul></dd></div></dl><h3 class="name has-anchor" id="voteOnPoll"><span class="type-signature"></span>voteOnPoll<span class="signature">(pollId, choiceIndex)</span></h3><div class="description"><p>Votes on a poll attached to a post</p></div><div class="method-member-container flex flex-col w-100 overflow-auto mt-20"><strong>Parameters:</strong><table class="params"><thead><tr><th>Name</th><th>Type</th><th class="last">Description</th></tr></thead><tbody><tr><td class="name"><code>pollId</code></td><td class="type"><span class="param-type">String</span></td><td class="description last"><p>alphanumeric ID of poll to vote on</p></td></tr><tr><td class="name"><code>choiceIndex</code></td><td class="type"><span class="param-type">Number</span></td><td class="description last"><p>index of the choice to vote on</p></td></tr></tbody></table></div><dl class="details"><div class="details-item-container"><dt class="tag-since bold">Since</dt><dd class="tag-since"><ul><li>2.5.4</li></ul></dd></div><div class="details-item-container"><dt class="tag-source bold">Source</dt><dd class="tag-source"><ul><li><a href="classes_SidechatAPIClient.js.html">classes/SidechatAPIClient.js</a>, <a href="classes_SidechatAPIClient.js.html#line797">line 797</a></li></ul></dd></div></dl></article></section></div></div></div><div class="search-container" id="PkfLWpAbet" style="display:none"><div class="wrapper" id="iCxFxjkHbP"><button class="icon-button search-close-button" id="VjLlGakifb" aria-label="close search"><svg><use xlink:href="#close-icon"></use></svg></button><div class="search-box-c"><svg><use xlink:href="#search-icon"></use></svg> <input type="text" id="vpcKVYIppa" class="search-input" placeholder="Search..." autofocus></div><div class="search-result-c" id="fWwVHRuDuN"><span class="search-result-c-text">Type anything to view search result</span></div></div></div><div class="mobile-menu-icon-container"><button class="icon-button" id="mobile-menu" data-isopen="false" aria-label="menu"><svg><use xlink:href="#menu-icon"></use></svg></button></div><div id="mobile-sidebar" class="mobile-sidebar-container"><div class="mobile-sidebar-wrapper"><a href="/" class="sidebar-title sidebar-title-anchor">sidechat.js</a><div class="mobile-nav-links"><div class="navbar-item"><a id="" href="https://offsides.micahlindley.com" target="_blank">Offsides (Sidechat for Android)</a></div></div><div class="mobile-sidebar-items-c"><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-tutorials"><div>Tutorials</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="tutorial-Authentication.html">Authentication</a></div><div class="sidebar-section-children"><a href="tutorial-Email Registration.html">Email Registration</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-classes"><div>Classes</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="SidechatAPIClient.html">SidechatAPIClient</a></div><div class="sidebar-section-children"><a href="SidechatAPIError.html">SidechatAPIError</a></div><div class="sidebar-section-children"><a href="SidechatColorList.html">SidechatColorList</a></div></div><div class="sidebar-section-title with-arrow" data-isopen="false" id="sidebar-global"><div>Global</div><svg><use xlink:href="#down-icon"></use></svg></div><div class="sidebar-section-children-container"><div class="sidebar-section-children"><a href="global.html#SidechatAssetMetadata">SidechatAssetMetadata</a></div><div class="sidebar-section-children"><a href="global.html#SidechatAuthToken">SidechatAuthToken</a></div><div class="sidebar-section-children"><a href="global.html#SidechatColor">SidechatColor</a></div><div class="sidebar-section-children"><a href="global.html#SidechatCurrentUser">SidechatCurrentUser</a></div><div class="sidebar-section-children"><a href="global.html#SidechatCursorString">SidechatCursorString</a></div><div class="sidebar-section-children"><a href="global.html#SidechatDirectMessage">SidechatDirectMessage</a></div><div class="sidebar-section-children"><a href="global.html#SidechatDirectThread">SidechatDirectThread</a></div><div class="sidebar-section-children"><a href="global.html#SidechatGroup">SidechatGroup</a></div><div class="sidebar-section-children"><a href="global.html#SidechatIdentity">SidechatIdentity</a></div><div class="sidebar-section-children"><a href="global.html#SidechatLibraryAsset">SidechatLibraryAsset</a></div><div class="sidebar-section-children"><a href="global.html#SidechatMembership">SidechatMembership</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPoll">SidechatPoll</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPollChoice">SidechatPollChoice</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPostOrComment">SidechatPostOrComment</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPostsAndCursor">SidechatPostsAndCursor</a></div><div class="sidebar-section-children"><a href="global.html#SidechatPrivateAssetURL">SidechatPrivateAssetURL</a></div><div class="sidebar-section-children"><a href="global.html#SidechatSimpleAsset">SidechatSimpleAsset</a></div><div class="sidebar-section-children"><a href="global.html#SidechatVoteString">SidechatVoteString</a></div></div></div><div class="mobile-navbar-actions"><div class="navbar-right-item"><button class="icon-button search-button" aria-label="open-search"><svg><use xlink:href="#search-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button theme-toggle" aria-label="toggle-theme"><svg><use class="theme-svg-use" xlink:href="#light-theme-icon"></use></svg></button></div><div class="navbar-right-item"><button class="icon-button font-size" aria-label="change-font-size"><svg><use xlink:href="#font-size-icon"></use></svg></button></div></div></div></div><script type="text/javascript" src="scripts/core.min.js"></script><script src="scripts/search.min.js" defer="defer"></script><script src="scripts/third-party/fuse.js" defer="defer"></script><script type="text/javascript">var tocbotInstance=tocbot.init({tocSelector:"#eed4d2a0bfd64539bb9df78095dec881",contentSelector:".main-content",headingSelector:"h1, h2, h3",hasInnerContainers:!0,scrollContainer:".main-content",headingsOffset:130,onClick:bringLinkToView})</script></body></html>