@fiado/api-invoker 5.141.0 → 5.143.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.
@@ -72,6 +72,10 @@ let RetailCustomerBusinessApi = class RetailCustomerBusinessApi {
72
72
  // El cursor viaja tal cual lo entregó el destino: componerlo o re-codificarlo lo rompe.
73
73
  if (query.nextToken)
74
74
  params.set("nextToken", query.nextToken);
75
+ if (query.retailerId)
76
+ params.set("retailerId", query.retailerId);
77
+ if (query.originStoreId)
78
+ params.set("originStoreId", query.originStoreId);
75
79
  const url = `${this.baseUrl}/private/customers?${params.toString()}`;
76
80
  return await this.httpRequest.get(url);
77
81
  }
@@ -8,6 +8,10 @@ export interface CustomersPageQuery {
8
8
  limit?: number;
9
9
  /** Cursor opaco de la página anterior. Ausente = primera página. */
10
10
  nextToken?: string;
11
+ /** Solo los clientes de esa cadena. */
12
+ retailerId?: string;
13
+ /** Solo los clientes dados de alta en esa tienda; va junto con `retailerId`. */
14
+ originStoreId?: string;
11
15
  }
12
16
  /**
13
17
  * Lo mínimo para pintar el renglón de un cliente. `fullName: null` significa que el cliente existe
@@ -146,8 +146,9 @@ export interface IRetailCustomerBusinessApi {
146
146
  */
147
147
  getCustomersBatch(payload: CustomersBatchRequest, tenantId: string): Promise<StandardResponse<CustomersBatchResponse>>;
