/* tslint:disable */ /* eslint-disable */ /** * Keycloak Admin REST API * This is a REST API reference for the Keycloak Admin * * The version of the OpenAPI document: 1 * * * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech). * https://openapi-generator.tech * Do not edit the class manually. */ import * as runtime from '../runtime'; import { GroupRepresentation, GroupRepresentationFromJSON, GroupRepresentationToJSON, ManagementPermissionReference, ManagementPermissionReferenceFromJSON, ManagementPermissionReferenceToJSON, } from '../models'; export interface RealmGroupsCountGetRequest { realm: string; search?: string; top?: boolean; } export interface RealmGroupsGetRequest { realm: string; briefRepresentation?: boolean; first?: number; max?: number; search?: string; } export interface RealmGroupsIdChildrenPostRequest { realm: string; id: string; groupRepresentation: GroupRepresentation; } export interface RealmGroupsIdDeleteRequest { realm: string; id: string; } export interface RealmGroupsIdGetRequest { realm: string; id: string; } export interface RealmGroupsIdManagementPermissionsGetRequest { realm: string; id: string; } export interface RealmGroupsIdManagementPermissionsPutRequest { realm: string; id: string; managementPermissionReference: ManagementPermissionReference; } export interface RealmGroupsIdMembersGetRequest { realm: string; id: string; briefRepresentation?: boolean; first?: number; max?: number; } export interface RealmGroupsIdPutRequest { realm: string; id: string; groupRepresentation: GroupRepresentation; } export interface RealmGroupsPostRequest { realm: string; groupRepresentation: GroupRepresentation; } /** * */ export class GroupsApi extends runtime.BaseAPI { /** * Returns the groups counts. */ async realmGroupsCountGetRaw(requestParameters: RealmGroupsCountGetRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsCountGet.'); } const queryParameters: runtime.HTTPQuery = {}; if (requestParameters.search !== undefined) { queryParameters['search'] = requestParameters.search; } if (requestParameters.top !== undefined) { queryParameters['top'] = requestParameters.top; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/count`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Returns the groups counts. */ async realmGroupsCountGet(requestParameters: RealmGroupsCountGetRequest): Promise<{ [key: string]: object; }> { const response = await this.realmGroupsCountGetRaw(requestParameters); return await response.value(); } /** * Get group hierarchy. */ async realmGroupsGetRaw(requestParameters: RealmGroupsGetRequest): Promise>> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsGet.'); } const queryParameters: runtime.HTTPQuery = {}; if (requestParameters.briefRepresentation !== undefined) { queryParameters['briefRepresentation'] = requestParameters.briefRepresentation; } if (requestParameters.first !== undefined) { queryParameters['first'] = requestParameters.first; } if (requestParameters.max !== undefined) { queryParameters['max'] = requestParameters.max; } if (requestParameters.search !== undefined) { queryParameters['search'] = requestParameters.search; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Get group hierarchy. */ async realmGroupsGet(requestParameters: RealmGroupsGetRequest): Promise> { const response = await this.realmGroupsGetRaw(requestParameters); return await response.value(); } /** * Set or create child. */ async realmGroupsIdChildrenPostRaw(requestParameters: RealmGroupsIdChildrenPostRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdChildrenPost.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdChildrenPost.'); } if (requestParameters.groupRepresentation === null || requestParameters.groupRepresentation === undefined) { throw new runtime.RequiredError('groupRepresentation','Required parameter requestParameters.groupRepresentation was null or undefined when calling realmGroupsIdChildrenPost.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}/children`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, body: GroupRepresentationToJSON(requestParameters.groupRepresentation), }); return new runtime.VoidApiResponse(response); } /** * Set or create child. */ async realmGroupsIdChildrenPost(requestParameters: RealmGroupsIdChildrenPostRequest): Promise { await this.realmGroupsIdChildrenPostRaw(requestParameters); } /** */ async realmGroupsIdDeleteRaw(requestParameters: RealmGroupsIdDeleteRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdDelete.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdDelete.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'DELETE', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); } /** */ async realmGroupsIdDelete(requestParameters: RealmGroupsIdDeleteRequest): Promise { await this.realmGroupsIdDeleteRaw(requestParameters); } /** */ async realmGroupsIdGetRaw(requestParameters: RealmGroupsIdGetRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdGet.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdGet.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => GroupRepresentationFromJSON(jsonValue)); } /** */ async realmGroupsIdGet(requestParameters: RealmGroupsIdGetRequest): Promise { const response = await this.realmGroupsIdGetRaw(requestParameters); return await response.value(); } /** * Return object stating whether client Authorization permissions have been initialized or not and a reference */ async realmGroupsIdManagementPermissionsGetRaw(requestParameters: RealmGroupsIdManagementPermissionsGetRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdManagementPermissionsGet.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdManagementPermissionsGet.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}/management/permissions`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => ManagementPermissionReferenceFromJSON(jsonValue)); } /** * Return object stating whether client Authorization permissions have been initialized or not and a reference */ async realmGroupsIdManagementPermissionsGet(requestParameters: RealmGroupsIdManagementPermissionsGetRequest): Promise { const response = await this.realmGroupsIdManagementPermissionsGetRaw(requestParameters); return await response.value(); } /** * Return object stating whether client Authorization permissions have been initialized or not and a reference */ async realmGroupsIdManagementPermissionsPutRaw(requestParameters: RealmGroupsIdManagementPermissionsPutRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdManagementPermissionsPut.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdManagementPermissionsPut.'); } if (requestParameters.managementPermissionReference === null || requestParameters.managementPermissionReference === undefined) { throw new runtime.RequiredError('managementPermissionReference','Required parameter requestParameters.managementPermissionReference was null or undefined when calling realmGroupsIdManagementPermissionsPut.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}/management/permissions`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'PUT', headers: headerParameters, query: queryParameters, body: ManagementPermissionReferenceToJSON(requestParameters.managementPermissionReference), }); return new runtime.JSONApiResponse(response, (jsonValue) => ManagementPermissionReferenceFromJSON(jsonValue)); } /** * Return object stating whether client Authorization permissions have been initialized or not and a reference */ async realmGroupsIdManagementPermissionsPut(requestParameters: RealmGroupsIdManagementPermissionsPutRequest): Promise { const response = await this.realmGroupsIdManagementPermissionsPutRaw(requestParameters); return await response.value(); } /** * Get users Returns a stream of users, filtered according to query parameters */ async realmGroupsIdMembersGetRaw(requestParameters: RealmGroupsIdMembersGetRequest): Promise>> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdMembersGet.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdMembersGet.'); } const queryParameters: runtime.HTTPQuery = {}; if (requestParameters.briefRepresentation !== undefined) { queryParameters['briefRepresentation'] = requestParameters.briefRepresentation; } if (requestParameters.first !== undefined) { queryParameters['first'] = requestParameters.first; } if (requestParameters.max !== undefined) { queryParameters['max'] = requestParameters.max; } const headerParameters: runtime.HTTPHeaders = {}; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}/members`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Get users Returns a stream of users, filtered according to query parameters */ async realmGroupsIdMembersGet(requestParameters: RealmGroupsIdMembersGetRequest): Promise> { const response = await this.realmGroupsIdMembersGetRaw(requestParameters); return await response.value(); } /** * Update group, ignores subgroups. */ async realmGroupsIdPutRaw(requestParameters: RealmGroupsIdPutRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsIdPut.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmGroupsIdPut.'); } if (requestParameters.groupRepresentation === null || requestParameters.groupRepresentation === undefined) { throw new runtime.RequiredError('groupRepresentation','Required parameter requestParameters.groupRepresentation was null or undefined when calling realmGroupsIdPut.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups/{id}`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'PUT', headers: headerParameters, query: queryParameters, body: GroupRepresentationToJSON(requestParameters.groupRepresentation), }); return new runtime.VoidApiResponse(response); } /** * Update group, ignores subgroups. */ async realmGroupsIdPut(requestParameters: RealmGroupsIdPutRequest): Promise { await this.realmGroupsIdPutRaw(requestParameters); } /** * create or add a top level realm groupSet or create child. */ async realmGroupsPostRaw(requestParameters: RealmGroupsPostRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmGroupsPost.'); } if (requestParameters.groupRepresentation === null || requestParameters.groupRepresentation === undefined) { throw new runtime.RequiredError('groupRepresentation','Required parameter requestParameters.groupRepresentation was null or undefined when calling realmGroupsPost.'); } const queryParameters: runtime.HTTPQuery = {}; const headerParameters: runtime.HTTPHeaders = {}; headerParameters['Content-Type'] = 'application/json'; if (this.configuration && this.configuration.accessToken) { const token = this.configuration.accessToken; const tokenString = typeof token === 'function' ? token("access_token", []) : token; if (tokenString) { headerParameters["Authorization"] = `Bearer ${tokenString}`; } } const response = await this.request({ path: `/{realm}/groups`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))), method: 'POST', headers: headerParameters, query: queryParameters, body: GroupRepresentationToJSON(requestParameters.groupRepresentation), }); return new runtime.VoidApiResponse(response); } /** * create or add a top level realm groupSet or create child. */ async realmGroupsPost(requestParameters: RealmGroupsPostRequest): Promise { await this.realmGroupsPostRaw(requestParameters); } }