@ampsec/platform-client 58.4.0 → 58.6.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.
- package/build/src/services/AmpApi.d.ts +2 -0
- package/build/src/services/AmpApi.js +2 -0
- package/build/src/services/AmpApi.js.map +1 -1
- package/build/src/services/constants.d.ts +1 -0
- package/build/src/services/constants.js +1 -0
- package/build/src/services/constants.js.map +1 -1
- package/build/src/services/usersInsights.service.d.ts +19 -0
- package/build/src/services/usersInsights.service.js +52 -0
- package/build/src/services/usersInsights.service.js.map +1 -0
- package/package.json +1 -1
- package/src/services/AmpApi.ts +3 -0
- package/src/services/constants.ts +1 -0
- package/src/services/usersInsights.service.ts +61 -0
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { AgentDto, AgentUpsertDto, AssetDto, ProviderDto, ReportResultDto, SaasAssetDto, SaasComponentDto, SaasUserDto, TenantDto, TenantUpsertDto, UserDto } from '../dto';
|
|
2
2
|
import { AmpEntityService, AmpDataService, AmpReportService, AmpSettingsService, ConnectorsService, FindingsInsightsService, FindingsService, NotificationService, PredictionService } from '.';
|
|
3
3
|
import { AmpRestClientOptions, AgentIdentityService, ConnectorInstallService, EnumService, RestClient } from './rest';
|
|
4
|
+
import { UsersInsightsService } from './usersInsights.service';
|
|
4
5
|
export type AmpApiOptions = AmpRestClientOptions;
|
|
5
6
|
/**
|
|
6
7
|
* AMP API
|
|
@@ -33,6 +34,7 @@ export declare class AmpApi {
|
|
|
33
34
|
readonly settings: AmpSettingsService;
|
|
34
35
|
readonly tenants: AmpEntityService<TenantUpsertDto, TenantDto>;
|
|
35
36
|
readonly users: AmpDataService<UserDto>;
|
|
37
|
+
readonly usersInsights: UsersInsightsService;
|
|
36
38
|
readonly prediction: PredictionService;
|
|
37
39
|
constructor(rest: RestClient);
|
|
38
40
|
static instance(options: AmpApiOptions): AmpApi;
|
|
@@ -4,6 +4,7 @@ exports.AmpApi = void 0;
|
|
|
4
4
|
const _1 = require(".");
|
|
5
5
|
const constants_1 = require("./constants");
|
|
6
6
|
const rest_1 = require("./rest");
|
|
7
|
+
const usersInsights_service_1 = require("./usersInsights.service");
|
|
7
8
|
/**
|
|
8
9
|
* AMP API
|
|
9
10
|
* This client is a wrapper around the AMP REST API meant to be used by
|
|
@@ -36,6 +37,7 @@ class AmpApi {
|
|
|
36
37
|
this.settings = new _1.AmpSettingsService(rest);
|
|
37
38
|
this.tenants = new _1.AmpEntityServiceImpl(rest, constants_1.KIND.TENANTS);
|
|
38
39
|
this.users = new _1.AmpDataServiceImpl(rest, constants_1.KIND.USERS);
|
|
40
|
+
this.usersInsights = new usersInsights_service_1.UsersInsightsService(rest);
|
|
39
41
|
this.prediction = new _1.PredictionService(rest, constants_1.KIND.FINDINGS);
|
|
40
42
|
}
|
|
41
43
|
static instance(options) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AmpApi.js","sourceRoot":"","sources":["../../../src/services/AmpApi.ts"],"names":[],"mappings":";;;AACA,wBAaW;AACX,2CAAmD;AACnD,iCAA0J;
|
|
1
|
+
{"version":3,"file":"AmpApi.js","sourceRoot":"","sources":["../../../src/services/AmpApi.ts"],"names":[],"mappings":";;;AACA,wBAaW;AACX,2CAAmD;AACnD,iCAA0J;AAC1J,mEAA6D;AAI7D;;;;;;;;;;;GAWG;AACH,MAAa,MAAM;IAsBjB,YAAY,IAAgB;QAC1B,IAAI,CAAC,MAAM,GAAG,IAAI,uBAAoB,CAA2B,IAAI,EAAE,gBAAI,CAAC,MAAM,CAAC,CAAC;QACpF,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAkB,CAAW,IAAI,EAAE,gBAAI,CAAC,MAAM,CAAC,CAAC;QACjE,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAiB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,KAAK,GAAG,IAAI,yBAAkB,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,QAAQ,GAAG,IAAI,kBAAe,CAAC,IAAI,CAAC,CAAC;QAC1C,IAAI,CAAC,gBAAgB,GAAG,IAAI,0BAAuB,CAAC,IAAI,EAAE,gBAAI,CAAC,iBAAiB,CAAC,CAAC;QAClF,IAAI,CAAC,QAAQ,GAAG,IAAI,2BAAoB,CAAC,IAAI,CAAC,CAAC;QAC/C,IAAI,CAAC,OAAO,GAAG,IAAI,8BAAuB,CAAC,IAAI,EAAE,4BAAgB,CAAC,CAAC;QACnE,IAAI,CAAC,aAAa,GAAG,IAAI,sBAAmB,CAAC,IAAI,CAAC,CAAC;QACnD,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAkB,CAAc,IAAI,EAAE,gBAAI,CAAC,SAAS,CAAC,CAAC;QAC3E,IAAI,CAAC,aAAa,GAAG,IAAI,qBAAkB,CAAkB,IAAI,EAAE,gBAAI,CAAC,cAAc,CAAC,CAAC;QACxF,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAoB,CAAC,IAAI,CAAC,CAAC;QAC9C,IAAI,CAAC,UAAU,GAAG,IAAI,qBAAkB,CAAe,IAAI,EAAE,gBAAI,CAAC,WAAW,CAAC,CAAC;QAC/E,IAAI,CAAC,cAAc,GAAG,IAAI,qBAAkB,CAAmB,IAAI,EAAE,gBAAI,CAAC,eAAe,CAAC,CAAC;QAC3F,IAAI,CAAC,SAAS,GAAG,IAAI,qBAAkB,CAAc,IAAI,EAAE,gBAAI,CAAC,UAAU,CAAC,CAAC;QAC5E,IAAI,CAAC,QAAQ,GAAG,IAAI,qBAAkB,CAAC,IAAI,CAAC,CAAC;QAC7C,IAAI,CAAC,OAAO,GAAG,IAAI,uBAAoB,CAA6B,IAAI,EAAE,gBAAI,CAAC,OAAO,CAAC,CAAC;QACxF,IAAI,CAAC,KAAK,GAAG,IAAI,qBAAkB,CAAU,IAAI,EAAE,gBAAI,CAAC,KAAK,CAAC,CAAC;QAC/D,IAAI,CAAC,aAAa,GAAG,IAAI,4CAAoB,CAAC,IAAI,CAAC,CAAC;QACpD,IAAI,CAAC,UAAU,GAAG,IAAI,oBAAiB,CAAC,IAAI,EAAE,gBAAI,CAAC,QAAQ,CAAC,CAAC;IAC/D,CAAC;IAED,MAAM,CAAC,QAAQ,CAAC,OAAsB;QACpC,MAAM,IAAI,GAAG,IAAA,uBAAgB,EAAC,OAAO,CAAC,CAAC;QACvC,OAAO,IAAI,MAAM,CAAC,IAAI,CAAC,CAAC;IAC1B,CAAC;CACF;AAjDD,wBAiDC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/services/constants.ts"],"names":[],"mappings":";;;AAIa,QAAA,2BAA2B,GAAG,CAAC,CAAC;AAGhC,QAAA,mBAAmB,GAAc,UAAU,CAAC;AAC5C,QAAA,gBAAgB,GAAc,KAAK,CAAC;AACpC,QAAA,iBAAiB,GAAc,KAAK,CAAC;AAErC,QAAA,IAAI,GAAG;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,gBAAgB,EAAE,aAAa;IAC/B,kBAAkB,EAAE,eAAe;IACnC,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,UAAU;IACpB,iBAAiB,EAAE,mBAAmB;IACtC,cAAc,EAAE,gBAAgB;IAChC,QAAQ,EAAE,MAAM;IAChB,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,cAAc,EAAE,gBAAgB;IAChC,iBAAiB,EAAE,mBAAmB;IACtC,WAAW,EAAE,aAAa;IAC1B,eAAe,EAAE,iBAAiB;IAClC,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,iBAAiB,EAAE,mBAAmB;CACvC,CAAC;AAEW,QAAA,OAAO,GAAG;IACrB,YAAY,EAAE,cAAc;IAC5B,yBAAyB,EAAE,qCAAqC;IAChE,yBAAyB,EAAE,qCAAqC;IAChE,gBAAgB,EAAE,kBAAkB;IACpC,iBAAiB,EAAE,mBAAmB;IACtC,qBAAqB,EAAE,uBAAuB;IAC9C,2BAA2B,EAAE,6BAA6B;IAC1D,YAAY,EAAE,0BAA0B;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,gBAAgB,EAAE,kBAAkB;IACpC,WAAW,EAAE,aAAa;IAC1B,mBAAmB;IACnB,kBAAkB,EAAE,sBAAsB;CAC3C,CAAC"}
|
|
1
|
+
{"version":3,"file":"constants.js","sourceRoot":"","sources":["../../../src/services/constants.ts"],"names":[],"mappings":";;;AAIa,QAAA,2BAA2B,GAAG,CAAC,CAAC;AAGhC,QAAA,mBAAmB,GAAc,UAAU,CAAC;AAC5C,QAAA,gBAAgB,GAAc,KAAK,CAAC;AACpC,QAAA,iBAAiB,GAAc,KAAK,CAAC;AAErC,QAAA,IAAI,GAAG;IAClB,MAAM,EAAE,QAAQ;IAChB,MAAM,EAAE,QAAQ;IAChB,UAAU,EAAE,YAAY;IACxB,gBAAgB,EAAE,aAAa;IAC/B,kBAAkB,EAAE,eAAe;IACnC,WAAW,EAAE,QAAQ;IACrB,QAAQ,EAAE,UAAU;IACpB,iBAAiB,EAAE,mBAAmB;IACtC,cAAc,EAAE,gBAAgB;IAChC,QAAQ,EAAE,MAAM;IAChB,aAAa,EAAE,eAAe;IAC9B,SAAS,EAAE,WAAW;IACtB,cAAc,EAAE,gBAAgB;IAChC,iBAAiB,EAAE,mBAAmB;IACtC,WAAW,EAAE,aAAa;IAC1B,eAAe,EAAE,iBAAiB;IAClC,UAAU,EAAE,YAAY;IACxB,OAAO,EAAE,SAAS;IAClB,KAAK,EAAE,OAAO;IACd,cAAc,EAAE,UAAU;IAC1B,iBAAiB,EAAE,mBAAmB;CACvC,CAAC;AAEW,QAAA,OAAO,GAAG;IACrB,YAAY,EAAE,cAAc;IAC5B,yBAAyB,EAAE,qCAAqC;IAChE,yBAAyB,EAAE,qCAAqC;IAChE,gBAAgB,EAAE,kBAAkB;IACpC,iBAAiB,EAAE,mBAAmB;IACtC,qBAAqB,EAAE,uBAAuB;IAC9C,2BAA2B,EAAE,6BAA6B;IAC1D,YAAY,EAAE,0BAA0B;IACxC,qBAAqB,EAAE,uBAAuB;IAC9C,gBAAgB,EAAE,kBAAkB;IACpC,WAAW,EAAE,aAAa;IAC1B,mBAAmB;IACnB,kBAAkB,EAAE,sBAAsB;CAC3C,CAAC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { FilterCriteria } from '../FilterCriteria';
|
|
2
|
+
import { Page, UserCoverageReport, UserCoverageSummary } from '../dto';
|
|
3
|
+
import { ErrorHandler } from './constants';
|
|
4
|
+
import { RestClient, RestRequest } from './rest';
|
|
5
|
+
export declare class UsersInsightsService {
|
|
6
|
+
protected call: <T>(req: RestRequest, errorHandler: ErrorHandler<T>) => Promise<T>;
|
|
7
|
+
protected getPage: (req: RestRequest) => Promise<{
|
|
8
|
+
data: never[];
|
|
9
|
+
kind: string;
|
|
10
|
+
error: string;
|
|
11
|
+
hints: {};
|
|
12
|
+
}>;
|
|
13
|
+
protected readonly rest: RestClient;
|
|
14
|
+
protected readonly kind: string;
|
|
15
|
+
protected readonly targetApi: string;
|
|
16
|
+
constructor(rest: RestClient, kind?: string, targetApi?: string);
|
|
17
|
+
list: (filter: FilterCriteria) => Promise<Page<UserCoverageSummary>>;
|
|
18
|
+
get: (uid: string) => Promise<UserCoverageReport>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.UsersInsightsService = void 0;
|
|
4
|
+
const constants_1 = require("./constants");
|
|
5
|
+
class UsersInsightsService {
|
|
6
|
+
constructor(rest, kind = constants_1.KIND.USERS_INSIGHTS, targetApi = 'api') {
|
|
7
|
+
this.call = async (req, errorHandler) => {
|
|
8
|
+
try {
|
|
9
|
+
const res = await this.rest.call(req);
|
|
10
|
+
return res.data;
|
|
11
|
+
}
|
|
12
|
+
catch (error) {
|
|
13
|
+
if (error instanceof Error) {
|
|
14
|
+
console.error(error.message);
|
|
15
|
+
}
|
|
16
|
+
if (this.rest.strict) {
|
|
17
|
+
throw error;
|
|
18
|
+
}
|
|
19
|
+
return errorHandler(error);
|
|
20
|
+
}
|
|
21
|
+
};
|
|
22
|
+
this.getPage = async (req) => {
|
|
23
|
+
return this.call(req, (error) => {
|
|
24
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
25
|
+
return {
|
|
26
|
+
data: [],
|
|
27
|
+
kind: this.kind.toUpperCase(),
|
|
28
|
+
error: message,
|
|
29
|
+
hints: {},
|
|
30
|
+
};
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
this.list = (filter) => {
|
|
34
|
+
return this.getPage({
|
|
35
|
+
url: `/${this.targetApi}/v1/insights/coverage`,
|
|
36
|
+
method: 'GET',
|
|
37
|
+
params: filter,
|
|
38
|
+
});
|
|
39
|
+
};
|
|
40
|
+
this.get = (uid) => {
|
|
41
|
+
return this.call({
|
|
42
|
+
url: `/${this.targetApi}/v1/insights/coverage/${uid}`,
|
|
43
|
+
method: 'GET',
|
|
44
|
+
}, () => ({}));
|
|
45
|
+
};
|
|
46
|
+
this.rest = rest;
|
|
47
|
+
this.kind = kind;
|
|
48
|
+
this.targetApi = targetApi;
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
exports.UsersInsightsService = UsersInsightsService;
|
|
52
|
+
//# sourceMappingURL=usersInsights.service.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"usersInsights.service.js","sourceRoot":"","sources":["../../../src/services/usersInsights.service.ts"],"names":[],"mappings":";;;AAEA,2CAA+C;AAG/C,MAAa,oBAAoB;IAgC/B,YAAY,IAAgB,EAAE,OAAe,gBAAI,CAAC,cAAc,EAAE,SAAS,GAAG,KAAK;QA/BzE,SAAI,GAAG,KAAK,EAAK,GAAgB,EAAE,YAA6B,EAAc,EAAE;YACxF,IAAI,CAAC;gBACH,MAAM,GAAG,GAAG,MAAM,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;gBACtC,OAAO,GAAG,CAAC,IAAS,CAAC;YACvB,CAAC;YAAC,OAAO,KAAc,EAAE,CAAC;gBACxB,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;oBAC3B,OAAO,CAAC,KAAK,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;gBAC/B,CAAC;gBACD,IAAI,IAAI,CAAC,IAAI,CAAC,MAAM,EAAE,CAAC;oBACrB,MAAM,KAAK,CAAC;gBACd,CAAC;gBACD,OAAO,YAAY,CAAC,KAAK,CAAC,CAAC;YAC7B,CAAC;QACH,CAAC,CAAC;QAEQ,YAAO,GAAG,KAAK,EAAE,GAAgB,EAAE,EAAE;YAC7C,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,EAAE,CAAC,KAAc,EAAE,EAAE;gBACvC,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,CAAC;gBACzE,OAAO;oBACL,IAAI,EAAE,EAAE;oBACR,IAAI,EAAE,IAAI,CAAC,IAAI,CAAC,WAAW,EAAE;oBAC7B,KAAK,EAAE,OAAO;oBACd,KAAK,EAAE,EAAE;iBACV,CAAC;YACJ,CAAC,CAAC,CAAC;QACL,CAAC,CAAC;QAYF,SAAI,GAAG,CAAC,MAAsB,EAAsC,EAAE;YACpE,OAAO,IAAI,CAAC,OAAO,CAAC;gBAClB,GAAG,EAAE,IAAI,IAAI,CAAC,SAAS,uBAAuB;gBAC9C,MAAM,EAAE,KAAK;gBACb,MAAM,EAAE,MAAM;aACf,CAAC,CAAC;QACL,CAAC,CAAC;QAEF,QAAG,GAAG,CAAC,GAAW,EAA+B,EAAE;YACjD,OAAO,IAAI,CAAC,IAAI,CACd;gBACE,GAAG,EAAE,IAAI,IAAI,CAAC,SAAS,yBAAyB,GAAG,EAAE;gBACrD,MAAM,EAAE,KAAK;aACd,EACD,GAAG,EAAE,CAAC,CAAC,EAAE,CAAuB,CACjC,CAAC;QACJ,CAAC,CAAC;QArBA,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAC;QACjB,IAAI,CAAC,SAAS,GAAG,SAAS,CAAC;IAC7B,CAAC;CAmBF;AAvDD,oDAuDC"}
|
package/package.json
CHANGED
package/src/services/AmpApi.ts
CHANGED
|
@@ -15,6 +15,7 @@ import {
|
|
|
15
15
|
} from '.';
|
|
16
16
|
import {KIND, TARGET_API_AGENT} from './constants';
|
|
17
17
|
import {getAmpRestClient, AmpRestClientOptions, AgentIdentityService, ConnectorInstallService, DefaultEnumService, EnumService, RestClient} from './rest';
|
|
18
|
+
import {UsersInsightsService} from './usersInsights.service';
|
|
18
19
|
|
|
19
20
|
export type AmpApiOptions = AmpRestClientOptions;
|
|
20
21
|
|
|
@@ -49,6 +50,7 @@ export class AmpApi {
|
|
|
49
50
|
readonly settings: AmpSettingsService;
|
|
50
51
|
readonly tenants: AmpEntityService<TenantUpsertDto, TenantDto>;
|
|
51
52
|
readonly users: AmpDataService<UserDto>;
|
|
53
|
+
readonly usersInsights: UsersInsightsService;
|
|
52
54
|
readonly prediction: PredictionService;
|
|
53
55
|
|
|
54
56
|
constructor(rest: RestClient) {
|
|
@@ -70,6 +72,7 @@ export class AmpApi {
|
|
|
70
72
|
this.settings = new AmpSettingsService(rest);
|
|
71
73
|
this.tenants = new AmpEntityServiceImpl<TenantUpsertDto, TenantDto>(rest, KIND.TENANTS);
|
|
72
74
|
this.users = new AmpDataServiceImpl<UserDto>(rest, KIND.USERS);
|
|
75
|
+
this.usersInsights = new UsersInsightsService(rest);
|
|
73
76
|
this.prediction = new PredictionService(rest, KIND.FINDINGS);
|
|
74
77
|
}
|
|
75
78
|
|
|
@@ -0,0 +1,61 @@
|
|
|
1
|
+
import {FilterCriteria} from '../FilterCriteria';
|
|
2
|
+
import {Page, UserCoverageReport, UserCoverageSummary} from '../dto';
|
|
3
|
+
import {ErrorHandler, KIND} from './constants';
|
|
4
|
+
import {RestClient, RestRequest} from './rest';
|
|
5
|
+
|
|
6
|
+
export class UsersInsightsService {
|
|
7
|
+
protected call = async <T>(req: RestRequest, errorHandler: ErrorHandler<T>): Promise<T> => {
|
|
8
|
+
try {
|
|
9
|
+
const res = await this.rest.call(req);
|
|
10
|
+
return res.data as T;
|
|
11
|
+
} catch (error: unknown) {
|
|
12
|
+
if (error instanceof Error) {
|
|
13
|
+
console.error(error.message);
|
|
14
|
+
}
|
|
15
|
+
if (this.rest.strict) {
|
|
16
|
+
throw error;
|
|
17
|
+
}
|
|
18
|
+
return errorHandler(error);
|
|
19
|
+
}
|
|
20
|
+
};
|
|
21
|
+
|
|
22
|
+
protected getPage = async (req: RestRequest) => {
|
|
23
|
+
return this.call(req, (error: unknown) => {
|
|
24
|
+
const message = error instanceof Error ? error.message : 'Unknown error';
|
|
25
|
+
return {
|
|
26
|
+
data: [],
|
|
27
|
+
kind: this.kind.toUpperCase(),
|
|
28
|
+
error: message,
|
|
29
|
+
hints: {},
|
|
30
|
+
};
|
|
31
|
+
});
|
|
32
|
+
};
|
|
33
|
+
|
|
34
|
+
protected readonly rest: RestClient;
|
|
35
|
+
protected readonly kind: string;
|
|
36
|
+
protected readonly targetApi: string;
|
|
37
|
+
|
|
38
|
+
constructor(rest: RestClient, kind: string = KIND.USERS_INSIGHTS, targetApi = 'api') {
|
|
39
|
+
this.rest = rest;
|
|
40
|
+
this.kind = kind;
|
|
41
|
+
this.targetApi = targetApi;
|
|
42
|
+
}
|
|
43
|
+
|
|
44
|
+
list = (filter: FilterCriteria): Promise<Page<UserCoverageSummary>> => {
|
|
45
|
+
return this.getPage({
|
|
46
|
+
url: `/${this.targetApi}/v1/insights/coverage`,
|
|
47
|
+
method: 'GET',
|
|
48
|
+
params: filter,
|
|
49
|
+
});
|
|
50
|
+
};
|
|
51
|
+
|
|
52
|
+
get = (uid: string): Promise<UserCoverageReport> => {
|
|
53
|
+
return this.call<UserCoverageReport>(
|
|
54
|
+
{
|
|
55
|
+
url: `/${this.targetApi}/v1/insights/coverage/${uid}`,
|
|
56
|
+
method: 'GET',
|
|
57
|
+
},
|
|
58
|
+
() => ({}) as UserCoverageReport
|
|
59
|
+
);
|
|
60
|
+
};
|
|
61
|
+
}
|