/* 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 { SynchronizationResult, SynchronizationResultFromJSON, SynchronizationResultToJSON, } from '../models'; export interface IdNameGetRequest { id: string; } export interface RealmUserStorageIdNameGetRequest { realm: string; id: string; } export interface RealmUserStorageIdRemoveImportedUsersPostRequest { realm: string; id: string; } export interface RealmUserStorageIdSyncPostRequest { realm: string; id: string; action?: string; } export interface RealmUserStorageIdUnlinkUsersPostRequest { realm: string; id: string; } export interface RealmUserStorageParentIdMappersIdSyncPostRequest { realm: string; parentId: string; id: string; direction?: string; } /** * */ export class UserStorageProviderApi extends runtime.BaseAPI { /** * Need this for admin console to display simple name of provider when displaying client detail KEYCLOAK-4328 */ async idNameGetRaw(requestParameters: IdNameGetRequest): Promise> { if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling idNameGet.'); } 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: `/{id}/name`.replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Need this for admin console to display simple name of provider when displaying client detail KEYCLOAK-4328 */ async idNameGet(requestParameters: IdNameGetRequest): Promise<{ [key: string]: object; }> { const response = await this.idNameGetRaw(requestParameters); return await response.value(); } /** * Need this for admin console to display simple name of provider when displaying user detail KEYCLOAK-4328 */ async realmUserStorageIdNameGetRaw(requestParameters: RealmUserStorageIdNameGetRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmUserStorageIdNameGet.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmUserStorageIdNameGet.'); } 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}/user-storage/{id}/name`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'GET', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response); } /** * Need this for admin console to display simple name of provider when displaying user detail KEYCLOAK-4328 */ async realmUserStorageIdNameGet(requestParameters: RealmUserStorageIdNameGetRequest): Promise<{ [key: string]: object; }> { const response = await this.realmUserStorageIdNameGetRaw(requestParameters); return await response.value(); } /** * Remove imported users */ async realmUserStorageIdRemoveImportedUsersPostRaw(requestParameters: RealmUserStorageIdRemoveImportedUsersPostRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmUserStorageIdRemoveImportedUsersPost.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmUserStorageIdRemoveImportedUsersPost.'); } 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}/user-storage/{id}/remove-imported-users`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); } /** * Remove imported users */ async realmUserStorageIdRemoveImportedUsersPost(requestParameters: RealmUserStorageIdRemoveImportedUsersPostRequest): Promise { await this.realmUserStorageIdRemoveImportedUsersPostRaw(requestParameters); } /** * Trigger sync of users Action can be \"triggerFullSync\" or \"triggerChangedUsersSync\" */ async realmUserStorageIdSyncPostRaw(requestParameters: RealmUserStorageIdSyncPostRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmUserStorageIdSyncPost.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmUserStorageIdSyncPost.'); } const queryParameters: runtime.HTTPQuery = {}; if (requestParameters.action !== undefined) { queryParameters['action'] = requestParameters.action; } 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}/user-storage/{id}/sync`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => SynchronizationResultFromJSON(jsonValue)); } /** * Trigger sync of users Action can be \"triggerFullSync\" or \"triggerChangedUsersSync\" */ async realmUserStorageIdSyncPost(requestParameters: RealmUserStorageIdSyncPostRequest): Promise { const response = await this.realmUserStorageIdSyncPostRaw(requestParameters); return await response.value(); } /** * Unlink imported users from a storage provider */ async realmUserStorageIdUnlinkUsersPostRaw(requestParameters: RealmUserStorageIdUnlinkUsersPostRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmUserStorageIdUnlinkUsersPost.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmUserStorageIdUnlinkUsersPost.'); } 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}/user-storage/{id}/unlink-users`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.VoidApiResponse(response); } /** * Unlink imported users from a storage provider */ async realmUserStorageIdUnlinkUsersPost(requestParameters: RealmUserStorageIdUnlinkUsersPostRequest): Promise { await this.realmUserStorageIdUnlinkUsersPostRaw(requestParameters); } /** * Trigger sync of mapper data related to ldap mapper (roles, groups, …​) direction is \"fedToKeycloak\" or \"keycloakToFed\" */ async realmUserStorageParentIdMappersIdSyncPostRaw(requestParameters: RealmUserStorageParentIdMappersIdSyncPostRequest): Promise> { if (requestParameters.realm === null || requestParameters.realm === undefined) { throw new runtime.RequiredError('realm','Required parameter requestParameters.realm was null or undefined when calling realmUserStorageParentIdMappersIdSyncPost.'); } if (requestParameters.parentId === null || requestParameters.parentId === undefined) { throw new runtime.RequiredError('parentId','Required parameter requestParameters.parentId was null or undefined when calling realmUserStorageParentIdMappersIdSyncPost.'); } if (requestParameters.id === null || requestParameters.id === undefined) { throw new runtime.RequiredError('id','Required parameter requestParameters.id was null or undefined when calling realmUserStorageParentIdMappersIdSyncPost.'); } const queryParameters: runtime.HTTPQuery = {}; if (requestParameters.direction !== undefined) { queryParameters['direction'] = requestParameters.direction; } 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}/user-storage/{parentId}/mappers/{id}/sync`.replace(`{${"realm"}}`, encodeURIComponent(String(requestParameters.realm))).replace(`{${"parentId"}}`, encodeURIComponent(String(requestParameters.parentId))).replace(`{${"id"}}`, encodeURIComponent(String(requestParameters.id))), method: 'POST', headers: headerParameters, query: queryParameters, }); return new runtime.JSONApiResponse(response, (jsonValue) => SynchronizationResultFromJSON(jsonValue)); } /** * Trigger sync of mapper data related to ldap mapper (roles, groups, …​) direction is \"fedToKeycloak\" or \"keycloakToFed\" */ async realmUserStorageParentIdMappersIdSyncPost(requestParameters: RealmUserStorageParentIdMappersIdSyncPostRequest): Promise { const response = await this.realmUserStorageParentIdMappersIdSyncPostRaw(requestParameters); return await response.value(); } }