@meshery/schemas 0.8.133 → 0.8.134

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 (80) hide show
  1. package/README.md +119 -0
  2. package/dist/cloudApi.d.mts +5011 -2369
  3. package/dist/cloudApi.d.ts +5011 -2369
  4. package/dist/cloudApi.js +1 -1
  5. package/dist/cloudApi.mjs +1 -1
  6. package/dist/constructs/v1beta1/badge/Badge.d.mts +37 -18
  7. package/dist/constructs/v1beta1/badge/Badge.d.ts +37 -18
  8. package/dist/constructs/v1beta1/badge/BadgeSchema.js +1 -1
  9. package/dist/constructs/v1beta1/badge/BadgeSchema.mjs +1 -1
  10. package/dist/constructs/v1beta1/category/Category.d.mts +1 -0
  11. package/dist/constructs/v1beta1/category/Category.d.ts +1 -0
  12. package/dist/constructs/v1beta1/category/CategorySchema.js +1 -1
  13. package/dist/constructs/v1beta1/category/CategorySchema.mjs +1 -1
  14. package/dist/constructs/v1beta1/component/Component.d.mts +12 -4
  15. package/dist/constructs/v1beta1/component/Component.d.ts +12 -4
  16. package/dist/constructs/v1beta1/component/ComponentSchema.js +1 -1
  17. package/dist/constructs/v1beta1/component/ComponentSchema.mjs +1 -1
  18. package/dist/constructs/v1beta1/connection/Connection.d.mts +84 -42
  19. package/dist/constructs/v1beta1/connection/Connection.d.ts +84 -42
  20. package/dist/constructs/v1beta1/connection/ConnectionSchema.js +1 -1
  21. package/dist/constructs/v1beta1/connection/ConnectionSchema.mjs +1 -1
  22. package/dist/constructs/v1beta1/environment/Environment.d.mts +65 -22
  23. package/dist/constructs/v1beta1/environment/Environment.d.ts +65 -22
  24. package/dist/constructs/v1beta1/environment/EnvironmentSchema.js +1 -1
  25. package/dist/constructs/v1beta1/environment/EnvironmentSchema.mjs +1 -1
  26. package/dist/constructs/v1beta1/evaluation/Evaluation.d.mts +48 -16
  27. package/dist/constructs/v1beta1/evaluation/Evaluation.d.ts +48 -16
  28. package/dist/constructs/v1beta1/evaluation/EvaluationSchema.js +8 -8
  29. package/dist/constructs/v1beta1/evaluation/EvaluationSchema.mjs +8 -8
  30. package/dist/constructs/v1beta1/event/Event.d.mts +5 -3
  31. package/dist/constructs/v1beta1/event/Event.d.ts +5 -3
  32. package/dist/constructs/v1beta1/event/EventSchema.js +1 -1
  33. package/dist/constructs/v1beta1/event/EventSchema.mjs +1 -1
  34. package/dist/constructs/v1beta1/invitation/Invitation.d.mts +56 -54
  35. package/dist/constructs/v1beta1/invitation/Invitation.d.ts +56 -54
  36. package/dist/constructs/v1beta1/invitation/InvitationSchema.js +1 -1
  37. package/dist/constructs/v1beta1/invitation/InvitationSchema.mjs +1 -1
  38. package/dist/constructs/v1beta1/key/Key.d.mts +3 -3
  39. package/dist/constructs/v1beta1/key/Key.d.ts +3 -3
  40. package/dist/constructs/v1beta1/key/KeySchema.js +1 -1
  41. package/dist/constructs/v1beta1/key/KeySchema.mjs +1 -1
  42. package/dist/constructs/v1beta1/keychain/Keychain.d.mts +12 -36
  43. package/dist/constructs/v1beta1/keychain/Keychain.d.ts +12 -36
  44. package/dist/constructs/v1beta1/keychain/KeychainSchema.js +1 -1
  45. package/dist/constructs/v1beta1/keychain/KeychainSchema.mjs +1 -1
  46. package/dist/constructs/v1beta1/model/Model.d.mts +14 -6
  47. package/dist/constructs/v1beta1/model/Model.d.ts +14 -6
  48. package/dist/constructs/v1beta1/model/ModelSchema.js +2 -2
  49. package/dist/constructs/v1beta1/model/ModelSchema.mjs +2 -2
  50. package/dist/constructs/v1beta1/organization/Organization.d.mts +884 -9
  51. package/dist/constructs/v1beta1/organization/Organization.d.ts +884 -9
  52. package/dist/constructs/v1beta1/organization/OrganizationSchema.js +1 -1
  53. package/dist/constructs/v1beta1/organization/OrganizationSchema.mjs +1 -1
  54. package/dist/constructs/v1beta1/pattern/Pattern.d.mts +113 -39
  55. package/dist/constructs/v1beta1/pattern/Pattern.d.ts +113 -39
  56. package/dist/constructs/v1beta1/pattern/PatternSchema.js +18 -18
  57. package/dist/constructs/v1beta1/pattern/PatternSchema.mjs +18 -18
  58. package/dist/constructs/v1beta1/role/Role.d.mts +17 -17
  59. package/dist/constructs/v1beta1/role/Role.d.ts +17 -17
  60. package/dist/constructs/v1beta1/role/RoleSchema.js +1 -1
  61. package/dist/constructs/v1beta1/role/RoleSchema.mjs +1 -1
  62. package/dist/constructs/v1beta1/team/Team.d.mts +16 -16
  63. package/dist/constructs/v1beta1/team/Team.d.ts +16 -16
  64. package/dist/constructs/v1beta1/team/TeamSchema.js +1 -1
  65. package/dist/constructs/v1beta1/team/TeamSchema.mjs +1 -1
  66. package/dist/constructs/v1beta1/user/User.d.mts +1238 -169
  67. package/dist/constructs/v1beta1/user/User.d.ts +1238 -169
  68. package/dist/constructs/v1beta1/user/UserSchema.js +1 -1
  69. package/dist/constructs/v1beta1/user/UserSchema.mjs +1 -1
  70. package/dist/constructs/v1beta1/workspace/Workspace.d.mts +35 -12
  71. package/dist/constructs/v1beta1/workspace/Workspace.d.ts +35 -12
  72. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.js +4 -4
  73. package/dist/constructs/v1beta1/workspace/WorkspaceSchema.mjs +4 -4
  74. package/dist/index.js +25 -25
  75. package/dist/index.mjs +25 -25
  76. package/dist/mesheryApi.d.mts +4226 -1565
  77. package/dist/mesheryApi.d.ts +4226 -1565
  78. package/dist/mesheryApi.js +1 -1
  79. package/dist/mesheryApi.mjs +1 -1
  80. package/package.json +1 -1
