@alogram/payrisk 0.1.6

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.
Files changed (152) hide show
  1. package/AI.md +37 -0
  2. package/LICENSE +201 -0
  3. package/README.md +129 -0
  4. package/dist/_generated/apis/PayriskApi.d.ts +108 -0
  5. package/dist/_generated/apis/PayriskApi.js +342 -0
  6. package/dist/_generated/apis/index.d.ts +1 -0
  7. package/dist/_generated/apis/index.js +19 -0
  8. package/dist/_generated/index.d.ts +3 -0
  9. package/dist/_generated/index.js +21 -0
  10. package/dist/_generated/models/Account.d.ts +59 -0
  11. package/dist/_generated/models/Account.js +57 -0
  12. package/dist/_generated/models/AccountCheckRequest.d.ts +64 -0
  13. package/dist/_generated/models/AccountCheckRequest.js +72 -0
  14. package/dist/_generated/models/AvsResultEnum.d.ts +54 -0
  15. package/dist/_generated/models/AvsResultEnum.js +82 -0
  16. package/dist/_generated/models/BankTransfer.d.ts +39 -0
  17. package/dist/_generated/models/BankTransfer.js +59 -0
  18. package/dist/_generated/models/Card.d.ts +93 -0
  19. package/dist/_generated/models/Card.js +81 -0
  20. package/dist/_generated/models/CardNetworkEnum.d.ts +30 -0
  21. package/dist/_generated/models/CardNetworkEnum.js +58 -0
  22. package/dist/_generated/models/CategorySignal.d.ts +45 -0
  23. package/dist/_generated/models/CategorySignal.js +55 -0
  24. package/dist/_generated/models/ChannelEnum.d.ts +28 -0
  25. package/dist/_generated/models/ChannelEnum.js +56 -0
  26. package/dist/_generated/models/CheckRequest.d.ts +66 -0
  27. package/dist/_generated/models/CheckRequest.js +72 -0
  28. package/dist/_generated/models/ConfidenceEnum.d.ts +26 -0
  29. package/dist/_generated/models/ConfidenceEnum.js +54 -0
  30. package/dist/_generated/models/Crypto.d.ts +39 -0
  31. package/dist/_generated/models/Crypto.js +59 -0
  32. package/dist/_generated/models/CvvResultEnum.d.ts +33 -0
  33. package/dist/_generated/models/CvvResultEnum.js +61 -0
  34. package/dist/_generated/models/DecisionResponse.d.ts +128 -0
  35. package/dist/_generated/models/DecisionResponse.js +107 -0
  36. package/dist/_generated/models/DeviceInfo.d.ts +54 -0
  37. package/dist/_generated/models/DeviceInfo.js +56 -0
  38. package/dist/_generated/models/EntityIds.d.ts +113 -0
  39. package/dist/_generated/models/EntityIds.js +70 -0
  40. package/dist/_generated/models/EntryMethodEnum.d.ts +30 -0
  41. package/dist/_generated/models/EntryMethodEnum.js +58 -0
  42. package/dist/_generated/models/FraudScore.d.ts +52 -0
  43. package/dist/_generated/models/FraudScore.js +58 -0
  44. package/dist/_generated/models/Identity.d.ts +71 -0
  45. package/dist/_generated/models/Identity.js +57 -0
  46. package/dist/_generated/models/Integrity.d.ts +68 -0
  47. package/dist/_generated/models/Integrity.js +58 -0
  48. package/dist/_generated/models/Interaction.d.ts +59 -0
  49. package/dist/_generated/models/Interaction.js +60 -0
  50. package/dist/_generated/models/InteractionTypeEnum.d.ts +29 -0
  51. package/dist/_generated/models/InteractionTypeEnum.js +57 -0
  52. package/dist/_generated/models/Invoice.d.ts +39 -0
  53. package/dist/_generated/models/Invoice.js +59 -0
  54. package/dist/_generated/models/IpInfo.d.ts +101 -0
  55. package/dist/_generated/models/IpInfo.js +78 -0
  56. package/dist/_generated/models/KycCheckRequest.d.ts +64 -0
  57. package/dist/_generated/models/KycCheckRequest.js +74 -0
  58. package/dist/_generated/models/KycPayload.d.ts +84 -0
  59. package/dist/_generated/models/KycPayload.js +82 -0
  60. package/dist/_generated/models/MerchantContext.d.ts +38 -0
  61. package/dist/_generated/models/MerchantContext.js +50 -0
  62. package/dist/_generated/models/OrderContext.d.ts +60 -0
  63. package/dist/_generated/models/OrderContext.js +65 -0
  64. package/dist/_generated/models/PayerTypeEnum.d.ts +25 -0
  65. package/dist/_generated/models/PayerTypeEnum.js +53 -0
  66. package/dist/_generated/models/PaymentAuthorizationOutcome.d.ts +38 -0
  67. package/dist/_generated/models/PaymentAuthorizationOutcome.js +50 -0
  68. package/dist/_generated/models/PaymentCaptureOutcome.d.ts +42 -0
  69. package/dist/_generated/models/PaymentCaptureOutcome.js +60 -0
  70. package/dist/_generated/models/PaymentCardTypeEnum.d.ts +26 -0
  71. package/dist/_generated/models/PaymentCardTypeEnum.js +54 -0
  72. package/dist/_generated/models/PaymentChargeback.d.ts +32 -0
  73. package/dist/_generated/models/PaymentChargeback.js +48 -0
  74. package/dist/_generated/models/PaymentChargebackOutcome.d.ts +42 -0
  75. package/dist/_generated/models/PaymentChargebackOutcome.js +60 -0
  76. package/dist/_generated/models/PaymentDisputeOutcome.d.ts +43 -0
  77. package/dist/_generated/models/PaymentDisputeOutcome.js +61 -0
  78. package/dist/_generated/models/PaymentEvent.d.ts +72 -0
  79. package/dist/_generated/models/PaymentEvent.js +68 -0
  80. package/dist/_generated/models/PaymentEventType.d.ts +30 -0
  81. package/dist/_generated/models/PaymentEventType.js +58 -0
  82. package/dist/_generated/models/PaymentMethod.d.ts +39 -0
  83. package/dist/_generated/models/PaymentMethod.js +73 -0
  84. package/dist/_generated/models/PaymentMethodBase.d.ts +44 -0
  85. package/dist/_generated/models/PaymentMethodBase.js +64 -0
  86. package/dist/_generated/models/PaymentOutcome.d.ts +69 -0
  87. package/dist/_generated/models/PaymentOutcome.js +64 -0
  88. package/dist/_generated/models/PaymentRealtimeTypeEnum.d.ts +28 -0
  89. package/dist/_generated/models/PaymentRealtimeTypeEnum.js +56 -0
  90. package/dist/_generated/models/PaymentRefundOutcome.d.ts +41 -0
  91. package/dist/_generated/models/PaymentRefundOutcome.js +59 -0
  92. package/dist/_generated/models/PaymentWalletTypeEnum.d.ts +28 -0
  93. package/dist/_generated/models/PaymentWalletTypeEnum.js +56 -0
  94. package/dist/_generated/models/PostalAddress.d.ts +65 -0
  95. package/dist/_generated/models/PostalAddress.js +58 -0
  96. package/dist/_generated/models/Problem.d.ts +62 -0
  97. package/dist/_generated/models/Problem.js +62 -0
  98. package/dist/_generated/models/Purchase.d.ts +122 -0
  99. package/dist/_generated/models/Purchase.js +88 -0
  100. package/dist/_generated/models/PurchaseInitiatorEnum.d.ts +25 -0
  101. package/dist/_generated/models/PurchaseInitiatorEnum.js +53 -0
  102. package/dist/_generated/models/PurchaseSequenceEnum.d.ts +25 -0
  103. package/dist/_generated/models/PurchaseSequenceEnum.js +53 -0
  104. package/dist/_generated/models/PurchaseUsageEnum.d.ts +27 -0
  105. package/dist/_generated/models/PurchaseUsageEnum.js +55 -0
  106. package/dist/_generated/models/Realtime.d.ts +46 -0
  107. package/dist/_generated/models/Realtime.js +62 -0
  108. package/dist/_generated/models/ReasonDetail.d.ts +57 -0
  109. package/dist/_generated/models/ReasonDetail.js +63 -0
  110. package/dist/_generated/models/RiskBreakdown.d.ts +51 -0
  111. package/dist/_generated/models/RiskBreakdown.js +55 -0
  112. package/dist/_generated/models/RiskCategoryEnum.d.ts +27 -0
  113. package/dist/_generated/models/RiskCategoryEnum.js +55 -0
  114. package/dist/_generated/models/RiskLevelEnum.d.ts +26 -0
  115. package/dist/_generated/models/RiskLevelEnum.js +54 -0
  116. package/dist/_generated/models/ScaMethodEnum.d.ts +30 -0
  117. package/dist/_generated/models/ScaMethodEnum.js +58 -0
  118. package/dist/_generated/models/ScoreRecord.d.ts +107 -0
  119. package/dist/_generated/models/ScoreRecord.js +92 -0
  120. package/dist/_generated/models/ScoresSuccessResponse.d.ts +39 -0
  121. package/dist/_generated/models/ScoresSuccessResponse.js +51 -0
  122. package/dist/_generated/models/SignalsAccountVariant.d.ts +53 -0
  123. package/dist/_generated/models/SignalsAccountVariant.js +69 -0
  124. package/dist/_generated/models/SignalsInteractionVariant.d.ts +53 -0
  125. package/dist/_generated/models/SignalsInteractionVariant.js +69 -0
  126. package/dist/_generated/models/SignalsRequest.d.ts +28 -0
  127. package/dist/_generated/models/SignalsRequest.js +53 -0
  128. package/dist/_generated/models/StoredCredentialContext.d.ts +47 -0
  129. package/dist/_generated/models/StoredCredentialContext.js +55 -0
  130. package/dist/_generated/models/ThreeDSData.d.ts +68 -0
  131. package/dist/_generated/models/ThreeDSData.js +66 -0
  132. package/dist/_generated/models/Wallet.d.ts +46 -0
  133. package/dist/_generated/models/Wallet.js +62 -0
  134. package/dist/_generated/models/index.d.ts +62 -0
  135. package/dist/_generated/models/index.js +80 -0
  136. package/dist/_generated/runtime.d.ts +184 -0
  137. package/dist/_generated/runtime.js +338 -0
  138. package/dist/client.d.ts +69 -0
  139. package/dist/client.js +281 -0
  140. package/dist/exceptions.d.ts +24 -0
  141. package/dist/exceptions.js +59 -0
  142. package/dist/index.d.ts +5 -0
  143. package/dist/index.js +23 -0
  144. package/dist/testing.d.ts +24 -0
  145. package/dist/testing.js +100 -0
  146. package/dist/webhooks.d.ts +10 -0
  147. package/dist/webhooks.js +32 -0
  148. package/examples/asyncSignalIngestion.ts +52 -0
  149. package/examples/checkRisk.ts +26 -0
  150. package/examples/productionErrorHandling.ts +52 -0
  151. package/examples/webhookVerification.ts +29 -0
  152. package/package.json +64 -0
