@meshery/schemas 1.0.8 → 1.1.0

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 (242) hide show
  1. package/README.md +4 -3
  2. package/dist/cloudApi.d.mts +16699 -16442
  3. package/dist/cloudApi.d.ts +16699 -16442
  4. package/dist/cloudApi.js +1 -1
  5. package/dist/cloudApi.mjs +1 -1
  6. package/dist/constructs/v1beta1/badge/BadgeSchema.js +1 -1
  7. package/dist/constructs/v1beta1/badge/BadgeSchema.mjs +1 -1
  8. package/dist/constructs/v1beta1/connection/ConnectionSchema.js +1 -1
  9. package/dist/constructs/v1beta1/connection/ConnectionSchema.mjs +1 -1
  10. package/dist/constructs/v1beta1/credential/CredentialSchema.js +4 -4
  11. package/dist/constructs/v1beta1/credential/CredentialSchema.mjs +4 -4
  12. package/dist/constructs/v1beta1/environment/EnvironmentSchema.js +1 -1
  13. package/dist/constructs/v1beta1/environment/EnvironmentSchema.mjs +1 -1
  14. package/dist/constructs/v1beta1/event/EventSchema.js +1 -1
  15. package/dist/constructs/v1beta1/event/EventSchema.mjs +1 -1
  16. package/dist/constructs/v1beta1/key/KeySchema.js +1 -1
  17. package/dist/constructs/v1beta1/key/KeySchema.mjs +1 -1
  18. package/dist/constructs/v1beta1/keychain/KeychainSchema.js +1 -1
  19. package/dist/constructs/v1beta1/keychain/KeychainSchema.mjs +1 -1
  20. package/dist/constructs/v1beta1/model/Model.d.mts +3 -12
  21. package/dist/constructs/v1beta1/model/Model.d.ts +3 -12
  22. package/dist/constructs/v1beta1/model/ModelSchema.js +2 -2
  23. package/dist/constructs/v1beta1/model/ModelSchema.mjs +2 -2
  24. package/dist/constructs/v1beta1/organization/OrganizationSchema.js +1 -1
  25. package/dist/constructs/v1beta1/organization/OrganizationSchema.mjs +1 -1
  26. package/dist/constructs/v1beta1/pattern/Pattern.d.mts +108 -7
  27. package/dist/constructs/v1beta1/pattern/Pattern.d.ts +108 -7
  28. package/dist/constructs/v1beta1/pattern/PatternSchema.js +12 -2
  29. package/dist/constructs/v1beta1/pattern/PatternSchema.mjs +12 -2
  30. package/dist/constructs/v1beta1/role/RoleSchema.js +1 -1
  31. package/dist/constructs/v1beta1/role/RoleSchema.mjs +1 -1
  32. package/dist/constructs/v1beta1/schedule/ScheduleSchema.js +1 -1
  33. package/dist/constructs/v1beta1/schedule/ScheduleSchema.mjs +1 -1
  34. package/dist/constructs/v1beta1/team/TeamSchema.js +1 -1
  35. package/dist/constructs/v1beta1/team/TeamSchema.mjs +1 -1
  36. package/dist/constructs/v1beta1/user/UserSchema.js +1 -1
  37. package/dist/constructs/v1beta1/user/UserSchema.mjs +1 -1
  38. package/dist/constructs/v1beta1/view/ViewSchema.js +1 -1
  39. package/dist/constructs/v1beta1/view/ViewSchema.mjs +1 -1
  40. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.js +2 -2
  41. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.mjs +2 -2
  42. package/dist/constructs/v1beta2/badge/Badge.d.mts +564 -0
  43. package/dist/constructs/v1beta2/badge/Badge.d.ts +564 -0
  44. package/dist/constructs/v1beta2/badge/Badge.js +1 -0
  45. package/dist/constructs/v1beta2/badge/Badge.mjs +0 -0
  46. package/dist/constructs/v1beta2/badge/BadgeSchema.d.mts +7 -0
  47. package/dist/constructs/v1beta2/badge/BadgeSchema.d.ts +7 -0
  48. package/dist/constructs/v1beta2/badge/BadgeSchema.js +2 -0
  49. package/dist/constructs/v1beta2/badge/BadgeSchema.mjs +2 -0
  50. package/dist/constructs/v1beta2/connection/ConnectionSchema.js +1 -1
  51. package/dist/constructs/v1beta2/connection/ConnectionSchema.mjs +1 -1
  52. package/dist/constructs/v1beta2/credential/Credential.d.mts +536 -0
  53. package/dist/constructs/v1beta2/credential/Credential.d.ts +536 -0
  54. package/dist/constructs/v1beta2/credential/Credential.js +1 -0
  55. package/dist/constructs/v1beta2/credential/Credential.mjs +0 -0
  56. package/dist/constructs/v1beta2/credential/CredentialSchema.d.mts +7 -0
  57. package/dist/constructs/v1beta2/credential/CredentialSchema.d.ts +7 -0
  58. package/dist/constructs/v1beta2/credential/CredentialSchema.js +7 -0
  59. package/dist/constructs/v1beta2/credential/CredentialSchema.mjs +7 -0
  60. package/dist/constructs/v1beta2/design/Design.d.mts +108 -7
  61. package/dist/constructs/v1beta2/design/Design.d.ts +108 -7
  62. package/dist/constructs/v1beta2/design/DesignSchema.js +21 -3
  63. package/dist/constructs/v1beta2/design/DesignSchema.mjs +21 -3
  64. package/dist/constructs/v1beta2/event/EventSchema.js +1 -1
  65. package/dist/constructs/v1beta2/event/EventSchema.mjs +1 -1
  66. package/dist/constructs/v1beta2/invitation/InvitationSchema.js +1 -1
  67. package/dist/constructs/v1beta2/invitation/InvitationSchema.mjs +1 -1
  68. package/dist/constructs/v1beta2/key/Key.d.mts +523 -0
  69. package/dist/constructs/v1beta2/key/Key.d.ts +523 -0
  70. package/dist/constructs/v1beta2/key/Key.js +1 -0
  71. package/dist/constructs/v1beta2/key/Key.mjs +0 -0
  72. package/dist/constructs/v1beta2/key/KeySchema.d.mts +7 -0
  73. package/dist/constructs/v1beta2/key/KeySchema.d.ts +7 -0
  74. package/dist/constructs/v1beta2/key/KeySchema.js +2 -0
  75. package/dist/constructs/v1beta2/key/KeySchema.mjs +2 -0
  76. package/dist/constructs/v1beta2/keychain/Keychain.d.mts +651 -0
  77. package/dist/constructs/v1beta2/keychain/Keychain.d.ts +651 -0
  78. package/dist/constructs/v1beta2/keychain/Keychain.js +1 -0
  79. package/dist/constructs/v1beta2/keychain/Keychain.mjs +0 -0
  80. package/dist/constructs/v1beta2/keychain/KeychainSchema.d.mts +7 -0
  81. package/dist/constructs/v1beta2/keychain/KeychainSchema.d.ts +7 -0
  82. package/dist/constructs/v1beta2/keychain/KeychainSchema.js +2 -0
  83. package/dist/constructs/v1beta2/keychain/KeychainSchema.mjs +2 -0
  84. package/dist/constructs/v1beta2/model/Model.d.mts +571 -0
  85. package/dist/constructs/v1beta2/model/Model.d.ts +571 -0
  86. package/dist/constructs/v1beta2/model/Model.js +1 -0
  87. package/dist/constructs/v1beta2/model/Model.mjs +0 -0
  88. package/dist/constructs/v1beta2/model/ModelSchema.d.mts +7 -0
  89. package/dist/constructs/v1beta2/model/ModelSchema.d.ts +7 -0
  90. package/dist/constructs/v1beta2/model/ModelSchema.js +6 -0
  91. package/dist/constructs/v1beta2/model/ModelSchema.mjs +6 -0
  92. package/dist/constructs/v1beta2/organization/Organization.d.mts +1986 -0
  93. package/dist/constructs/v1beta2/organization/Organization.d.ts +1986 -0
  94. package/dist/constructs/v1beta2/organization/Organization.js +1 -0
  95. package/dist/constructs/v1beta2/organization/Organization.mjs +0 -0
  96. package/dist/constructs/v1beta2/organization/OrganizationSchema.d.mts +7 -0
  97. package/dist/constructs/v1beta2/organization/OrganizationSchema.d.ts +7 -0
  98. package/dist/constructs/v1beta2/organization/OrganizationSchema.js +2 -0
  99. package/dist/constructs/v1beta2/organization/OrganizationSchema.mjs +2 -0
  100. package/dist/constructs/v1beta2/plan/PlanSchema.js +1 -1
  101. package/dist/constructs/v1beta2/plan/PlanSchema.mjs +1 -1
  102. package/dist/constructs/v1beta2/role/Role.d.mts +751 -0
  103. package/dist/constructs/v1beta2/role/Role.d.ts +751 -0
  104. package/dist/constructs/v1beta2/role/Role.js +1 -0
  105. package/dist/constructs/v1beta2/role/Role.mjs +0 -0
  106. package/dist/constructs/v1beta2/role/RoleSchema.d.mts +7 -0
  107. package/dist/constructs/v1beta2/role/RoleSchema.d.ts +7 -0
  108. package/dist/constructs/v1beta2/role/RoleSchema.js +2 -0
  109. package/dist/constructs/v1beta2/role/RoleSchema.mjs +2 -0
  110. package/dist/constructs/v1beta2/schedule/Schedule.d.mts +380 -0
  111. package/dist/constructs/v1beta2/schedule/Schedule.d.ts +380 -0
  112. package/dist/constructs/v1beta2/schedule/Schedule.js +1 -0
  113. package/dist/constructs/v1beta2/schedule/Schedule.mjs +0 -0
  114. package/dist/constructs/v1beta2/schedule/ScheduleSchema.d.mts +7 -0
  115. package/dist/constructs/v1beta2/schedule/ScheduleSchema.d.ts +7 -0
  116. package/dist/constructs/v1beta2/schedule/ScheduleSchema.js +13 -0
  117. package/dist/constructs/v1beta2/schedule/ScheduleSchema.mjs +13 -0
  118. package/dist/constructs/v1beta2/subscription/SubscriptionSchema.js +1 -1
  119. package/dist/constructs/v1beta2/subscription/SubscriptionSchema.mjs +1 -1
  120. package/dist/constructs/v1beta2/team/Team.d.mts +939 -0
  121. package/dist/constructs/v1beta2/team/Team.d.ts +939 -0
  122. package/dist/constructs/v1beta2/team/Team.js +1 -0
  123. package/dist/constructs/v1beta2/team/Team.mjs +0 -0
  124. package/dist/constructs/v1beta2/team/TeamSchema.d.mts +7 -0
  125. package/dist/constructs/v1beta2/team/TeamSchema.d.ts +7 -0
  126. package/dist/constructs/v1beta2/team/TeamSchema.js +2 -0
  127. package/dist/constructs/v1beta2/team/TeamSchema.mjs +2 -0
  128. package/dist/constructs/v1beta2/token/TokenSchema.js +1 -1
  129. package/dist/constructs/v1beta2/token/TokenSchema.mjs +1 -1
  130. package/dist/constructs/v1beta2/user/User.d.mts +1831 -0
  131. package/dist/constructs/v1beta2/user/User.d.ts +1831 -0
  132. package/dist/constructs/v1beta2/user/User.js +1 -0
  133. package/dist/constructs/v1beta2/user/User.mjs +0 -0
  134. package/dist/constructs/v1beta2/user/UserSchema.d.mts +7 -0
  135. package/dist/constructs/v1beta2/user/UserSchema.d.ts +7 -0
  136. package/dist/constructs/v1beta2/user/UserSchema.js +2 -0
  137. package/dist/constructs/v1beta2/user/UserSchema.mjs +2 -0
  138. package/dist/constructs/v1beta2/view/View.d.mts +810 -0
  139. package/dist/constructs/v1beta2/view/View.d.ts +810 -0
  140. package/dist/constructs/v1beta2/view/View.js +1 -0
  141. package/dist/constructs/v1beta2/view/View.mjs +0 -0
  142. package/dist/constructs/v1beta2/view/ViewSchema.d.mts +7 -0
  143. package/dist/constructs/v1beta2/view/ViewSchema.d.ts +7 -0
  144. package/dist/constructs/v1beta2/view/ViewSchema.js +13 -0
  145. package/dist/constructs/v1beta2/view/ViewSchema.mjs +13 -0
  146. package/dist/constructs/v1beta3/component/Component.d.mts +796 -0
  147. package/dist/constructs/v1beta3/component/Component.d.ts +796 -0
  148. package/dist/constructs/v1beta3/component/Component.js +1 -0
  149. package/dist/constructs/v1beta3/component/Component.mjs +0 -0
  150. package/dist/constructs/v1beta3/component/ComponentSchema.d.mts +7 -0
  151. package/dist/constructs/v1beta3/component/ComponentSchema.d.ts +7 -0
  152. package/dist/constructs/v1beta3/component/ComponentSchema.js +10 -0
  153. package/dist/constructs/v1beta3/component/ComponentSchema.mjs +10 -0
  154. package/dist/constructs/v1beta3/connection/Connection.d.mts +1348 -0
  155. package/dist/constructs/v1beta3/connection/Connection.d.ts +1348 -0
  156. package/dist/constructs/v1beta3/connection/Connection.js +1 -0
  157. package/dist/constructs/v1beta3/connection/Connection.mjs +0 -0
  158. package/dist/constructs/v1beta3/connection/ConnectionSchema.d.mts +7 -0
  159. package/dist/constructs/v1beta3/connection/ConnectionSchema.d.ts +7 -0
  160. package/dist/constructs/v1beta3/connection/ConnectionSchema.js +2 -0
  161. package/dist/constructs/v1beta3/connection/ConnectionSchema.mjs +2 -0
  162. package/dist/constructs/v1beta3/design/Design.d.mts +17552 -0
  163. package/dist/constructs/v1beta3/design/Design.d.ts +17552 -0
  164. package/dist/constructs/v1beta3/design/Design.js +1 -0
  165. package/dist/constructs/v1beta3/design/Design.mjs +0 -0
  166. package/dist/constructs/v1beta3/design/DesignSchema.d.mts +7 -0
  167. package/dist/constructs/v1beta3/design/DesignSchema.d.ts +7 -0
  168. package/dist/constructs/v1beta3/design/DesignSchema.js +506 -0
  169. package/dist/constructs/v1beta3/design/DesignSchema.mjs +506 -0
  170. package/dist/constructs/v1beta3/environment/Environment.d.mts +800 -0
  171. package/dist/constructs/v1beta3/environment/Environment.d.ts +800 -0
  172. package/dist/constructs/v1beta3/environment/Environment.js +1 -0
  173. package/dist/constructs/v1beta3/environment/Environment.mjs +0 -0
  174. package/dist/constructs/v1beta3/environment/EnvironmentSchema.d.mts +7 -0
  175. package/dist/constructs/v1beta3/environment/EnvironmentSchema.d.ts +7 -0
  176. package/dist/constructs/v1beta3/environment/EnvironmentSchema.js +2 -0
  177. package/dist/constructs/v1beta3/environment/EnvironmentSchema.mjs +2 -0
  178. package/dist/constructs/v1beta3/event/Event.d.mts +733 -0
  179. package/dist/constructs/v1beta3/event/Event.d.ts +733 -0
  180. package/dist/constructs/v1beta3/event/Event.js +1 -0
  181. package/dist/constructs/v1beta3/event/Event.mjs +0 -0
  182. package/dist/constructs/v1beta3/event/EventSchema.d.mts +7 -0
  183. package/dist/constructs/v1beta3/event/EventSchema.d.ts +7 -0
  184. package/dist/constructs/v1beta3/event/EventSchema.js +2 -0
  185. package/dist/constructs/v1beta3/event/EventSchema.mjs +2 -0
  186. package/dist/constructs/v1beta3/invitation/Invitation.d.mts +1079 -0
  187. package/dist/constructs/v1beta3/invitation/Invitation.d.ts +1079 -0
  188. package/dist/constructs/v1beta3/invitation/Invitation.js +1 -0
  189. package/dist/constructs/v1beta3/invitation/Invitation.mjs +0 -0
  190. package/dist/constructs/v1beta3/invitation/InvitationSchema.d.mts +7 -0
  191. package/dist/constructs/v1beta3/invitation/InvitationSchema.d.ts +7 -0
  192. package/dist/constructs/v1beta3/invitation/InvitationSchema.js +2 -0
  193. package/dist/constructs/v1beta3/invitation/InvitationSchema.mjs +2 -0
  194. package/dist/constructs/v1beta3/plan/Plan.d.mts +198 -0
  195. package/dist/constructs/v1beta3/plan/Plan.d.ts +198 -0
  196. package/dist/constructs/v1beta3/plan/Plan.js +1 -0
  197. package/dist/constructs/v1beta3/plan/Plan.mjs +0 -0
  198. package/dist/constructs/v1beta3/plan/PlanSchema.d.mts +7 -0
  199. package/dist/constructs/v1beta3/plan/PlanSchema.d.ts +7 -0
  200. package/dist/constructs/v1beta3/plan/PlanSchema.js +2 -0
  201. package/dist/constructs/v1beta3/plan/PlanSchema.mjs +2 -0
  202. package/dist/constructs/v1beta3/relationship/Relationship.d.mts +1884 -0
  203. package/dist/constructs/v1beta3/relationship/Relationship.d.ts +1884 -0
  204. package/dist/constructs/v1beta3/relationship/Relationship.js +1 -0
  205. package/dist/constructs/v1beta3/relationship/Relationship.mjs +0 -0
  206. package/dist/constructs/v1beta3/relationship/RelationshipSchema.d.mts +7 -0
  207. package/dist/constructs/v1beta3/relationship/RelationshipSchema.d.ts +7 -0
  208. package/dist/constructs/v1beta3/relationship/RelationshipSchema.js +155 -0
  209. package/dist/constructs/v1beta3/relationship/RelationshipSchema.mjs +155 -0
  210. package/dist/constructs/v1beta3/subscription/Subscription.d.mts +876 -0
  211. package/dist/constructs/v1beta3/subscription/Subscription.d.ts +876 -0
  212. package/dist/constructs/v1beta3/subscription/Subscription.js +1 -0
  213. package/dist/constructs/v1beta3/subscription/Subscription.mjs +0 -0
  214. package/dist/constructs/v1beta3/subscription/SubscriptionSchema.d.mts +7 -0
  215. package/dist/constructs/v1beta3/subscription/SubscriptionSchema.d.ts +7 -0
  216. package/dist/constructs/v1beta3/subscription/SubscriptionSchema.js +2 -0
  217. package/dist/constructs/v1beta3/subscription/SubscriptionSchema.mjs +2 -0
  218. package/dist/constructs/v1beta3/token/Token.d.mts +543 -0
  219. package/dist/constructs/v1beta3/token/Token.d.ts +543 -0
  220. package/dist/constructs/v1beta3/token/Token.js +1 -0
  221. package/dist/constructs/v1beta3/token/Token.mjs +0 -0
  222. package/dist/constructs/v1beta3/token/TokenSchema.d.mts +7 -0
  223. package/dist/constructs/v1beta3/token/TokenSchema.d.ts +7 -0
  224. package/dist/constructs/v1beta3/token/TokenSchema.js +2 -0
  225. package/dist/constructs/v1beta3/token/TokenSchema.mjs +2 -0
  226. package/dist/constructs/v1beta3/workspace/Workspace.d.mts +4808 -0
  227. package/dist/constructs/v1beta3/workspace/Workspace.d.ts +4808 -0
  228. package/dist/constructs/v1beta3/workspace/Workspace.js +1 -0
  229. package/dist/constructs/v1beta3/workspace/Workspace.mjs +0 -0
  230. package/dist/constructs/v1beta3/workspace/WorkspaceSchema.d.mts +7 -0
  231. package/dist/constructs/v1beta3/workspace/WorkspaceSchema.d.ts +7 -0
  232. package/dist/constructs/v1beta3/workspace/WorkspaceSchema.js +98 -0
  233. package/dist/constructs/v1beta3/workspace/WorkspaceSchema.mjs +98 -0
  234. package/dist/index.d.mts +10 -8
  235. package/dist/index.d.ts +10 -8
  236. package/dist/index.js +38 -10
  237. package/dist/index.mjs +38 -10
  238. package/dist/mesheryApi.d.mts +6405 -6244
  239. package/dist/mesheryApi.d.ts +6405 -6244
  240. package/dist/mesheryApi.js +1 -1
  241. package/dist/mesheryApi.mjs +1 -1
  242. package/package.json +1 -1
