@iblai/iblai-api 2025.11.7-google-a2a-core → 2025.11.10-google-a2a-2-core

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.
@@ -722,15 +722,23 @@ export declare class CoreService {
722
722
  }): CancelablePromise<Record<string, any>>;
723
723
  /**
724
724
  * List RBAC groups
725
- * Retrieve a list of RBAC groups. Can be filtered by platform_key.
725
+ * Retrieve a list of RBAC groups. Can be filtered by platform_key, owner, name, username, or email. Use include_users to control response payload.
726
726
  * @returns PaginatedRbacGroupList
727
727
  * @throws ApiError
728
728
  */
729
- static coreRbacGroupsList({ includeUsers, owner, page, pageSize, platformKey, }: {
729
+ static coreRbacGroupsList({ email, includeUsers, name, owner, page, pageSize, platformKey, username, }: {
730
730
  /**
731
- * Include user information in response (default: false for performance)
731
+ * Filter groups by email (exact match, case-insensitive)
732
+ */
733
+ email?: string;
734
+ /**
735
+ * Include user information in response (default: true)
732
736
  */
733
737
  includeUsers?: boolean;
738
+ /**
739
+ * Filter groups by name (case-insensitive partial match)
740
+ */
741
+ name?: string;
734
742
  /**
735
743
  * Filter groups by owner username
736
744
  */
@@ -747,6 +755,10 @@ export declare class CoreService {
747
755
  * Filter groups by platform key
748
756
  */
749
757
  platformKey?: string;
758
+ /**
759
+ * Filter groups by username (exact match, case-insensitive)
760
+ */
761
+ username?: string;
750
762
  }): CancelablePromise<PaginatedRbacGroupList>;
751
763
  /**
752
764
  * Create RBAC group
@@ -771,7 +783,7 @@ export declare class CoreService {
771
783
  }): CancelablePromise<RbacGroup>;
772
784
  /**
773
785
  * Update RBAC group
774
- * Update an existing RBAC group. Platform validation applies for user assignments.
786
+ * Update an existing RBAC group. Platform validation applies for user assignments. Cannot update internal system groups.
775
787
  * @returns RbacGroup
776
788
  * @throws ApiError
777
789
  */
@@ -784,7 +796,7 @@ export declare class CoreService {
784
796
  }): CancelablePromise<RbacGroup>;
785
797
  /**
786
798
  * Partially update RBAC group
787
- * Partially update an existing RBAC group. Platform validation applies for user assignments.
799
+ * Partially update an existing RBAC group. Platform validation applies for user assignments. Cannot update internal system groups.
788
800
  * @returns RbacGroup
789
801
  * @throws ApiError
790
802
  */
@@ -797,7 +809,7 @@ export declare class CoreService {
797
809
  }): CancelablePromise<RbacGroup>;
798
810
  /**
799
811
  * Delete RBAC group
800
- * Delete an RBAC group and all associated group role assignments.
812
+ * Delete an RBAC group and all associated group role assignments. Cannot delete internal system groups.
801
813
  * @returns void
802
814
  * @throws ApiError
803
815
  */
@@ -847,11 +859,31 @@ export declare class CoreService {
847
859
  }): CancelablePromise<any>;
848
860
  /**
849
861
  * List RBAC policies
850
- * Retrieve a list of RBAC policies. Can be filtered by platform_key or role_id.
862
+ * Retrieve a list of RBAC policies. Can be filtered by platform_key, role_id, name, username, email, or group. Use include_users and include_groups to control response payload.
851
863
  * @returns PaginatedRbacPolicyList
852
864
  * @throws ApiError
853
865
  */
