users.json 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189
  1. {
  2. "Users": {
  3. "type": "array",
  4. "items": {
  5. "type": "object",
  6. "required": [
  7. "dateCreated",
  8. "user",
  9. "roleName",
  10. "expired",
  11. "id",
  12. "projects",
  13. "name",
  14. "role",
  15. "flags",
  16. "email",
  17. "pending"
  18. ],
  19. "properties": {
  20. "dateCreated": {
  21. "type": "string"
  22. },
  23. "user": {
  24. "$ref": "users.json#/User"
  25. },
  26. "roleName": {
  27. "type": "string"
  28. },
  29. "expired": {
  30. "type": "boolean"
  31. },
  32. "id": {
  33. "type": "string"
  34. },
  35. "projects": {
  36. "type": "array",
  37. "items": {
  38. "type": "string"
  39. }
  40. },
  41. "name": {
  42. "type": "string"
  43. },
  44. "role": {
  45. "type": "string",
  46. "enum": ["owner", "manager", "admin", "member", "billing"]
  47. },
  48. "flags": {
  49. "type": "object",
  50. "properties": {
  51. "sso: linked": {
  52. "type": "boolean"
  53. },
  54. "sso: invalid": {
  55. "type": "boolean"
  56. }
  57. }
  58. },
  59. "email": {
  60. "type": "string"
  61. },
  62. "pending": {
  63. "type": "boolean"
  64. }
  65. }
  66. }
  67. },
  68. "User": {
  69. "type": "object",
  70. "required": [
  71. "username",
  72. "lastLogin",
  73. "isSuperuser",
  74. "isManaged",
  75. "lastActive",
  76. "isStaff",
  77. "id",
  78. "isActive",
  79. "has2fa",
  80. "name",
  81. "avatarUrl",
  82. "dateJoined",
  83. "emails",
  84. "avatar",
  85. "hasPasswordAuth",
  86. "email"
  87. ],
  88. "properties": {
  89. "username": {
  90. "type": "string"
  91. },
  92. "lastLogin": {
  93. "type": "string",
  94. "nullable": true
  95. },
  96. "isSuperuser": {
  97. "type": "boolean"
  98. },
  99. "isManaged": {
  100. "type": "boolean"
  101. },
  102. "lastActive": {
  103. "type": "string"
  104. },
  105. "isStaff": {
  106. "type": "boolean"
  107. },
  108. "id": {
  109. "type": "string"
  110. },
  111. "isActive": {
  112. "type": "boolean"
  113. },
  114. "has2fa": {
  115. "type": "boolean"
  116. },
  117. "name": {
  118. "type": "string"
  119. },
  120. "avatarUrl": {
  121. "type": "string"
  122. },
  123. "dateJoined": {
  124. "type": "string"
  125. },
  126. "emails": {
  127. "type": "array",
  128. "items": {
  129. "type": "object",
  130. "properties": {
  131. "is_verified": {
  132. "type": "boolean"
  133. },
  134. "id": {
  135. "type": "string"
  136. },
  137. "email": {
  138. "type": "string"
  139. }
  140. }
  141. }
  142. },
  143. "avatar": {
  144. "$ref": "avatar.json#/Avatar"
  145. },
  146. "hasPasswordAuth": {
  147. "type": "boolean"
  148. },
  149. "email": {
  150. "type": "string"
  151. }
  152. }
  153. },
  154. "EventUser": {
  155. "type": "object",
  156. "nullable": true,
  157. "required": ["username", "name", "ip_address", "email", "data", "id"],
  158. "properties": {
  159. "username": {
  160. "type": "string",
  161. "nullable": true
  162. },
  163. "name": {
  164. "type": "string",
  165. "nullable": true
  166. },
  167. "ip_address": {
  168. "type": "string",
  169. "nullable": true
  170. },
  171. "email": {
  172. "type": "string",
  173. "nullable": true
  174. },
  175. "data": {
  176. "type": "object",
  177. "nullable": true,
  178. "properties": {
  179. "isStaff": {
  180. "type": "boolean"
  181. }
  182. }
  183. },
  184. "id": {
  185. "type": "string"
  186. }
  187. }
  188. }
  189. }