@@ -0,0 +1,342 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Payments Risk API
6
+ * API for detecting and scoring fraud for purchases, with lifecycle labeling and behavioral signals. v1 focuses on purchases only (`/risk/check`), with future account/session and KYC checks stubbed below.
7
+ *
8
+ * The version of the OpenAPI document: 0.1.6-rc.3
9
+ * Contact: support@alogram.ai
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
16
+ if (k2 === undefined) k2 = k;
17
+ var desc = Object.getOwnPropertyDescriptor(m, k);
18
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
19
+ desc = { enumerable: true, get: function() { return m[k]; } };
20
+ }
21
+ Object.defineProperty(o, k2, desc);
22
+ }) : (function(o, m, k, k2) {
23
+ if (k2 === undefined) k2 = k;
24
+ o[k2] = m[k];
25
+ }));
26
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
27
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
28
+ }) : function(o, v) {
29
+ o["default"] = v;
30
+ });
31
+ var __importStar = (this && this.__importStar) || (function () {
32
+ var ownKeys = function(o) {
33
+ ownKeys = Object.getOwnPropertyNames || function (o) {
34
+ var ar = [];
35
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
36
+ return ar;
37
+ };
38
+ return ownKeys(o);
39
+ };
40
+ return function (mod) {
41
+ if (mod && mod.__esModule) return mod;
42
+ var result = {};
43
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
44
+ __setModuleDefault(result, mod);
45
+ return result;
46
+ };
47
+ })();
48
+ Object.defineProperty(exports, "__esModule", { value: true });
49
+ exports.PayriskApi = void 0;
50
+ const runtime = __importStar(require("../runtime"));
51
+ const index_1 = require("../models/index");
52
+ /**
53
+ *
54
+ */
55
+ class PayriskApi extends runtime.BaseAPI {
56
+ /**
57
+ * Synchronous fraud decision for account/session events (signup, login, settings)
58
+ */
59
+ async accountRiskCheckRaw(requestParameters, initOverrides) {
60
+ if (requestParameters['xIdempotencyKey'] == null) {
61
+ throw new runtime.RequiredError('xIdempotencyKey', 'Required parameter "xIdempotencyKey" was null or undefined when calling accountRiskCheck().');
62
+ }
63
+ if (requestParameters['accountCheckRequest'] == null) {
64
+ throw new runtime.RequiredError('accountCheckRequest', 'Required parameter "accountCheckRequest" was null or undefined when calling accountRiskCheck().');
65
+ }
66
+ const queryParameters = {};
67
+ const headerParameters = {};
68
+ headerParameters['Content-Type'] = 'application/json';
69
+ if (requestParameters['xTraceId'] != null) {
70
+ headerParameters['x-trace-id'] = String(requestParameters['xTraceId']);
71
+ }
72
+ if (requestParameters['xIdempotencyKey'] != null) {
73
+ headerParameters['x-idempotency-key'] = String(requestParameters['xIdempotencyKey']);
74
+ }
75
+ if (this.configuration && this.configuration.apiKey) {
76
+ headerParameters["x-api-key"] = await this.configuration.apiKey("x-api-key"); // ApiKey authentication
77
+ }
78
+ if (this.configuration && this.configuration.accessToken) {
79
+ // oauth required
80
+ headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", ["payrisk.write"]);
81
+ }
82
+ let urlPath = `/v1/risk/account/check`;
83
+ const response = await this.request({
84
+ path: urlPath,
85
+ method: 'POST',
86
+ headers: headerParameters,
87
+ query: queryParameters,
88
+ body: (0, index_1.AccountCheckRequestToJSON)(requestParameters['accountCheckRequest']),
89
+ }, initOverrides);
90
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DecisionResponseFromJSON)(jsonValue));
91
+ }
92
+ /**
93
+ * Synchronous fraud decision for account/session events (signup, login, settings)
94
+ */
95
+ async accountRiskCheck(requestParameters, initOverrides) {
96
+ const response = await this.accountRiskCheckRaw(requestParameters, initOverrides);
97
+ return await response.value();
98
+ }
99
+ /**
100
+ * Retrieve fraud scores for a customer
101
+ */
102
+ async getFraudScoresRaw(requestParameters, initOverrides) {
103
+ if (requestParameters['tenantId'] == null) {
104
+ throw new runtime.RequiredError('tenantId', 'Required parameter "tenantId" was null or undefined when calling getFraudScores().');
105
+ }
106
+ const queryParameters = {};
107
+ if (requestParameters['startTime'] != null) {
108
+ queryParameters['startTime'] = requestParameters['startTime'];
109
+ }
110
+ if (requestParameters['endTime'] != null) {
111
+ queryParameters['endTime'] = requestParameters['endTime'];
112
+ }
113
+ if (requestParameters['pageSize'] != null) {
114
+ queryParameters['pageSize'] = requestParameters['pageSize'];
115
+ }
116
+ if (requestParameters['pageToken'] != null) {
117
+ queryParameters['pageToken'] = requestParameters['pageToken'];
118
+ }
119
+ const headerParameters = {};
120
+ if (requestParameters['xTraceId'] != null) {
121
+ headerParameters['x-trace-id'] = String(requestParameters['xTraceId']);
122
+ }
123
+ if (requestParameters['xIdempotencyKey'] != null) {
124
+ headerParameters['x-idempotency-key'] = String(requestParameters['xIdempotencyKey']);
125
+ }
126
+ if (this.configuration && this.configuration.apiKey) {
127
+ headerParameters["x-api-key"] = await this.configuration.apiKey("x-api-key"); // ApiKey authentication
128
+ }
129
+ if (this.configuration && this.configuration.accessToken) {
130
+ // oauth required
131
+ headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", ["payrisk.read"]);
132
+ }
133
+ let urlPath = `/v1/scores/{tenantId}`;
134
+ urlPath = urlPath.replace(`{${"tenantId"}}`, encodeURIComponent(String(requestParameters['tenantId'])));
135
+ const response = await this.request({
136
+ path: urlPath,
137
+ method: 'GET',
138
+ headers: headerParameters,
139
+ query: queryParameters,
140
+ }, initOverrides);
141
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.ScoresSuccessResponseFromJSON)(jsonValue));
142
+ }
143
+ /**
144
+ * Retrieve fraud scores for a customer
145
+ */
146
+ async getFraudScores(requestParameters, initOverrides) {
147
+ const response = await this.getFraudScoresRaw(requestParameters, initOverrides);
148
+ return await response.value();
149
+ }
150
+ /**
151
+ * Health check for the service
152
+ */
153
+ async healthCheckRaw(initOverrides) {
154
+ const queryParameters = {};
155
+ const headerParameters = {};
156
+ let urlPath = `/v1/health`;
157
+ const response = await this.request({
158
+ path: urlPath,
159
+ method: 'GET',
160
+ headers: headerParameters,
161
+ query: queryParameters,
162
+ }, initOverrides);
163
+ return new runtime.VoidApiResponse(response);
164
+ }
165
+ /**
166
+ * Health check for the service
167
+ */
168
+ async healthCheck(initOverrides) {
169
+ await this.healthCheckRaw(initOverrides);
170
+ }
171
+ /**
172
+ * Ingest payment lifecycle events (authorization, capture, settlement, refund, dispute, chargeback, chargeback_outcome).
173
+ */
174
+ async ingestPaymentEventRaw(requestParameters, initOverrides) {
175
+ if (requestParameters['xIdempotencyKey'] == null) {
176
+ throw new runtime.RequiredError('xIdempotencyKey', 'Required parameter "xIdempotencyKey" was null or undefined when calling ingestPaymentEvent().');
177
+ }
178
+ if (requestParameters['paymentEvent'] == null) {
179
+ throw new runtime.RequiredError('paymentEvent', 'Required parameter "paymentEvent" was null or undefined when calling ingestPaymentEvent().');
180
+ }
181
+ const queryParameters = {};
182
+ const headerParameters = {};
183
+ headerParameters['Content-Type'] = 'application/json';
184
+ if (requestParameters['xTraceId'] != null) {
185
+ headerParameters['x-trace-id'] = String(requestParameters['xTraceId']);
186
+ }
187
+ if (requestParameters['xIdempotencyKey'] != null) {
188
+ headerParameters['x-idempotency-key'] = String(requestParameters['xIdempotencyKey']);
189
+ }
190
+ if (this.configuration && this.configuration.apiKey) {
191
+ headerParameters["x-api-key"] = await this.configuration.apiKey("x-api-key"); // ApiKey authentication
192
+ }
193
+ if (this.configuration && this.configuration.accessToken) {
194
+ // oauth required
195
+ headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", ["payrisk.write"]);
196
+ }
197
+ let urlPath = `/v1/events`;
198
+ const response = await this.request({
199
+ path: urlPath,
200
+ method: 'POST',
201
+ headers: headerParameters,
202
+ query: queryParameters,
203
+ body: (0, index_1.PaymentEventToJSON)(requestParameters['paymentEvent']),
204
+ }, initOverrides);
205
+ return new runtime.VoidApiResponse(response);
206
+ }
207
+ /**
208
+ * Ingest payment lifecycle events (authorization, capture, settlement, refund, dispute, chargeback, chargeback_outcome).
209
+ */
210
+ async ingestPaymentEvent(requestParameters, initOverrides) {
211
+ await this.ingestPaymentEventRaw(requestParameters, initOverrides);
212
+ }
213
+ /**
214
+ * Ingest non-payment signals (account or interaction) for modeling
215
+ */
216
+ async ingestSignalsRaw(requestParameters, initOverrides) {
217
+ if (requestParameters['xIdempotencyKey'] == null) {
218
+ throw new runtime.RequiredError('xIdempotencyKey', 'Required parameter "xIdempotencyKey" was null or undefined when calling ingestSignals().');
219
+ }
220
+ if (requestParameters['signalsRequest'] == null) {
221
+ throw new runtime.RequiredError('signalsRequest', 'Required parameter "signalsRequest" was null or undefined when calling ingestSignals().');
222
+ }
223
+ const queryParameters = {};
224
+ const headerParameters = {};
225
+ headerParameters['Content-Type'] = 'application/json';
226
+ if (requestParameters['xTraceId'] != null) {
227
+ headerParameters['x-trace-id'] = String(requestParameters['xTraceId']);
228
+ }
229
+ if (requestParameters['xIdempotencyKey'] != null) {
230
+ headerParameters['x-idempotency-key'] = String(requestParameters['xIdempotencyKey']);
231
+ }
232
+ if (this.configuration && this.configuration.apiKey) {
233
+ headerParameters["x-api-key"] = await this.configuration.apiKey("x-api-key"); // ApiKey authentication
234
+ }
235
+ if (this.configuration && this.configuration.accessToken) {
236
+ // oauth required
237
+ headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", ["payrisk.write"]);
238
+ }
239
+ let urlPath = `/v1/signals`;
240
+ const response = await this.request({
241
+ path: urlPath,
242
+ method: 'POST',
243
+ headers: headerParameters,
244
+ query: queryParameters,
245
+ body: (0, index_1.SignalsRequestToJSON)(requestParameters['signalsRequest']),
246
+ }, initOverrides);
247
+ return new runtime.VoidApiResponse(response);
248
+ }
249
+ /**
250
+ * Ingest non-payment signals (account or interaction) for modeling
251
+ */
252
+ async ingestSignals(requestParameters, initOverrides) {
253
+ await this.ingestSignalsRaw(requestParameters, initOverrides);
254
+ }
255
+ /**
256
+ * Synchronous decision for KYC/identity verification
257
+ */
258
+ async kycRiskCheckRaw(requestParameters, initOverrides) {
259
+ if (requestParameters['xIdempotencyKey'] == null) {
260
+ throw new runtime.RequiredError('xIdempotencyKey', 'Required parameter "xIdempotencyKey" was null or undefined when calling kycRiskCheck().');
261
+ }
262
+ if (requestParameters['kycCheckRequest'] == null) {
263
+ throw new runtime.RequiredError('kycCheckRequest', 'Required parameter "kycCheckRequest" was null or undefined when calling kycRiskCheck().');
264
+ }
265
+ const queryParameters = {};
266
+ const headerParameters = {};
267
+ headerParameters['Content-Type'] = 'application/json';
268
+ if (requestParameters['xTraceId'] != null) {
269
+ headerParameters['x-trace-id'] = String(requestParameters['xTraceId']);
270
+ }
271
+ if (requestParameters['xIdempotencyKey'] != null) {
272
+ headerParameters['x-idempotency-key'] = String(requestParameters['xIdempotencyKey']);
273
+ }
274
+ if (this.configuration && this.configuration.apiKey) {
275
+ headerParameters["x-api-key"] = await this.configuration.apiKey("x-api-key"); // ApiKey authentication
276
+ }
277
+ if (this.configuration && this.configuration.accessToken) {
278
+ // oauth required
279
+ headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", ["payrisk.write"]);
280
+ }
281
+ let urlPath = `/v1/risk/kyc/check`;
282
+ const response = await this.request({
283
+ path: urlPath,
284
+ method: 'POST',
285
+ headers: headerParameters,
286
+ query: queryParameters,
287
+ body: (0, index_1.KycCheckRequestToJSON)(requestParameters['kycCheckRequest']),
288
+ }, initOverrides);
289
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DecisionResponseFromJSON)(jsonValue));
290
+ }
291
+ /**
292
+ * Synchronous decision for KYC/identity verification
293
+ */
294
+ async kycRiskCheck(requestParameters, initOverrides) {
295
+ const response = await this.kycRiskCheckRaw(requestParameters, initOverrides);
296
+ return await response.value();
297
+ }
298
+ /**
299
+ * Synchronous fraud decision for a purchase
300
+ */
301
+ async riskCheckRaw(requestParameters, initOverrides) {
302
+ if (requestParameters['xIdempotencyKey'] == null) {
303
+ throw new runtime.RequiredError('xIdempotencyKey', 'Required parameter "xIdempotencyKey" was null or undefined when calling riskCheck().');
304
+ }
305
+ if (requestParameters['checkRequest'] == null) {
306
+ throw new runtime.RequiredError('checkRequest', 'Required parameter "checkRequest" was null or undefined when calling riskCheck().');
307
+ }
308
+ const queryParameters = {};
309
+ const headerParameters = {};
310
+ headerParameters['Content-Type'] = 'application/json';
311
+ if (requestParameters['xTraceId'] != null) {
312
+ headerParameters['x-trace-id'] = String(requestParameters['xTraceId']);
313
+ }
314
+ if (requestParameters['xIdempotencyKey'] != null) {
315
+ headerParameters['x-idempotency-key'] = String(requestParameters['xIdempotencyKey']);
316
+ }
317
+ if (this.configuration && this.configuration.apiKey) {
318
+ headerParameters["x-api-key"] = await this.configuration.apiKey("x-api-key"); // ApiKey authentication
319
+ }
320
+ if (this.configuration && this.configuration.accessToken) {
321
+ // oauth required
322
+ headerParameters["Authorization"] = await this.configuration.accessToken("oAuth2", ["payrisk.write"]);
323
+ }
324
+ let urlPath = `/v1/risk/check`;
325
+ const response = await this.request({
326
+ path: urlPath,
327
+ method: 'POST',
328
+ headers: headerParameters,
329
+ query: queryParameters,
330
+ body: (0, index_1.CheckRequestToJSON)(requestParameters['checkRequest']),
331
+ }, initOverrides);
332
+ return new runtime.JSONApiResponse(response, (jsonValue) => (0, index_1.DecisionResponseFromJSON)(jsonValue));
333
+ }
334
+ /**
335
+ * Synchronous fraud decision for a purchase
336
+ */
337
+ async riskCheck(requestParameters, initOverrides) {
338
+ const response = await this.riskCheckRaw(requestParameters, initOverrides);
339
+ return await response.value();
340
+ }
341
+ }
342
+ exports.PayriskApi = PayriskApi;
@@ -0,0 +1 @@
1
+ export * from './PayriskApi';
@@ -0,0 +1,19 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /* tslint:disable */
18
+ /* eslint-disable */
19
+ __exportStar(require("./PayriskApi"), exports);
@@ -0,0 +1,3 @@
1
+ export * from './runtime';
2
+ export * from './apis/index';
3
+ export * from './models/index';
@@ -0,0 +1,21 @@
1
+ "use strict";
2
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
3
+ if (k2 === undefined) k2 = k;
4
+ var desc = Object.getOwnPropertyDescriptor(m, k);
5
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
6
+ desc = { enumerable: true, get: function() { return m[k]; } };
7
+ }
8
+ Object.defineProperty(o, k2, desc);
9
+ }) : (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ o[k2] = m[k];
12
+ }));
13
+ var __exportStar = (this && this.__exportStar) || function(m, exports) {
14
+ for (var p in m) if (p !== "default" && !Object.prototype.hasOwnProperty.call(exports, p)) __createBinding(exports, m, p);
15
+ };
16
+ Object.defineProperty(exports, "__esModule", { value: true });
17
+ /* tslint:disable */
18
+ /* eslint-disable */
19
+ __exportStar(require("./runtime"), exports);
20
+ __exportStar(require("./apis/index"), exports);
21
+ __exportStar(require("./models/index"), exports);
@@ -0,0 +1,59 @@
1
+ /**
2
+ * Payments Risk API
3
+ * API for detecting and scoring fraud for purchases, with lifecycle labeling and behavioral signals. v1 focuses on purchases only (`/risk/check`), with future account/session and KYC checks stubbed below.
4
+ *
5
+ * The version of the OpenAPI document: 0.1.6-rc.3
6
+ * Contact: support@alogram.ai
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { DeviceInfo } from './DeviceInfo';
13
+ /**
14
+ * The application-layer Account object.
15
+ * @export
16
+ * @interface Account
17
+ */
18
+ export interface Account {
19
+ /**
20
+ *
21
+ * @type {DeviceInfo}
22
+ * @memberof Account
23
+ */
24
+ deviceInfo?: DeviceInfo;
25
+ /**
26
+ * RFC 3339 timestamp with timezone.
27
+ * @type {string}
28
+ * @memberof Account
29
+ */
30
+ timestamp?: string;
31
+ /**
32
+ * Phone number that supports international E.164 format, as well as spaces, dashes, and parentheses. Examples: "+1 (415) 555-2671", "415-555-2671", "+14155552671"
33
+ *
34
+ * @type {string}
35
+ * @memberof Account
36
+ */
37
+ phone?: string;
38
+ /**
39
+ * Email address of the customer.
40
+ * @type {string}
41
+ * @memberof Account
42
+ */
43
+ email?: string;
44
+ /**
45
+ * Optional key-value pairs providing additional context for the request. Each key should be descriptive, and values should not exceed 2048 characters. Each key should be descriptive.
46
+ *
47
+ * @type {string}
48
+ * @memberof Account
49
+ */
50
+ metadata?: string;
51
+ }
52
+ /**
53
+ * Check if a given object implements the Account interface.
54
+ */
55
+ export declare function instanceOfAccount(value: object): value is Account;
56
+ export declare function AccountFromJSON(json: any): Account;
57
+ export declare function AccountFromJSONTyped(json: any, ignoreDiscriminator: boolean): Account;
58
+ export declare function AccountToJSON(json: any): Account;
59
+ export declare function AccountToJSONTyped(value?: Account | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,57 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Payments Risk API
6
+ * API for detecting and scoring fraud for purchases, with lifecycle labeling and behavioral signals. v1 focuses on purchases only (`/risk/check`), with future account/session and KYC checks stubbed below.
7
+ *
8
+ * The version of the OpenAPI document: 0.1.6-rc.3
9
+ * Contact: support@alogram.ai
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.instanceOfAccount = instanceOfAccount;
17
+ exports.AccountFromJSON = AccountFromJSON;
18
+ exports.AccountFromJSONTyped = AccountFromJSONTyped;
19
+ exports.AccountToJSON = AccountToJSON;
20
+ exports.AccountToJSONTyped = AccountToJSONTyped;
21
+ const DeviceInfo_1 = require("./DeviceInfo");
22
+ /**
23
+ * Check if a given object implements the Account interface.
24
+ */
25
+ function instanceOfAccount(value) {
26
+ return true;
27
+ }
28
+ function AccountFromJSON(json) {
29
+ return AccountFromJSONTyped(json, false);
30
+ }
31
+ function AccountFromJSONTyped(json, ignoreDiscriminator) {
32
+ if (json == null) {
33
+ return json;
34
+ }
35
+ return {
36
+ 'deviceInfo': json['deviceInfo'] == null ? undefined : (0, DeviceInfo_1.DeviceInfoFromJSON)(json['deviceInfo']),
37
+ 'timestamp': json['timestamp'] == null ? undefined : json['timestamp'],
38
+ 'phone': json['phone'] == null ? undefined : json['phone'],
39
+ 'email': json['email'] == null ? undefined : json['email'],
40
+ 'metadata': json['metadata'] == null ? undefined : json['metadata'],
41
+ };
42
+ }
43
+ function AccountToJSON(json) {
44
+ return AccountToJSONTyped(json, false);
45
+ }
46
+ function AccountToJSONTyped(value, ignoreDiscriminator = false) {
47
+ if (value == null) {
48
+ return value;
49
+ }
50
+ return {
51
+ 'deviceInfo': (0, DeviceInfo_1.DeviceInfoToJSON)(value['deviceInfo']),
52
+ 'timestamp': value['timestamp'],
53
+ 'phone': value['phone'],
54
+ 'email': value['email'],
55
+ 'metadata': value['metadata'],
56
+ };
57
+ }
@@ -0,0 +1,64 @@
1
+ /**
2
+ * Payments Risk API
3
+ * API for detecting and scoring fraud for purchases, with lifecycle labeling and behavioral signals. v1 focuses on purchases only (`/risk/check`), with future account/session and KYC checks stubbed below.
4
+ *
5
+ * The version of the OpenAPI document: 0.1.6-rc.3
6
+ * Contact: support@alogram.ai
7
+ *
8
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
9
+ * https://openapi-generator.tech
10
+ * Do not edit the class manually.
11
+ */
12
+ import type { Account } from './Account';
13
+ import type { Interaction } from './Interaction';
14
+ import type { EntityIds } from './EntityIds';
15
+ /**
16
+ *
17
+ * @export
18
+ * @interface AccountCheckRequest
19
+ */
20
+ export interface AccountCheckRequest {
21
+ /**
22
+ * The specific subtype of the account event (e.g., 'signup', 'login').
23
+ * @type {string}
24
+ * @memberof AccountCheckRequest
25
+ */
26
+ eventSubtype: AccountCheckRequestEventSubtypeEnum;
27
+ /**
28
+ *
29
+ * @type {EntityIds}
30
+ * @memberof AccountCheckRequest
31
+ */
32
+ entities?: EntityIds;
33
+ /**
34
+ *
35
+ * @type {Account}
36
+ * @memberof AccountCheckRequest
37
+ */
38
+ account?: Account;
39
+ /**
40
+ *
41
+ * @type {Interaction}
42
+ * @memberof AccountCheckRequest
43
+ */
44
+ interaction?: Interaction;
45
+ }
46
+ /**
47
+ * @export
48
+ * @enum {string}
49
+ */
50
+ export declare enum AccountCheckRequestEventSubtypeEnum {
51
+ Signup = "signup",
52
+ Login = "login",
53
+ PasswordReset = "password_reset",
54
+ MfaReset = "mfa_reset",
55
+ SettingChange = "setting_change"
56
+ }
57
+ /**
58
+ * Check if a given object implements the AccountCheckRequest interface.
59
+ */
60
+ export declare function instanceOfAccountCheckRequest(value: object): value is AccountCheckRequest;
61
+ export declare function AccountCheckRequestFromJSON(json: any): AccountCheckRequest;
62
+ export declare function AccountCheckRequestFromJSONTyped(json: any, ignoreDiscriminator: boolean): AccountCheckRequest;
63
+ export declare function AccountCheckRequestToJSON(json: any): AccountCheckRequest;
64
+ export declare function AccountCheckRequestToJSONTyped(value?: AccountCheckRequest | null, ignoreDiscriminator?: boolean): any;
@@ -0,0 +1,72 @@
1
+ "use strict";
2
+ /* tslint:disable */
3
+ /* eslint-disable */
4
+ /**
5
+ * Payments Risk API
6
+ * API for detecting and scoring fraud for purchases, with lifecycle labeling and behavioral signals. v1 focuses on purchases only (`/risk/check`), with future account/session and KYC checks stubbed below.
7
+ *
8
+ * The version of the OpenAPI document: 0.1.6-rc.3
9
+ * Contact: support@alogram.ai
10
+ *
11
+ * NOTE: This class is auto generated by OpenAPI Generator (https://openapi-generator.tech).
12
+ * https://openapi-generator.tech
13
+ * Do not edit the class manually.
14
+ */
15
+ Object.defineProperty(exports, "__esModule", { value: true });
16
+ exports.AccountCheckRequestEventSubtypeEnum = void 0;
17
+ exports.instanceOfAccountCheckRequest = instanceOfAccountCheckRequest;
18
+ exports.AccountCheckRequestFromJSON = AccountCheckRequestFromJSON;
19
+ exports.AccountCheckRequestFromJSONTyped = AccountCheckRequestFromJSONTyped;
20
+ exports.AccountCheckRequestToJSON = AccountCheckRequestToJSON;
21
+ exports.AccountCheckRequestToJSONTyped = AccountCheckRequestToJSONTyped;
22
+ const Account_1 = require("./Account");
23
+ const Interaction_1 = require("./Interaction");
24
+ const EntityIds_1 = require("./EntityIds");
25
+ /**
26
+ * @export
27
+ * @enum {string}
28
+ */
29
+ var AccountCheckRequestEventSubtypeEnum;
30
+ (function (AccountCheckRequestEventSubtypeEnum) {
31
+ AccountCheckRequestEventSubtypeEnum["Signup"] = "signup";
32
+ AccountCheckRequestEventSubtypeEnum["Login"] = "login";
33
+ AccountCheckRequestEventSubtypeEnum["PasswordReset"] = "password_reset";
34
+ AccountCheckRequestEventSubtypeEnum["MfaReset"] = "mfa_reset";
35
+ AccountCheckRequestEventSubtypeEnum["SettingChange"] = "setting_change";
36
+ })(AccountCheckRequestEventSubtypeEnum || (exports.AccountCheckRequestEventSubtypeEnum = AccountCheckRequestEventSubtypeEnum = {}));
37
+ /**
38
+ * Check if a given object implements the AccountCheckRequest interface.
39
+ */
40
+ function instanceOfAccountCheckRequest(value) {
41
+ if (!('eventSubtype' in value) || value['eventSubtype'] === undefined)
42
+ return false;
43
+ return true;
44
+ }
45
+ function AccountCheckRequestFromJSON(json) {
46
+ return AccountCheckRequestFromJSONTyped(json, false);
47
+ }
48
+ function AccountCheckRequestFromJSONTyped(json, ignoreDiscriminator) {
49
+ if (json == null) {
50
+ return json;
51
+ }
52
+ return {
53
+ 'eventSubtype': json['eventSubtype'],
54
+ 'entities': json['entities'] == null ? undefined : (0, EntityIds_1.EntityIdsFromJSON)(json['entities']),
55
+ 'account': json['account'] == null ? undefined : (0, Account_1.AccountFromJSON)(json['account']),
56
+ 'interaction': json['interaction'] == null ? undefined : (0, Interaction_1.InteractionFromJSON)(json['interaction']),
57
+ };
58
+ }
59
+ function AccountCheckRequestToJSON(json) {
60
+ return AccountCheckRequestToJSONTyped(json, false);
61
+ }
62
+ function AccountCheckRequestToJSONTyped(value, ignoreDiscriminator = false) {
63
+ if (value == null) {
64
+ return value;
65
+ }
66
+ return {
67
+ 'eventSubtype': value['eventSubtype'],
68
+ 'entities': (0, EntityIds_1.EntityIdsToJSON)(value['entities']),
69
+ 'account': (0, Account_1.AccountToJSON)(value['account']),
70
+ 'interaction': (0, Interaction_1.InteractionToJSON)(value['interaction']),
71
+ };
72
+ }