@meshery/schemas 1.1.1 → 1.2.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 (35) hide show
  1. package/dist/cloudApi.d.mts +1565 -1436
  2. package/dist/cloudApi.d.ts +1565 -1436
  3. package/dist/cloudApi.js +1 -1
  4. package/dist/cloudApi.mjs +1 -1
  5. package/dist/constructs/v1beta1/credential/CredentialSchema.js +1 -1
  6. package/dist/constructs/v1beta1/credential/CredentialSchema.mjs +1 -1
  7. package/dist/constructs/v1beta1/role/RoleSchema.js +1 -1
  8. package/dist/constructs/v1beta1/role/RoleSchema.mjs +1 -1
  9. package/dist/constructs/v1beta1/schedule/ScheduleSchema.js +1 -1
  10. package/dist/constructs/v1beta1/schedule/ScheduleSchema.mjs +1 -1
  11. package/dist/constructs/v1beta1/token/TokenSchema.js +1 -1
  12. package/dist/constructs/v1beta1/token/TokenSchema.mjs +1 -1
  13. package/dist/constructs/v1beta2/credential/CredentialSchema.js +1 -1
  14. package/dist/constructs/v1beta2/credential/CredentialSchema.mjs +1 -1
  15. package/dist/constructs/v1beta2/role/RoleSchema.js +1 -1
  16. package/dist/constructs/v1beta2/role/RoleSchema.mjs +1 -1
  17. package/dist/constructs/v1beta2/schedule/Schedule.d.mts +50 -0
  18. package/dist/constructs/v1beta2/schedule/Schedule.d.ts +50 -0
  19. package/dist/constructs/v1beta2/schedule/ScheduleSchema.js +16 -6
  20. package/dist/constructs/v1beta2/schedule/ScheduleSchema.mjs +16 -6
  21. package/dist/constructs/v1beta2/team/Team.d.mts +23 -5
  22. package/dist/constructs/v1beta2/team/Team.d.ts +23 -5
  23. package/dist/constructs/v1beta2/team/TeamSchema.js +1 -1
  24. package/dist/constructs/v1beta2/team/TeamSchema.mjs +1 -1
  25. package/dist/constructs/v1beta2/token/TokenSchema.js +1 -1
  26. package/dist/constructs/v1beta2/token/TokenSchema.mjs +1 -1
  27. package/dist/constructs/v1beta3/design/Design.d.mts +360 -0
  28. package/dist/constructs/v1beta3/design/Design.d.ts +360 -0
  29. package/dist/constructs/v1beta3/design/DesignSchema.js +70 -10
  30. package/dist/constructs/v1beta3/design/DesignSchema.mjs +70 -10
  31. package/dist/constructs/v1beta3/token/TokenSchema.js +1 -1
  32. package/dist/constructs/v1beta3/token/TokenSchema.mjs +1 -1
  33. package/dist/mesheryApi.d.mts +549 -546
  34. package/dist/mesheryApi.d.ts +549 -546
  35. package/package.json +1 -1
