insights-rbac-api-client 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (180) hide show
  1. checksums.yaml +7 -0
  2. data/Gemfile +9 -0
  3. data/README.md +175 -0
  4. data/Rakefile +10 -0
  5. data/client-meta.json +9 -0
  6. data/docs/Access.md +19 -0
  7. data/docs/AccessApi.md +70 -0
  8. data/docs/AccessPagination.md +21 -0
  9. data/docs/AccessPaginationAllOf.md +17 -0
  10. data/docs/AdditionalGroup.md +21 -0
  11. data/docs/Error.md +17 -0
  12. data/docs/Error403.md +17 -0
  13. data/docs/Group.md +19 -0
  14. data/docs/GroupApi.md +635 -0
  15. data/docs/GroupOut.md +33 -0
  16. data/docs/GroupPagination.md +21 -0
  17. data/docs/GroupPaginationAllOf.md +17 -0
  18. data/docs/GroupPrincipalIn.md +17 -0
  19. data/docs/GroupRoleIn.md +17 -0
  20. data/docs/GroupRolesPagination.md +21 -0
  21. data/docs/GroupWithPrincipals.md +27 -0
  22. data/docs/GroupWithPrincipalsAllOf.md +17 -0
  23. data/docs/GroupWithPrincipalsAndRoles.md +29 -0
  24. data/docs/GroupWithPrincipalsAndRolesAllOf.md +19 -0
  25. data/docs/InlineResponse200.md +17 -0
  26. data/docs/ListPagination.md +19 -0
  27. data/docs/PaginationLinks.md +23 -0
  28. data/docs/PaginationMeta.md +17 -0
  29. data/docs/Policy.md +19 -0
  30. data/docs/PolicyApi.md +285 -0
  31. data/docs/PolicyExtended.md +29 -0
  32. data/docs/PolicyExtendedAllOf.md +19 -0
  33. data/docs/PolicyIn.md +23 -0
  34. data/docs/PolicyInAllOf.md +19 -0
  35. data/docs/PolicyPagination.md +21 -0
  36. data/docs/PolicyPaginationAllOf.md +17 -0
  37. data/docs/Principal.md +25 -0
  38. data/docs/PrincipalApi.md +72 -0
  39. data/docs/PrincipalIn.md +17 -0
  40. data/docs/PrincipalOut.md +27 -0
  41. data/docs/PrincipalPagination.md +21 -0
  42. data/docs/PrincipalPaginationAllOf.md +17 -0
  43. data/docs/ResourceDefinition.md +17 -0
  44. data/docs/ResourceDefinitionFilter.md +21 -0
  45. data/docs/Role.md +19 -0
  46. data/docs/RoleApi.md +342 -0
  47. data/docs/RoleIn.md +21 -0
  48. data/docs/RoleInAllOf.md +17 -0
  49. data/docs/RoleOut.md +35 -0
  50. data/docs/RoleOutDynamic.md +39 -0
  51. data/docs/RoleOutDynamicAllOf.md +29 -0
  52. data/docs/RolePagination.md +21 -0
  53. data/docs/RolePaginationDynamic.md +21 -0
  54. data/docs/RolePaginationDynamicAllOf.md +17 -0
  55. data/docs/RoleWithAccess.md +37 -0
  56. data/docs/Status.md +27 -0
  57. data/docs/StatusApi.md +56 -0
  58. data/docs/Timestamped.md +19 -0
  59. data/docs/UUID.md +17 -0
  60. data/generate.sh +7 -0
  61. data/git_push.sh +58 -0
  62. data/insights-rbac-api-client.gemspec +39 -0
  63. data/lib/insights-rbac-api-client.rb +93 -0
  64. data/lib/insights-rbac-api-client/api/access_api.rb +106 -0
  65. data/lib/insights-rbac-api-client/api/group_api.rb +831 -0
  66. data/lib/insights-rbac-api-client/api/policy_api.rb +365 -0
  67. data/lib/insights-rbac-api-client/api/principal_api.rb +109 -0
  68. data/lib/insights-rbac-api-client/api/role_api.rb +447 -0
  69. data/lib/insights-rbac-api-client/api/status_api.rb +76 -0
  70. data/lib/insights-rbac-api-client/api_client.rb +386 -0
  71. data/lib/insights-rbac-api-client/api_error.rb +57 -0
  72. data/lib/insights-rbac-api-client/configuration.rb +248 -0
  73. data/lib/insights-rbac-api-client/models/access.rb +227 -0
  74. data/lib/insights-rbac-api-client/models/access_pagination.rb +239 -0
  75. data/lib/insights-rbac-api-client/models/access_pagination_all_of.rb +213 -0
  76. data/lib/insights-rbac-api-client/models/additional_group.rb +224 -0
  77. data/lib/insights-rbac-api-client/models/error.rb +213 -0
  78. data/lib/insights-rbac-api-client/models/error403.rb +213 -0
  79. data/lib/insights-rbac-api-client/models/group.rb +220 -0
  80. data/lib/insights-rbac-api-client/models/group_out.rb +341 -0
  81. data/lib/insights-rbac-api-client/models/group_pagination.rb +239 -0
  82. data/lib/insights-rbac-api-client/models/group_pagination_all_of.rb +213 -0
  83. data/lib/insights-rbac-api-client/models/group_principal_in.rb +213 -0
  84. data/lib/insights-rbac-api-client/models/group_role_in.rb +213 -0
  85. data/lib/insights-rbac-api-client/models/group_roles_pagination.rb +239 -0
  86. data/lib/insights-rbac-api-client/models/group_with_principals.rb +288 -0
  87. data/lib/insights-rbac-api-client/models/group_with_principals_all_of.rb +213 -0
  88. data/lib/insights-rbac-api-client/models/group_with_principals_and_roles.rb +304 -0
  89. data/lib/insights-rbac-api-client/models/group_with_principals_and_roles_all_of.rb +229 -0
  90. data/lib/insights-rbac-api-client/models/inline_response200.rb +213 -0
  91. data/lib/insights-rbac-api-client/models/list_pagination.rb +215 -0
  92. data/lib/insights-rbac-api-client/models/pagination_links.rb +233 -0
  93. data/lib/insights-rbac-api-client/models/pagination_meta.rb +206 -0
  94. data/lib/insights-rbac-api-client/models/policy.rb +220 -0
  95. data/lib/insights-rbac-api-client/models/policy_extended.rb +302 -0
  96. data/lib/insights-rbac-api-client/models/policy_extended_all_of.rb +227 -0
  97. data/lib/insights-rbac-api-client/models/policy_in.rb +258 -0
  98. data/lib/insights-rbac-api-client/models/policy_in_all_of.rb +227 -0
  99. data/lib/insights-rbac-api-client/models/policy_pagination.rb +239 -0
  100. data/lib/insights-rbac-api-client/models/policy_pagination_all_of.rb +213 -0
  101. data/lib/insights-rbac-api-client/models/principal.rb +252 -0
  102. data/lib/insights-rbac-api-client/models/principal_in.rb +211 -0
  103. data/lib/insights-rbac-api-client/models/principal_out.rb +274 -0
  104. data/lib/insights-rbac-api-client/models/principal_pagination.rb +239 -0
  105. data/lib/insights-rbac-api-client/models/principal_pagination_all_of.rb +213 -0
  106. data/lib/insights-rbac-api-client/models/resource_definition.rb +211 -0
  107. data/lib/insights-rbac-api-client/models/resource_definition_filter.rb +273 -0
  108. data/lib/insights-rbac-api-client/models/role.rb +220 -0
  109. data/lib/insights-rbac-api-client/models/role_in.rb +244 -0
  110. data/lib/insights-rbac-api-client/models/role_in_all_of.rb +213 -0
  111. data/lib/insights-rbac-api-client/models/role_out.rb +352 -0
  112. data/lib/insights-rbac-api-client/models/role_out_dynamic.rb +421 -0
  113. data/lib/insights-rbac-api-client/models/role_out_dynamic_all_of.rb +346 -0
  114. data/lib/insights-rbac-api-client/models/role_pagination.rb +239 -0
  115. data/lib/insights-rbac-api-client/models/role_pagination_dynamic.rb +239 -0
  116. data/lib/insights-rbac-api-client/models/role_pagination_dynamic_all_of.rb +213 -0
  117. data/lib/insights-rbac-api-client/models/role_with_access.rb +367 -0
  118. data/lib/insights-rbac-api-client/models/status.rb +256 -0
  119. data/lib/insights-rbac-api-client/models/timestamped.rb +225 -0
  120. data/lib/insights-rbac-api-client/models/uuid.rb +211 -0
  121. data/lib/insights-rbac-api-client/version.rb +15 -0
  122. data/openapi.json +2649 -0
  123. data/spec/api/access_api_spec.rb +50 -0
  124. data/spec/api/group_api_spec.rb +182 -0
  125. data/spec/api/policy_api_spec.rb +98 -0
  126. data/spec/api/principal_api_spec.rb +51 -0
  127. data/spec/api/role_api_spec.rb +111 -0
  128. data/spec/api/status_api_spec.rb +45 -0
  129. data/spec/api_client_spec.rb +226 -0
  130. data/spec/configuration_spec.rb +42 -0
  131. data/spec/models/access_pagination_all_of_spec.rb +41 -0
  132. data/spec/models/access_pagination_spec.rb +53 -0
  133. data/spec/models/access_spec.rb +47 -0
  134. data/spec/models/additional_group_spec.rb +53 -0
  135. data/spec/models/error403_spec.rb +41 -0
  136. data/spec/models/error_spec.rb +41 -0
  137. data/spec/models/group_out_spec.rb +89 -0
  138. data/spec/models/group_pagination_all_of_spec.rb +41 -0
  139. data/spec/models/group_pagination_spec.rb +53 -0
  140. data/spec/models/group_principal_in_spec.rb +41 -0
  141. data/spec/models/group_role_in_spec.rb +41 -0
  142. data/spec/models/group_roles_pagination_spec.rb +53 -0
  143. data/spec/models/group_spec.rb +47 -0
  144. data/spec/models/group_with_principals_all_of_spec.rb +41 -0
  145. data/spec/models/group_with_principals_and_roles_all_of_spec.rb +47 -0
  146. data/spec/models/group_with_principals_and_roles_spec.rb +77 -0
  147. data/spec/models/group_with_principals_spec.rb +71 -0
  148. data/spec/models/inline_response200_spec.rb +41 -0
  149. data/spec/models/list_pagination_spec.rb +47 -0
  150. data/spec/models/pagination_links_spec.rb +59 -0
  151. data/spec/models/pagination_meta_spec.rb +41 -0
  152. data/spec/models/policy_extended_all_of_spec.rb +47 -0
  153. data/spec/models/policy_extended_spec.rb +77 -0
  154. data/spec/models/policy_in_all_of_spec.rb +47 -0
  155. data/spec/models/policy_in_spec.rb +59 -0
  156. data/spec/models/policy_pagination_all_of_spec.rb +41 -0
  157. data/spec/models/policy_pagination_spec.rb +53 -0
  158. data/spec/models/policy_spec.rb +47 -0
  159. data/spec/models/principal_in_spec.rb +41 -0
  160. data/spec/models/principal_out_spec.rb +71 -0
  161. data/spec/models/principal_pagination_all_of_spec.rb +41 -0
  162. data/spec/models/principal_pagination_spec.rb +53 -0
  163. data/spec/models/principal_spec.rb +65 -0
  164. data/spec/models/resource_definition_filter_spec.rb +57 -0
  165. data/spec/models/resource_definition_spec.rb +41 -0
  166. data/spec/models/role_in_all_of_spec.rb +41 -0
  167. data/spec/models/role_in_spec.rb +53 -0
  168. data/spec/models/role_out_dynamic_all_of_spec.rb +77 -0
  169. data/spec/models/role_out_dynamic_spec.rb +107 -0
  170. data/spec/models/role_out_spec.rb +95 -0
  171. data/spec/models/role_pagination_dynamic_all_of_spec.rb +41 -0
  172. data/spec/models/role_pagination_dynamic_spec.rb +53 -0
  173. data/spec/models/role_pagination_spec.rb +53 -0
  174. data/spec/models/role_spec.rb +47 -0
  175. data/spec/models/role_with_access_spec.rb +101 -0
  176. data/spec/models/status_spec.rb +71 -0
  177. data/spec/models/timestamped_spec.rb +47 -0
  178. data/spec/models/uuid_spec.rb +41 -0
  179. data/spec/spec_helper.rb +111 -0
  180. metadata +338 -0