854
- static coreRbacPoliciesList({ page, pageSize, platformKey, roleId, }: {
866
+ static coreRbacPoliciesList({ email, group, includeGroups, includeUsers, name, page, pageSize, platformKey, roleId, username, }: {
867
+ /**
868
+ * Filter policies by email (exact match, case-insensitive) - includes users in policy or in policy's groups
869
+ */
870
+ email?: string;
871
+ /**
872
+ * Filter policies by group name (exact match, case-insensitive)
873
+ */
874
+ group?: string;
875
+ /**
876
+ * Include group information in response (default: true)
877
+ */
878
+ includeGroups?: boolean;
879
+ /**
880
+ * Include user information in response (default: true)
881
+ */
882
+ includeUsers?: boolean;
883
+ /**
884
+ * Filter policies by name (case-insensitive partial match)
885
+ */
886
+ name?: string;
855
887
  /**
856
888
  * A page number within the paginated result set.
857
889
  */
@@ -868,6 +900,10 @@ export declare class CoreService {
868
900
  * Filter policies by role ID
869
901
  */
870
902
  roleId?: number;
903
+ /**
904
+ * Filter policies by username (exact match, case-insensitive) - includes users in policy or in policy's groups
905
+ */
906
+ username?: string;
871
907
  }): CancelablePromise<PaginatedRbacPolicyList>;
872
908
  /**
873
909
  * Create RBAC policy
@@ -934,11 +970,15 @@ export declare class CoreService {
934
970
  }): CancelablePromise<void>;
935
971
  /**
936
972
  * List RBAC roles
937
- * Retrieve a list of RBAC roles. Can be filtered by platform_key.
973
+ * Retrieve a list of RBAC roles. Can be filtered by platform_key and name.
938
974
  * @returns PaginatedRbacRoleList
939
975
  * @throws ApiError
940
976
  */
941
- static coreRbacRolesList({ page, pageSize, platformKey, }: {
977
+ static coreRbacRolesList({ name, page, pageSize, platformKey, }: {
978
+ /**
979
+ * Filter roles by name (case-insensitive partial match)
980
+ */
981
+ name?: string;
942
982
  /**
943
983
  * A page number within the paginated result set.
944
984
  */
@@ -1001,7 +1041,7 @@ export declare class CoreService {
1001
1041
  }): CancelablePromise<RbacRole>;
1002
1042
  /**
1003
1043
  * Delete RBAC role
1004
- * Delete an RBAC role.
1044
+ * Delete an RBAC role. WARNING: Deleting a role will remove all policies referencing it.
1005
1045
  * @returns void
1006
1046
  * @throws ApiError
1007
1047
  */
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@iblai/iblai-api",
3
- "version": "2025.11.7-google-a2a-core",
3
+ "version": "2025.11.10-google-a2a-2-core",
4
4
  "main": "dist/index.cjs.js",
5
5
  "module": "dist/index.esm.js",
6
6
  "type": "module",
package/sdk_schema.yml CHANGED
@@ -1,7 +1,7 @@
1
1
  openapi: 3.0.3
2
2
  info:
3
3
  title: ibl-data-manager
4
- version: 4.82.1-core
4
+ version: 4.88.3-core
5
5
  description: API for iblai
6
6
  paths:
7
7
  /api/analytics/content/:
@@ -16568,15 +16568,28 @@ paths:
16568
16568
  /api/core/rbac/groups/:
16569
16569
  get:
16570
16570
  operationId: core_rbac_groups_list
16571
- description: Retrieve a list of RBAC groups. Can be filtered by platform_key.
16571
+ description: Retrieve a list of RBAC groups. Can be filtered by platform_key,
16572
+ owner, name, username, or email. Use include_users to control response payload.
16572
16573
  summary: List RBAC groups
16573
16574
  parameters:
16575
+ - in: query
16576
+ name: email
16577
+ schema:
16578
+ type: string
16579
+ minLength: 1
16580
+ description: Filter groups by email (exact match, case-insensitive)
16574
16581
  - in: query
16575
16582
  name: include_users
16576
16583
  schema:
16577
16584
  type: boolean
16578
16585
  default: true
16579
- description: 'Include user information in response (default: false for performance)'
16586
+ description: 'Include user information in response (default: true)'
16587
+ - in: query
16588
+ name: name
16589
+ schema:
16590
+ type: string
16591
+ minLength: 1
16592
+ description: Filter groups by name (case-insensitive partial match)
16580
16593
  - in: query
16581
16594
  name: owner
16582
16595
  schema:
@@ -16601,6 +16614,12 @@ paths:
16601
16614
  type: string
16602
16615
  minLength: 1
16603
16616
  description: Filter groups by platform key
16617
+ - in: query
16618
+ name: username
16619
+ schema:
16620
+ type: string
16621
+ minLength: 1
16622
+ description: Filter groups by username (exact match, case-insensitive)
16604
16623
  tags:
16605
16624
  - core
16606
16625
  security:
@@ -16612,6 +16631,8 @@ paths:
16612
16631
  schema:
16613
16632
  $ref: '#/components/schemas/PaginatedRbacGroupList'
16614
16633
  description: ''
16634
+ '403':
16635
+ description: Permission denied - insufficient RBAC permissions
16615
16636
  post:
16616
16637
  operationId: core_rbac_groups_create
16617
16638
  description: Create a new RBAC group for a platform. Users can be assigned during
@@ -16651,6 +16672,8 @@ paths:
16651
16672
  Invalid input data. Common errors include:
16652
16673
  - Users do not belong to the specified platform
16653
16674
  - Invalid user IDs provided
16675
+ '403':
16676
+ description: Permission denied - insufficient RBAC permissions
16654
16677
  /api/core/rbac/groups/{id}/:
16655
16678
  get:
16656
16679
  operationId: core_rbac_groups_retrieve
@@ -16674,12 +16697,14 @@ paths:
16674
16697
  schema:
16675
16698
  $ref: '#/components/schemas/RbacGroup'
16676
16699
  description: ''
16700
+ '403':
16701
+ description: Permission denied - insufficient RBAC permissions
16677
16702
  '404':
16678
16703
  description: Group not found
16679
16704
  put:
16680
16705
  operationId: core_rbac_groups_update
16681
16706
  description: Update an existing RBAC group. Platform validation applies for
16682
- user assignments.
16707
+ user assignments. Cannot update internal system groups.
16683
16708
  summary: Update RBAC group
16684
16709
  parameters:
16685
16710
  - in: path
@@ -16722,12 +16747,15 @@ paths:
16722
16747
  Invalid input data. Common errors include:
16723
16748
  - Users do not belong to the specified platform
16724
16749
  - Invalid user IDs provided
16750
+ '403':
16751
+ description: Permission denied - insufficient RBAC permissions or attempting
16752
+ to edit internal system group
16725
16753
  '404':
16726
16754
  description: Group not found
16727
16755
  patch:
16728
16756
  operationId: core_rbac_groups_partial_update
16729
16757
  description: Partially update an existing RBAC group. Platform validation applies
16730
- for user assignments.
16758
+ for user assignments. Cannot update internal system groups.
16731
16759
  summary: Partially update RBAC group
16732
16760
  parameters:
16733
16761
  - in: path
@@ -16769,11 +16797,15 @@ paths:
16769
16797
  Invalid input data. Common errors include:
16770
16798
  - Users do not belong to the specified platform
16771
16799
  - Invalid user IDs provided
16800
+ '403':
16801
+ description: Permission denied - insufficient RBAC permissions or attempting
16802
+ to edit internal system group
16772
16803
  '404':
16773
16804
  description: Group not found
16774
16805
  delete:
16775
16806
  operationId: core_rbac_groups_destroy
16776
16807
  description: Delete an RBAC group and all associated group role assignments.
16808
+ Cannot delete internal system groups.
16777
16809
  summary: Delete RBAC group
16778
16810
  parameters:
16779
16811
  - in: path
@@ -16796,6 +16828,9 @@ paths:
16796
16828
  responses:
16797
16829
  '204':
16798
16830
  description: Group deleted successfully
16831
+ '403':
16832
+ description: Permission denied - insufficient RBAC permissions or attempting
16833
+ to delete internal system group
16799
16834
  '404':
16800
16835
  description: Group not found
16801
16836
  /api/core/rbac/mentor-access/:
@@ -16925,10 +16960,42 @@ paths:
16925
16960
  /api/core/rbac/policies/:
16926
16961
  get:
16927
16962
  operationId: core_rbac_policies_list
16928
- description: Retrieve a list of RBAC policies. Can be filtered by platform_key
16929
- or role_id.
16963
+ description: Retrieve a list of RBAC policies. Can be filtered by platform_key,
16964
+ role_id, name, username, email, or group. Use include_users and include_groups
16965
+ to control response payload.
16930
16966
  summary: List RBAC policies
16931
16967
  parameters:
16968
+ - in: query
16969
+ name: email
16970
+ schema:
16971
+ type: string
16972
+ minLength: 1
16973
+ description: Filter policies by email (exact match, case-insensitive) - includes
16974
+ users in policy or in policy's groups
16975
+ - in: query
16976
+ name: group
16977
+ schema:
16978
+ type: string
16979
+ minLength: 1
16980
+ description: Filter policies by group name (exact match, case-insensitive)
16981
+ - in: query
16982
+ name: include_groups
16983
+ schema:
16984
+ type: boolean
16985
+ default: true
16986
+ description: 'Include group information in response (default: true)'
16987
+ - in: query
16988
+ name: include_users
16989
+ schema:
16990
+ type: boolean
16991
+ default: true
16992
+ description: 'Include user information in response (default: true)'
16993
+ - in: query
16994
+ name: name
16995
+ schema:
16996
+ type: string
16997
+ minLength: 1
16998
+ description: Filter policies by name (case-insensitive partial match)
16932
16999
  - name: page
16933
17000
  required: false
16934
17001
  in: query
@@ -16952,6 +17019,13 @@ paths:
16952
17019
  schema:
16953
17020
  type: integer
16954
17021
  description: Filter policies by role ID
17022
+ - in: query
17023
+ name: username
17024
+ schema:
17025
+ type: string
17026
+ minLength: 1
17027
+ description: Filter policies by username (exact match, case-insensitive) -
17028
+ includes users in policy or in policy's groups
16955
17029
  tags:
16956
17030
  - core
16957
17031
  security:
@@ -16963,6 +17037,8 @@ paths:
16963
17037
  schema:
16964
17038
  $ref: '#/components/schemas/PaginatedRbacPolicyList'
16965
17039
  description: ''
17040
+ '403':
17041
+ description: Permission denied - insufficient RBAC permissions
16966
17042
  post:
16967
17043
  operationId: core_rbac_policies_create
16968
17044
  description: Create a new RBAC policy that defines resource access for a role
@@ -16999,6 +17075,8 @@ paths:
16999
17075
  '400':
17000
17076
  description: 'Invalid input data. Common errors include: invalid user/group
17001
17077
  IDs, users/groups not belonging to the platform, or invalid resource paths.'
17078
+ '403':
17079
+ description: Permission denied - insufficient RBAC permissions
17002
17080
  /api/core/rbac/policies/{id}/:
17003
17081
  get:
17004
17082
  operationId: core_rbac_policies_retrieve
@@ -17023,6 +17101,8 @@ paths:
17023
17101
  schema:
17024
17102
  $ref: '#/components/schemas/RbacPolicy'
17025
17103
  description: ''
17104
+ '403':
17105
+ description: Permission denied - insufficient RBAC permissions
17026
17106
  '404':
17027
17107
  description: Policy not found
17028
17108
  put:
@@ -17068,6 +17148,8 @@ paths:
17068
17148
  '400':
17069
17149
  description: 'Invalid input data. Common errors include: invalid user/group
17070
17150
  IDs, users/groups not belonging to the platform, or invalid resource paths.'
17151
+ '403':
17152
+ description: Permission denied - insufficient RBAC permissions
17071
17153
  '404':
17072
17154
  description: Policy not found
17073
17155
  patch:
@@ -17113,6 +17195,8 @@ paths:
17113
17195
  '400':
17114
17196
  description: 'Invalid input data. Common errors include: invalid user/group
17115
17197
  IDs, users/groups not belonging to the platform, or invalid resource paths.'
17198
+ '403':
17199
+ description: Permission denied - insufficient RBAC permissions
17116
17200
  '404':
17117
17201
  description: Policy not found
17118
17202
  delete:
@@ -17140,14 +17224,23 @@ paths:
17140
17224
  responses:
17141
17225
  '204':
17142
17226
  description: Policy deleted successfully
17227
+ '403':
17228
+ description: Permission denied - insufficient RBAC permissions
17143
17229
  '404':
17144
17230
  description: Policy not found
17145
17231
  /api/core/rbac/roles/:
17146
17232
  get:
17147
17233
  operationId: core_rbac_roles_list
17148
- description: Retrieve a list of RBAC roles. Can be filtered by platform_key.
17234
+ description: Retrieve a list of RBAC roles. Can be filtered by platform_key
17235
+ and name.
17149
17236
  summary: List RBAC roles
17150
17237
  parameters:
17238
+ - in: query
17239
+ name: name
17240
+ schema:
17241
+ type: string
17242
+ minLength: 1
17243
+ description: Filter roles by name (case-insensitive partial match)
17151
17244
  - name: page
17152
17245
  required: false
17153
17246
  in: query
@@ -17177,6 +17270,8 @@ paths:
17177
17270
  schema:
17178
17271
  $ref: '#/components/schemas/PaginatedRbacRoleList'
17179
17272
  description: ''
17273
+ '403':
17274
+ description: Permission denied - insufficient RBAC permissions
17180
17275
  post:
17181
17276
  operationId: core_rbac_roles_create
17182
17277
  description: Create a new RBAC role for a platform.
@@ -17212,6 +17307,8 @@ paths:
17212
17307
  description: ''
17213
17308
  '400':
17214
17309
  description: Invalid input data
17310
+ '403':
17311
+ description: Permission denied - insufficient RBAC permissions
17215
17312
  /api/core/rbac/roles/{id}/:
17216
17313
  get:
17217
17314
  operationId: core_rbac_roles_retrieve
@@ -17235,6 +17332,8 @@ paths:
17235
17332
  schema:
17236
17333
  $ref: '#/components/schemas/RbacRole'
17237
17334
  description: ''
17335
+ '403':
17336
+ description: Permission denied - insufficient RBAC permissions
17238
17337
  '404':
17239
17338
  description: Role not found
17240
17339
  put:
@@ -17279,6 +17378,8 @@ paths:
17279
17378
  description: ''
17280
17379
  '400':
17281
17380
  description: Invalid input data
17381
+ '403':
17382
+ description: Permission denied - insufficient RBAC permissions
17282
17383
  '404':
17283
17384
  description: Role not found
17284
17385
  patch:
@@ -17322,11 +17423,14 @@ paths:
17322
17423
  description: ''
17323
17424
  '400':
17324
17425
  description: Invalid input data
17426
+ '403':
17427
+ description: Permission denied - insufficient RBAC permissions
17325
17428
  '404':
17326
17429
  description: Role not found
17327
17430
  delete:
17328
17431
  operationId: core_rbac_roles_destroy
17329
- description: Delete an RBAC role.
17432
+ description: 'Delete an RBAC role. WARNING: Deleting a role will remove all
17433
+ policies referencing it.'
17330
17434
  summary: Delete RBAC role
17331
17435
  parameters:
17332
17436
  - in: path
@@ -17349,6 +17453,8 @@ paths:
17349
17453
  responses:
17350
17454
  '204':
17351
17455
  description: Role deleted successfully
17456
+ '403':
17457
+ description: Permission denied - insufficient RBAC permissions
17352
17458
  '404':
17353
17459
  description: Role not found
17354
17460
  /api/core/rbac/student-llm-access/set/:
@@ -37234,6 +37340,11 @@ components:
37234
37340
  type: integer
37235
37341
  writeOnly: true
37236
37342
  description: List of user IDs to remove from this group
37343
+ is_internal:
37344
+ type: boolean
37345
+ readOnly: true
37346
+ description: When True, this group is internal to the system and cannot
37347
+ be viewed or modified by tenants via API endpoints.
37237
37348
  PatchedRbacPolicy:
37238
37349
  type: object
37239
37350
  description: Serializer for policies.
@@ -37303,6 +37414,11 @@ components:
37303
37414
  type: integer
37304
37415
  writeOnly: true
37305
37416
  description: List of group IDs to remove from this Policy
37417
+ is_internal:
37418
+ type: boolean
37419
+ readOnly: true
37420
+ description: When True, this policy is internal to the system and cannot
37421
+ be viewed or modified by tenants via API endpoints.
37306
37422
  PatchedRbacRole:
37307
37423
  type: object
37308
37424
  description: Serializer for roles.
@@ -37334,6 +37450,11 @@ components:
37334
37450
  type: string
37335
37451
  description: List of data actions/permissions this role can perform for
37336
37452
  field-level access (e.g., ['Ibl.Mentor/Settings/name/read', 'Ibl.Mentor/Settings/email/write'])
37453
+ is_internal:
37454
+ type: boolean
37455
+ readOnly: true
37456
+ description: When True, this role is internal to the system and cannot be
37457
+ viewed or modified by tenants via API endpoints.
37337
37458
  PatchedSCIMGroup:
37338
37459
  type: object
37339
37460
  description: SCIM group serializer for RBAC group management
@@ -40638,8 +40759,14 @@ components:
40638
40759
  type: integer
40639
40760
  writeOnly: true
40640
40761
  description: List of user IDs to remove from this group
40762
+ is_internal:
40763
+ type: boolean
40764
+ readOnly: true
40765
+ description: When True, this group is internal to the system and cannot
40766
+ be viewed or modified by tenants via API endpoints.
40641
40767
  required:
40642
40768
  - id
40769
+ - is_internal
40643
40770
  - owner
40644
40771
  - platform
40645
40772
  - platform_key
@@ -40733,9 +40860,15 @@ components:
40733
40860
  type: integer
40734
40861
  writeOnly: true
40735
40862
  description: List of group IDs to remove from this Policy
40863
+ is_internal:
40864
+ type: boolean
40865
+ readOnly: true
40866
+ description: When True, this policy is internal to the system and cannot
40867
+ be viewed or modified by tenants via API endpoints.
40736
40868
  required:
40737
40869
  - groups
40738
40870
  - id
40871
+ - is_internal
40739
40872
  - platform
40740
40873
  - platform_key
40741
40874
  - resources
@@ -40797,8 +40930,14 @@ components:
40797
40930
  type: string
40798
40931
  description: List of data actions/permissions this role can perform for
40799
40932
  field-level access (e.g., ['Ibl.Mentor/Settings/name/read', 'Ibl.Mentor/Settings/email/write'])
40933
+ is_internal:
40934
+ type: boolean
40935
+ readOnly: true
40936
+ description: When True, this role is internal to the system and cannot be
40937
+ viewed or modified by tenants via API endpoints.
40800
40938
  required:
40801
40939
  - id
40940
+ - is_internal
40802
40941
  - name
40803
40942
  - platform
40804
40943
  - platform_key
@@ -40815,6 +40954,12 @@ components:
40815
40954
  nullable: true
40816
40955
  description: edX username
40817
40956
  maxLength: 100
40957
+ email:
40958
+ type: string
40959
+ format: email
40960
+ nullable: true
40961
+ description: edX email
40962
+ maxLength: 254
40818
40963
  required:
40819
40964
  - id
40820
40965
  Recipient:
@@ -21,7 +21,7 @@ export type OpenAPIConfig = {
21
21
 
22
22
  export const OpenAPI: OpenAPIConfig = {
23
23
  BASE: 'https://base.manager.iblai.app',
24
- VERSION: '4.82.1-core',
24
+ VERSION: '4.88.3-core',
25
25
  WITH_CREDENTIALS: false,
26
26
  CREDENTIALS: 'include',
27
27
  TOKEN: undefined,
@@ -36,5 +36,9 @@ export type PatchedRbacGroup = {
36
36
  * List of user IDs to remove from this group
37
37
  */
38
38
  users_to_remove?: Array<number>;
39
+ /**
40
+ * When True, this group is internal to the system and cannot be viewed or modified by tenants via API endpoints.
41
+ */
42
+ readonly is_internal?: boolean;
39
43
  };
40
44
 
@@ -53,5 +53,9 @@ export type PatchedRbacPolicy = {
53
53
  * List of group IDs to remove from this Policy
54
54
  */
55
55
  groups_to_remove?: Array<number>;
56
+ /**
57
+ * When True, this policy is internal to the system and cannot be viewed or modified by tenants via API endpoints.
58
+ */
59
+ readonly is_internal?: boolean;
56
60
  };
57
61
 
@@ -25,5 +25,9 @@ export type PatchedRbacRole = {
25
25
  * List of data actions/permissions this role can perform for field-level access (e.g., ['Ibl.Mentor/Settings/name/read', 'Ibl.Mentor/Settings/email/write'])
26
26
  */
27
27
  data_actions?: Array<string>;
28
+ /**
29
+ * When True, this role is internal to the system and cannot be viewed or modified by tenants via API endpoints.
30
+ */
31
+ readonly is_internal?: boolean;
28
32
  };
29
33
 
@@ -36,5 +36,9 @@ export type RbacGroup = {
36
36
  * List of user IDs to remove from this group
37
37
  */
38
38
  users_to_remove?: Array<number>;
39
+ /**
40
+ * When True, this group is internal to the system and cannot be viewed or modified by tenants via API endpoints.
41
+ */
42
+ readonly is_internal: boolean;
39
43
  };
40
44
 
@@ -53,5 +53,9 @@ export type RbacPolicy = {
53
53
  * List of group IDs to remove from this Policy
54
54
  */
55
55
  groups_to_remove?: Array<number>;
56
+ /**
57
+ * When True, this policy is internal to the system and cannot be viewed or modified by tenants via API endpoints.
58
+ */
59
+ readonly is_internal: boolean;
56
60
  };
57
61
 
@@ -25,5 +25,9 @@ export type RbacRole = {
25
25
  * List of data actions/permissions this role can perform for field-level access (e.g., ['Ibl.Mentor/Settings/name/read', 'Ibl.Mentor/Settings/email/write'])
26
26
  */
27
27
  data_actions?: Array<string>;
28
+ /**
29
+ * When True, this role is internal to the system and cannot be viewed or modified by tenants via API endpoints.
30
+ */
31
+ readonly is_internal: boolean;
28
32
  };
29
33
 
@@ -14,5 +14,9 @@ export type RbacUser = {
14
14
  * edX username
15
15
  */
16
16
  username?: string | null;
17
+ /**
18
+ * edX email
19
+ */
20
+ email?: string | null;
17
21
  };
18
22