@@ -1,13 +1,23 @@
1
- 'use strict';var e={openapi:"3.0.0",info:{title:"schedule",description:"Documentation for Meshery Cloud REST APIs for Schedules",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"},version:"v1beta2"},servers:[{url:"https://cloud.layer5.io",description:"Meshery Cloud production server URL"},{url:"https://staging-cloud.layer5.io",description:"Meshery Cloud staging server URL"},{url:"http://localhost:9876",description:"Meshery Cloud development server URL"}],security:[{jwt:[]}],tags:[{name:"scheduler",description:"Operations related to scheduled tasks"}],paths:{"/user/schedules":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedules",operationId:"getSchedules",description:"Returns all schedules for the authenticated user.",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pageSize",in:"query",description:"Get responses by page size",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"}}],responses:{200:{description:"Schedules response",content:{"application/json":{schema:{type:"object",description:"A paginated list of schedules.",required:["page","pageSize","totalCount","schedules"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1,minimum:0},pageSize:{type:"integer",description:"Number of schedules per page.","x-order":2,minimum:1},totalCount:{type:"integer",description:"Total number of schedules across all pages.","x-order":3,minimum:0},schedules:{type:"array",items:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
1
+ 'use strict';var e={openapi:"3.0.0",info:{title:"schedule",description:"Documentation for Meshery Cloud REST APIs for Schedules",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"},version:"v1beta2"},servers:[{url:"https://cloud.meshery.io",description:"Meshery Cloud production server URL"},{url:"https://staging-cloud.meshery.io",description:"Meshery Cloud staging server URL"},{url:"http://localhost:9876",description:"Meshery Cloud development server URL"}],security:[{jwt:[]}],tags:[{name:"scheduler",description:"Operations related to scheduled tasks"}],paths:{"/user/schedules":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedules",operationId:"getSchedules",description:"Returns all schedules for the authenticated user.",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pageSize",in:"query",description:"Get responses by page size",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"}}],responses:{200:{description:"Schedules response",content:{"application/json":{schema:{type:"object",description:"A paginated list of schedules.",required:["page","pageSize","totalCount","schedules"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1,minimum:0},pageSize:{type:"integer",description:"Number of schedules per page.","x-order":2,minimum:1},totalCount:{type:"integer",description:"Total number of schedules across all pages.","x-order":3,minimum:0},schedules:{type:"array",items:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
2
2
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
3
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},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"],tags:["scheduler"],summary:"Create or update schedule",operationId:"upsertSchedule",description:"Creates or updates a schedule for the authenticated user.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
3
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
4
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
5
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},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"],tags:["scheduler"],summary:"Create or update schedule",operationId:"upsertSchedule",description:"Creates or updates a schedule for the authenticated user.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
4
6
  `,"x-oapi-codegen-extra-tags":{json:"cronExpression"},maxLength:500}}}}}},responses:{200:{description:"Schedule upserted",content:{"application/json":{schema:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
5
7
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
6
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}}},"/user/schedules/{scheduleId}":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedule by ID",operationId:"getSchedule",description:"Returns a specific schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{200:{description:"Schedule response",content:{"application/json":{schema:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
8
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
9
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
10
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}}},"/user/schedules/{scheduleId}":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedule by ID",operationId:"getSchedule",description:"Returns a specific schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{200:{description:"Schedule response",content:{"application/json":{schema:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
7
11
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
8
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"],tags:["scheduler"],summary:"Delete schedule",operationId:"deleteSchedule",description:"Deletes a schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{204:{description:"Schedule deleted"},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"}}}}}}}},components:{securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},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"}}}}},parameters:{scheduleId:{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},pageSize:{name:"pageSize",in:"query",description:"Get responses by page size",schema:{type:"string"}},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}},schemas:{Schedule:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
12
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
13
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
14
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"],tags:["scheduler"],summary:"Delete schedule",operationId:"deleteSchedule",description:"Deletes a schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{204:{description:"Schedule deleted"},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"}}}}}}}},components:{securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},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"}}}}},parameters:{scheduleId:{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},pageSize:{name:"pageSize",in:"query",description:"Get responses by page size",schema:{type:"string"}},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}},schemas:{Schedule:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
9
15
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
10
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},SchedulePayload:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
16
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
17
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
18
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},SchedulePayload:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
11
19
  `,"x-oapi-codegen-extra-tags":{json:"cronExpression"},maxLength:500}}},SchedulePage:{type:"object",description:"A paginated list of schedules.",required:["page","pageSize","totalCount","schedules"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1,minimum:0},pageSize:{type:"integer",description:"Number of schedules per page.","x-order":2,minimum:1},totalCount:{type:"integer",description:"Total number of schedules across all pages.","x-order":3,minimum:0},schedules:{type:"array",items:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
12
20
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
13
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},t=e;module.exports=t;
21
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
22
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
23
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},t=e;module.exports=t;
@@ -1,13 +1,23 @@
1
- var e={openapi:"3.0.0",info:{title:"schedule",description:"Documentation for Meshery Cloud REST APIs for Schedules",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"},version:"v1beta2"},servers:[{url:"https://cloud.layer5.io",description:"Meshery Cloud production server URL"},{url:"https://staging-cloud.layer5.io",description:"Meshery Cloud staging server URL"},{url:"http://localhost:9876",description:"Meshery Cloud development server URL"}],security:[{jwt:[]}],tags:[{name:"scheduler",description:"Operations related to scheduled tasks"}],paths:{"/user/schedules":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedules",operationId:"getSchedules",description:"Returns all schedules for the authenticated user.",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pageSize",in:"query",description:"Get responses by page size",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"}}],responses:{200:{description:"Schedules response",content:{"application/json":{schema:{type:"object",description:"A paginated list of schedules.",required:["page","pageSize","totalCount","schedules"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1,minimum:0},pageSize:{type:"integer",description:"Number of schedules per page.","x-order":2,minimum:1},totalCount:{type:"integer",description:"Total number of schedules across all pages.","x-order":3,minimum:0},schedules:{type:"array",items:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
1
+ var e={openapi:"3.0.0",info:{title:"schedule",description:"Documentation for Meshery Cloud REST APIs for Schedules",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"},version:"v1beta2"},servers:[{url:"https://cloud.meshery.io",description:"Meshery Cloud production server URL"},{url:"https://staging-cloud.meshery.io",description:"Meshery Cloud staging server URL"},{url:"http://localhost:9876",description:"Meshery Cloud development server URL"}],security:[{jwt:[]}],tags:[{name:"scheduler",description:"Operations related to scheduled tasks"}],paths:{"/user/schedules":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedules",operationId:"getSchedules",description:"Returns all schedules for the authenticated user.",parameters:[{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pageSize",in:"query",description:"Get responses by page size",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"}}],responses:{200:{description:"Schedules response",content:{"application/json":{schema:{type:"object",description:"A paginated list of schedules.",required:["page","pageSize","totalCount","schedules"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1,minimum:0},pageSize:{type:"integer",description:"Number of schedules per page.","x-order":2,minimum:1},totalCount:{type:"integer",description:"Total number of schedules across all pages.","x-order":3,minimum:0},schedules:{type:"array",items:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
2
2
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
3
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},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"],tags:["scheduler"],summary:"Create or update schedule",operationId:"upsertSchedule",description:"Creates or updates a schedule for the authenticated user.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
3
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
4
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
5
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},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"],tags:["scheduler"],summary:"Create or update schedule",operationId:"upsertSchedule",description:"Creates or updates a schedule for the authenticated user.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
4
6
  `,"x-oapi-codegen-extra-tags":{json:"cronExpression"},maxLength:500}}}}}},responses:{200:{description:"Schedule upserted",content:{"application/json":{schema:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
5
7
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
6
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}}},"/user/schedules/{scheduleId}":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedule by ID",operationId:"getSchedule",description:"Returns a specific schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{200:{description:"Schedule response",content:{"application/json":{schema:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
8
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
9
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
10
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}}},"/user/schedules/{scheduleId}":{get:{"x-internal":["cloud"],tags:["scheduler"],summary:"Get schedule by ID",operationId:"getSchedule",description:"Returns a specific schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{200:{description:"Schedule response",content:{"application/json":{schema:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
7
11
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
8
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"],tags:["scheduler"],summary:"Delete schedule",operationId:"deleteSchedule",description:"Deletes a schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{204:{description:"Schedule deleted"},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"}}}}}}}},components:{securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},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"}}}}},parameters:{scheduleId:{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},pageSize:{name:"pageSize",in:"query",description:"Get responses by page size",schema:{type:"string"}},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}},schemas:{Schedule:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
12
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
13
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
14
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}}}}},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"],tags:["scheduler"],summary:"Delete schedule",operationId:"deleteSchedule",description:"Deletes a schedule by its ID.",parameters:[{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}}],responses:{204:{description:"Schedule deleted"},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"}}}}}}}},components:{securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},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"}}}}},parameters:{scheduleId:{name:"scheduleId",in:"path",description:"Schedule ID",required:true,schema:{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"}}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},pageSize:{name:"pageSize",in:"query",description:"Get responses by page size",schema:{type:"string"}},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}},schemas:{Schedule:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
9
15
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
10
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},SchedulePayload:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
16
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
17
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
18
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},SchedulePayload:{type:"object",description:"Payload for upserting a schedule. Includes only client-settable fields.",required:["name","cronExpression"],properties:{id:{description:"Existing schedule ID for updates; omit on create.","x-go-name":"ID","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"}},name:{type:"string",description:"Human-readable name for the schedule.",minLength:1,maxLength:255},userId:{description:"Owner user ID; inferred from the authenticated user when omitted.","x-oapi-codegen-extra-tags":{json:"userId,omitempty"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
11
19
  `,"x-oapi-codegen-extra-tags":{json:"cronExpression"},maxLength:500}}},SchedulePage:{type:"object",description:"A paginated list of schedules.",required:["page","pageSize","totalCount","schedules"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1,minimum:0},pageSize:{type:"integer",description:"Number of schedules per page.","x-order":2,minimum:1},totalCount:{type:"integer",description:"Total number of schedules across all pages.","x-order":3,minimum:0},schedules:{type:"array",items:{type:"object",description:`A schedule defines a recurring cron-based trigger for performance tests or other automated tasks.
12
20
  `,required:["name","userId","cronExpression"],properties:{id:{description:"Unique identifier for the schedule.","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{type:"string",description:"Human-readable name for the schedule.","x-order":2,"x-oapi-codegen-extra-tags":{db:"name"},minLength:1,maxLength:255},userId:{description:"UUID of the user who owns this schedule.","x-order":3,"x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},cronExpression:{type:"string",description:`Cron expression defining the schedule's recurrence (e.g. "0 0 * * *" for daily at midnight).
13
- `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},createdAt:{description:"Timestamp when the schedule was created.","x-order":5,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":6,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},t=e;export{t as default};
21
+ `,"x-order":4,"x-oapi-codegen-extra-tags":{db:"cron_expression",json:"cronExpression"},maxLength:500},lastRun:{description:`Server-computed timestamp of the schedule's most recent execution. Null until the first run completes. Server-managed; clients must not set this on create/update.
22
+ `,"x-order":5,"x-oapi-codegen-extra-tags":{db:"last_run",json:"lastRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},nextRun:{description:`Server-computed timestamp of the schedule's next planned execution, derived from the cron expression. Server-managed; clients must not set this on create/update.
23
+ `,"x-order":6,"x-oapi-codegen-extra-tags":{db:"next_run",json:"nextRun"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},createdAt:{description:"Timestamp when the schedule was created.","x-order":7,"x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the schedule was last updated.","x-order":8,"x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},"x-order":4,description:"The schedules of the schedulepage."}}}}}},t=e;export{t as default};
@@ -197,8 +197,14 @@ interface components {
197
197
  deletedAt?: string;
198
198
  }[];
199
199
  };
200
- /** @description A user who is a prospective or existing team member. */
200
+ /** @description A user who is a prospective or existing team member. Returned by the "list users in team" endpoint. `joinedAt` is the first canonicalised projection field — other user fields (`id`, `firstName`, `lastName`, `email`, `avatarUrl`) continue to flow through `additionalProperties` pending migration of the user schema to the canonical-casing contract. See meshery/schemas#832 for the per-field roadmap. */
201
201
  TeamMember: {
202
+ /**
203
+ * Format: date-time
204
+ * @description Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.
205
+ */
206
+ joinedAt?: string;
207
+ } & {
202
208
  [key: string]: unknown;
203
209
  };
204
210
  /** @description Paginated list of team members. */
@@ -210,9 +216,15 @@ interface components {
210
216
  /** @description Total number of items available. */
211
217
  total_count?: number;
212
218
  /** @description The data of the teammemberspage. */
213
- data?: {
219
+ data?: ({
220
+ /**
221
+ * Format: date-time
222
+ * @description Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.
223
+ */
224
+ joinedAt?: string;
225
+ } & {
214
226
  [key: string]: unknown;
215
- }[];
227
+ })[];
216
228
  };
217
229
  };
218
230
  responses: {
@@ -900,9 +912,15 @@ interface operations {
900
912
  /** @description Total number of items available. */
901
913
  total_count?: number;
902
914
  /** @description The data of the teammemberspage. */
903
- data?: {
915
+ data?: ({
916
+ /**
917
+ * Format: date-time
918
+ * @description Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.
919
+ */
920
+ joinedAt?: string;
921
+ } & {
904
922
  [key: string]: unknown;
905
- }[];
923
+ })[];
906
924
  };
907
925
  };
908
926
  };
@@ -197,8 +197,14 @@ interface components {
197
197
  deletedAt?: string;
198
198
  }[];
199
199
  };
200
- /** @description A user who is a prospective or existing team member. */
200
+ /** @description A user who is a prospective or existing team member. Returned by the "list users in team" endpoint. `joinedAt` is the first canonicalised projection field — other user fields (`id`, `firstName`, `lastName`, `email`, `avatarUrl`) continue to flow through `additionalProperties` pending migration of the user schema to the canonical-casing contract. See meshery/schemas#832 for the per-field roadmap. */
201
201
  TeamMember: {
202
+ /**
203
+ * Format: date-time
204
+ * @description Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.
205
+ */
206
+ joinedAt?: string;
207
+ } & {
202
208
  [key: string]: unknown;
203
209
  };
204
210
  /** @description Paginated list of team members. */
@@ -210,9 +216,15 @@ interface components {
210
216
  /** @description Total number of items available. */
211
217
  total_count?: number;
212
218
  /** @description The data of the teammemberspage. */
213
- data?: {
219
+ data?: ({
220
+ /**
221
+ * Format: date-time
222
+ * @description Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.
223
+ */
224
+ joinedAt?: string;
225
+ } & {
214
226
  [key: string]: unknown;
215
- }[];
227
+ })[];
216
228
  };
217
229
  };
218
230
  responses: {
@@ -900,9 +912,15 @@ interface operations {
900
912
  /** @description Total number of items available. */
901
913
  total_count?: number;
902
914
  /** @description The data of the teammemberspage. */
903
- data?: {
915
+ data?: ({
916
+ /**
917
+ * Format: date-time
918
+ * @description Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.
919
+ */
920
+ joinedAt?: string;
921
+ } & {
904
922
  [key: string]: unknown;
905
- }[];
923
+ })[];
906
924
  };
907
925
  };
908
926
  };
@@ -1,2 +1,2 @@
1
- 'use strict';var e={openapi:"3.0.0",info:{title:"Team",description:"OpenAPI schema for team management in Meshery Cloud.",version:"v1beta2",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"}},servers:[{url:"https://cloud.meshery.io",description:"Meshery Cloud production server URL"},{url:"https://staging-cloud.meshery.io",description:"Meshery Cloud staging server URL"},{url:"http://localhost:9876",description:"Meshery Cloud development server URL (controlled via PORT environment variable)"}],security:[{jwt:[]}],tags:[{name:"teams",description:"A Team is a group of one or more users. Teams are used for assigning permissions in organizations and workspaces. Learn more at https://docs.meshery.io/concepts/logical/teams"}],components:{responses:{200:{description:"ok",content:{"text/plain":{schema:{type:"string"}}}},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"}}}}},parameters:{teamId:{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},orgId:{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},userId:{name:"userId",in:"path",description:"User ID",schema:{type:"string",description:"user's email or username","x-go-type-skip-optional-pointer":true},required:true},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},pagesize:{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}},securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},schemas:{Team:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},TeamPayload:{type:"object",description:"Payload for creating a new team",required:["name"],properties:{name:{description:"Team name. Provide a meaningful name that represents this team.",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"A detailed description of the team's purpose and responsibilities.",type:"string","x-go-type-skip-optional-pointer":true}}},TeamUpdatePayload:{type:"object",description:"Payload for updating an existing team",properties:{name:{description:"Updated team name",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"Updated team description",type:"string","x-go-type-skip-optional-pointer":true}}},TeamPage:{type:"object",description:"Paginated list of teams",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teams:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"Team",$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams of the teampage."}}},TeamsUsersMapping:{type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},TeamsUsersMappingPage:{type:"object",description:"Paginated list of team-user mappings",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teamsUsersMapping:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"TeamsUsersMapping",type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams users mapping of the teamsusersmappingpage."}}},TeamMember:{type:"object",description:"A user who is a prospective or existing team member.",additionalProperties:true},TeamMembersPage:{type:"object",description:"Paginated list of team members.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},data:{type:"array",items:{type:"object",description:"A user who is a prospective or existing team member.",additionalProperties:true},description:"The data of the teammemberspage."}}}},requestBodies:{teamPayload:{description:"Body for creating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating a new team",required:["name"],properties:{name:{description:"Team name. Provide a meaningful name that represents this team.",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"A detailed description of the team's purpose and responsibilities.",type:"string","x-go-type-skip-optional-pointer":true}}}}}},teamUpdatePayload:{description:"Body for updating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for updating an existing team",properties:{name:{description:"Updated team name",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"Updated team description",type:"string","x-go-type-skip-optional-pointer":true}}}}}}}},paths:{"/api/identity/orgs/{orgId}/teams":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"getTeams",summary:"Get all teams for an organization",description:"Gets all teams within an organization",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{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:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}],responses:{200:{description:"Teams",content:{"application/json":{schema:{type:"object",description:"Paginated list of teams",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teams:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"Team",$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams of the teampage."}}}}}},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"}}}}}},post:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"createTeam",summary:"Create a team",description:"Creates a new team within an organization",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true}],requestBody:{description:"Body for creating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating a new team",required:["name"],properties:{name:{description:"Team name. Provide a meaningful name that represents this team.",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"A detailed description of the team's purpose and responsibilities.",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{201:{description:"Created team",content:{"application/json":{schema:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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/orgs/{orgId}/teams/{teamId}":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"getTeamById",summary:"Get a team by ID",description:"Gets a team by its ID",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true}],responses:{200:{description:"Team",content:{"application/json":{schema:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}},put:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"updateTeam",summary:"Update a team",description:"Updates a team's information",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true}],requestBody:{description:"Body for updating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for updating an existing team",properties:{name:{description:"Updated team name",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"Updated team description",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Updated team",content:{"application/json":{schema:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}},delete:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"deleteTeam",summary:"Delete a team",description:"Deletes a team by its ID",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true}],responses:{204:{description:"Team 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"}}}}}}},"/api/identity/teams/{teamId}/users":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"getTeamUsers",summary:"Get all users in a team",description:"Gets all users that belong to a team",parameters:[{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{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:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}],responses:{200:{description:"Team users mapping",content:{"application/json":{schema:{type:"object",description:"Paginated list of team-user mappings",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teamsUsersMapping:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"TeamsUsersMapping",type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams users mapping of the teamsusersmappingpage."}}}}}},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}/teams/{teamId}/users/{userId}":{post:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"addUserToTeam",summary:"Add a user to a team",description:"Assigns a user to a team",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{name:"userId",in:"path",description:"User ID",schema:{type:"string",description:"user's email or username","x-go-type-skip-optional-pointer":true},required:true}],responses:{201:{description:"User added to team",content:{"application/json":{schema:{type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}},delete:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"removeUserFromTeam",summary:"Remove a user from a team",description:"Unassigns a user from a team",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{name:"userId",in:"path",description:"User ID",schema:{type:"string",description:"user's email or username","x-go-type-skip-optional-pointer":true},required:true}],responses:{204:{description:"User removed from team"},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}/teams/{teamId}/users":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"listUsersNotInTeam",summary:"Get users that are not in a team",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{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:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}],responses:{200:{description:"Users not currently in the team",content:{"application/json":{schema:{type:"object",description:"Paginated list of team members.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},data:{type:"array",items:{type:"object",description:"A user who is a prospective or existing team member.",additionalProperties:true},description:"The data of the teammemberspage."}}}}}},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"}}}}}}}}},t=e;
1
+ 'use strict';var e={openapi:"3.0.0",info:{title:"Team",description:"OpenAPI schema for team management in Meshery Cloud.",version:"v1beta2",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"}},servers:[{url:"https://cloud.meshery.io",description:"Meshery Cloud production server URL"},{url:"https://staging-cloud.meshery.io",description:"Meshery Cloud staging server URL"},{url:"http://localhost:9876",description:"Meshery Cloud development server URL (controlled via PORT environment variable)"}],security:[{jwt:[]}],tags:[{name:"teams",description:"A Team is a group of one or more users. Teams are used for assigning permissions in organizations and workspaces. Learn more at https://docs.meshery.io/concepts/logical/teams"}],components:{responses:{200:{description:"ok",content:{"text/plain":{schema:{type:"string"}}}},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"}}}}},parameters:{teamId:{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},orgId:{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},userId:{name:"userId",in:"path",description:"User ID",schema:{type:"string",description:"user's email or username","x-go-type-skip-optional-pointer":true},required:true},search:{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},order:{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},page:{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},pagesize:{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}},securitySchemes:{jwt:{type:"http",scheme:"bearer",bearerFormat:"JWT"}},schemas:{Team:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},TeamPayload:{type:"object",description:"Payload for creating a new team",required:["name"],properties:{name:{description:"Team name. Provide a meaningful name that represents this team.",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"A detailed description of the team's purpose and responsibilities.",type:"string","x-go-type-skip-optional-pointer":true}}},TeamUpdatePayload:{type:"object",description:"Payload for updating an existing team",properties:{name:{description:"Updated team name",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"Updated team description",type:"string","x-go-type-skip-optional-pointer":true}}},TeamPage:{type:"object",description:"Paginated list of teams",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teams:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"Team",$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams of the teampage."}}},TeamsUsersMapping:{type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},TeamsUsersMappingPage:{type:"object",description:"Paginated list of team-user mappings",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teamsUsersMapping:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"TeamsUsersMapping",type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams users mapping of the teamsusersmappingpage."}}},TeamMember:{type:"object",description:'A user who is a prospective or existing team member. Returned by the "list users in team" endpoint. `joinedAt` is the first canonicalised projection field \u2014 other user fields (`id`, `firstName`, `lastName`, `email`, `avatarUrl`) continue to flow through `additionalProperties` pending migration of the user schema to the canonical-casing contract. See meshery/schemas#832 for the per-field roadmap.\n',additionalProperties:true,properties:{joinedAt:{description:"Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.\n","x-oapi-codegen-extra-tags":{db:"joined_at",json:"joinedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},TeamMembersPage:{type:"object",description:"Paginated list of team members.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},data:{type:"array",items:{type:"object",description:'A user who is a prospective or existing team member. Returned by the "list users in team" endpoint. `joinedAt` is the first canonicalised projection field \u2014 other user fields (`id`, `firstName`, `lastName`, `email`, `avatarUrl`) continue to flow through `additionalProperties` pending migration of the user schema to the canonical-casing contract. See meshery/schemas#832 for the per-field roadmap.\n',additionalProperties:true,properties:{joinedAt:{description:"Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.\n","x-oapi-codegen-extra-tags":{db:"joined_at",json:"joinedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The data of the teammemberspage."}}}},requestBodies:{teamPayload:{description:"Body for creating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating a new team",required:["name"],properties:{name:{description:"Team name. Provide a meaningful name that represents this team.",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"A detailed description of the team's purpose and responsibilities.",type:"string","x-go-type-skip-optional-pointer":true}}}}}},teamUpdatePayload:{description:"Body for updating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for updating an existing team",properties:{name:{description:"Updated team name",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"Updated team description",type:"string","x-go-type-skip-optional-pointer":true}}}}}}}},paths:{"/api/identity/orgs/{orgId}/teams":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"getTeams",summary:"Get all teams for an organization",description:"Gets all teams within an organization",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{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:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}],responses:{200:{description:"Teams",content:{"application/json":{schema:{type:"object",description:"Paginated list of teams",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teams:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"Team",$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams of the teampage."}}}}}},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"}}}}}},post:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"createTeam",summary:"Create a team",description:"Creates a new team within an organization",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true}],requestBody:{description:"Body for creating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for creating a new team",required:["name"],properties:{name:{description:"Team name. Provide a meaningful name that represents this team.",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"A detailed description of the team's purpose and responsibilities.",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{201:{description:"Created team",content:{"application/json":{schema:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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/orgs/{orgId}/teams/{teamId}":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"getTeamById",summary:"Get a team by ID",description:"Gets a team by its ID",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true}],responses:{200:{description:"Team",content:{"application/json":{schema:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}},put:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"updateTeam",summary:"Update a team",description:"Updates a team's information",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true}],requestBody:{description:"Body for updating a team",required:true,content:{"application/json":{schema:{type:"object",description:"Payload for updating an existing team",properties:{name:{description:"Updated team name",type:"string","x-go-type-skip-optional-pointer":true},description:{description:"Updated team description",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Updated team",content:{"application/json":{schema:{$id:"https://schemas.meshery.io/team.yaml",$schema:"http://json-schema.org/draft-07/schema#",description:"A Team is a group of one or more users. Teams are often used as a grouping mechanism for assigning permissions, whether in the context of an organization, a workspace, or some other domain within Meshery. Learn more at https://docs.meshery.io/concepts/logical/teams",additionalProperties:false,type:"object",required:["id","name","createdAt","updatedAt"],properties:{id:{description:"Team ID","x-order":1,"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},name:{"x-oapi-codegen-extra-tags":{db:"name"},"x-order":2,type:"string",description:"Team name",minLength:1,maxLength:255},description:{"x-oapi-codegen-extra-tags":{db:"description"},"x-order":3,type:"string",description:"Team description",maxLength:5e3},owner:{"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":4,description:"User ID of the owner of the team",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},metadata:{"x-oapi-codegen-extra-tags":{db:"metadata"},"x-order":5,"x-go-type":"core.Map","x-go-type-skip-optional-pointer":true,type:"object",description:"Additional metadata for the team"},createdAt:{description:"Timestamp when the team was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},"x-order":6,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the team was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},"x-order":7,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the team was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-order":8,"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}},delete:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"deleteTeam",summary:"Delete a team",description:"Deletes a team by its ID",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true}],responses:{204:{description:"Team 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"}}}}}}},"/api/identity/teams/{teamId}/users":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"getTeamUsers",summary:"Get all users in a team",description:"Gets all users that belong to a team",parameters:[{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{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:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}],responses:{200:{description:"Team users mapping",content:{"application/json":{schema:{type:"object",description:"Paginated list of team-user mappings",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},teamsUsersMapping:{type:"array","x-go-type-skip-optional-pointer":true,items:{"x-go-type":"TeamsUsersMapping",type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The teams users mapping of the teamsusersmappingpage."}}}}}},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}/teams/{teamId}/users/{userId}":{post:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"addUserToTeam",summary:"Add a user to a team",description:"Assigns a user to a team",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{name:"userId",in:"path",description:"User ID",schema:{type:"string",description:"user's email or username","x-go-type-skip-optional-pointer":true},required:true}],responses:{201:{description:"User added to team",content:{"application/json":{schema:{type:"object",description:"Mapping between teams and users",properties:{id:{"x-go-name":"ID",type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"id",json:"id"},"x-go-type-name":"GeneralId","x-go-type-skip-optional-pointer":true},teamId:{description:"Team ID","x-oapi-codegen-extra-tags":{db:"team_id",json:"teamId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},userId:{description:"User ID","x-oapi-codegen-extra-tags":{db:"user_id",json:"userId"},type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"}},createdAt:{description:"Timestamp when the mapping was created.","x-oapi-codegen-extra-tags":{db:"created_at",json:"createdAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updatedAt:{description:"Timestamp when the mapping was last updated.","x-oapi-codegen-extra-tags":{db:"updated_at",json:"updatedAt"},type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deletedAt:{description:"Timestamp when the mapping was soft-deleted, if applicable.","x-oapi-codegen-extra-tags":{db:"deleted_at",json:"deletedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":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"}}}}}},delete:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"removeUserFromTeam",summary:"Remove a user from a team",description:"Unassigns a user from a team",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{name:"userId",in:"path",description:"User ID",schema:{type:"string",description:"user's email or username","x-go-type-skip-optional-pointer":true},required:true}],responses:{204:{description:"User removed from team"},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}/teams/{teamId}/users":{get:{"x-internal":["cloud","meshery"],tags:["teams"],operationId:"listUsersNotInTeam",summary:"Get users that are not in a team",parameters:[{name:"orgId",in:"path",description:"Organization ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"org_id",json:"org_id"},"x-go-type-name":"OrganizationId","x-go-type-skip-optional-pointer":true},required:true},{name:"teamId",in:"path",description:"Team ID",schema:{type:"string",format:"uuid","x-go-type":"uuid.UUID","x-go-type-import":{path:"github.com/gofrs/uuid"},"x-oapi-codegen-extra-tags":{db:"team_id",json:"team_id"},"x-go-type-name":"TeamId","x-go-type-skip-optional-pointer":true},required:true},{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:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}}],responses:{200:{description:"Users not currently in the team",content:{"application/json":{schema:{type:"object",description:"Paginated list of team members.",properties:{page:{type:"integer",description:"Current page number of the result set.",minimum:0},page_size:{type:"integer",description:"Number of items per page.",minimum:1},total_count:{type:"integer",description:"Total number of items available.",minimum:0},data:{type:"array",items:{type:"object",description:'A user who is a prospective or existing team member. Returned by the "list users in team" endpoint. `joinedAt` is the first canonicalised projection field \u2014 other user fields (`id`, `firstName`, `lastName`, `email`, `avatarUrl`) continue to flow through `additionalProperties` pending migration of the user schema to the canonical-casing contract. See meshery/schemas#832 for the per-field roadmap.\n',additionalProperties:true,properties:{joinedAt:{description:"Timestamp when the user joined the team. Server-computed from the earliest matching row in `users_teams_mapping` for this (team, user) pair. Server-managed; clients cannot set this.\n","x-oapi-codegen-extra-tags":{db:"joined_at",json:"joinedAt"},"x-go-type":"NullTime",type:"string",format:"date-time","x-go-type-skip-optional-pointer":true}}},description:"The data of the teammemberspage."}}}}}},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"}}}}}}}}},t=e;
2
2
  module.exports=t;