148
148
  /**
149
- * GET /private/customers?limit&nextToken&tenantId= — UNA página del padrón de clientes del
150
- * tenant, del alta más reciente a la más vieja. Es el listado que alimenta las tablas de
149
+ * GET /private/customers?limit&nextToken&retailerId&originStoreId&tenantId= — UNA página del
150
+ * padrón de clientes del tenant, del alta más reciente a la más vieja. `retailerId` y
151
+ * `originStoreId` son filtros opcionales; sin ellos es el padrón completo del tenant. Es el listado que alimenta las tablas de
151
152
  * backoffice: una sola Query sobre el GSI de listado, sin fan-out por negocio.
152
153
  *
153
154
  * `nextToken` es OPACO: se pasea tal cual, no se compone ni se re-codifica. Ausente en la
@@ -1,6 +1,6 @@
1
1
  import type { StandardResponse } from "@fiado/gateway-adapter";
2
2
  import type { IHttpRequest } from "@fiado/http-client";
3
- import type { EvaluateRulesRequest, EvaluateRulesResponse, GenerateRulesRequest, GenerateRulesResponse, PopulationCompileRequest, PopulationCompileResponse, PopulationExecutionPageResponse, PopulationExecutionRequest, PopulationExecutionResponse, PopulationTestRequest, PopulationTestResponse, RulesCatalogResponse, SegmentSchemaResponse, SegmentTableSchemaResponse, ValidateRulesRequest, ValidateRulesResponse } from "@fiado/type-kit/bin/rules/index.js";
3
+ import type { EvaluateRulesRequest, EvaluateRulesResponse, EvaluationExecutionRequest, EvaluationExecutionResponse, EvaluationExecutionResultsResponse, EvaluationResultsRequest, GenerateRulesRequest, GenerateRulesResponse, PopulationCompileRequest, PopulationCompileResponse, PopulationExecutionPageResponse, PopulationExecutionRequest, PopulationExecutionResponse, PopulationTestRequest, PopulationTestResponse, ReturnFieldsCatalogResponse, RulesCatalogResponse, SegmentSchemaResponse, SegmentTableSchemaResponse, ValidateRulesRequest, ValidateRulesResponse } from "@fiado/type-kit/bin/rules/index.js";
4
4
  import type { IRulesApi } from "./interfaces/IRulesApi.js";
5
5
  /**
6
6
  * Contrato y semántica completos → `IRulesApi` (`StandardResponse` → leer `result.data`).
@@ -21,4 +21,7 @@ export declare class RulesApi implements IRulesApi {
21
21
  populationTestGet(testId: string, consumer?: string): Promise<StandardResponse<PopulationTestResponse>>;
22
22
  populationExecutionStart(request: PopulationExecutionRequest): Promise<StandardResponse<PopulationExecutionResponse>>;
23
23
  populationExecutionPage(executionId: string, nextToken?: string, consumer?: string): Promise<StandardResponse<PopulationExecutionPageResponse>>;
24
+ evaluationStart(request: EvaluationExecutionRequest): Promise<StandardResponse<EvaluationExecutionResponse>>;
25
+ evaluationResults(executionId: string, request: EvaluationResultsRequest): Promise<StandardResponse<EvaluationExecutionResultsResponse>>;
26
+ returnFields(consumer?: string): Promise<StandardResponse<ReturnFieldsCatalogResponse>>;
24
27
  }
@@ -69,6 +69,16 @@ let RulesApi = class RulesApi {
69
69
  const url = withQuery(`${this.baseUrl}/population/executions/${encodeURIComponent(executionId)}`, tokenQuery, consumerQuery(consumer));
70
70
  return await this.httpRequest.get(url);
71
71
  }
72
+ async evaluationStart(request) {
73
+ return await this.httpRequest.post(`${this.baseUrl}/evaluate/datalake/executions`, request);
74
+ }
75
+ async evaluationResults(executionId, request) {
76
+ return await this.httpRequest.post(`${this.baseUrl}/evaluate/datalake/executions/${encodeURIComponent(executionId)}/results`, request);
77
+ }
78
+ async returnFields(consumer) {
79
+ const url = withQuery(`${this.baseUrl}/return-fields`, consumerQuery(consumer));
80
+ return await this.httpRequest.get(url);
81
+ }
72
82
  };
73
83
  RulesApi = __decorate([
74
84
  injectable(),
@@ -1,5 +1,5 @@
1
1
  import type { StandardResponse } from "@fiado/gateway-adapter";
2
- import type { EvaluateRulesRequest, EvaluateRulesResponse, GenerateRulesRequest, GenerateRulesResponse, PopulationCompileRequest, PopulationCompileResponse, PopulationExecutionPageResponse, PopulationExecutionRequest, PopulationExecutionResponse, PopulationTestRequest, PopulationTestResponse, RulesCatalogResponse, SegmentSchemaResponse, SegmentTableSchemaResponse, ValidateRulesRequest, ValidateRulesResponse } from "@fiado/type-kit/bin/rules/index.js";
2
+ import type { EvaluateRulesRequest, EvaluateRulesResponse, EvaluationExecutionRequest, EvaluationExecutionResponse, EvaluationExecutionResultsResponse, EvaluationResultsRequest, GenerateRulesRequest, GenerateRulesResponse, PopulationCompileRequest, PopulationCompileResponse, PopulationExecutionPageResponse, PopulationExecutionRequest, PopulationExecutionResponse, PopulationTestRequest, PopulationTestResponse, ReturnFieldsCatalogResponse, RulesCatalogResponse, SegmentSchemaResponse, SegmentTableSchemaResponse, ValidateRulesRequest, ValidateRulesResponse } from "@fiado/type-kit/bin/rules/index.js";
3
3
  /**
4
4
  * Cliente del lambda central `rules-business` (catálogo, validación, generación con IA y evaluación de reglas).
5
5
  *
@@ -32,4 +32,10 @@ export interface IRulesApi {
32
32
  populationExecutionStart(request: PopulationExecutionRequest): Promise<StandardResponse<PopulationExecutionResponse>>;
33
33
  /** GET /population/executions/{id} — página (≤1000 ids) de una ejecución; `nextToken` para continuar. */
34
34
  populationExecutionPage(executionId: string, nextToken?: string, consumer?: string): Promise<StandardResponse<PopulationExecutionPageResponse>>;