@@ -0,0 +1,7 @@
1
+ ---
2
+ SHA256:
3
+ metadata.gz: 22c7393a1598db8325fe188b9de88fc05ca64de13727fe9ed0d44150bbf818ba
4
+ data.tar.gz: 99f89bdf0a141c67a86d9366e8c8ce96bbc95239b4935c69dcea1129c9d5d1ce
5
+ SHA512:
6
+ metadata.gz: bc9ad0b5602ae1bc855e65aa23be2aa627fa961ec53684922600202258c65625ae4b20b3a9d429d0a29fdfb44d047f5729d1facee3c6b9fbfab42c34f728ab66
7
+ data.tar.gz: b5a98bb1ef6524f45d08ed991906114dc2aedce43d946ed638f9181de1beb568a4da87e84e78e5108e5724a4826ce2272622af87b8063d2e9c5b9f009d318587
data/Gemfile ADDED
@@ -0,0 +1,9 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gemspec
4
+
5
+ group :development, :test do
6
+ gem 'rake', '~> 12.0.0'
7
+ gem 'pry-byebug'
8
+ gem 'rubocop', '~> 0.66.0'
9
+ end
@@ -0,0 +1,175 @@
1
+ # insights-rbac-api-client
2
+
3
+ RBACApiClient - the Ruby gem for the Role Based Access Control
4
+
5
+ The API for Role Based Access Control.
6
+
7
+ This SDK is automatically generated by the [OpenAPI Generator](https://openapi-generator.tech) project:
8
+
9
+ - API version: 1.0.0
10
+ - Package version: 1.0.0
11
+ - Build package: org.openapitools.codegen.languages.RubyClientCodegen
12
+
13
+ ## Installation
14
+
15
+ ### Build a gem
16
+
17
+ To build the Ruby code into a gem:
18
+
19
+ ```shell
20
+ gem build insights-rbac-api-client.gemspec
21
+ ```
22
+
23
+ Then either install the gem locally:
24
+
25
+ ```shell
26
+ gem install ./insights-rbac-api-client-1.0.0.gem
27
+ ```
28
+
29
+ (for development, run `gem install --dev ./insights-rbac-api-client-1.0.0.gem` to install the development dependencies)
30
+
31
+ or publish the gem to a gem hosting service, e.g. [RubyGems](https://rubygems.org/).
32
+
33
+ Finally add this to the Gemfile:
34
+
35
+ gem 'insights-rbac-api-client', '~> 1.0.0'
36
+
37
+ ### Install from Git
38
+
39
+ If the Ruby gem is hosted at a git repository: https://github.com/GIT_USER_ID/GIT_REPO_ID, then add the following in the Gemfile:
40
+
41
+ gem 'insights-rbac-api-client', :git => 'https://github.com/GIT_USER_ID/GIT_REPO_ID.git'
42
+
43
+ ### Include the Ruby code directly
44
+
45
+ Include the Ruby code directly using `-I` as follows:
46
+
47
+ ```shell
48
+ ruby -Ilib script.rb
49
+ ```
50
+
51
+ ## Getting Started
52
+
53
+ Please follow the [installation](#installation) procedure and then run the following code:
54
+
55
+ ```ruby
56
+ # Load the gem
57
+ require 'insights-rbac-api-client'
58
+
59
+ # Setup authorization
60
+ RBACApiClient.configure do |config|
61
+ # Configure HTTP basic authorization: basic_auth
62
+ config.username = 'YOUR_USERNAME'
63
+ config.password = 'YOUR_PASSWORD'
64
+ end
65
+
66
+ api_instance = RBACApiClient::AccessApi.new
67
+ application = 'application_example' # String | The application name(s) to obtain access for the principal. This is an exact match. When no application is supplied, all permissions for the principal are returned. You may also use a comma-separated list to match on multiple applications.
68
+ opts = {
69
+ username: 'username_example', # String | Unique username of the principal to obtain access for (only available for admins, and if supplied, takes precedence over the identity header).
70
+ limit: 10, # Integer | Parameter for selecting the amount of data returned.
71
+ offset: 0 # Integer | Parameter for selecting the offset of data.
72
+ }
73
+
74
+ begin
75
+ #Get the permitted access for a principal in the tenant (defaults to principal from the identity header)
76
+ result = api_instance.get_principal_access(application, opts)
77
+ p result
78
+ rescue RBACApiClient::ApiError => e
79
+ puts "Exception when calling AccessApi->get_principal_access: #{e}"
80
+ end
81
+
82
+ ```
83
+
84
+ ## Documentation for API Endpoints
85
+
86
+ All URIs are relative to *http://localhost/api/rbac/v1*
87
+
88
+ Class | Method | HTTP request | Description
89
+ ------------ | ------------- | ------------- | -------------
90
+ *RBACApiClient::AccessApi* | [**get_principal_access**](docs/AccessApi.md#get_principal_access) | **GET** /access/ | Get the permitted access for a principal in the tenant (defaults to principal from the identity header)
91
+ *RBACApiClient::GroupApi* | [**add_principal_to_group**](docs/GroupApi.md#add_principal_to_group) | **POST** /groups/{uuid}/principals/ | Add a principal to a group in the tenant
92
+ *RBACApiClient::GroupApi* | [**add_role_to_group**](docs/GroupApi.md#add_role_to_group) | **POST** /groups/{uuid}/roles/ | Add a role to a group in the tenant
93
+ *RBACApiClient::GroupApi* | [**create_group**](docs/GroupApi.md#create_group) | **POST** /groups/ | Create a group in a tenant
94
+ *RBACApiClient::GroupApi* | [**delete_group**](docs/GroupApi.md#delete_group) | **DELETE** /groups/{uuid}/ | Delete a group in the tenant
95
+ *RBACApiClient::GroupApi* | [**delete_principal_from_group**](docs/GroupApi.md#delete_principal_from_group) | **DELETE** /groups/{uuid}/principals/ | Remove a principal from a group in the tenant
96
+ *RBACApiClient::GroupApi* | [**delete_role_from_group**](docs/GroupApi.md#delete_role_from_group) | **DELETE** /groups/{uuid}/roles/ | Remove a role from a group in the tenant
97
+ *RBACApiClient::GroupApi* | [**get_group**](docs/GroupApi.md#get_group) | **GET** /groups/{uuid}/ | Get a group in the tenant
98
+ *RBACApiClient::GroupApi* | [**get_principals_from_group**](docs/GroupApi.md#get_principals_from_group) | **GET** /groups/{uuid}/principals/ | Get a list of principals from a group in the tenant
99
+ *RBACApiClient::GroupApi* | [**list_groups**](docs/GroupApi.md#list_groups) | **GET** /groups/ | List the groups for a tenant
100
+ *RBACApiClient::GroupApi* | [**list_roles_for_group**](docs/GroupApi.md#list_roles_for_group) | **GET** /groups/{uuid}/roles/ | List the roles for a group in the tenant
101
+ *RBACApiClient::GroupApi* | [**update_group**](docs/GroupApi.md#update_group) | **PUT** /groups/{uuid}/ | Udate a group in the tenant
102
+ *RBACApiClient::PolicyApi* | [**create_policies**](docs/PolicyApi.md#create_policies) | **POST** /policies/ | Create a policy in a tenant
103
+ *RBACApiClient::PolicyApi* | [**delete_policy**](docs/PolicyApi.md#delete_policy) | **DELETE** /policies/{uuid}/ | Delete a policy in the tenant
104
+ *RBACApiClient::PolicyApi* | [**get_policy**](docs/PolicyApi.md#get_policy) | **GET** /policies/{uuid}/ | Get a policy in the tenant
105
+ *RBACApiClient::PolicyApi* | [**list_policies**](docs/PolicyApi.md#list_policies) | **GET** /policies/ | List the policies in the tenant
106
+ *RBACApiClient::PolicyApi* | [**update_policy**](docs/PolicyApi.md#update_policy) | **PUT** /policies/{uuid}/ | Update a policy in the tenant
107
+ *RBACApiClient::PrincipalApi* | [**list_principals**](docs/PrincipalApi.md#list_principals) | **GET** /principals/ | List the principals for a tenant
108
+ *RBACApiClient::RoleApi* | [**create_roles**](docs/RoleApi.md#create_roles) | **POST** /roles/ | Create a roles for a tenant
109
+ *RBACApiClient::RoleApi* | [**delete_role**](docs/RoleApi.md#delete_role) | **DELETE** /roles/{uuid}/ | Delete a role in the tenant
110
+ *RBACApiClient::RoleApi* | [**get_role**](docs/RoleApi.md#get_role) | **GET** /roles/{uuid}/ | Get a role in the tenant
111
+ *RBACApiClient::RoleApi* | [**get_role_access**](docs/RoleApi.md#get_role_access) | **GET** /roles/{uuid}/access/ | Get access for a role in the tenant
112
+ *RBACApiClient::RoleApi* | [**list_roles**](docs/RoleApi.md#list_roles) | **GET** /roles/ | List the roles for a tenant
113
+ *RBACApiClient::RoleApi* | [**update_role**](docs/RoleApi.md#update_role) | **PUT** /roles/{uuid}/ | Update a Role in the tenant
114
+ *RBACApiClient::StatusApi* | [**get_status**](docs/StatusApi.md#get_status) | **GET** /status/ | Obtain server status
115
+
116
+
117
+ ## Documentation for Models
118
+
119
+ - [RBACApiClient::Access](docs/Access.md)
120
+ - [RBACApiClient::AccessPagination](docs/AccessPagination.md)
121
+ - [RBACApiClient::AccessPaginationAllOf](docs/AccessPaginationAllOf.md)
122
+ - [RBACApiClient::AdditionalGroup](docs/AdditionalGroup.md)
123
+ - [RBACApiClient::Error](docs/Error.md)
124
+ - [RBACApiClient::Error403](docs/Error403.md)
125
+ - [RBACApiClient::Group](docs/Group.md)
126
+ - [RBACApiClient::GroupOut](docs/GroupOut.md)
127
+ - [RBACApiClient::GroupPagination](docs/GroupPagination.md)
128
+ - [RBACApiClient::GroupPaginationAllOf](docs/GroupPaginationAllOf.md)
129
+ - [RBACApiClient::GroupPrincipalIn](docs/GroupPrincipalIn.md)
130
+ - [RBACApiClient::GroupRoleIn](docs/GroupRoleIn.md)
131
+ - [RBACApiClient::GroupRolesPagination](docs/GroupRolesPagination.md)
132
+ - [RBACApiClient::GroupWithPrincipals](docs/GroupWithPrincipals.md)
133
+ - [RBACApiClient::GroupWithPrincipalsAllOf](docs/GroupWithPrincipalsAllOf.md)
134
+ - [RBACApiClient::GroupWithPrincipalsAndRoles](docs/GroupWithPrincipalsAndRoles.md)
135
+ - [RBACApiClient::GroupWithPrincipalsAndRolesAllOf](docs/GroupWithPrincipalsAndRolesAllOf.md)
136
+ - [RBACApiClient::InlineResponse200](docs/InlineResponse200.md)
137
+ - [RBACApiClient::ListPagination](docs/ListPagination.md)
138
+ - [RBACApiClient::PaginationLinks](docs/PaginationLinks.md)
139
+ - [RBACApiClient::PaginationMeta](docs/PaginationMeta.md)
140
+ - [RBACApiClient::Policy](docs/Policy.md)
141
+ - [RBACApiClient::PolicyExtended](docs/PolicyExtended.md)
142
+ - [RBACApiClient::PolicyExtendedAllOf](docs/PolicyExtendedAllOf.md)
143
+ - [RBACApiClient::PolicyIn](docs/PolicyIn.md)
144
+ - [RBACApiClient::PolicyInAllOf](docs/PolicyInAllOf.md)
145
+ - [RBACApiClient::PolicyPagination](docs/PolicyPagination.md)
146
+ - [RBACApiClient::PolicyPaginationAllOf](docs/PolicyPaginationAllOf.md)
147
+ - [RBACApiClient::Principal](docs/Principal.md)
148
+ - [RBACApiClient::PrincipalIn](docs/PrincipalIn.md)
149
+ - [RBACApiClient::PrincipalOut](docs/PrincipalOut.md)
150
+ - [RBACApiClient::PrincipalPagination](docs/PrincipalPagination.md)
151
+ - [RBACApiClient::PrincipalPaginationAllOf](docs/PrincipalPaginationAllOf.md)
152
+ - [RBACApiClient::ResourceDefinition](docs/ResourceDefinition.md)
153
+ - [RBACApiClient::ResourceDefinitionFilter](docs/ResourceDefinitionFilter.md)
154
+ - [RBACApiClient::Role](docs/Role.md)
155
+ - [RBACApiClient::RoleIn](docs/RoleIn.md)
156
+ - [RBACApiClient::RoleInAllOf](docs/RoleInAllOf.md)
157
+ - [RBACApiClient::RoleOut](docs/RoleOut.md)
158
+ - [RBACApiClient::RoleOutDynamic](docs/RoleOutDynamic.md)
159
+ - [RBACApiClient::RoleOutDynamicAllOf](docs/RoleOutDynamicAllOf.md)
160
+ - [RBACApiClient::RolePagination](docs/RolePagination.md)
161
+ - [RBACApiClient::RolePaginationDynamic](docs/RolePaginationDynamic.md)
162
+ - [RBACApiClient::RolePaginationDynamicAllOf](docs/RolePaginationDynamicAllOf.md)
163
+ - [RBACApiClient::RoleWithAccess](docs/RoleWithAccess.md)
164
+ - [RBACApiClient::Status](docs/Status.md)
165
+ - [RBACApiClient::Timestamped](docs/Timestamped.md)
166
+ - [RBACApiClient::UUID](docs/UUID.md)
167
+
168
+
169
+ ## Documentation for Authorization
170
+
171
+
172
+ ### basic_auth
173
+
174
+ - **Type**: HTTP basic authentication
175
+
@@ -0,0 +1,10 @@
1
+ require "bundler/gem_tasks"
2
+
3
+ begin
4
+ require 'rspec/core/rake_task'
5
+
6
+ RSpec::Core::RakeTask.new(:spec)
7
+ task default: :spec
8
+ rescue LoadError
9
+ # no rspec available
10
+ end
@@ -0,0 +1,9 @@
1
+ {
2
+ "moduleName": "RBACApiClient",
3
+ "gemName": "insights-rbac-api-client",
4
+ "gemHomepage" : "https://github.com/RedHatInsights/insights-rbac-api-client-ruby",
5
+ "gemAuthor" : "Insights Authors",
6
+ "gemVersion": "1.0.0",
7
+ "gemLicense" : "Apache-2.0",
8
+ "gemDescription" : "Ruby client gem to connect to Insights RBAC Service"
9
+ }
@@ -0,0 +1,19 @@
1
+ # RBACApiClient::Access
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **permission** | **String** | |
8
+ **resource_definitions** | [**Array<ResourceDefinition>**](ResourceDefinition.md) | |
9
+
10
+ ## Code Sample
11
+
12
+ ```ruby
13
+ require 'RBACApiClient'
14
+
15
+ instance = RBACApiClient::Access.new(permission: cost-management:*:read,
16
+ resource_definitions: null)
17
+ ```
18
+
19
+
@@ -0,0 +1,70 @@
1
+ # RBACApiClient::AccessApi
2
+
3
+ All URIs are relative to *http://localhost/api/rbac/v1*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**get_principal_access**](AccessApi.md#get_principal_access) | **GET** /access/ | Get the permitted access for a principal in the tenant (defaults to principal from the identity header)
8
+
9
+
10
+
11
+ ## get_principal_access
12
+
13
+ > AccessPagination get_principal_access(application, opts)
14
+
15
+ Get the permitted access for a principal in the tenant (defaults to principal from the identity header)
16
+
17
+ Access responses are sorted in ascending order by an ID internal to the database
18
+
19
+ ### Example
20
+
21
+ ```ruby
22
+ # load the gem
23
+ require 'insights-rbac-api-client'
24
+ # setup authorization
25
+ RBACApiClient.configure do |config|
26
+ # Configure HTTP basic authorization: basic_auth
27
+ config.username = 'YOUR USERNAME'
28
+ config.password = 'YOUR PASSWORD'
29
+ end
30
+
31
+ api_instance = RBACApiClient::AccessApi.new
32
+ application = 'application_example' # String | The application name(s) to obtain access for the principal. This is an exact match. When no application is supplied, all permissions for the principal are returned. You may also use a comma-separated list to match on multiple applications.
33
+ opts = {
34
+ username: 'username_example', # String | Unique username of the principal to obtain access for (only available for admins, and if supplied, takes precedence over the identity header).
35
+ limit: 10, # Integer | Parameter for selecting the amount of data returned.
36
+ offset: 0 # Integer | Parameter for selecting the offset of data.
37
+ }
38
+
39
+ begin
40
+ #Get the permitted access for a principal in the tenant (defaults to principal from the identity header)
41
+ result = api_instance.get_principal_access(application, opts)
42
+ p result
43
+ rescue RBACApiClient::ApiError => e
44
+ puts "Exception when calling AccessApi->get_principal_access: #{e}"
45
+ end
46
+ ```
47
+
48
+ ### Parameters
49
+
50
+
51
+ Name | Type | Description | Notes
52
+ ------------- | ------------- | ------------- | -------------
53
+ **application** | **String**| The application name(s) to obtain access for the principal. This is an exact match. When no application is supplied, all permissions for the principal are returned. You may also use a comma-separated list to match on multiple applications. |
54
+ **username** | **String**| Unique username of the principal to obtain access for (only available for admins, and if supplied, takes precedence over the identity header). | [optional]
55
+ **limit** | **Integer**| Parameter for selecting the amount of data returned. | [optional] [default to 10]
56
+ **offset** | **Integer**| Parameter for selecting the offset of data. | [optional] [default to 0]
57
+
58
+ ### Return type
59
+
60
+ [**AccessPagination**](AccessPagination.md)
61
+
62
+ ### Authorization
63
+
64
+ [basic_auth](../README.md#basic_auth)
65
+
66
+ ### HTTP request headers
67
+
68
+ - **Content-Type**: Not defined
69
+ - **Accept**: application/json
70
+
@@ -0,0 +1,21 @@
1
+ # RBACApiClient::AccessPagination
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **meta** | [**PaginationMeta**](PaginationMeta.md) | | [optional]
8
+ **links** | [**PaginationLinks**](PaginationLinks.md) | | [optional]
9
+ **data** | [**Array<Access>**](Access.md) | |
10
+
11
+ ## Code Sample
12
+
13
+ ```ruby
14
+ require 'RBACApiClient'
15
+
16
+ instance = RBACApiClient::AccessPagination.new(meta: null,
17
+ links: null,
18
+ data: null)
19
+ ```
20
+
21
+
@@ -0,0 +1,17 @@
1
+ # RBACApiClient::AccessPaginationAllOf
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **data** | [**Array<Access>**](Access.md) | |
8
+
9
+ ## Code Sample
10
+
11
+ ```ruby
12
+ require 'RBACApiClient'
13
+
14
+ instance = RBACApiClient::AccessPaginationAllOf.new(data: null)
15
+ ```
16
+
17
+
@@ -0,0 +1,21 @@
1
+ # RBACApiClient::AdditionalGroup
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **name** | **String** | | [optional]
8
+ **description** | **String** | | [optional]
9
+ **uuid** | **String** | | [optional]
10
+
11
+ ## Code Sample
12
+
13
+ ```ruby
14
+ require 'RBACApiClient'
15
+
16
+ instance = RBACApiClient::AdditionalGroup.new(name: GroupA,
17
+ description: GroupA Description,
18
+ uuid: 234df936-abb4-4238-a1c9-d91fc540c702)
19
+ ```
20
+
21
+
@@ -0,0 +1,17 @@
1
+ # RBACApiClient::Error
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **errors** | **Array<Object>** | |
8
+
9
+ ## Code Sample
10
+
11
+ ```ruby
12
+ require 'RBACApiClient'
13
+
14
+ instance = RBACApiClient::Error.new(errors: null)
15
+ ```
16
+
17
+
@@ -0,0 +1,17 @@
1
+ # RBACApiClient::Error403
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **errors** | **Array<Object>** | |
8
+
9
+ ## Code Sample
10
+
11
+ ```ruby
12
+ require 'RBACApiClient'
13
+
14
+ instance = RBACApiClient::Error403.new(errors: null)
15
+ ```
16
+
17
+
@@ -0,0 +1,19 @@
1
+ # RBACApiClient::Group
2
+
3
+ ## Properties
4
+
5
+ Name | Type | Description | Notes
6
+ ------------ | ------------- | ------------- | -------------
7
+ **name** | **String** | |
8
+ **description** | **String** | | [optional]
9
+
10
+ ## Code Sample
11
+
12
+ ```ruby
13
+ require 'RBACApiClient'
14
+
15
+ instance = RBACApiClient::Group.new(name: GroupA,
16
+ description: A description of GroupA)
17
+ ```
18
+
19
+
@@ -0,0 +1,635 @@
1
+ # RBACApiClient::GroupApi
2
+
3
+ All URIs are relative to *http://localhost/api/rbac/v1*
4
+
5
+ Method | HTTP request | Description
6
+ ------------- | ------------- | -------------
7
+ [**add_principal_to_group**](GroupApi.md#add_principal_to_group) | **POST** /groups/{uuid}/principals/ | Add a principal to a group in the tenant
8
+ [**add_role_to_group**](GroupApi.md#add_role_to_group) | **POST** /groups/{uuid}/roles/ | Add a role to a group in the tenant
9
+ [**create_group**](GroupApi.md#create_group) | **POST** /groups/ | Create a group in a tenant
10
+ [**delete_group**](GroupApi.md#delete_group) | **DELETE** /groups/{uuid}/ | Delete a group in the tenant
11
+ [**delete_principal_from_group**](GroupApi.md#delete_principal_from_group) | **DELETE** /groups/{uuid}/principals/ | Remove a principal from a group in the tenant
12
+ [**delete_role_from_group**](GroupApi.md#delete_role_from_group) | **DELETE** /groups/{uuid}/roles/ | Remove a role from a group in the tenant
13
+ [**get_group**](GroupApi.md#get_group) | **GET** /groups/{uuid}/ | Get a group in the tenant
14
+ [**get_principals_from_group**](GroupApi.md#get_principals_from_group) | **GET** /groups/{uuid}/principals/ | Get a list of principals from a group in the tenant
15
+ [**list_groups**](GroupApi.md#list_groups) | **GET** /groups/ | List the groups for a tenant
16
+ [**list_roles_for_group**](GroupApi.md#list_roles_for_group) | **GET** /groups/{uuid}/roles/ | List the roles for a group in the tenant
17
+ [**update_group**](GroupApi.md#update_group) | **PUT** /groups/{uuid}/ | Udate a group in the tenant
18
+
19
+
20
+
21
+ ## add_principal_to_group
22
+
23
+ > GroupWithPrincipalsAndRoles add_principal_to_group(uuid, group_principal_in)
24
+
25
+ Add a principal to a group in the tenant
26
+
27
+ ### Example
28
+
29
+ ```ruby
30
+ # load the gem
31
+ require 'insights-rbac-api-client'
32
+ # setup authorization
33
+ RBACApiClient.configure do |config|
34
+ # Configure HTTP basic authorization: basic_auth
35
+ config.username = 'YOUR USERNAME'
36
+ config.password = 'YOUR PASSWORD'
37
+ end
38
+
39
+ api_instance = RBACApiClient::GroupApi.new
40
+ uuid = 'uuid_example' # String | ID of group to update
41
+ group_principal_in = RBACApiClient::GroupPrincipalIn.new # GroupPrincipalIn | Principal to add to a group
42
+
43
+ begin
44
+ #Add a principal to a group in the tenant
45
+ result = api_instance.add_principal_to_group(uuid, group_principal_in)
46
+ p result
47
+ rescue RBACApiClient::ApiError => e
48
+ puts "Exception when calling GroupApi->add_principal_to_group: #{e}"
49
+ end
50
+ ```
51
+
52
+ ### Parameters
53
+
54
+
55
+ Name | Type | Description | Notes
56
+ ------------- | ------------- | ------------- | -------------
57
+ **uuid** | [**String**](.md)| ID of group to update |
58
+ **group_principal_in** | [**GroupPrincipalIn**](GroupPrincipalIn.md)| Principal to add to a group |
59
+
60
+ ### Return type
61
+
62
+ [**GroupWithPrincipalsAndRoles**](GroupWithPrincipalsAndRoles.md)
63
+
64
+ ### Authorization
65
+
66
+ [basic_auth](../README.md#basic_auth)
67
+
68
+ ### HTTP request headers
69
+
70
+ - **Content-Type**: application/json
71
+ - **Accept**: application/json
72
+
73
+
74
+ ## add_role_to_group
75
+
76
+ > InlineResponse200 add_role_to_group(uuid, group_role_in)
77
+
78
+ Add a role to a group in the tenant
79
+
80
+ ### Example
81
+
82
+ ```ruby
83
+ # load the gem
84
+ require 'insights-rbac-api-client'
85
+ # setup authorization
86
+ RBACApiClient.configure do |config|
87
+ # Configure HTTP basic authorization: basic_auth
88
+ config.username = 'YOUR USERNAME'
89
+ config.password = 'YOUR PASSWORD'
90
+ end
91
+
92
+ api_instance = RBACApiClient::GroupApi.new
93
+ uuid = 'uuid_example' # String | ID of group to update
94
+ group_role_in = RBACApiClient::GroupRoleIn.new # GroupRoleIn | Role to add to a group
95
+
96
+ begin
97
+ #Add a role to a group in the tenant
98
+ result = api_instance.add_role_to_group(uuid, group_role_in)
99
+ p result
100
+ rescue RBACApiClient::ApiError => e
101
+ puts "Exception when calling GroupApi->add_role_to_group: #{e}"
102
+ end
103
+ ```
104
+
105
+ ### Parameters
106
+
107
+
108
+ Name | Type | Description | Notes
109
+ ------------- | ------------- | ------------- | -------------
110
+ **uuid** | [**String**](.md)| ID of group to update |
111
+ **group_role_in** | [**GroupRoleIn**](GroupRoleIn.md)| Role to add to a group |
112
+
113
+ ### Return type
114
+
115
+ [**InlineResponse200**](InlineResponse200.md)
116
+
117
+ ### Authorization
118
+
119
+ [basic_auth](../README.md#basic_auth)
120
+
121
+ ### HTTP request headers
122
+
123
+ - **Content-Type**: application/json
124
+ - **Accept**: application/json
125
+
126
+
127
+ ## create_group
128
+
129
+ > GroupOut create_group(group)
130
+
131
+ Create a group in a tenant
132
+
133
+ ### Example
134
+
135
+ ```ruby
136
+ # load the gem
137
+ require 'insights-rbac-api-client'
138
+ # setup authorization
139
+ RBACApiClient.configure do |config|
140
+ # Configure HTTP basic authorization: basic_auth
141
+ config.username = 'YOUR USERNAME'
142
+ config.password = 'YOUR PASSWORD'
143
+ end
144
+
145
+ api_instance = RBACApiClient::GroupApi.new
146
+ group = RBACApiClient::Group.new # Group | Group to create in tenant
147
+
148
+ begin
149
+ #Create a group in a tenant
150
+ result = api_instance.create_group(group)
151
+ p result
152
+ rescue RBACApiClient::ApiError => e
153
+ puts "Exception when calling GroupApi->create_group: #{e}"
154
+ end
155
+ ```
156
+
157
+ ### Parameters
158
+
159
+
160
+ Name | Type | Description | Notes
161
+ ------------- | ------------- | ------------- | -------------
162
+ **group** | [**Group**](Group.md)| Group to create in tenant |
163
+
164
+ ### Return type
165
+
166
+ [**GroupOut**](GroupOut.md)
167
+
168
+ ### Authorization
169
+
170
+ [basic_auth](../README.md#basic_auth)
171
+
172
+ ### HTTP request headers
173
+
174
+ - **Content-Type**: application/json
175
+ - **Accept**: application/json
176
+
177
+
178
+ ## delete_group
179
+
180
+ > delete_group(uuid)
181
+
182
+ Delete a group in the tenant
183
+
184
+ ### Example
185
+
186
+ ```ruby
187
+ # load the gem
188
+ require 'insights-rbac-api-client'
189
+ # setup authorization
190
+ RBACApiClient.configure do |config|
191
+ # Configure HTTP basic authorization: basic_auth
192
+ config.username = 'YOUR USERNAME'
193
+ config.password = 'YOUR PASSWORD'
194
+ end
195
+
196
+ api_instance = RBACApiClient::GroupApi.new
197
+ uuid = 'uuid_example' # String | ID of group to delete
198
+
199
+ begin
200
+ #Delete a group in the tenant
201
+ api_instance.delete_group(uuid)
202
+ rescue RBACApiClient::ApiError => e
203
+ puts "Exception when calling GroupApi->delete_group: #{e}"
204
+ end
205
+ ```
206
+
207
+ ### Parameters
208
+
209
+
210
+ Name | Type | Description | Notes
211
+ ------------- | ------------- | ------------- | -------------
212
+ **uuid** | [**String**](.md)| ID of group to delete |
213
+
214
+ ### Return type
215
+
216
+ nil (empty response body)
217
+
218
+ ### Authorization
219
+
220
+ [basic_auth](../README.md#basic_auth)
221
+
222
+ ### HTTP request headers
223
+
224
+ - **Content-Type**: Not defined
225
+ - **Accept**: application/json, */*
226
+
227
+
228
+ ## delete_principal_from_group
229
+
230
+ > delete_principal_from_group(uuid, usernames)
231
+
232
+ Remove a principal from a group in the tenant
233
+
234
+ ### Example
235
+
236
+ ```ruby
237
+ # load the gem
238
+ require 'insights-rbac-api-client'
239
+ # setup authorization
240
+ RBACApiClient.configure do |config|
241
+ # Configure HTTP basic authorization: basic_auth
242
+ config.username = 'YOUR USERNAME'
243
+ config.password = 'YOUR PASSWORD'
244
+ end
245
+
246
+ api_instance = RBACApiClient::GroupApi.new
247
+ uuid = 'uuid_example' # String | ID of group to update
248
+ usernames = 'usernames_example' # String | A comma separated list of usernames for principals to remove from the group
249
+
250
+ begin
251
+ #Remove a principal from a group in the tenant
252
+ api_instance.delete_principal_from_group(uuid, usernames)
253
+ rescue RBACApiClient::ApiError => e
254
+ puts "Exception when calling GroupApi->delete_principal_from_group: #{e}"
255
+ end
256
+ ```
257
+
258
+ ### Parameters
259
+
260
+
261
+ Name | Type | Description | Notes
262
+ ------------- | ------------- | ------------- | -------------
263
+ **uuid** | [**String**](.md)| ID of group to update |
264
+ **usernames** | **String**| A comma separated list of usernames for principals to remove from the group |
265
+
266
+ ### Return type
267
+
268
+ nil (empty response body)
269
+
270
+ ### Authorization
271
+
272
+ [basic_auth](../README.md#basic_auth)
273
+
274
+ ### HTTP request headers
275
+
276
+ - **Content-Type**: Not defined
277
+ - **Accept**: application/json
278
+
279
+
280
+ ## delete_role_from_group
281
+
282
+ > delete_role_from_group(uuid, roles)
283
+
284
+ Remove a role from a group in the tenant
285
+
286
+ ### Example
287
+
288
+ ```ruby
289
+ # load the gem
290
+ require 'insights-rbac-api-client'
291
+ # setup authorization
292
+ RBACApiClient.configure do |config|
293
+ # Configure HTTP basic authorization: basic_auth
294
+ config.username = 'YOUR USERNAME'
295
+ config.password = 'YOUR PASSWORD'
296
+ end
297
+
298
+ api_instance = RBACApiClient::GroupApi.new
299
+ uuid = 'uuid_example' # String | ID of group to update
300
+ roles = 'roles_example' # String | A comma separated list of role UUIDs for roles to remove from the group
301
+
302
+ begin
303
+ #Remove a role from a group in the tenant
304
+ api_instance.delete_role_from_group(uuid, roles)
305
+ rescue RBACApiClient::ApiError => e
306
+ puts "Exception when calling GroupApi->delete_role_from_group: #{e}"
307
+ end
308
+ ```
309
+
310
+ ### Parameters
311
+
312
+
313
+ Name | Type | Description | Notes
314
+ ------------- | ------------- | ------------- | -------------
315
+ **uuid** | [**String**](.md)| ID of group to update |
316
+ **roles** | **String**| A comma separated list of role UUIDs for roles to remove from the group |
317
+
318
+ ### Return type
319
+
320
+ nil (empty response body)
321
+
322
+ ### Authorization
323
+
324
+ [basic_auth](../README.md#basic_auth)
325
+
326
+ ### HTTP request headers
327
+
328
+ - **Content-Type**: Not defined
329
+ - **Accept**: application/json
330
+
331
+
332
+ ## get_group
333
+
334
+ > GroupWithPrincipalsAndRoles get_group(uuid)
335
+
336
+ Get a group in the tenant
337
+
338
+ ### Example
339
+
340
+ ```ruby
341
+ # load the gem
342
+ require 'insights-rbac-api-client'
343
+ # setup authorization
344
+ RBACApiClient.configure do |config|
345
+ # Configure HTTP basic authorization: basic_auth
346
+ config.username = 'YOUR USERNAME'
347
+ config.password = 'YOUR PASSWORD'
348
+ end
349
+
350
+ api_instance = RBACApiClient::GroupApi.new
351
+ uuid = 'uuid_example' # String | ID of group to get
352
+
353
+ begin
354
+ #Get a group in the tenant
355
+ result = api_instance.get_group(uuid)
356
+ p result
357
+ rescue RBACApiClient::ApiError => e
358
+ puts "Exception when calling GroupApi->get_group: #{e}"
359
+ end
360
+ ```
361
+
362
+ ### Parameters
363
+
364
+
365
+ Name | Type | Description | Notes
366
+ ------------- | ------------- | ------------- | -------------
367
+ **uuid** | [**String**](.md)| ID of group to get |
368
+
369
+ ### Return type
370
+
371
+ [**GroupWithPrincipalsAndRoles**](GroupWithPrincipalsAndRoles.md)
372
+
373
+ ### Authorization
374
+
375
+ [basic_auth](../README.md#basic_auth)
376
+
377
+ ### HTTP request headers
378
+
379
+ - **Content-Type**: Not defined
380
+ - **Accept**: application/json
381
+
382
+
383
+ ## get_principals_from_group
384
+
385
+ > PrincipalPagination get_principals_from_group(uuid, opts)
386
+
387
+ Get a list of principals from a group in the tenant
388
+
389
+ By default, responses are sorted in ascending order by username
390
+
391
+ ### Example
392
+
393
+ ```ruby
394
+ # load the gem
395
+ require 'insights-rbac-api-client'
396
+ # setup authorization
397
+ RBACApiClient.configure do |config|
398
+ # Configure HTTP basic authorization: basic_auth
399
+ config.username = 'YOUR USERNAME'
400
+ config.password = 'YOUR PASSWORD'
401
+ end
402
+
403
+ api_instance = RBACApiClient::GroupApi.new
404
+ uuid = 'uuid_example' # String | ID of group from which to get principals
405
+ opts = {
406
+ principal_username: 'principal_username_example', # String | Parameter for filtering group principals by principal `username` using string contains search.
407
+ limit: 10, # Integer | Parameter for selecting the amount of data returned.
408
+ offset: 0, # Integer | Parameter for selecting the offset of data.
409
+ order_by: 'order_by_example' # String | Parameter for ordering principals by value. For inverse ordering, supply '-' before the param value, such as: ?order_by=-username
410
+ }
411
+
412
+ begin
413
+ #Get a list of principals from a group in the tenant
414
+ result = api_instance.get_principals_from_group(uuid, opts)
415
+ p result
416
+ rescue RBACApiClient::ApiError => e
417
+ puts "Exception when calling GroupApi->get_principals_from_group: #{e}"
418
+ end
419
+ ```
420
+
421
+ ### Parameters
422
+
423
+
424
+ Name | Type | Description | Notes
425
+ ------------- | ------------- | ------------- | -------------
426
+ **uuid** | [**String**](.md)| ID of group from which to get principals |
427
+ **principal_username** | **String**| Parameter for filtering group principals by principal `username` using string contains search. | [optional]
428
+ **limit** | **Integer**| Parameter for selecting the amount of data returned. | [optional] [default to 10]
429
+ **offset** | **Integer**| Parameter for selecting the offset of data. | [optional] [default to 0]
430
+ **order_by** | **String**| Parameter for ordering principals by value. For inverse ordering, supply '-' before the param value, such as: ?order_by=-username | [optional]
431
+
432
+ ### Return type
433
+
434
+ [**PrincipalPagination**](PrincipalPagination.md)
435
+
436
+ ### Authorization
437
+
438
+ [basic_auth](../README.md#basic_auth)
439
+
440
+ ### HTTP request headers
441
+
442
+ - **Content-Type**: Not defined
443
+ - **Accept**: application/json
444
+
445
+
446
+ ## list_groups
447
+
448
+ > GroupPagination list_groups(opts)
449
+
450
+ List the groups for a tenant
451
+
452
+ By default, responses are sorted in ascending order by group name
453
+
454
+ ### Example
455
+
456
+ ```ruby
457
+ # load the gem
458
+ require 'insights-rbac-api-client'
459
+ # setup authorization
460
+ RBACApiClient.configure do |config|
461
+ # Configure HTTP basic authorization: basic_auth
462
+ config.username = 'YOUR USERNAME'
463
+ config.password = 'YOUR PASSWORD'
464
+ end
465
+
466
+ api_instance = RBACApiClient::GroupApi.new
467
+ opts = {
468
+ limit: 10, # Integer | Parameter for selecting the amount of data returned.
469
+ offset: 0, # Integer | Parameter for selecting the offset of data.
470
+ name: 'name_example', # String | Parameter for filtering resource by name using string contains search.
471
+ scope: 'account', # String | Parameter for filtering resource by scope.
472
+ username: 'username_example', # String | A username for a principal to filter for groups
473
+ uuid: ['uuid_example'], # Array<String> | A list of UUIDs to filter listed groups.
474
+ role_names: ['role_names_example'], # Array<String> | List of role name to filter for groups. It is exact match but case-insensitive
475
+ role_discriminator: 'role_discriminator_example', # String | Discriminator that works with role_names to indicate matching all/any of the role names
476
+ order_by: 'order_by_example' # String | Parameter for ordering resource by value. For inverse ordering, supply '-' before the param value, such as: ?order_by=-name
477
+ }
478
+
479
+ begin
480
+ #List the groups for a tenant
481
+ result = api_instance.list_groups(opts)
482
+ p result
483
+ rescue RBACApiClient::ApiError => e
484
+ puts "Exception when calling GroupApi->list_groups: #{e}"
485
+ end
486
+ ```
487
+
488
+ ### Parameters
489
+
490
+
491
+ Name | Type | Description | Notes
492
+ ------------- | ------------- | ------------- | -------------
493
+ **limit** | **Integer**| Parameter for selecting the amount of data returned. | [optional] [default to 10]
494
+ **offset** | **Integer**| Parameter for selecting the offset of data. | [optional] [default to 0]
495
+ **name** | **String**| Parameter for filtering resource by name using string contains search. | [optional]
496
+ **scope** | **String**| Parameter for filtering resource by scope. | [optional] [default to &#39;account&#39;]
497
+ **username** | **String**| A username for a principal to filter for groups | [optional]
498
+ **uuid** | [**Array&lt;String&gt;**](String.md)| A list of UUIDs to filter listed groups. | [optional]
499
+ **role_names** | [**Array&lt;String&gt;**](String.md)| List of role name to filter for groups. It is exact match but case-insensitive | [optional]
500
+ **role_discriminator** | **String**| Discriminator that works with role_names to indicate matching all/any of the role names | [optional]
501
+ **order_by** | **String**| Parameter for ordering resource by value. For inverse ordering, supply &#39;-&#39; before the param value, such as: ?order_by&#x3D;-name | [optional]
502
+
503
+ ### Return type
504
+
505
+ [**GroupPagination**](GroupPagination.md)
506
+
507
+ ### Authorization
508
+
509
+ [basic_auth](../README.md#basic_auth)
510
+
511
+ ### HTTP request headers
512
+
513
+ - **Content-Type**: Not defined
514
+ - **Accept**: application/json
515
+
516
+
517
+ ## list_roles_for_group
518
+
519
+ > GroupRolesPagination list_roles_for_group(uuid, opts)
520
+
521
+ List the roles for a group in the tenant
522
+
523
+ By default, responses are sorted in ascending order by role name
524
+
525
+ ### Example
526
+
527
+ ```ruby
528
+ # load the gem
529
+ require 'insights-rbac-api-client'
530
+ # setup authorization
531
+ RBACApiClient.configure do |config|
532
+ # Configure HTTP basic authorization: basic_auth
533
+ config.username = 'YOUR USERNAME'
534
+ config.password = 'YOUR PASSWORD'
535
+ end
536
+
537
+ api_instance = RBACApiClient::GroupApi.new
538
+ uuid = 'uuid_example' # String | ID of group
539
+ opts = {
540
+ exclude: false, # Boolean | If this is set to true, the result would be roles excluding the ones in the group
541
+ role_name: 'role_name_example', # String | Parameter for filtering group roles by role `name` using string contains search.
542
+ role_description: 'role_description_example', # String | Parameter for filtering group roles by role `description` using string contains search.
543
+ limit: 10, # Integer | Parameter for selecting the amount of data returned.
544
+ offset: 0, # Integer | Parameter for selecting the offset of data.
545
+ order_by: 'order_by_example' # String | Parameter for ordering resource by value. For inverse ordering, supply '-' before the param value, such as: ?order_by=-name
546
+ }
547
+
548
+ begin
549
+ #List the roles for a group in the tenant
550
+ result = api_instance.list_roles_for_group(uuid, opts)
551
+ p result
552
+ rescue RBACApiClient::ApiError => e
553
+ puts "Exception when calling GroupApi->list_roles_for_group: #{e}"
554
+ end
555
+ ```
556
+
557
+ ### Parameters
558
+
559
+
560
+ Name | Type | Description | Notes
561
+ ------------- | ------------- | ------------- | -------------
562
+ **uuid** | [**String**](.md)| ID of group |
563
+ **exclude** | **Boolean**| If this is set to true, the result would be roles excluding the ones in the group | [optional] [default to false]
564
+ **role_name** | **String**| Parameter for filtering group roles by role &#x60;name&#x60; using string contains search. | [optional]
565
+ **role_description** | **String**| Parameter for filtering group roles by role &#x60;description&#x60; using string contains search. | [optional]
566
+ **limit** | **Integer**| Parameter for selecting the amount of data returned. | [optional] [default to 10]
567
+ **offset** | **Integer**| Parameter for selecting the offset of data. | [optional] [default to 0]
568
+ **order_by** | **String**| Parameter for ordering resource by value. For inverse ordering, supply &#39;-&#39; before the param value, such as: ?order_by&#x3D;-name | [optional]
569
+
570
+ ### Return type
571
+
572
+ [**GroupRolesPagination**](GroupRolesPagination.md)
573
+
574
+ ### Authorization
575
+
576
+ [basic_auth](../README.md#basic_auth)
577
+
578
+ ### HTTP request headers
579
+
580
+ - **Content-Type**: Not defined
581
+ - **Accept**: application/json
582
+
583
+
584
+ ## update_group
585
+
586
+ > GroupOut update_group(uuid, group)
587
+
588
+ Udate a group in the tenant
589
+
590
+ ### Example
591
+
592
+ ```ruby
593
+ # load the gem
594
+ require 'insights-rbac-api-client'
595
+ # setup authorization
596
+ RBACApiClient.configure do |config|
597
+ # Configure HTTP basic authorization: basic_auth
598
+ config.username = 'YOUR USERNAME'
599
+ config.password = 'YOUR PASSWORD'
600
+ end
601
+
602
+ api_instance = RBACApiClient::GroupApi.new
603
+ uuid = 'uuid_example' # String | ID of group to update
604
+ group = RBACApiClient::Group.new # Group | Group to update in tenant
605
+
606
+ begin
607
+ #Udate a group in the tenant
608
+ result = api_instance.update_group(uuid, group)
609
+ p result
610
+ rescue RBACApiClient::ApiError => e
611
+ puts "Exception when calling GroupApi->update_group: #{e}"
612
+ end
613
+ ```
614
+
615
+ ### Parameters
616
+
617
+
618
+ Name | Type | Description | Notes
619
+ ------------- | ------------- | ------------- | -------------
620
+ **uuid** | [**String**](.md)| ID of group to update |
621
+ **group** | [**Group**](Group.md)| Group to update in tenant |
622
+
623
+ ### Return type
624
+
625
+ [**GroupOut**](GroupOut.md)
626
+
627
+ ### Authorization
628
+
629
+ [basic_auth](../README.md#basic_auth)
630
+
631
+ ### HTTP request headers
632
+
633
+ - **Content-Type**: application/json
634
+ - **Accept**: application/json, */*
635
+