@@ -11,7 +11,7 @@ interface paths {
11
11
  /** Removes a role assignment by ID. */
12
12
  delete: operations["deleteRole"];
13
13
  };
14
- "/api/identity/orgs/{orgID}/roles": {
14
+ "/api/identity/orgs/{orgId}/roles": {
15
15
  /** Returns all roles defined for the specified organization. */
16
16
  get: operations["getAllRoles"];
17
17
  /** Updates role assignments for multiple users in the organization. */
@@ -19,11 +19,11 @@ interface paths {
19
19
  /** Creates or updates a role for the specified organization. */
20
20
  post: operations["upsertRole"];
21
21
  };
22
- "/api/identity/orgs/{orgID}/roles/{roleID}/keychains": {
22
+ "/api/identity/orgs/{orgId}/roles/{roleId}/keychains": {
23
23
  /** Returns all keychains assigned to the specified role. */
24
24
  get: operations["getRoleKeychains"];
25
25
  };
26
- "/api/identity/orgs/{orgID}/roles/{roleID}/keychains/{keychainID}": {
26
+ "/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}": {
27
27
  /** Associates a keychain with the specified role. */
28
28
  post: operations["assignKeychainToRole"];
29
29
  /** Removes the association between a keychain and a role. */
@@ -192,11 +192,11 @@ interface components {
192
192
  /** @description Role ID */
193
193
  id: string;
194
194
  /** @description Organization ID */
195
- orgID: string;
195
+ orgId: string;
196
196
  /** @description Role ID */
197
- roleID: string;
197
+ roleId: string;
198
198
  /** @description Keychain ID */
199
- keychainID: string;
199
+ keychainId: string;
200
200
  /** @description Get responses by page */
201
201
  page: string;
202
202
  /** @description Get responses by pagesize */
@@ -294,7 +294,7 @@ interface operations {
294
294
  parameters: {
295
295
  path: {
296
296
  /** Organization ID */
297
- orgID: string;
297
+ orgId: string;
298
298
  };
299
299
  query: {
300
300
  /** Get responses by page */
@@ -369,7 +369,7 @@ interface operations {
369
369
  parameters: {
370
370
  path: {
371
371
  /** Organization ID */
372
- orgID: string;
372
+ orgId: string;
373
373
  };
374
374
  };
375
375
  responses: {
@@ -429,7 +429,7 @@ interface operations {
429
429
  parameters: {
430
430
  path: {
431
431
  /** Organization ID */
432
- orgID: string;
432
+ orgId: string;
433
433
  };
434
434
  };
435
435
  responses: {
@@ -513,9 +513,9 @@ interface operations {
513
513
  parameters: {
514
514
  path: {
515
515
  /** Organization ID */
516
- orgID: string;
516
+ orgId: string;
517
517
  /** Role ID */
518
- roleID: string;
518
+ roleId: string;
519
519
  };
520
520
  query: {
521
521
  /** Get responses by page */
@@ -590,11 +590,11 @@ interface operations {
590
590
  parameters: {
591
591
  path: {
592
592
  /** Organization ID */
593
- orgID: string;
593
+ orgId: string;
594
594
  /** Role ID */
595
- roleID: string;
595
+ roleId: string;
596
596
  /** Keychain ID */
597
- keychainID: string;
597
+ keychainId: string;
598
598
  };
599
599
  };
600
600
  responses: {
@@ -625,11 +625,11 @@ interface operations {
625
625
  parameters: {
626
626
  path: {
627
627
  /** Organization ID */
628
- orgID: string;
628
+ orgId: string;
629
629
  /** Role ID */
630
- roleID: string;
630
+ roleId: string;
631
631
  /** Keychain ID */
632
- keychainID: string;
632
+ keychainId: string;
633
633
  };
634
634
  };
635
635
  responses: {
@@ -11,7 +11,7 @@ interface paths {
11
11
  /** Removes a role assignment by ID. */
12
12
  delete: operations["deleteRole"];
13
13
  };
14
- "/api/identity/orgs/{orgID}/roles": {
14
+ "/api/identity/orgs/{orgId}/roles": {
15
15
  /** Returns all roles defined for the specified organization. */
16
16
  get: operations["getAllRoles"];
17
17
  /** Updates role assignments for multiple users in the organization. */
@@ -19,11 +19,11 @@ interface paths {
19
19
  /** Creates or updates a role for the specified organization. */
20
20
  post: operations["upsertRole"];
21
21
  };
22
- "/api/identity/orgs/{orgID}/roles/{roleID}/keychains": {
22
+ "/api/identity/orgs/{orgId}/roles/{roleId}/keychains": {
23
23
  /** Returns all keychains assigned to the specified role. */
24
24
  get: operations["getRoleKeychains"];
25
25
  };
26
- "/api/identity/orgs/{orgID}/roles/{roleID}/keychains/{keychainID}": {
26
+ "/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}": {
27
27
  /** Associates a keychain with the specified role. */
28
28
  post: operations["assignKeychainToRole"];
29
29
  /** Removes the association between a keychain and a role. */
@@ -192,11 +192,11 @@ interface components {
192
192
  /** @description Role ID */
193
193
  id: string;
194
194
  /** @description Organization ID */
195
- orgID: string;
195
+ orgId: string;
196
196
  /** @description Role ID */
197
- roleID: string;
197
+ roleId: string;
198
198
  /** @description Keychain ID */
199
- keychainID: string;
199
+ keychainId: string;
200
200
  /** @description Get responses by page */
201
201
  page: string;
202
202
  /** @description Get responses by pagesize */
@@ -294,7 +294,7 @@ interface operations {
294
294
  parameters: {
295
295
  path: {
296
296
  /** Organization ID */
297
- orgID: string;
297
+ orgId: string;
298
298
  };
299
299
  query: {
300
300
  /** Get responses by page */
@@ -369,7 +369,7 @@ interface operations {
369
369
  parameters: {
370
370
  path: {
371
371
  /** Organization ID */
372
- orgID: string;
372
+ orgId: string;
373
373
  };
374
374
  };
375
375
  responses: {
@@ -429,7 +429,7 @@ interface operations {
429
429
  parameters: {
430
430
  path: {
431
431
  /** Organization ID */
432
- orgID: string;
432
+ orgId: string;
433
433
  };
434
434
  };
435
435
  responses: {
@@ -513,9 +513,9 @@ interface operations {
513
513
  parameters: {
514
514
  path: {
515
515
  /** Organization ID */
516
- orgID: string;
516
+ orgId: string;
517
517
  /** Role ID */
518
- roleID: string;
518
+ roleId: string;
519
519
  };
520
520
  query: {
521
521
  /** Get responses by page */
@@ -590,11 +590,11 @@ interface operations {
590
590
  parameters: {
591
591
  path: {
592
592
  /** Organization ID */
593
- orgID: string;
593
+ orgId: string;
594
594
  /** Role ID */
595
- roleID: string;
595
+ roleId: string;
596
596
  /** Keychain ID */
597
- keychainID: string;
597
+ keychainId: string;
598
598
  };
599
599
  };
600
600
  responses: {
@@ -625,11 +625,11 @@ interface operations {
625
625
  parameters: {
626
626
  path: {
627
627
  /** Organization ID */
628
- orgID: string;
628
+ orgId: string;
629
629
  /** Role ID */
630
- roleID: string;
630
+ roleId: string;
631
631
  /** Keychain ID */
632
- keychainID: string;
632
+ keychainId: string;
633
633
  };
634
634
  };
635
635
  responses: {
@@ -1,2 +1,2 @@
1
- 'use strict';var e={openapi:"3.0.0",info:{title:"role",description:"Documentation for Meshery Cloud REST APIs for Roles",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:"v1beta1"},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:"roles",description:"Operations related to roles and role assignments"}],paths:{"/api/identity/roles":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Add role holder",operationId:"addRoleHolder",description:"Assigns a role to a user identified by email.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}}}}},responses:{200:{description:"Role holder added successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/roles/{id}":{delete:{"x-internal":["cloud"],tags:["roles"],summary:"Delete role",operationId:"deleteRole",description:"Removes a role assignment by ID.",parameters:[{name:"id",in:"path",description:"Role 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:"Role deleted successfully"},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}/roles":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get organization roles",operationId:"getAllRoles",description:"Returns all roles defined for the specified organization.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},{name:"teamID",in:"query",description:"Team ID used when selector is team.",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:"Roles fetched successfully",content:{"application/json":{schema:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},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:["roles"],summary:"Upsert organization role",operationId:"upsertRole",description:"Creates or updates a role for the specified organization.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Role upserted successfully",content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","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"}}}}}},put:{"x-internal":["cloud"],tags:["roles"],summary:"Bulk edit role holders",operationId:"bulkEditRoleHolder",description:"Updates role assignments for multiple users in the organization.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"array",items:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}}},responses:{200:{description:"Role holders updated successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgID}/roles/{roleID}/keychains":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get keychains for role",operationId:"getRoleKeychains",description:"Returns all keychains assigned to the specified role.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"roleID",in:"path",description:"Role 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}],responses:{200:{description:"Keychains fetched successfully",content:{"application/json":{schema:{type:"object",required:["page","page_size","total_count","keychains"],properties:{page:{"x-order":1,type:"integer","x-go-type-skip-optional-pointer":true},page_size:{"x-order":2,type:"integer","x-go-type-skip-optional-pointer":true},total_count:{"x-order":3,type:"integer","x-go-type-skip-optional-pointer":true},keychains:{type:"array",items:{type:"object",description:"Represents a collection of keys.",required:["id","name","owner","created_at","updated_at"],properties:{id:{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"},"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},"x-order":1},name:{type:"string",description:"Name of the keychain.","x-oapi-codegen-extra-tags":{db:"name"},"x-order":2},owner:{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"},"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":3},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-order":6,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgID}/roles/{roleID}/keychains/{keychainID}":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Assign keychain to role",operationId:"assignKeychainToRole",description:"Associates a keychain with the specified role.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"roleID",in:"path",description:"Role 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"}}},{name:"keychainID",in:"path",description:"Keychain 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:"Keychain assigned to role successfully"},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"}}}}}},delete:{"x-internal":["cloud"],tags:["roles"],summary:"Unassign keychain from role",operationId:"unassignKeychainFromRole",description:"Removes the association between a keychain and a role.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"roleID",in:"path",description:"Role 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"}}},{name:"keychainID",in:"path",description:"Keychain 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:"Keychain unassigned from role successfully"},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"}}}}}}}},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:{id:{name:"id",in:"path",description:"Role 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"}}},orgID:{name:"orgID",in:"path",description:"Organization 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"}}},roleID:{name:"roleID",in:"path",description:"Role 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"}}},keychainID:{name:"keychainID",in:"path",description:"Keychain 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 pagesize",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"}},all:{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},selector:{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},teamID:{name:"teamID",in:"query",description:"Team ID used when selector is team.",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"}}}},schemas:{Role:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RolesPage:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}},RolesKeychainsMapping:{type:"object",description:"Mapping between a role and a keychain.",required:["id","keychain_id","role_id","created_at","updated_at"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},keychain_id:{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"},"x-order":2,"x-oapi-codegen-extra-tags":{db:"keychain_id"}},role_id:{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"},"x-order":3,"x-oapi-codegen-extra-tags":{db:"role_id"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RoleHolderRequest:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}},UserRoleUpdateRequest:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},Preference:{type:"object",description:"User notification preferences.",required:["welcome_email","notify_role_change"],properties:{welcome_email:{type:"boolean",description:"Whether to send a welcome email to new users.","x-order":1},notify_role_change:{type:"boolean",description:"Whether to notify the user of role changes.","x-order":2}}}}}},t=e;
1
+ 'use strict';var e={openapi:"3.0.0",info:{title:"role",description:"Documentation for Meshery Cloud REST APIs for Roles",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:"v1beta1"},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:"roles",description:"Operations related to roles and role assignments"}],paths:{"/api/identity/roles":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Add role holder",operationId:"addRoleHolder",description:"Assigns a role to a user identified by email.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}}}}},responses:{200:{description:"Role holder added successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/roles/{id}":{delete:{"x-internal":["cloud"],tags:["roles"],summary:"Delete role",operationId:"deleteRole",description:"Removes a role assignment by ID.",parameters:[{name:"id",in:"path",description:"Role 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:"Role deleted successfully"},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}/roles":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get organization roles",operationId:"getAllRoles",description:"Returns all roles defined for the specified organization.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},{name:"teamID",in:"query",description:"Team ID used when selector is team.",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:"Roles fetched successfully",content:{"application/json":{schema:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},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:["roles"],summary:"Upsert organization role",operationId:"upsertRole",description:"Creates or updates a role for the specified organization.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Role upserted successfully",content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","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"}}}}}},put:{"x-internal":["cloud"],tags:["roles"],summary:"Bulk edit role holders",operationId:"bulkEditRoleHolder",description:"Updates role assignments for multiple users in the organization.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"array",items:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}}},responses:{200:{description:"Role holders updated successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgId}/roles/{roleId}/keychains":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get keychains for role",operationId:"getRoleKeychains",description:"Returns all keychains assigned to the specified role.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"roleId",in:"path",description:"Role 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}],responses:{200:{description:"Keychains fetched successfully",content:{"application/json":{schema:{type:"object",required:["page","page_size","total_count","keychains"],properties:{page:{"x-order":1,type:"integer","x-go-type-skip-optional-pointer":true},page_size:{"x-order":2,type:"integer","x-go-type-skip-optional-pointer":true},total_count:{"x-order":3,type:"integer","x-go-type-skip-optional-pointer":true},keychains:{type:"array",items:{type:"object",additionalProperties:false,description:"Represents a collection of keys.",required:["id","name","owner","created_at","updated_at"],properties:{id:{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"},"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},"x-order":1},name:{type:"string",description:"Name of the keychain.","x-oapi-codegen-extra-tags":{db:"name"},"x-order":2},owner:{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"},"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":3},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-order":6,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Assign keychain to role",operationId:"assignKeychainToRole",description:"Associates a keychain with the specified role.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"roleId",in:"path",description:"Role 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"}}},{name:"keychainId",in:"path",description:"Keychain 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:"Keychain assigned to role successfully"},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"}}}}}},delete:{"x-internal":["cloud"],tags:["roles"],summary:"Unassign keychain from role",operationId:"unassignKeychainFromRole",description:"Removes the association between a keychain and a role.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"roleId",in:"path",description:"Role 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"}}},{name:"keychainId",in:"path",description:"Keychain 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:"Keychain unassigned from role successfully"},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"}}}}}}}},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:{id:{name:"id",in:"path",description:"Role 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"}}},orgId:{name:"orgId",in:"path",description:"Organization 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"}}},roleId:{name:"roleId",in:"path",description:"Role 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"}}},keychainId:{name:"keychainId",in:"path",description:"Keychain 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 pagesize",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"}},all:{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},selector:{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},teamID:{name:"teamID",in:"query",description:"Team ID used when selector is team.",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"}}}},schemas:{Role:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RolesPage:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}},RolesKeychainsMapping:{type:"object",description:"Mapping between a role and a keychain.",required:["id","keychain_id","role_id","created_at","updated_at"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},keychain_id:{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"},"x-order":2,"x-oapi-codegen-extra-tags":{db:"keychain_id"}},role_id:{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"},"x-order":3,"x-oapi-codegen-extra-tags":{db:"role_id"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RoleHolderRequest:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}},UserRoleUpdateRequest:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},Preference:{type:"object",description:"User notification preferences.",required:["welcome_email","notify_role_change"],properties:{welcome_email:{type:"boolean",description:"Whether to send a welcome email to new users.","x-order":1},notify_role_change:{type:"boolean",description:"Whether to notify the user of role changes.","x-order":2}}}}}},t=e;
2
2
  module.exports=t;
@@ -1,2 +1,2 @@
1
- var e={openapi:"3.0.0",info:{title:"role",description:"Documentation for Meshery Cloud REST APIs for Roles",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:"v1beta1"},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:"roles",description:"Operations related to roles and role assignments"}],paths:{"/api/identity/roles":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Add role holder",operationId:"addRoleHolder",description:"Assigns a role to a user identified by email.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}}}}},responses:{200:{description:"Role holder added successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/roles/{id}":{delete:{"x-internal":["cloud"],tags:["roles"],summary:"Delete role",operationId:"deleteRole",description:"Removes a role assignment by ID.",parameters:[{name:"id",in:"path",description:"Role 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:"Role deleted successfully"},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}/roles":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get organization roles",operationId:"getAllRoles",description:"Returns all roles defined for the specified organization.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},{name:"teamID",in:"query",description:"Team ID used when selector is team.",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:"Roles fetched successfully",content:{"application/json":{schema:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},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:["roles"],summary:"Upsert organization role",operationId:"upsertRole",description:"Creates or updates a role for the specified organization.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Role upserted successfully",content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","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"}}}}}},put:{"x-internal":["cloud"],tags:["roles"],summary:"Bulk edit role holders",operationId:"bulkEditRoleHolder",description:"Updates role assignments for multiple users in the organization.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"array",items:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}}},responses:{200:{description:"Role holders updated successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgID}/roles/{roleID}/keychains":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get keychains for role",operationId:"getRoleKeychains",description:"Returns all keychains assigned to the specified role.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"roleID",in:"path",description:"Role 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}],responses:{200:{description:"Keychains fetched successfully",content:{"application/json":{schema:{type:"object",required:["page","page_size","total_count","keychains"],properties:{page:{"x-order":1,type:"integer","x-go-type-skip-optional-pointer":true},page_size:{"x-order":2,type:"integer","x-go-type-skip-optional-pointer":true},total_count:{"x-order":3,type:"integer","x-go-type-skip-optional-pointer":true},keychains:{type:"array",items:{type:"object",description:"Represents a collection of keys.",required:["id","name","owner","created_at","updated_at"],properties:{id:{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"},"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},"x-order":1},name:{type:"string",description:"Name of the keychain.","x-oapi-codegen-extra-tags":{db:"name"},"x-order":2},owner:{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"},"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":3},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-order":6,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgID}/roles/{roleID}/keychains/{keychainID}":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Assign keychain to role",operationId:"assignKeychainToRole",description:"Associates a keychain with the specified role.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"roleID",in:"path",description:"Role 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"}}},{name:"keychainID",in:"path",description:"Keychain 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:"Keychain assigned to role successfully"},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"}}}}}},delete:{"x-internal":["cloud"],tags:["roles"],summary:"Unassign keychain from role",operationId:"unassignKeychainFromRole",description:"Removes the association between a keychain and a role.",parameters:[{name:"orgID",in:"path",description:"Organization 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"}}},{name:"roleID",in:"path",description:"Role 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"}}},{name:"keychainID",in:"path",description:"Keychain 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:"Keychain unassigned from role successfully"},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"}}}}}}}},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:{id:{name:"id",in:"path",description:"Role 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"}}},orgID:{name:"orgID",in:"path",description:"Organization 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"}}},roleID:{name:"roleID",in:"path",description:"Role 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"}}},keychainID:{name:"keychainID",in:"path",description:"Keychain 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 pagesize",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"}},all:{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},selector:{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},teamID:{name:"teamID",in:"query",description:"Team ID used when selector is team.",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"}}}},schemas:{Role:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RolesPage:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}},RolesKeychainsMapping:{type:"object",description:"Mapping between a role and a keychain.",required:["id","keychain_id","role_id","created_at","updated_at"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},keychain_id:{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"},"x-order":2,"x-oapi-codegen-extra-tags":{db:"keychain_id"}},role_id:{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"},"x-order":3,"x-oapi-codegen-extra-tags":{db:"role_id"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RoleHolderRequest:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}},UserRoleUpdateRequest:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},Preference:{type:"object",description:"User notification preferences.",required:["welcome_email","notify_role_change"],properties:{welcome_email:{type:"boolean",description:"Whether to send a welcome email to new users.","x-order":1},notify_role_change:{type:"boolean",description:"Whether to notify the user of role changes.","x-order":2}}}}}},t=e;
1
+ var e={openapi:"3.0.0",info:{title:"role",description:"Documentation for Meshery Cloud REST APIs for Roles",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:"v1beta1"},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:"roles",description:"Operations related to roles and role assignments"}],paths:{"/api/identity/roles":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Add role holder",operationId:"addRoleHolder",description:"Assigns a role to a user identified by email.",requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}}}}},responses:{200:{description:"Role holder added successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/roles/{id}":{delete:{"x-internal":["cloud"],tags:["roles"],summary:"Delete role",operationId:"deleteRole",description:"Removes a role assignment by ID.",parameters:[{name:"id",in:"path",description:"Role 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:"Role deleted successfully"},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}/roles":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get organization roles",operationId:"getAllRoles",description:"Returns all roles defined for the specified organization.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}},{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},{name:"teamID",in:"query",description:"Team ID used when selector is team.",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:"Roles fetched successfully",content:{"application/json":{schema:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},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:["roles"],summary:"Upsert organization role",operationId:"upsertRole",description:"Creates or updates a role for the specified organization.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}},responses:{200:{description:"Role upserted successfully",content:{"application/json":{schema:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","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"}}}}}},put:{"x-internal":["cloud"],tags:["roles"],summary:"Bulk edit role holders",operationId:"bulkEditRoleHolder",description:"Updates role assignments for multiple users in the organization.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}}],requestBody:{required:true,content:{"application/json":{schema:{type:"array",items:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}}}}}},responses:{200:{description:"Role holders updated successfully"},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgId}/roles/{roleId}/keychains":{get:{"x-internal":["cloud"],tags:["roles"],summary:"Get keychains for role",operationId:"getRoleKeychains",description:"Returns all keychains assigned to the specified role.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"roleId",in:"path",description:"Role 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"}}},{name:"page",in:"query",description:"Get responses by page",schema:{type:"string"}},{name:"pagesize",in:"query",description:"Get responses by pagesize",schema:{type:"string"}},{name:"search",in:"query",description:"Get responses that match search param value",schema:{type:"string"}},{name:"order",in:"query",description:"Get ordered responses",schema:{type:"string"}}],responses:{200:{description:"Keychains fetched successfully",content:{"application/json":{schema:{type:"object",required:["page","page_size","total_count","keychains"],properties:{page:{"x-order":1,type:"integer","x-go-type-skip-optional-pointer":true},page_size:{"x-order":2,type:"integer","x-go-type-skip-optional-pointer":true},total_count:{"x-order":3,type:"integer","x-go-type-skip-optional-pointer":true},keychains:{type:"array",items:{type:"object",additionalProperties:false,description:"Represents a collection of keys.",required:["id","name","owner","created_at","updated_at"],properties:{id:{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"},"x-go-name":"ID","x-oapi-codegen-extra-tags":{db:"id"},"x-order":1},name:{type:"string",description:"Name of the keychain.","x-oapi-codegen-extra-tags":{db:"name"},"x-order":2},owner:{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"},"x-oapi-codegen-extra-tags":{db:"owner"},"x-order":3},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-order":6,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}}}}},400:{description:"Invalid request body or request param",content:{"text/plain":{schema:{type:"string"}}}},401:{description:"Expired JWT token used or insufficient privilege",content:{"text/plain":{schema:{type:"string"}}}},500:{description:"Internal server error",content:{"text/plain":{schema:{type:"string"}}}}}}},"/api/identity/orgs/{orgId}/roles/{roleId}/keychains/{keychainId}":{post:{"x-internal":["cloud"],tags:["roles"],summary:"Assign keychain to role",operationId:"assignKeychainToRole",description:"Associates a keychain with the specified role.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"roleId",in:"path",description:"Role 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"}}},{name:"keychainId",in:"path",description:"Keychain 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:"Keychain assigned to role successfully"},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"}}}}}},delete:{"x-internal":["cloud"],tags:["roles"],summary:"Unassign keychain from role",operationId:"unassignKeychainFromRole",description:"Removes the association between a keychain and a role.",parameters:[{name:"orgId",in:"path",description:"Organization 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"}}},{name:"roleId",in:"path",description:"Role 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"}}},{name:"keychainId",in:"path",description:"Keychain 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:"Keychain unassigned from role successfully"},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"}}}}}}}},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:{id:{name:"id",in:"path",description:"Role 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"}}},orgId:{name:"orgId",in:"path",description:"Organization 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"}}},roleId:{name:"roleId",in:"path",description:"Role 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"}}},keychainId:{name:"keychainId",in:"path",description:"Keychain 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 pagesize",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"}},all:{name:"all",in:"query",description:"Get all possible entries",schema:{type:"boolean"}},selector:{name:"selector",in:"query",description:"Role grouping selector such as provider, organization, or team.",schema:{type:"string"}},teamID:{name:"teamID",in:"query",description:"Team ID used when selector is team.",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"}}}},schemas:{Role:{type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RolesPage:{type:"object",description:"A paginated list of roles.",required:["page","page_size","total_count","roles"],properties:{page:{type:"integer",description:"Current page number (zero-based).","x-order":1},page_size:{type:"integer",description:"Number of roles per page.","x-order":2},total_count:{type:"integer",description:"Total number of roles across all pages.","x-order":3},roles:{type:"array",items:{"x-go-type":"Role",type:"object",description:"Role definition for Layer5 Cloud (Meshery).",required:["role_name","description"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},role_name:{type:"string",description:"Unique name of the role.","x-order":2,"x-oapi-codegen-extra-tags":{db:"role_name"}},description:{type:"string",description:"Human-readable description of the role.","x-order":3,"x-oapi-codegen-extra-tags":{db:"description"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{description:"Timestamp when the role was soft-deleted.","x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},"x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},"x-order":4}}},RolesKeychainsMapping:{type:"object",description:"Mapping between a role and a keychain.",required:["id","keychain_id","role_id","created_at","updated_at"],properties:{id:{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"},"x-order":1,"x-oapi-codegen-extra-tags":{db:"id"}},keychain_id:{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"},"x-order":2,"x-oapi-codegen-extra-tags":{db:"keychain_id"}},role_id:{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"},"x-order":3,"x-oapi-codegen-extra-tags":{db:"role_id"}},created_at:{"x-order":4,description:"Timestamp when the resource was created.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"CreatedAt","x-oapi-codegen-extra-tags":{db:"created_at",yaml:"created_at"},"x-go-type-skip-optional-pointer":true},updated_at:{"x-order":5,description:"Timestamp when the resource was updated.","x-go-type":"time.Time",type:"string",format:"date-time","x-go-name":"UpdatedAt","x-oapi-codegen-extra-tags":{db:"updated_at",yaml:"updated_at"},"x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":6,"x-oapi-codegen-extra-tags":{db:"deleted_at"},description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},RoleHolderRequest:{type:"object",description:"Request body for assigning a role to a user.",required:["email","role_names"],properties:{email:{type:"string",format:"email",description:"Email of the user to assign roles to.","x-order":1},role_names:{type:"array",items:{type:"string"},description:"List of role names to assign.","x-order":2}}},UserRoleUpdateRequest:{type:"object",description:"Request to update role assignments for a user.",properties:{id:{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"},"x-order":1},user_id:{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"},"x-order":2},username:{type:"string","x-order":3},email:{type:"string",format:"email","x-order":4},first_name:{type:"string","x-order":5},last_name:{type:"string","x-order":6},status:{type:"string","x-order":7},role_names:{type:"array",items:{type:"string"},"x-order":8},created_at:{"x-order":9,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},updated_at:{"x-order":10,type:"string",format:"date-time","x-go-type-skip-optional-pointer":true},deleted_at:{"x-order":11,description:"SQL null Timestamp to handle null values of time.","x-go-type":"sql.NullTime",type:"string","x-go-type-skip-optional-pointer":true}}},Preference:{type:"object",description:"User notification preferences.",required:["welcome_email","notify_role_change"],properties:{welcome_email:{type:"boolean",description:"Whether to send a welcome email to new users.","x-order":1},notify_role_change:{type:"boolean",description:"Whether to notify the user of role changes.","x-order":2}}}}}},t=e;
2
2
  export{t as default};