@@ -0,0 +1 @@
1
+ 'use strict';
@@ -0,0 +1,7 @@
1
+ /**
2
+ * This file was automatically generated from OpenAPI schema.
3
+ * Do not manually modify this file.
4
+ */
5
+ declare const InvitationSchema: Record<string, unknown>;
6
+
7
+ export { InvitationSchema as default };
@@ -0,0 +1,7 @@
1
+ /**
2
+ * This file was automatically generated from OpenAPI schema.
3
+ * Do not manually modify this file.
4
+ */
5
+ declare const InvitationSchema: Record<string, unknown>;
6
+
7
+ export { InvitationSchema as default };
@@ -0,0 +1,2 @@
1
+ 'use strict';var t={openapi:"3.0.0",info:{title:"Invitation",description:"OpenAPI schema for managing invitations.",version:"v1beta3",contact:{name:"Meshery Maintainers",email:"maintainers@meshery.io",url:"https://meshery.io"},license:{name:"Apache 2.0",url:"https://www.apache.org/licenses/LICENSE-2.0.html"}},tags:[{name:"Invitation",description:"Operations related to invitation"}],security:[{jwt:[]}],paths:{"/api/organizations/invitations/{invitationId}":{get:{"x-internal":["cloud"],operationId:"getInvitation",tags:["Invitation"],summary:"Get an invitation by ID",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],responses:{200:{description:"Invitation fetched",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},delete:{"x-internal":["cloud"],operationId:"deleteInvitation",tags:["Invitation"],summary:"Delete an invitation by ID",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],responses:{204:{description:"Invitation deleted"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},put:{"x-internal":["cloud"],operationId:"updateInvitation",tags:["Invitation"],summary:"Update an existing invitation",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],requestBody:{content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating an invitation.",required:["name","description","orgId","emails","roles","teams","status"],properties:{id:{"x-go-name":"ID",description:"Existing invitation ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite).","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault,omitempty"}},name:{type:"string",description:"Name of the invitation.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation.",maxLength:5e3},emails:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Email address or pattern that is permitted to use this invitation.","x-go-type":"string"},description:"Email addresses or patterns this invitation is valid for."},orgId:{type:"string",format:"uuid",description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},maxLength:500},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt,omitempty"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it.",minimum:0},roles:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."},description:"Roles that the user will have when accepting the invitation."},teams:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."},description:"Teams that the user will be added to when accepting the invitation."},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]}}}}},required:true},responses:{200:{description:"Invitation updated",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/organizations/invitations":{get:{"x-internal":["cloud"],operationId:"getInvitations",tags:["Invitation"],summary:"Get all invitations for the organization",responses:{200:{description:"Invitations page",content:{"application/json":{schema:{type:"object",description:"Paginated list of invitations for an organization.",required:["data","total"],properties:{data:{type:"array",items:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}},"x-go-type":"Invitation"},description:"Invitations returned on the current page.","x-oapi-codegen-extra-tags":{json:"data"}},total:{type:"integer",description:"Total number of invitations available.","x-oapi-codegen-extra-tags":{json:"total"},minimum:0}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},post:{"x-internal":["cloud"],operationId:"createInvitation",tags:["Invitation"],summary:"Create a new invitation for the organization",requestBody:{content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating an invitation.",required:["name","description","orgId","emails","roles","teams","status"],properties:{id:{"x-go-name":"ID",description:"Existing invitation ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite).","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault,omitempty"}},name:{type:"string",description:"Name of the invitation.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation.",maxLength:5e3},emails:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Email address or pattern that is permitted to use this invitation.","x-go-type":"string"},description:"Email addresses or patterns this invitation is valid for."},orgId:{type:"string",format:"uuid",description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},maxLength:500},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt,omitempty"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it.",minimum:0},roles:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."},description:"Roles that the user will have when accepting the invitation."},teams:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."},description:"Teams that the user will be added to when accepting the invitation."},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]}}}}},required:true},responses:{201:{description:"Invitation created",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/organizations/invitations/{invitationId}/accept":{post:{"x-internal":["cloud"],operationId:"acceptInvitation",tags:["Invitation"],summary:"Accept an invitation by ID",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],responses:{200:{description:"Invitation accepted",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgId}/users/invite":{post:{"x-internal":["cloud"],operationId:"handleUserInvite",tags:["Invitation"],summary:"Invite users to an organization",parameters:[{name:"orgId",in:"path",required:true,description:"The ID of the organization.",schema:{type:"string",format:"uuid"}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},responses:{200:{description:"Invitation request accepted",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request":{post:{"x-internal":["cloud"],operationId:"signupRequest",tags:["Invitation"],summary:"Create a signup request",security:[],requestBody:{required:true,content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},responses:{201:{description:"Signup request created",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},get:{"x-internal":["cloud"],operationId:"getSignupRequests",tags:["Invitation"],summary:"Get signup requests",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},{name:"filter",in:"query",description:"Get filtered reponses",schema:{type:"string"}}],responses:{200:{description:"Signup requests page",content:{"application/json":{schema:{type:"object",description:"Paginated list of signup requests.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0,"x-go-type-skip-optional-pointer":true},pageSize:{type:"integer",description:"Number of items per page.",minimum:1,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"pageSize"}},totalCount:{type:"integer",description:"Total number of items available.",minimum:0,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"totalCount"}},data:{type:"array",items:{type:"object",description:"A signup request submitted for organization access.",additionalProperties:true},description:"Signup requests returned on the current page."}}}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request/approve":{post:{"x-internal":["cloud"],operationId:"approveSignupRequest",tags:["Invitation"],summary:"Approve a signup request",responses:{200:{description:"Signup request approved",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request/deny":{post:{"x-internal":["cloud"],operationId:"denySignupRequest",tags:["Invitation"],summary:"Deny a signup request",responses:{200:{description:"Signup request denied",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request/notification":{get:{"x-internal":["cloud"],operationId:"getSignupRequestNotification",tags:["Invitation"],summary:"Get signup request notification summary",responses:{200:{description:"Signup request notification payload",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},204:{description:"No pending signup request notifications"},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}}},components:{parameters:{orgId:{name:"orgId",in:"path",required:true,description:"The ID of the organization.",schema:{type:"string",format:"uuid"}},invitationId:{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}},responses:{400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}},securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},schemas:{Uuid:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},InvitationsPage:{type:"object",description:"Paginated list of invitations for an organization.",required:["data","total"],properties:{data:{type:"array",items:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}},"x-go-type":"Invitation"},description:"Invitations returned on the current page.","x-oapi-codegen-extra-tags":{json:"data"}},total:{type:"integer",description:"Total number of invitations available.","x-oapi-codegen-extra-tags":{json:"total"},minimum:0}}},SignupRequest:{type:"object",description:"A signup request submitted for organization access.",additionalProperties:true},SignupRequestsPage:{type:"object",description:"Paginated list of signup requests.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0,"x-go-type-skip-optional-pointer":true},pageSize:{type:"integer",description:"Number of items per page.",minimum:1,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"pageSize"}},totalCount:{type:"integer",description:"Total number of items available.",minimum:0,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"totalCount"}},data:{type:"array",items:{type:"object",description:"A signup request submitted for organization access.",additionalProperties:true},description:"Signup requests returned on the current page."}}},InvitationPayload:{type:"object",description:"Payload for creating or updating an invitation.",required:["name","description","orgId","emails","roles","teams","status"],properties:{id:{"x-go-name":"ID",description:"Existing invitation ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite).","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault,omitempty"}},name:{type:"string",description:"Name of the invitation.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation.",maxLength:5e3},emails:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Email address or pattern that is permitted to use this invitation.","x-go-type":"string"},description:"Email addresses or patterns this invitation is valid for."},orgId:{type:"string",format:"uuid",description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},maxLength:500},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt,omitempty"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it.",minimum:0},roles:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."},description:"Roles that the user will have when accepting the invitation."},teams:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."},description:"Teams that the user will be added to when accepting the invitation."},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]}}},InvitationStatus:{type:"string",enum:["enabled","disabled"],description:"Status of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive. Disabled invitations can be re-enabled later."},Invitation:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},e=t;
2
+ module.exports=e;
@@ -0,0 +1,2 @@
1
+ var t={openapi:"3.0.0",info:{title:"Invitation",description:"OpenAPI schema for managing invitations.",version:"v1beta3",contact:{name:"Meshery Maintainers",email:"maintainers@meshery.io",url:"https://meshery.io"},license:{name:"Apache 2.0",url:"https://www.apache.org/licenses/LICENSE-2.0.html"}},tags:[{name:"Invitation",description:"Operations related to invitation"}],security:[{jwt:[]}],paths:{"/api/organizations/invitations/{invitationId}":{get:{"x-internal":["cloud"],operationId:"getInvitation",tags:["Invitation"],summary:"Get an invitation by ID",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],responses:{200:{description:"Invitation fetched",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},delete:{"x-internal":["cloud"],operationId:"deleteInvitation",tags:["Invitation"],summary:"Delete an invitation by ID",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],responses:{204:{description:"Invitation deleted"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},put:{"x-internal":["cloud"],operationId:"updateInvitation",tags:["Invitation"],summary:"Update an existing invitation",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],requestBody:{content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating an invitation.",required:["name","description","orgId","emails","roles","teams","status"],properties:{id:{"x-go-name":"ID",description:"Existing invitation ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite).","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault,omitempty"}},name:{type:"string",description:"Name of the invitation.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation.",maxLength:5e3},emails:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Email address or pattern that is permitted to use this invitation.","x-go-type":"string"},description:"Email addresses or patterns this invitation is valid for."},orgId:{type:"string",format:"uuid",description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},maxLength:500},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt,omitempty"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it.",minimum:0},roles:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."},description:"Roles that the user will have when accepting the invitation."},teams:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."},description:"Teams that the user will be added to when accepting the invitation."},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]}}}}},required:true},responses:{200:{description:"Invitation updated",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/organizations/invitations":{get:{"x-internal":["cloud"],operationId:"getInvitations",tags:["Invitation"],summary:"Get all invitations for the organization",responses:{200:{description:"Invitations page",content:{"application/json":{schema:{type:"object",description:"Paginated list of invitations for an organization.",required:["data","total"],properties:{data:{type:"array",items:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}},"x-go-type":"Invitation"},description:"Invitations returned on the current page.","x-oapi-codegen-extra-tags":{json:"data"}},total:{type:"integer",description:"Total number of invitations available.","x-oapi-codegen-extra-tags":{json:"total"},minimum:0}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},post:{"x-internal":["cloud"],operationId:"createInvitation",tags:["Invitation"],summary:"Create a new invitation for the organization",requestBody:{content:{"application/json":{schema:{type:"object",description:"Payload for creating or updating an invitation.",required:["name","description","orgId","emails","roles","teams","status"],properties:{id:{"x-go-name":"ID",description:"Existing invitation ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite).","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault,omitempty"}},name:{type:"string",description:"Name of the invitation.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation.",maxLength:5e3},emails:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Email address or pattern that is permitted to use this invitation.","x-go-type":"string"},description:"Email addresses or patterns this invitation is valid for."},orgId:{type:"string",format:"uuid",description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},maxLength:500},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt,omitempty"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it.",minimum:0},roles:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."},description:"Roles that the user will have when accepting the invitation."},teams:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."},description:"Teams that the user will be added to when accepting the invitation."},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]}}}}},required:true},responses:{201:{description:"Invitation created",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/organizations/invitations/{invitationId}/accept":{post:{"x-internal":["cloud"],operationId:"acceptInvitation",tags:["Invitation"],summary:"Accept an invitation by ID",parameters:[{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}],responses:{200:{description:"Invitation accepted",content:{"application/json":{schema:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgId}/users/invite":{post:{"x-internal":["cloud"],operationId:"handleUserInvite",tags:["Invitation"],summary:"Invite users to an organization",parameters:[{name:"orgId",in:"path",required:true,description:"The ID of the organization.",schema:{type:"string",format:"uuid"}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},responses:{200:{description:"Invitation request accepted",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request":{post:{"x-internal":["cloud"],operationId:"signupRequest",tags:["Invitation"],summary:"Create a signup request",security:[],requestBody:{required:true,content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},responses:{201:{description:"Signup request created",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}},get:{"x-internal":["cloud"],operationId:"getSignupRequests",tags:["Invitation"],summary:"Get signup requests",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},{name:"filter",in:"query",description:"Get filtered reponses",schema:{type:"string"}}],responses:{200:{description:"Signup requests page",content:{"application/json":{schema:{type:"object",description:"Paginated list of signup requests.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0,"x-go-type-skip-optional-pointer":true},pageSize:{type:"integer",description:"Number of items per page.",minimum:1,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"pageSize"}},totalCount:{type:"integer",description:"Total number of items available.",minimum:0,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"totalCount"}},data:{type:"array",items:{type:"object",description:"A signup request submitted for organization access.",additionalProperties:true},description:"Signup requests returned on the current page."}}}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request/approve":{post:{"x-internal":["cloud"],operationId:"approveSignupRequest",tags:["Invitation"],summary:"Approve a signup request",responses:{200:{description:"Signup request approved",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request/deny":{post:{"x-internal":["cloud"],operationId:"denySignupRequest",tags:["Invitation"],summary:"Deny a signup request",responses:{200:{description:"Signup request denied",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/users/request/notification":{get:{"x-internal":["cloud"],operationId:"getSignupRequestNotification",tags:["Invitation"],summary:"Get signup request notification summary",responses:{200:{description:"Signup request notification payload",content:{"application/json":{schema:{type:"object",additionalProperties:true}}}},204:{description:"No pending signup request notifications"},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}}},components:{parameters:{orgId:{name:"orgId",in:"path",required:true,description:"The ID of the organization.",schema:{type:"string",format:"uuid"}},invitationId:{name:"invitationId",in:"path",required:true,description:"The ID of the invitation.",schema:{type:"string",format:"uuid"}}},responses:{400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},404:{description:"Result not found",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}},securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},schemas:{Uuid:{type:"string",format:"uuid",description:"A Universally Unique Identifier used to uniquely identify entities in Meshery. The UUID core definition is used across different schemas.","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},InvitationsPage:{type:"object",description:"Paginated list of invitations for an organization.",required:["data","total"],properties:{data:{type:"array",items:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}},"x-go-type":"Invitation"},description:"Invitations returned on the current page.","x-oapi-codegen-extra-tags":{json:"data"}},total:{type:"integer",description:"Total number of invitations available.","x-oapi-codegen-extra-tags":{json:"total"},minimum:0}}},SignupRequest:{type:"object",description:"A signup request submitted for organization access.",additionalProperties:true},SignupRequestsPage:{type:"object",description:"Paginated list of signup requests.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0,"x-go-type-skip-optional-pointer":true},pageSize:{type:"integer",description:"Number of items per page.",minimum:1,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"pageSize"}},totalCount:{type:"integer",description:"Total number of items available.",minimum:0,"x-go-type-skip-optional-pointer":true,"x-oapi-codegen-extra-tags":{json:"totalCount"}},data:{type:"array",items:{type:"object",description:"A signup request submitted for organization access.",additionalProperties:true},description:"Signup requests returned on the current page."}}},InvitationPayload:{type:"object",description:"Payload for creating or updating an invitation.",required:["name","description","orgId","emails","roles","teams","status"],properties:{id:{"x-go-name":"ID",description:"Existing invitation ID for updates; omit on create.","x-oapi-codegen-extra-tags":{json:"id,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite).","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault,omitempty"}},name:{type:"string",description:"Name of the invitation.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation.",maxLength:5e3},emails:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Email address or pattern that is permitted to use this invitation.","x-go-type":"string"},description:"Email addresses or patterns this invitation is valid for."},orgId:{type:"string",format:"uuid",description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},maxLength:500},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt,omitempty"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it.",minimum:0},roles:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."},description:"Roles that the user will have when accepting the invitation."},teams:{type:"array","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."},description:"Teams that the user will be added to when accepting the invitation."},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]}}},InvitationStatus:{type:"string",enum:["enabled","disabled"],description:"Status of the invitation, where enabled means the invitation is active and can be used, disabled means the invitation is no longer valid and is temporarily inactive. Disabled invitations can be re-enabled later."},Invitation:{type:"object",additionalProperties:false,description:"Invitation entity schema.",required:["id","ownerId","name","description","orgId","acceptedBy","emails","roles","teams","status","createdAt","updatedAt","deletedAt"],properties:{id:{description:"Unique identifier for the invitation, also used as the invitation code.","x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id",json:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},ownerId:{description:"ID of the user who created the invitation. Tracks who created the invitation for auditing purposes.","x-go-name":"OwnerID","x-oapi-codegen-extra-tags":{db:"owner_id",json:"ownerId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},isDefault:{type:"boolean",description:"Indicates whether the invitation is a default invitation (open invite), which can be used to assign users when signing up from fqdn or custom domain. An organization can only have one default invitation.","x-oapi-codegen-extra-tags":{db:"is_default",json:"isDefault"}},name:{type:"string",description:"Name of the invitation, which can be used to identify it. Required; cannot be an empty string.",minLength:1,maxLength:255},description:{type:"string",description:"Description of the invitation, which can be used to provide additional context. Null or empty string means the invitation does not have a description.",maxLength:5e3},emails:{type:"array",description:"Email addresses or patterns for which the invitation is valid. Null means the invitation is valid for any email address.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",pattern:"^([a-zA-Z0-9._%+-]+@[a-zA-Z0-9.-]+\\.[a-z]{2,}|@[a-zA-Z0-9.-]+\\.[a-z]{2,})$",description:"Exact email address or the email address pattern for which the invitation is valid.","x-go-type":"string"}},orgId:{description:"ID of the organization to which the user is invited.","x-go-name":"OrgID","x-oapi-codegen-extra-tags":{db:"org_id",json:"orgId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},expiresAt:{type:"string",format:"date-time",description:"Timestamp when the invitation expires, if applicable. Null or empty means the invitation does not expire.","x-oapi-codegen-extra-tags":{db:"expires_at",json:"expiresAt"}},quota:{type:"integer",description:"Quota for the invitation; limits the number of users that can accept it. Null or empty means the invitation is unlimited.",minimum:0},acceptedBy:{type:"array",description:"List of user ids that have already accepted the invitation. Empty means the invitation has not been used yet.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string"},"x-oapi-codegen-extra-tags":{db:"accepted_by",json:"acceptedBy"}},roles:{type:"array",description:"Roles that the user will have when accepting the invitation. Empty means the invitation does not specify any roles.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Role identifier granted by this invitation on acceptance."}},teams:{type:"array",description:"Teams that the user will be added to when accepting the invitation. Empty means the invitation does not specify any teams.","x-go-type":"pq.StringArray","x-go-type-import":{path:"github.com/lib/pq"},items:{type:"string",description:"Team identifier the invited user is added to on acceptance."}},status:{description:"Activation status of the invitation.","x-go-type":"InvitationStatus",type:"string",enum:["enabled","disabled"]},createdAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"}},updatedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"}},deletedAt:{type:"string",format:"date-time",description:"Timestamp when the invitation was deleted, if applicable.","x-go-type":"core.NullTime","x-go-type-import":{path:"github.com/meshery/schemas/models/core"},"x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"}}}}}}},e=t;
2
+ export{e as default};
@@ -0,0 +1,198 @@
1
+ /**
2
+ * This file was auto-generated by openapi-typescript.
3
+ * Do not make direct changes to the file.
4
+ */
5
+ interface paths {
6
+ "/api/entitlement/plans": {
7
+ get: operations["getPlans"];
8
+ };
9
+ }
10
+ interface components {
11
+ schemas: {
12
+ /** @description Paginated list of plans supported by the system. */
13
+ PlanPage: {
14
+ /** @description Current page number of the result set. */
15
+ page: number;
16
+ /** @description Number of items per page. */
17
+ pageSize: number;
18
+ /** @description Total number of items available. */
19
+ totalCount: number;
20
+ /** @description Plans returned on the current page. */
21
+ plans: {
22
+ /**
23
+ * Format: uuid
24
+ * @description Unique identifier for the plan.
25
+ */
26
+ id: string;
27
+ /**
28
+ * @description Display name of the plan.
29
+ * @enum {string}
30
+ */
31
+ name: "Free" | "Team Designer" | "Team Operator" | "Enterprise";
32
+ /**
33
+ * @description Billing cadence for the plan (monthly, annually, or none).
34
+ * @enum {string}
35
+ */
36
+ cadence: "none" | "monthly" | "annually";
37
+ /**
38
+ * @description Unit of consumption this plan charges against (e.g. user).
39
+ * @enum {string}
40
+ */
41
+ unit: "user" | "free";
42
+ /** @description Minimum number of units required for the plan. */
43
+ minimumUnits: number;
44
+ /** @description Price per unit of the plan. */
45
+ pricePerUnit: number;
46
+ /**
47
+ * @description Currency in which the plan is priced.
48
+ * @enum {string}
49
+ */
50
+ currency: "usd";
51
+ }[];
52
+ };
53
+ /** @description Plan entity schema. */
54
+ Plan: {
55
+ /**
56
+ * Format: uuid
57
+ * @description Unique identifier for the plan.
58
+ */
59
+ id: string;
60
+ /**
61
+ * @description Display name of the plan.
62
+ * @enum {string}
63
+ */
64
+ name: "Free" | "Team Designer" | "Team Operator" | "Enterprise";
65
+ /**
66
+ * @description Billing cadence for the plan (monthly, annually, or none).
67
+ * @enum {string}
68
+ */
69
+ cadence: "none" | "monthly" | "annually";
70
+ /**
71
+ * @description Unit of consumption this plan charges against (e.g. user).
72
+ * @enum {string}
73
+ */
74
+ unit: "user" | "free";
75
+ /** @description Minimum number of units required for the plan. */
76
+ minimumUnits: number;
77
+ /** @description Price per unit of the plan. */
78
+ pricePerUnit: number;
79
+ /**
80
+ * @description Currency in which the plan is priced.
81
+ * @enum {string}
82
+ */
83
+ currency: "usd";
84
+ };
85
+ /**
86
+ * @description Display name of the subscription plan.
87
+ * @enum {string}
88
+ */
89
+ PlanName: "Free" | "Team Designer" | "Team Operator" | "Enterprise";
90
+ /**
91
+ * @description Billing cadence of the subscription plan.
92
+ * @enum {string}
93
+ */
94
+ PlanCadence: "none" | "monthly" | "annually";
95
+ /**
96
+ * @description Unit of consumption the plan charges against.
97
+ * @enum {string}
98
+ */
99
+ PlanUnit: "user" | "free";
100
+ /**
101
+ * @description Currency code for the plan pricing.
102
+ * @enum {string}
103
+ */
104
+ Currency: "usd";
105
+ };
106
+ responses: {
107
+ /** Invalid request body or request param */
108
+ 400: {
109
+ content: {
110
+ "text/plain": string;
111
+ };
112
+ };
113
+ /** Expired JWT token used or insufficient privilege */
114
+ 401: {
115
+ content: {
116
+ "text/plain": string;
117
+ };
118
+ };
119
+ /** Internal server error */
120
+ 500: {
121
+ content: {
122
+ "text/plain": string;
123
+ };
124
+ };
125
+ };
126
+ }
127
+ interface operations {
128
+ getPlans: {
129
+ parameters: {
130
+ query: {
131
+ /** Get responses by page */
132
+ page?: string;
133
+ /** Get responses by pagesize */
134
+ pagesize?: string;
135
+ };
136
+ };
137
+ responses: {
138
+ /** Plans response */
139
+ 200: {
140
+ content: {
141
+ "application/json": {
142
+ /**
143
+ * Format: uuid
144
+ * @description Unique identifier for the plan.
145
+ */
146
+ id: string;
147
+ /**
148
+ * @description Display name of the plan.
149
+ * @enum {string}
150
+ */
151
+ name: "Free" | "Team Designer" | "Team Operator" | "Enterprise";
152
+ /**
153
+ * @description Billing cadence for the plan (monthly, annually, or none).
154
+ * @enum {string}
155
+ */
156
+ cadence: "none" | "monthly" | "annually";
157
+ /**
158
+ * @description Unit of consumption this plan charges against (e.g. user).
159
+ * @enum {string}
160
+ */
161
+ unit: "user" | "free";
162
+ /** @description Minimum number of units required for the plan. */
163
+ minimumUnits: number;
164
+ /** @description Price per unit of the plan. */
165
+ pricePerUnit: number;
166
+ /**
167
+ * @description Currency in which the plan is priced.
168
+ * @enum {string}
169
+ */
170
+ currency: "usd";
171
+ }[];
172
+ };
173
+ };
174
+ /** Invalid request body or request param */
175
+ 400: {
176
+ content: {
177
+ "text/plain": string;
178
+ };
179
+ };
180
+ /** Expired JWT token used or insufficient privilege */
181
+ 401: {
182
+ content: {
183
+ "text/plain": string;
184
+ };
185
+ };
186
+ /** Internal server error */
187
+ 500: {
188
+ content: {
189
+ "text/plain": string;
190
+ };
191
+ };
192
+ };
193
+ };
194
+ }
195
+ interface external {
196
+ }
197
+
198
+ export type { components, external, operations, paths };