@fiado/api-invoker 5.72.0 → 5.74.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/bin/loanCredit/api/LoanCreditBusinessApi.d.ts +2 -1
- package/bin/loanCredit/api/LoanCreditBusinessApi.js +4 -0
- package/bin/loanCredit/api/interfaces/ILoanCreditBusinessApi.d.ts +10 -1
- package/bin/messages-business/api/MessagesBusinessApi.d.ts +7 -5
- package/bin/messages-business/api/MessagesBusinessApi.js +21 -10
- package/bin/messages-business/api/interfaces/IMessagesBusinessApi.d.ts +9 -5
- package/package.json +1 -1
- package/src/loanCredit/api/LoanCreditBusinessApi.ts +10 -0
- package/src/loanCredit/api/interfaces/ILoanCreditBusinessApi.ts +15 -0
- package/src/messages-business/api/MessagesBusinessApi.ts +22 -10
- package/src/messages-business/api/interfaces/IMessagesBusinessApi.ts +9 -5
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import type { IHttpRequest } from "@fiado/http-client";
|
|
2
2
|
import { StandardResponse } from "@fiado/gateway-adapter";
|
|
3
|
-
import { ActivationCheckRequest, ActivationCheckResponse, CreditPaymentAppliedRequest, CreditPaymentAppliedResponse, CreditSettledRequest, CreditSettledResponse, LoanBorrowerResponse, LoanCreditResponse, OriginateLoanCreditRequest, OriginateLoanCreditResponse, QuoteLoanCreditRequest, QuoteLoanCreditResponse, SignLoanCreditRequest, SignLoanCreditResponse, UpsertLoanBorrowerRequest } from "@fiado/type-kit/bin/loanCredit/index.js";
|
|
3
|
+
import { ActivationCheckRequest, ActivationCheckResponse, CreditPaymentAppliedRequest, CreditPaymentAppliedResponse, CreditSettledRequest, CreditSettledResponse, LoanBorrowerResponse, ListMessagingCandidatesRequest, ListMessagingCandidatesResponse, LoanCreditResponse, OriginateLoanCreditRequest, OriginateLoanCreditResponse, QuoteLoanCreditRequest, QuoteLoanCreditResponse, SignLoanCreditRequest, SignLoanCreditResponse, UpsertLoanBorrowerRequest } from "@fiado/type-kit/bin/loanCredit/index.js";
|
|
4
4
|
import { LoanCreditAnalyticsBatchRequest, LoanCreditAnalyticsBatchResponse } from "./dtos/LoanCreditAnalyticsBatch.js";
|
|
5
5
|
import { CustomerCreditHistoryResponse } from "./dtos/CustomerCreditHistory.js";
|
|
6
6
|
import { ILoanCreditBusinessApi } from "./interfaces/ILoanCreditBusinessApi.js";
|
|
@@ -32,4 +32,5 @@ export default class LoanCreditBusinessApi implements ILoanCreditBusinessApi {
|
|
|
32
32
|
getCustomerCreditHistory(retailCustomerId: string, tenantId: string): Promise<StandardResponse<CustomerCreditHistoryResponse>>;
|
|
33
33
|
batchGetCreditAnalytics(input: LoanCreditAnalyticsBatchRequest, tenantId: string): Promise<StandardResponse<LoanCreditAnalyticsBatchResponse>>;
|
|
34
34
|
upsertBorrower(input: UpsertLoanBorrowerRequest, tenantId: string): Promise<StandardResponse<LoanBorrowerResponse>>;
|
|
35
|
+
listMessagingCandidates(input: ListMessagingCandidatesRequest, tenantId: string): Promise<StandardResponse<ListMessagingCandidatesResponse>>;
|
|
35
36
|
}
|
|
@@ -78,6 +78,10 @@ let LoanCreditBusinessApi = class LoanCreditBusinessApi {
|
|
|
78
78
|
const url = `${this.baseUrl}/private/borrowers?tenantId=${encodeURIComponent(tenantId)}`;
|
|
79
79
|
return await this.httpRequest.post(url, input);
|
|
80
80
|
}
|
|
81
|
+
async listMessagingCandidates(input, tenantId) {
|
|
82
|
+
const url = `${this.baseUrl}/private/messaging/candidates?tenantId=${encodeURIComponent(tenantId)}`;
|
|
83
|
+
return await this.httpRequest.post(url, input);
|
|
84
|
+
}
|
|
81
85
|
};
|
|
82
86
|
LoanCreditBusinessApi = __decorate([
|
|
83
87
|
injectable(),
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { StandardResponse } from "@fiado/gateway-adapter";
|
|
2
|
-
import { ActivationCheckRequest, CreditPaymentAppliedRequest, CreditPaymentAppliedResponse, CreditSettledRequest, CreditSettledResponse, ActivationCheckResponse, LoanBorrowerResponse, LoanCreditResponse, OriginateLoanCreditRequest, OriginateLoanCreditResponse, QuoteLoanCreditRequest, QuoteLoanCreditResponse, SignLoanCreditRequest, SignLoanCreditResponse, UpsertLoanBorrowerRequest } from "@fiado/type-kit/bin/loanCredit/index.js";
|
|
2
|
+
import { ActivationCheckRequest, CreditPaymentAppliedRequest, CreditPaymentAppliedResponse, CreditSettledRequest, CreditSettledResponse, ActivationCheckResponse, LoanBorrowerResponse, ListMessagingCandidatesRequest, ListMessagingCandidatesResponse, LoanCreditResponse, OriginateLoanCreditRequest, OriginateLoanCreditResponse, QuoteLoanCreditRequest, QuoteLoanCreditResponse, SignLoanCreditRequest, SignLoanCreditResponse, UpsertLoanBorrowerRequest } from "@fiado/type-kit/bin/loanCredit/index.js";
|
|
3
3
|
import { LoanCreditAnalyticsBatchRequest, LoanCreditAnalyticsBatchResponse } from "../dtos/LoanCreditAnalyticsBatch.js";
|
|
4
4
|
import { CustomerCreditHistoryResponse } from "../dtos/CustomerCreditHistory.js";
|
|
5
5
|
/**
|
|
@@ -95,4 +95,13 @@ export interface ILoanCreditBusinessApi {
|
|
|
95
95
|
* del evento `CustomerKycVerifiedV1` — fallback operativo mientras la cola no exista).
|
|
96
96
|
*/
|
|
97
97
|
upsertBorrower(input: UpsertLoanBorrowerRequest, tenantId: string): Promise<StandardResponse<LoanBorrowerResponse>>;
|
|
98
|
+
/**
|
|
99
|
+
* Devuelve UNA PÁGINA de candidatos a mensaje del `slot` y el día de tienda pedidos: la persona,
|
|
100
|
+
* el momento que le toca, el canal y las variables ya resueltas. El motor barre su cartera, aplica
|
|
101
|
+
* el cupo diario y depura qué mensaje le toca a cada quien — el caller no resuelve nada de dominio.
|
|
102
|
+
*
|
|
103
|
+
* El cupo se consume aquí, así que reintentar una página NO manda el mensaje dos veces: quien ya
|
|
104
|
+
* recibió su aviso del día no vuelve a salir. `nextCursor` en `null` significa que ya no queda nadie.
|
|
105
|
+
*/
|
|
106
|
+
listMessagingCandidates(input: ListMessagingCandidatesRequest, tenantId: string): Promise<StandardResponse<ListMessagingCandidatesResponse>>;
|
|
98
107
|
}
|
|
@@ -9,10 +9,12 @@ export declare class MessagesBusinessApi implements IMessagesBusinessApi {
|
|
|
9
9
|
sendMessage(request: SendMessageRequest): Promise<FiadoApiResponse<SendMessageResponse>>;
|
|
10
10
|
verifyOtp(request: VerifyOtpRequest): Promise<FiadoApiResponse<VerifyOtpResponse>>;
|
|
11
11
|
getValidatedOtp(directoryId: string, otpCode: string): Promise<FiadoApiResponse<OtpValidatedResponse>>;
|
|
12
|
-
createTemplate(request: TemplateMessageCreateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
13
|
-
listTemplates(filters: TemplateMessageListFiltersRequest): Promise<FiadoApiResponse<TemplateMessageListResponse>>;
|
|
14
|
-
getTemplate(id: string): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
15
|
-
updateTemplate(id: string, request: TemplateMessageUpdateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
16
|
-
deleteTemplate(id: string): Promise<FiadoApiResponse<void>>;
|
|
12
|
+
createTemplate(tenantId: string, request: TemplateMessageCreateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
13
|
+
listTemplates(tenantId: string, filters: TemplateMessageListFiltersRequest): Promise<FiadoApiResponse<TemplateMessageListResponse>>;
|
|
14
|
+
getTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
15
|
+
updateTemplate(tenantId: string, id: string, request: TemplateMessageUpdateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
16
|
+
deleteTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<void>>;
|
|
17
|
+
/** Cuelga el `tenantId` del query string de una URL sin query previo. */
|
|
18
|
+
private withTenantId;
|
|
17
19
|
}
|
|
18
20
|
export {};
|
|
@@ -11,6 +11,9 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
|
|
|
11
11
|
return function (target, key) { decorator(target, key, paramIndex); }
|
|
12
12
|
};
|
|
13
13
|
import { inject, injectable } from 'inversify';
|
|
14
|
+
import { joinUrl } from '../../utils/joinUrl.js';
|
|
15
|
+
// El CRUD de plantillas manda el `tenantId` en el query string. En POST y PUT se cuelga de la URL
|
|
16
|
+
// porque el http-client solo expone canal de params en GET y DELETE.
|
|
14
17
|
let MessagesBusinessApi = class MessagesBusinessApi {
|
|
15
18
|
httpRequest;
|
|
16
19
|
baseUrl = process.env.MESSAGES_BUSINESS_URL || '';
|
|
@@ -26,20 +29,28 @@ let MessagesBusinessApi = class MessagesBusinessApi {
|
|
|
26
29
|
async getValidatedOtp(directoryId, otpCode) {
|
|
27
30
|
return await this.httpRequest.get(`${this.baseUrl}messages/otp/validated`, { directoryId, otpCode }, { 'operationName': 'privateGetValidatedOtp' });
|
|
28
31
|
}
|
|
29
|
-
async createTemplate(request) {
|
|
30
|
-
|
|
32
|
+
async createTemplate(tenantId, request) {
|
|
33
|
+
const url = this.withTenantId(joinUrl(this.baseUrl, 'templates'), tenantId);
|
|
34
|
+
return await this.httpRequest.post(url, request, { 'operationName': 'backofficeCreateTemplate' });
|
|
31
35
|
}
|
|
32
|
-
async listTemplates(filters) {
|
|
33
|
-
|
|
36
|
+
async listTemplates(tenantId, filters) {
|
|
37
|
+
// El tenant explicito pisa el que venga en los filtros: si no, viajarian dos `tenantId`.
|
|
38
|
+
const params = { ...filters, tenantId };
|
|
39
|
+
return await this.httpRequest.get(joinUrl(this.baseUrl, 'templates'), params, { 'operationName': 'backofficeListTemplates' });
|
|
34
40
|
}
|
|
35
|
-
async getTemplate(id) {
|
|
36
|
-
return await this.httpRequest.get(
|
|
41
|
+
async getTemplate(tenantId, id) {
|
|
42
|
+
return await this.httpRequest.get(joinUrl(this.baseUrl, `templates/${id}`), { tenantId }, { 'operationName': 'backofficeGetTemplate' });
|
|
37
43
|
}
|
|
38
|
-
async updateTemplate(id, request) {
|
|
39
|
-
|
|
44
|
+
async updateTemplate(tenantId, id, request) {
|
|
45
|
+
const url = this.withTenantId(joinUrl(this.baseUrl, `templates/${id}`), tenantId);
|
|
46
|
+
return await this.httpRequest.put(url, request, { 'operationName': 'backofficeUpdateTemplate' });
|
|
40
47
|
}
|
|
41
|
-
async deleteTemplate(id) {
|
|
42
|
-
return await this.httpRequest.delete(
|
|
48
|
+
async deleteTemplate(tenantId, id) {
|
|
49
|
+
return await this.httpRequest.delete(joinUrl(this.baseUrl, `templates/${id}`), { tenantId }, { 'operationName': 'backofficeDeleteTemplate' });
|
|
50
|
+
}
|
|
51
|
+
/** Cuelga el `tenantId` del query string de una URL sin query previo. */
|
|
52
|
+
withTenantId(url, tenantId) {
|
|
53
|
+
return `${url}?tenantId=${encodeURIComponent(tenantId)}`;
|
|
43
54
|
}
|
|
44
55
|
};
|
|
45
56
|
MessagesBusinessApi = __decorate([
|
|
@@ -4,10 +4,14 @@ export interface IMessagesBusinessApi {
|
|
|
4
4
|
sendMessage(request: SendMessageRequest): Promise<FiadoApiResponse<SendMessageResponse>>;
|
|
5
5
|
verifyOtp(request: VerifyOtpRequest): Promise<FiadoApiResponse<VerifyOtpResponse>>;
|
|
6
6
|
getValidatedOtp(directoryId: string, otpCode: string): Promise<FiadoApiResponse<OtpValidatedResponse>>;
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
7
|
+
/**
|
|
8
|
+
* CRUD de plantillas. Los cinco viven en la API privada sin authorizer, asi que el `tenantId`
|
|
9
|
+
* es obligatorio y explicito: el lambda responde 400 TENANT_ID_REQUIRED si no llega.
|
|
10
|
+
*/
|
|
11
|
+
createTemplate(tenantId: string, request: TemplateMessageCreateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
12
|
+
listTemplates(tenantId: string, filters: TemplateMessageListFiltersRequest): Promise<FiadoApiResponse<TemplateMessageListResponse>>;
|
|
13
|
+
getTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
14
|
+
updateTemplate(tenantId: string, id: string, request: TemplateMessageUpdateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
15
|
+
deleteTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<void>>;
|
|
12
16
|
}
|
|
13
17
|
export {};
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@fiado/api-invoker",
|
|
3
|
-
"version": "5.
|
|
3
|
+
"version": "5.74.0",
|
|
4
4
|
"description": "Sirve como un puente entre diferentes funciones lambda, facilitando la comunicación entre ellas a través de invocaciones http",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"main": "bin/index.js",
|
|
@@ -9,6 +9,8 @@ import {
|
|
|
9
9
|
CreditSettledRequest,
|
|
10
10
|
CreditSettledResponse,
|
|
11
11
|
LoanBorrowerResponse,
|
|
12
|
+
ListMessagingCandidatesRequest,
|
|
13
|
+
ListMessagingCandidatesResponse,
|
|
12
14
|
LoanCreditResponse,
|
|
13
15
|
OriginateLoanCreditRequest,
|
|
14
16
|
OriginateLoanCreditResponse,
|
|
@@ -144,4 +146,12 @@ export default class LoanCreditBusinessApi implements ILoanCreditBusinessApi {
|
|
|
144
146
|
const url = `${this.baseUrl}/private/borrowers?tenantId=${encodeURIComponent(tenantId)}`;
|
|
145
147
|
return await this.httpRequest.post(url, input);
|
|
146
148
|
}
|
|
149
|
+
|
|
150
|
+
async listMessagingCandidates(
|
|
151
|
+
input: ListMessagingCandidatesRequest,
|
|
152
|
+
tenantId: string,
|
|
153
|
+
): Promise<StandardResponse<ListMessagingCandidatesResponse>> {
|
|
154
|
+
const url = `${this.baseUrl}/private/messaging/candidates?tenantId=${encodeURIComponent(tenantId)}`;
|
|
155
|
+
return await this.httpRequest.post(url, input);
|
|
156
|
+
}
|
|
147
157
|
}
|
|
@@ -7,6 +7,8 @@ import {
|
|
|
7
7
|
CreditSettledResponse,
|
|
8
8
|
ActivationCheckResponse,
|
|
9
9
|
LoanBorrowerResponse,
|
|
10
|
+
ListMessagingCandidatesRequest,
|
|
11
|
+
ListMessagingCandidatesResponse,
|
|
10
12
|
LoanCreditResponse,
|
|
11
13
|
OriginateLoanCreditRequest,
|
|
12
14
|
OriginateLoanCreditResponse,
|
|
@@ -167,4 +169,17 @@ export interface ILoanCreditBusinessApi {
|
|
|
167
169
|
input: UpsertLoanBorrowerRequest,
|
|
168
170
|
tenantId: string,
|
|
169
171
|
): Promise<StandardResponse<LoanBorrowerResponse>>;
|
|
172
|
+
|
|
173
|
+
/**
|
|
174
|
+
* Devuelve UNA PÁGINA de candidatos a mensaje del `slot` y el día de tienda pedidos: la persona,
|
|
175
|
+
* el momento que le toca, el canal y las variables ya resueltas. El motor barre su cartera, aplica
|
|
176
|
+
* el cupo diario y depura qué mensaje le toca a cada quien — el caller no resuelve nada de dominio.
|
|
177
|
+
*
|
|
178
|
+
* El cupo se consume aquí, así que reintentar una página NO manda el mensaje dos veces: quien ya
|
|
179
|
+
* recibió su aviso del día no vuelve a salir. `nextCursor` en `null` significa que ya no queda nadie.
|
|
180
|
+
*/
|
|
181
|
+
listMessagingCandidates(
|
|
182
|
+
input: ListMessagingCandidatesRequest,
|
|
183
|
+
tenantId: string,
|
|
184
|
+
): Promise<StandardResponse<ListMessagingCandidatesResponse>>;
|
|
170
185
|
}
|
|
@@ -9,7 +9,10 @@ import {
|
|
|
9
9
|
TemplateMessageResponse, TemplateMessageListResponse, TemplateMessageListFiltersRequest,
|
|
10
10
|
} from '@fiado/type-kit/bin/messagesConnector/index.js';
|
|
11
11
|
import { IMessagesBusinessApi } from './interfaces/IMessagesBusinessApi.js';
|
|
12
|
+
import { joinUrl } from '../../utils/joinUrl.js';
|
|
12
13
|
|
|
14
|
+
// El CRUD de plantillas manda el `tenantId` en el query string. En POST y PUT se cuelga de la URL
|
|
15
|
+
// porque el http-client solo expone canal de params en GET y DELETE.
|
|
13
16
|
@injectable()
|
|
14
17
|
export class MessagesBusinessApi implements IMessagesBusinessApi {
|
|
15
18
|
private readonly baseUrl = process.env.MESSAGES_BUSINESS_URL || '';
|
|
@@ -28,23 +31,32 @@ export class MessagesBusinessApi implements IMessagesBusinessApi {
|
|
|
28
31
|
return await this.httpRequest.get(`${this.baseUrl}messages/otp/validated`, { directoryId, otpCode }, { 'operationName': 'privateGetValidatedOtp' });
|
|
29
32
|
}
|
|
30
33
|
|
|
31
|
-
async createTemplate(request: TemplateMessageCreateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>> {
|
|
32
|
-
|
|
34
|
+
async createTemplate(tenantId: string, request: TemplateMessageCreateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>> {
|
|
35
|
+
const url = this.withTenantId(joinUrl(this.baseUrl, 'templates'), tenantId);
|
|
36
|
+
return await this.httpRequest.post(url, request, { 'operationName': 'backofficeCreateTemplate' });
|
|
33
37
|
}
|
|
34
38
|
|
|
35
|
-
async listTemplates(filters: TemplateMessageListFiltersRequest): Promise<FiadoApiResponse<TemplateMessageListResponse>> {
|
|
36
|
-
|
|
39
|
+
async listTemplates(tenantId: string, filters: TemplateMessageListFiltersRequest): Promise<FiadoApiResponse<TemplateMessageListResponse>> {
|
|
40
|
+
// El tenant explicito pisa el que venga en los filtros: si no, viajarian dos `tenantId`.
|
|
41
|
+
const params = { ...filters, tenantId } as Record<string, unknown>;
|
|
42
|
+
return await this.httpRequest.get(joinUrl(this.baseUrl, 'templates'), params, { 'operationName': 'backofficeListTemplates' });
|
|
37
43
|
}
|
|
38
44
|
|
|
39
|
-
async getTemplate(id: string): Promise<FiadoApiResponse<TemplateMessageResponse>> {
|
|
40
|
-
return await this.httpRequest.get(
|
|
45
|
+
async getTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<TemplateMessageResponse>> {
|
|
46
|
+
return await this.httpRequest.get(joinUrl(this.baseUrl, `templates/${id}`), { tenantId }, { 'operationName': 'backofficeGetTemplate' });
|
|
41
47
|
}
|
|
42
48
|
|
|
43
|
-
async updateTemplate(id: string, request: TemplateMessageUpdateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>> {
|
|
44
|
-
|
|
49
|
+
async updateTemplate(tenantId: string, id: string, request: TemplateMessageUpdateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>> {
|
|
50
|
+
const url = this.withTenantId(joinUrl(this.baseUrl, `templates/${id}`), tenantId);
|
|
51
|
+
return await this.httpRequest.put(url, request, { 'operationName': 'backofficeUpdateTemplate' });
|
|
45
52
|
}
|
|
46
53
|
|
|
47
|
-
async deleteTemplate(id: string): Promise<FiadoApiResponse<void>> {
|
|
48
|
-
return await this.httpRequest.delete(
|
|
54
|
+
async deleteTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<void>> {
|
|
55
|
+
return await this.httpRequest.delete(joinUrl(this.baseUrl, `templates/${id}`), { tenantId }, { 'operationName': 'backofficeDeleteTemplate' });
|
|
56
|
+
}
|
|
57
|
+
|
|
58
|
+
/** Cuelga el `tenantId` del query string de una URL sin query previo. */
|
|
59
|
+
private withTenantId(url: string, tenantId: string): string {
|
|
60
|
+
return `${url}?tenantId=${encodeURIComponent(tenantId)}`;
|
|
49
61
|
}
|
|
50
62
|
}
|
|
@@ -12,9 +12,13 @@ export interface IMessagesBusinessApi {
|
|
|
12
12
|
verifyOtp(request: VerifyOtpRequest): Promise<FiadoApiResponse<VerifyOtpResponse>>;
|
|
13
13
|
getValidatedOtp(directoryId: string, otpCode: string): Promise<FiadoApiResponse<OtpValidatedResponse>>;
|
|
14
14
|
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
15
|
+
/**
|
|
16
|
+
* CRUD de plantillas. Los cinco viven en la API privada sin authorizer, asi que el `tenantId`
|
|
17
|
+
* es obligatorio y explicito: el lambda responde 400 TENANT_ID_REQUIRED si no llega.
|
|
18
|
+
*/
|
|
19
|
+
createTemplate(tenantId: string, request: TemplateMessageCreateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
20
|
+
listTemplates(tenantId: string, filters: TemplateMessageListFiltersRequest): Promise<FiadoApiResponse<TemplateMessageListResponse>>;
|
|
21
|
+
getTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
22
|
+
updateTemplate(tenantId: string, id: string, request: TemplateMessageUpdateRequest): Promise<FiadoApiResponse<TemplateMessageResponse>>;
|
|
23
|
+
deleteTemplate(tenantId: string, id: string): Promise<FiadoApiResponse<void>>;
|
|
20
24
|
}
|