add necessary apis for org directory imports
This commit is contained in:
parent
12533dd951
commit
66bdf442d6
|
@ -2,6 +2,7 @@ import { EnvironmentUrls } from '../models/domain/environmentUrls';
|
||||||
|
|
||||||
import { CipherRequest } from '../models/request/cipherRequest';
|
import { CipherRequest } from '../models/request/cipherRequest';
|
||||||
import { FolderRequest } from '../models/request/folderRequest';
|
import { FolderRequest } from '../models/request/folderRequest';
|
||||||
|
import { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';
|
||||||
import { PasswordHintRequest } from '../models/request/passwordHintRequest';
|
import { PasswordHintRequest } from '../models/request/passwordHintRequest';
|
||||||
import { RegisterRequest } from '../models/request/registerRequest';
|
import { RegisterRequest } from '../models/request/registerRequest';
|
||||||
import { TokenRequest } from '../models/request/tokenRequest';
|
import { TokenRequest } from '../models/request/tokenRequest';
|
||||||
|
@ -36,4 +37,5 @@ export abstract class ApiService {
|
||||||
postCipherAttachment: (id: string, data: FormData) => Promise<CipherResponse>;
|
postCipherAttachment: (id: string, data: FormData) => Promise<CipherResponse>;
|
||||||
deleteCipherAttachment: (id: string, attachmentId: string) => Promise<any>;
|
deleteCipherAttachment: (id: string, attachmentId: string) => Promise<any>;
|
||||||
getSync: () => Promise<SyncResponse>;
|
getSync: () => Promise<SyncResponse>;
|
||||||
|
postImportDirectory: (organizationId: string, request: ImportDirectoryRequest) => Promise<any>;
|
||||||
}
|
}
|
||||||
|
|
|
@ -0,0 +1,7 @@
|
||||||
|
import { ImportDirectoryRequestGroup } from './importDirectoryRequestGroup';
|
||||||
|
import { ImportDirectoryRequestUser } from './importDirectoryRequestUser';
|
||||||
|
|
||||||
|
export class ImportDirectoryRequest {
|
||||||
|
groups: ImportDirectoryRequestGroup[] = [];
|
||||||
|
users: ImportDirectoryRequestUser[] = [];
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
export class ImportDirectoryRequestGroup {
|
||||||
|
name: string;
|
||||||
|
externalId: string;
|
||||||
|
users: string[];
|
||||||
|
}
|
|
@ -0,0 +1,5 @@
|
||||||
|
export class ImportDirectoryRequestUser {
|
||||||
|
externalId: string;
|
||||||
|
email: string;
|
||||||
|
deleted: boolean;
|
||||||
|
}
|
|
@ -8,6 +8,7 @@ import { EnvironmentUrls } from '../models/domain/environmentUrls';
|
||||||
|
|
||||||
import { CipherRequest } from '../models/request/cipherRequest';
|
import { CipherRequest } from '../models/request/cipherRequest';
|
||||||
import { FolderRequest } from '../models/request/folderRequest';
|
import { FolderRequest } from '../models/request/folderRequest';
|
||||||
|
import { ImportDirectoryRequest } from '../models/request/importDirectoryRequest';
|
||||||
import { PasswordHintRequest } from '../models/request/passwordHintRequest';
|
import { PasswordHintRequest } from '../models/request/passwordHintRequest';
|
||||||
import { RegisterRequest } from '../models/request/registerRequest';
|
import { RegisterRequest } from '../models/request/registerRequest';
|
||||||
import { TokenRequest } from '../models/request/tokenRequest';
|
import { TokenRequest } from '../models/request/tokenRequest';
|
||||||
|
@ -379,6 +380,26 @@ export class ApiService implements ApiServiceAbstraction {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async postImportDirectory(organizationId: string, request: ImportDirectoryRequest): Promise<any> {
|
||||||
|
const authHeader = await this.handleTokenState();
|
||||||
|
const response = await fetch(new Request(this.baseUrl + '/organizations/' + organizationId + '/import', {
|
||||||
|
body: JSON.stringify(request),
|
||||||
|
cache: 'no-cache',
|
||||||
|
headers: new Headers({
|
||||||
|
'Accept': 'application/json',
|
||||||
|
'Authorization': authHeader,
|
||||||
|
'Content-Type': 'application/json; charset=utf-8',
|
||||||
|
'Device-Type': this.deviceType,
|
||||||
|
}),
|
||||||
|
method: 'POST',
|
||||||
|
}));
|
||||||
|
|
||||||
|
if (response.status !== 200) {
|
||||||
|
const error = await this.handleError(response, false);
|
||||||
|
return Promise.reject(error);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
// Helpers
|
// Helpers
|
||||||
|
|
||||||
private async handleError(response: Response, tokenError: boolean): Promise<ErrorResponse> {
|
private async handleError(response: Response, tokenError: boolean): Promise<ErrorResponse> {
|
||||||
|
|
Loading…
Reference in New Issue