35
+ /** POST /evaluate/datalake/executions — inicia una evaluación DATALAKE asíncrona (`evaluationStrategy: DATALAKE`). */
36
+ evaluationStart(request: EvaluationExecutionRequest): Promise<StandardResponse<EvaluationExecutionResponse>>;
37
+ /** POST /evaluate/datalake/executions/{id}/results — filas de resultado de una evaluación DATALAKE (paginadas). */
38
+ evaluationResults(executionId: string, request: EvaluationResultsRequest): Promise<StandardResponse<EvaluationExecutionResultsResponse>>;
39
+ /** GET /return-fields — catálogo de campos devolvibles por usuario. */
40
+ returnFields(consumer?: string): Promise<StandardResponse<ReturnFieldsCatalogResponse>>;
35
41
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@fiado/api-invoker",
3
- "version": "5.141.0",
3
+ "version": "5.143.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",
@@ -34,7 +34,7 @@
34
34
  "@fiado/gateway-adapter": "^3.14.0",
35
35
  "@fiado/http-client": "^2.0.1",
36
36
  "@fiado/logger": "^1.1.3",
37
- "@fiado/type-kit": "^3.565.0",
37
+ "@fiado/type-kit": "^3.575.0",
38
38
  "dotenv": "^16.4.7"
39
39
  },
40
40
  "peerDependencies": {
@@ -124,6 +124,8 @@ export default class RetailCustomerBusinessApi implements IRetailCustomerBusines
124
124
  if (query.limit !== undefined) params.set("limit", String(query.limit));
125
125
  // El cursor viaja tal cual lo entregó el destino: componerlo o re-codificarlo lo rompe.
126
126
  if (query.nextToken) params.set("nextToken", query.nextToken);
127
+ if (query.retailerId) params.set("retailerId", query.retailerId);
128
+ if (query.originStoreId) params.set("originStoreId", query.originStoreId);
127
129
  const url = `${this.baseUrl}/private/customers?${params.toString()}`;
128
130
  return await this.httpRequest.get(url);
129
131
  }
@@ -9,6 +9,10 @@ export interface CustomersPageQuery {
9
9
  limit?: number;
10
10
  /** Cursor opaco de la página anterior. Ausente = primera página. */
11
11
  nextToken?: string;
12
+ /** Solo los clientes de esa cadena. */
13
+ retailerId?: string;
14
+ /** Solo los clientes dados de alta en esa tienda; va junto con `retailerId`. */
15
+ originStoreId?: string;
12
16
  }
13
17
 
14
18
  /**
@@ -202,8 +202,9 @@ export interface IRetailCustomerBusinessApi {
202
202
  ): Promise<StandardResponse<CustomersBatchResponse>>;
203
203
 
204
204
  /**
205
- * GET /private/customers?limit&nextToken&tenantId= — UNA página del padrón de clientes del
206
- * tenant, del alta más reciente a la más vieja. Es el listado que alimenta las tablas de
205
+ * GET /private/customers?limit&nextToken&retailerId&originStoreId&tenantId= — UNA página del
206
+ * padrón de clientes del tenant, del alta más reciente a la más vieja. `retailerId` y
207
+ * `originStoreId` son filtros opcionales; sin ellos es el padrón completo del tenant. Es el listado que alimenta las tablas de
207
208
  * backoffice: una sola Query sobre el GSI de listado, sin fan-out por negocio.
208
209
  *
209
210
  * `nextToken` es OPACO: se pasea tal cual, no se compone ni se re-codifica. Ausente en la
@@ -4,6 +4,10 @@ import type { IHttpRequest } from "@fiado/http-client";
4
4
  import type {
5
5
  EvaluateRulesRequest,
6
6
  EvaluateRulesResponse,
7
+ EvaluationExecutionRequest,
8
+ EvaluationExecutionResponse,
9
+ EvaluationExecutionResultsResponse,
10
+ EvaluationResultsRequest,
7
11
  GenerateRulesRequest,
8
12
  GenerateRulesResponse,
9
13
  PopulationCompileRequest,
@@ -13,6 +17,7 @@ import type {
13
17
  PopulationExecutionResponse,
14
18
  PopulationTestRequest,
15
19
  PopulationTestResponse,
20
+ ReturnFieldsCatalogResponse,
16
21
  RulesCatalogResponse,
17
22
  SegmentSchemaResponse,
18
23
  SegmentTableSchemaResponse,
@@ -101,4 +106,20 @@ export class RulesApi implements IRulesApi {
101
106
  const url = withQuery(`${this.baseUrl}/population/executions/${encodeURIComponent(executionId)}`, tokenQuery, consumerQuery(consumer));
102
107
  return await this.httpRequest.get<StandardResponse<PopulationExecutionPageResponse>>(url);
103
108
  }
109
+
110
+ async evaluationStart(request: EvaluationExecutionRequest): Promise<StandardResponse<EvaluationExecutionResponse>> {
111
+ return await this.httpRequest.post<StandardResponse<EvaluationExecutionResponse>>(`${this.baseUrl}/evaluate/datalake/executions`, request);
112
+ }
113
+
114
+ async evaluationResults(executionId: string, request: EvaluationResultsRequest): Promise<StandardResponse<EvaluationExecutionResultsResponse>> {
115
+ return await this.httpRequest.post<StandardResponse<EvaluationExecutionResultsResponse>>(
116
+ `${this.baseUrl}/evaluate/datalake/executions/${encodeURIComponent(executionId)}/results`,
117
+ request,
118
+ );
119
+ }
120
+
121
+ async returnFields(consumer?: string): Promise<StandardResponse<ReturnFieldsCatalogResponse>> {
122
+ const url = withQuery(`${this.baseUrl}/return-fields`, consumerQuery(consumer));
123
+ return await this.httpRequest.get<StandardResponse<ReturnFieldsCatalogResponse>>(url);
124
+ }
104
125
  }
@@ -2,6 +2,10 @@ import type { StandardResponse } from "@fiado/gateway-adapter";
2
2
  import type {
3
3
  EvaluateRulesRequest,
4
4
  EvaluateRulesResponse,
5
+ EvaluationExecutionRequest,
6
+ EvaluationExecutionResponse,
7
+ EvaluationExecutionResultsResponse,
8
+ EvaluationResultsRequest,
5
9
  GenerateRulesRequest,
6
10
  GenerateRulesResponse,
7
11
  PopulationCompileRequest,
@@ -11,6 +15,7 @@ import type {
11
15
  PopulationExecutionResponse,
12
16
  PopulationTestRequest,
13
17
  PopulationTestResponse,
18
+ ReturnFieldsCatalogResponse,
14
19
  RulesCatalogResponse,
15
20
  SegmentSchemaResponse,
16
21
  SegmentTableSchemaResponse,
@@ -60,4 +65,13 @@ export interface IRulesApi {
60
65
 
61
66
  /** GET /population/executions/{id} — página (≤1000 ids) de una ejecución; `nextToken` para continuar. */
62
67
  populationExecutionPage(executionId: string, nextToken?: string, consumer?: string): Promise<StandardResponse<PopulationExecutionPageResponse>>;
68
+
69
+ /** POST /evaluate/datalake/executions — inicia una evaluación DATALAKE asíncrona (`evaluationStrategy: DATALAKE`). */
70
+ evaluationStart(request: EvaluationExecutionRequest): Promise<StandardResponse<EvaluationExecutionResponse>>;
71
+
72
+ /** POST /evaluate/datalake/executions/{id}/results — filas de resultado de una evaluación DATALAKE (paginadas). */
73
+ evaluationResults(executionId: string, request: EvaluationResultsRequest): Promise<StandardResponse<EvaluationExecutionResultsResponse>>;
74
+
75
+ /** GET /return-fields — catálogo de campos devolvibles por usuario. */
76
+ returnFields(consumer?: string): Promise<StandardResponse<ReturnFieldsCatalogResponse>>;
63
77
  }