@payark/sdk-effect 0.1.6 → 0.1.9
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/README.md +9 -10
- package/dist/api-spec.d.mts +385 -38
- package/dist/api-spec.d.ts +385 -38
- package/dist/api-spec.js +237 -16
- package/dist/api-spec.js.map +1 -1
- package/dist/api-spec.mjs +229 -17
- package/dist/api-spec.mjs.map +1 -1
- package/dist/index.d.mts +919 -99
- package/dist/index.d.ts +919 -99
- package/dist/index.js +615 -23
- package/dist/index.js.map +1 -1
- package/dist/index.mjs +601 -25
- package/dist/index.mjs.map +1 -1
- package/dist/schemas.d.mts +91 -13
- package/dist/schemas.d.ts +91 -13
- package/dist/schemas.js +97 -6
- package/dist/schemas.js.map +1 -1
- package/dist/schemas.mjs +91 -7
- package/dist/schemas.mjs.map +1 -1
- package/package.json +1 -1
package/dist/api-spec.js
CHANGED
|
@@ -12,11 +12,17 @@ var UrlString = effect.Schema.String.pipe(
|
|
|
12
12
|
effect.Schema.pattern(/^https?:\/\/.+/),
|
|
13
13
|
effect.Schema.brand("UrlString")
|
|
14
14
|
);
|
|
15
|
-
|
|
15
|
+
effect.Schema.Number.pipe(
|
|
16
16
|
effect.Schema.int(),
|
|
17
17
|
effect.Schema.greaterThan(0),
|
|
18
18
|
effect.Schema.brand("MinorUnitsInt")
|
|
19
19
|
);
|
|
20
|
+
var NprAmount = effect.Schema.Number.pipe(
|
|
21
|
+
effect.Schema.filter(
|
|
22
|
+
(n) => Number.isFinite(n) && n > 0 && Math.round(n * 100) === n * 100
|
|
23
|
+
),
|
|
24
|
+
effect.Schema.brand("NprAmount")
|
|
25
|
+
);
|
|
20
26
|
|
|
21
27
|
// src/schemas.ts
|
|
22
28
|
var Id = effect.Schema.String.pipe(effect.Schema.brand("Id"));
|
|
@@ -28,6 +34,10 @@ var CheckoutSessionId = effect.Schema.String.pipe(
|
|
|
28
34
|
var SubscriptionId = effect.Schema.String.pipe(
|
|
29
35
|
effect.Schema.brand("SubscriptionId")
|
|
30
36
|
);
|
|
37
|
+
var MandateId = effect.Schema.String.pipe(effect.Schema.brand("MandateId"));
|
|
38
|
+
var AgentSessionId = effect.Schema.String.pipe(
|
|
39
|
+
effect.Schema.brand("AgentSessionId")
|
|
40
|
+
);
|
|
31
41
|
var CustomerId = effect.Schema.String.pipe(effect.Schema.brand("CustomerId"));
|
|
32
42
|
var TokenId = effect.Schema.String.pipe(effect.Schema.brand("TokenId"));
|
|
33
43
|
var Email = effect.Schema.String.pipe(
|
|
@@ -46,6 +56,7 @@ effect.Schema.Struct({
|
|
|
46
56
|
var Provider = effect.Schema.Literal(
|
|
47
57
|
"esewa",
|
|
48
58
|
"khalti",
|
|
59
|
+
"hamropay",
|
|
49
60
|
"connectips",
|
|
50
61
|
"imepay",
|
|
51
62
|
"fonepay",
|
|
@@ -53,12 +64,27 @@ var Provider = effect.Schema.Literal(
|
|
|
53
64
|
);
|
|
54
65
|
var PaymentStatus = effect.Schema.Literal("pending", "success", "failed");
|
|
55
66
|
var SubscriptionStatus = effect.Schema.Literal(
|
|
67
|
+
"pending_checkout",
|
|
56
68
|
"active",
|
|
57
69
|
"past_due",
|
|
58
70
|
"canceled",
|
|
59
71
|
"paused"
|
|
60
72
|
);
|
|
61
73
|
var SubscriptionInterval = effect.Schema.Literal("month", "year", "week");
|
|
74
|
+
var CustomerLifecycle = effect.Schema.Literal(
|
|
75
|
+
"new",
|
|
76
|
+
"active",
|
|
77
|
+
"loyal",
|
|
78
|
+
"at_risk",
|
|
79
|
+
"churned"
|
|
80
|
+
);
|
|
81
|
+
var MandateType = effect.Schema.Literal("intent", "cart");
|
|
82
|
+
var MandateStatus = effect.Schema.Literal(
|
|
83
|
+
"active",
|
|
84
|
+
"consumed",
|
|
85
|
+
"expired",
|
|
86
|
+
"violated"
|
|
87
|
+
);
|
|
62
88
|
var Customer = effect.Schema.Struct({
|
|
63
89
|
id: CustomerId,
|
|
64
90
|
merchant_customer_id: NonEmptyString,
|
|
@@ -67,12 +93,18 @@ var Customer = effect.Schema.Struct({
|
|
|
67
93
|
phone: effect.Schema.NullOr(effect.Schema.String),
|
|
68
94
|
project_id: ProjectId,
|
|
69
95
|
metadata: effect.Schema.NullOr(Metadata),
|
|
96
|
+
total_ltv: effect.Schema.optional(effect.Schema.Number),
|
|
97
|
+
is_high_value: effect.Schema.optional(effect.Schema.Boolean),
|
|
98
|
+
lifecycle_stage: effect.Schema.optional(CustomerLifecycle),
|
|
99
|
+
ltv_cents: effect.Schema.optional(effect.Schema.Number),
|
|
100
|
+
tier: effect.Schema.NullOr(effect.Schema.String),
|
|
70
101
|
created_at: Timestamp,
|
|
71
102
|
updated_at: effect.Schema.optional(Timestamp)
|
|
72
103
|
});
|
|
73
104
|
var Payment = effect.Schema.Struct({
|
|
74
105
|
id: PaymentId,
|
|
75
106
|
project_id: ProjectId,
|
|
107
|
+
customer_id: effect.Schema.optional(effect.Schema.NullOr(CustomerId)),
|
|
76
108
|
amount: effect.Schema.Number,
|
|
77
109
|
currency: effect.Schema.String,
|
|
78
110
|
status: PaymentStatus,
|
|
@@ -94,7 +126,9 @@ var Subscription = effect.Schema.Struct({
|
|
|
94
126
|
current_period_start: Timestamp,
|
|
95
127
|
current_period_end: Timestamp,
|
|
96
128
|
payment_link: UrlString,
|
|
129
|
+
customer_email: effect.Schema.optional(effect.Schema.NullOr(effect.Schema.String)),
|
|
97
130
|
auto_send_link: effect.Schema.Boolean,
|
|
131
|
+
grace_days: effect.Schema.optional(effect.Schema.Number),
|
|
98
132
|
metadata: effect.Schema.optional(effect.Schema.NullOr(Metadata)),
|
|
99
133
|
canceled_at: effect.Schema.optional(effect.Schema.NullOr(Timestamp)),
|
|
100
134
|
created_at: Timestamp,
|
|
@@ -104,6 +138,13 @@ var Project = effect.Schema.Struct({
|
|
|
104
138
|
id: ProjectId,
|
|
105
139
|
name: NonEmptyString,
|
|
106
140
|
api_key_secret: effect.Schema.String,
|
|
141
|
+
subscription_tier: effect.Schema.optional(
|
|
142
|
+
effect.Schema.Literal("free", "pro", "enterprise")
|
|
143
|
+
),
|
|
144
|
+
subscription_status: effect.Schema.optional(
|
|
145
|
+
effect.Schema.Literal("active", "past_due", "canceled", "incomplete")
|
|
146
|
+
),
|
|
147
|
+
expires_at: effect.Schema.optional(effect.Schema.NullOr(Timestamp)),
|
|
107
148
|
created_at: Timestamp
|
|
108
149
|
});
|
|
109
150
|
var Token = effect.Schema.Struct({
|
|
@@ -114,6 +155,38 @@ var Token = effect.Schema.Struct({
|
|
|
114
155
|
expires_at: effect.Schema.NullOr(Timestamp),
|
|
115
156
|
created_at: Timestamp
|
|
116
157
|
});
|
|
158
|
+
var Mandate = effect.Schema.Struct({
|
|
159
|
+
id: MandateId,
|
|
160
|
+
project_id: ProjectId,
|
|
161
|
+
customer_id: effect.Schema.NullOr(CustomerId),
|
|
162
|
+
type: MandateType,
|
|
163
|
+
status: MandateStatus,
|
|
164
|
+
principal_id: effect.Schema.String,
|
|
165
|
+
max_amount: effect.Schema.Number,
|
|
166
|
+
currency: effect.Schema.String,
|
|
167
|
+
permitted_vendors: effect.Schema.NullOr(effect.Schema.Array(effect.Schema.String)),
|
|
168
|
+
valid_from: Timestamp,
|
|
169
|
+
valid_until: Timestamp,
|
|
170
|
+
credential_jwt: effect.Schema.String,
|
|
171
|
+
public_key: effect.Schema.String,
|
|
172
|
+
signature: effect.Schema.String,
|
|
173
|
+
parent_mandate_id: effect.Schema.NullOr(MandateId),
|
|
174
|
+
payment_id: effect.Schema.NullOr(PaymentId),
|
|
175
|
+
created_at: Timestamp,
|
|
176
|
+
consumed_at: effect.Schema.NullOr(Timestamp),
|
|
177
|
+
metadata_json: Metadata
|
|
178
|
+
});
|
|
179
|
+
effect.Schema.Struct({
|
|
180
|
+
id: AgentSessionId,
|
|
181
|
+
project_id: ProjectId,
|
|
182
|
+
context_id: effect.Schema.String,
|
|
183
|
+
agent_card_url: UrlString,
|
|
184
|
+
capabilities: effect.Schema.Any,
|
|
185
|
+
auth_scheme: effect.Schema.Literal("bearer", "mandate"),
|
|
186
|
+
status: effect.Schema.String,
|
|
187
|
+
created_at: Timestamp,
|
|
188
|
+
expires_at: Timestamp
|
|
189
|
+
});
|
|
117
190
|
var PaginationMeta = effect.Schema.Struct({
|
|
118
191
|
total: effect.Schema.NullOr(effect.Schema.Number),
|
|
119
192
|
limit: effect.Schema.Number,
|
|
@@ -127,6 +200,8 @@ var WebhookEventType = effect.Schema.Literal(
|
|
|
127
200
|
"payment.success",
|
|
128
201
|
"payment.failed",
|
|
129
202
|
"subscription.created",
|
|
203
|
+
"subscription.activated",
|
|
204
|
+
"subscription.renewed",
|
|
130
205
|
"subscription.payment_succeeded",
|
|
131
206
|
"subscription.payment_failed",
|
|
132
207
|
"subscription.renewal_due",
|
|
@@ -151,13 +226,15 @@ effect.Schema.Struct({
|
|
|
151
226
|
created: effect.Schema.optional(effect.Schema.Number)
|
|
152
227
|
});
|
|
153
228
|
var CreateCheckoutParams = effect.Schema.Struct({
|
|
154
|
-
amount: effect.Schema.optional(
|
|
229
|
+
amount: effect.Schema.optional(NprAmount),
|
|
155
230
|
currency: effect.Schema.optionalWith(effect.Schema.String, { default: () => "NPR" }),
|
|
156
231
|
provider: Provider,
|
|
157
232
|
returnUrl: UrlString,
|
|
158
233
|
cancelUrl: effect.Schema.optional(UrlString),
|
|
159
234
|
metadata: effect.Schema.optional(Metadata),
|
|
160
|
-
subscriptionId: effect.Schema.optional(SubscriptionId)
|
|
235
|
+
subscriptionId: effect.Schema.optional(SubscriptionId),
|
|
236
|
+
customerId: effect.Schema.optional(CustomerId),
|
|
237
|
+
mandate_id: effect.Schema.optional(MandateId)
|
|
161
238
|
}).pipe(
|
|
162
239
|
effect.Schema.filter((data) => {
|
|
163
240
|
if (!data.subscriptionId && !data.amount) {
|
|
@@ -169,6 +246,7 @@ var CreateCheckoutParams = effect.Schema.Struct({
|
|
|
169
246
|
var CheckoutSession = effect.Schema.Struct({
|
|
170
247
|
id: CheckoutSessionId,
|
|
171
248
|
checkout_url: UrlString,
|
|
249
|
+
qr_string: effect.Schema.optional(effect.Schema.String),
|
|
172
250
|
payment_method: effect.Schema.Struct({
|
|
173
251
|
type: Provider,
|
|
174
252
|
url: effect.Schema.optional(UrlString),
|
|
@@ -202,22 +280,27 @@ var UpdateCustomerParams = effect.Schema.Struct({
|
|
|
202
280
|
email: effect.Schema.optional(Email),
|
|
203
281
|
name: effect.Schema.optional(NonEmptyString),
|
|
204
282
|
phone: effect.Schema.optional(effect.Schema.String),
|
|
283
|
+
tier: effect.Schema.optional(effect.Schema.String),
|
|
284
|
+
merchant_customer_id: effect.Schema.optional(effect.Schema.String),
|
|
205
285
|
metadata: effect.Schema.optional(Metadata)
|
|
206
286
|
});
|
|
207
287
|
var CreateSubscriptionParams = effect.Schema.Struct({
|
|
208
288
|
customer_id: CustomerId,
|
|
209
|
-
amount:
|
|
289
|
+
amount: NprAmount,
|
|
210
290
|
currency: effect.Schema.optionalWith(effect.Schema.String, { default: () => "NPR" }),
|
|
211
291
|
interval: SubscriptionInterval,
|
|
212
292
|
interval_count: effect.Schema.optional(effect.Schema.Number),
|
|
213
293
|
project_id: effect.Schema.optional(ProjectId),
|
|
294
|
+
customer_email: effect.Schema.optional(effect.Schema.String),
|
|
214
295
|
auto_send_link: effect.Schema.optional(effect.Schema.Boolean),
|
|
215
296
|
metadata: effect.Schema.optional(Metadata)
|
|
216
297
|
});
|
|
217
|
-
|
|
298
|
+
effect.Schema.Struct({
|
|
218
299
|
payment_id: effect.Schema.optional(effect.Schema.String),
|
|
219
300
|
data: effect.Schema.optional(effect.Schema.String),
|
|
220
|
-
pidx: effect.Schema.optional(effect.Schema.String)
|
|
301
|
+
pidx: effect.Schema.optional(effect.Schema.String),
|
|
302
|
+
/** HamroPay-specific: the gateway's own transactionId returned on callback. */
|
|
303
|
+
ref_id: effect.Schema.optional(effect.Schema.String)
|
|
221
304
|
});
|
|
222
305
|
var ListSubscriptionsParams = effect.Schema.Struct({
|
|
223
306
|
limit: effect.Schema.optional(effect.Schema.NumberFromString),
|
|
@@ -235,7 +318,8 @@ effect.Schema.Struct({
|
|
|
235
318
|
baseUrl: effect.Schema.optional(effect.Schema.String),
|
|
236
319
|
timeout: effect.Schema.optional(effect.Schema.Number),
|
|
237
320
|
maxRetries: effect.Schema.optional(effect.Schema.Number),
|
|
238
|
-
sandbox: effect.Schema.optional(effect.Schema.Boolean)
|
|
321
|
+
sandbox: effect.Schema.optional(effect.Schema.Boolean),
|
|
322
|
+
signingPrivateKey: effect.Schema.optional(effect.Schema.String)
|
|
239
323
|
});
|
|
240
324
|
effect.Schema.Struct({
|
|
241
325
|
error: effect.Schema.String,
|
|
@@ -245,21 +329,30 @@ var IndustrialError = class extends effect.Schema.TaggedError()(
|
|
|
245
329
|
"IndustrialError",
|
|
246
330
|
{
|
|
247
331
|
error: effect.Schema.String,
|
|
248
|
-
details: effect.Schema.optional(effect.Schema.Any)
|
|
332
|
+
details: effect.Schema.optional(effect.Schema.Any),
|
|
333
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
334
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
335
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
249
336
|
}
|
|
250
337
|
) {
|
|
251
338
|
};
|
|
252
339
|
var AuthenticationError = class extends effect.Schema.TaggedError()(
|
|
253
340
|
"AuthenticationError",
|
|
254
341
|
{
|
|
255
|
-
error: effect.Schema.String
|
|
342
|
+
error: effect.Schema.String,
|
|
343
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
344
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
345
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
256
346
|
}
|
|
257
347
|
) {
|
|
258
348
|
};
|
|
259
349
|
var NotFoundError = class extends effect.Schema.TaggedError()(
|
|
260
350
|
"NotFoundError",
|
|
261
351
|
{
|
|
262
|
-
error: effect.Schema.String
|
|
352
|
+
error: effect.Schema.String,
|
|
353
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
354
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
355
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
263
356
|
}
|
|
264
357
|
) {
|
|
265
358
|
};
|
|
@@ -267,14 +360,43 @@ var InternalServerError = class extends effect.Schema.TaggedError()(
|
|
|
267
360
|
"InternalServerError",
|
|
268
361
|
{
|
|
269
362
|
error: effect.Schema.String,
|
|
270
|
-
details: effect.Schema.optional(effect.Schema.Any)
|
|
363
|
+
details: effect.Schema.optional(effect.Schema.Any),
|
|
364
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
365
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
366
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
271
367
|
}
|
|
272
368
|
) {
|
|
273
369
|
};
|
|
274
370
|
var ConflictError = class extends effect.Schema.TaggedError()(
|
|
275
371
|
"ConflictError",
|
|
276
372
|
{
|
|
277
|
-
error: effect.Schema.String
|
|
373
|
+
error: effect.Schema.String,
|
|
374
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
375
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
376
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
377
|
+
}
|
|
378
|
+
) {
|
|
379
|
+
};
|
|
380
|
+
var MandateViolationError = class extends effect.Schema.TaggedError()(
|
|
381
|
+
"MandateViolationError",
|
|
382
|
+
{
|
|
383
|
+
error: effect.Schema.String,
|
|
384
|
+
mandateId: effect.Schema.optional(effect.Schema.String),
|
|
385
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
386
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
387
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
388
|
+
}
|
|
389
|
+
) {
|
|
390
|
+
};
|
|
391
|
+
var MandateExpiredError = class extends effect.Schema.TaggedError()(
|
|
392
|
+
"MandateExpiredError",
|
|
393
|
+
{
|
|
394
|
+
error: effect.Schema.String,
|
|
395
|
+
mandateId: MandateId,
|
|
396
|
+
expiredAt: Timestamp,
|
|
397
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
398
|
+
doc_url: effect.Schema.optional(effect.Schema.String),
|
|
399
|
+
suggestion: effect.Schema.optional(effect.Schema.String)
|
|
278
400
|
}
|
|
279
401
|
) {
|
|
280
402
|
};
|
|
@@ -365,7 +487,22 @@ var AutomationGroup = platform.HttpApiGroup.make("automation").add(
|
|
|
365
487
|
platform.HttpApiEndpoint.post("reaper", "/reaper").addSuccess(
|
|
366
488
|
effect.Schema.Struct({
|
|
367
489
|
message: effect.Schema.String,
|
|
368
|
-
count: effect.Schema.Number
|
|
490
|
+
count: effect.Schema.Number,
|
|
491
|
+
purged_projects: effect.Schema.Number
|
|
492
|
+
})
|
|
493
|
+
).addError(InternalServerError, { status: 500 })
|
|
494
|
+
).add(
|
|
495
|
+
platform.HttpApiEndpoint.post("processRenewals", "/process-renewals").addSuccess(
|
|
496
|
+
effect.Schema.Struct({
|
|
497
|
+
message: effect.Schema.String,
|
|
498
|
+
emails_sent: effect.Schema.Number
|
|
499
|
+
})
|
|
500
|
+
).addError(InternalServerError, { status: 500 })
|
|
501
|
+
).add(
|
|
502
|
+
platform.HttpApiEndpoint.post("processGracePeriod", "/process-grace-period").addSuccess(
|
|
503
|
+
effect.Schema.Struct({
|
|
504
|
+
message: effect.Schema.String,
|
|
505
|
+
marked_past_due: effect.Schema.Number
|
|
369
506
|
})
|
|
370
507
|
).addError(InternalServerError, { status: 500 })
|
|
371
508
|
).prefix("/v1/automation").middleware(CronSecurity);
|
|
@@ -391,10 +528,30 @@ var TokensGroup = platform.HttpApiGroup.make("tokens").add(
|
|
|
391
528
|
).prefix("/v1/tokens").middleware(UserSecurity);
|
|
392
529
|
var ProjectsGroup = platform.HttpApiGroup.make("projects").add(
|
|
393
530
|
platform.HttpApiEndpoint.get("list", "/").addSuccess(effect.Schema.Array(Project)).addError(AuthenticationError, { status: 401 }).addError(InternalServerError, { status: 500 })
|
|
394
|
-
).
|
|
531
|
+
).add(
|
|
532
|
+
platform.HttpApiEndpoint.post("upgrade", "/:id/upgrade").addSuccess(Project).setPath(effect.Schema.Struct({ id: ProjectId })).setPayload(effect.Schema.Struct({ tier: effect.Schema.Literal("pro", "enterprise") })).addError(AuthenticationError, { status: 401 }).addError(InternalServerError, { status: 500 })
|
|
533
|
+
).prefix("/v1/projects").middleware(UserSecurity);
|
|
534
|
+
var PaymentCallbackQueryParams = effect.Schema.Struct({
|
|
535
|
+
payment_id: effect.Schema.optional(effect.Schema.String),
|
|
536
|
+
data: effect.Schema.optional(effect.Schema.String),
|
|
537
|
+
pidx: effect.Schema.optional(effect.Schema.String),
|
|
538
|
+
/** HamroPay-specific: the gateway's own transactionId returned on callback. */
|
|
539
|
+
ref_id: effect.Schema.optional(effect.Schema.String),
|
|
540
|
+
/** Supabase Auth: access_token and refresh_token can be in the fragment or query */
|
|
541
|
+
access_token: effect.Schema.optional(effect.Schema.String),
|
|
542
|
+
refresh_token: effect.Schema.optional(effect.Schema.String),
|
|
543
|
+
code: effect.Schema.optional(effect.Schema.String)
|
|
544
|
+
});
|
|
395
545
|
var CallbacksGroup = platform.HttpApiGroup.make("callbacks").add(
|
|
396
|
-
platform.HttpApiEndpoint.get("handle", "/:provider").addSuccess(effect.Schema.Any).setPath(effect.Schema.Struct({ provider: effect.Schema.String })).setUrlParams(
|
|
546
|
+
platform.HttpApiEndpoint.get("handle", "/:provider").addSuccess(effect.Schema.Any).setPath(effect.Schema.Struct({ provider: effect.Schema.String })).setUrlParams(PaymentCallbackQueryParams).addError(NotFoundError, { status: 404 }).addError(InternalServerError, { status: 500 }).addError(IndustrialError, { status: 400 })
|
|
397
547
|
).prefix("/v1/callback");
|
|
548
|
+
var AuthCallbackQueryParams = effect.Schema.Struct({
|
|
549
|
+
code: effect.Schema.optional(effect.Schema.String),
|
|
550
|
+
next: effect.Schema.optional(effect.Schema.String)
|
|
551
|
+
});
|
|
552
|
+
var AuthGroup = platform.HttpApiGroup.make("auth").add(
|
|
553
|
+
platform.HttpApiEndpoint.post("callback", "/callback").addSuccess(effect.Schema.Any).setUrlParams(AuthCallbackQueryParams).addError(AuthenticationError, { status: 401 }).addError(InternalServerError, { status: 500 })
|
|
554
|
+
).prefix("/auth");
|
|
398
555
|
var RealtimeGroup = platform.HttpApiGroup.make("realtime").add(
|
|
399
556
|
platform.HttpApiEndpoint.get("connect", "/").addSuccess(effect.Schema.Any).setUrlParams(effect.Schema.Struct({ token: effect.Schema.String })).addError(AuthenticationError, { status: 401 }).addError(InternalServerError, { status: 500 })
|
|
400
557
|
).add(
|
|
@@ -405,9 +562,66 @@ var RealtimeGroup = platform.HttpApiGroup.make("realtime").add(
|
|
|
405
562
|
})
|
|
406
563
|
).setPayload(RealtimeTriggerPayload).setUrlParams(effect.Schema.Struct({ token: effect.Schema.optional(effect.Schema.String) })).addError(AuthenticationError, { status: 401 }).addError(InternalServerError, { status: 500 })
|
|
407
564
|
).prefix("/v1/realtime");
|
|
408
|
-
var
|
|
565
|
+
var MandatesGroup = platform.HttpApiGroup.make("mandates").add(
|
|
566
|
+
platform.HttpApiEndpoint.post("registerIntent", "/intent").addSuccess(Mandate, { status: 201 }).setPayload(
|
|
567
|
+
effect.Schema.Struct({
|
|
568
|
+
principal_id: effect.Schema.String,
|
|
569
|
+
max_amount: effect.Schema.Number,
|
|
570
|
+
currency: effect.Schema.String,
|
|
571
|
+
valid_until: Timestamp,
|
|
572
|
+
permitted_vendors: effect.Schema.optional(effect.Schema.Array(effect.Schema.String)),
|
|
573
|
+
credential_jwt: effect.Schema.String,
|
|
574
|
+
public_key: effect.Schema.String,
|
|
575
|
+
customer_id: effect.Schema.optional(CustomerId)
|
|
576
|
+
})
|
|
577
|
+
).addError(AuthenticationError, { status: 401 }).addError(IndustrialError, { status: 400 })
|
|
578
|
+
).add(
|
|
579
|
+
platform.HttpApiEndpoint.get("retrieve", "/:id").addSuccess(Mandate).setPath(effect.Schema.Struct({ id: MandateId })).addError(AuthenticationError, { status: 401 }).addError(NotFoundError, { status: 404 })
|
|
580
|
+
).prefix("/v1/mandates").middleware(SecurityMiddleware);
|
|
581
|
+
var SandboxGroup = platform.HttpApiGroup.make("sandbox").add(
|
|
582
|
+
platform.HttpApiEndpoint.post("init", "/init").addSuccess(
|
|
583
|
+
effect.Schema.Struct({
|
|
584
|
+
projectId: effect.Schema.String,
|
|
585
|
+
apiKey: effect.Schema.optional(effect.Schema.String),
|
|
586
|
+
expiresAt: Timestamp,
|
|
587
|
+
session: effect.Schema.optional(
|
|
588
|
+
effect.Schema.Struct({
|
|
589
|
+
access_token: effect.Schema.String,
|
|
590
|
+
refresh_token: effect.Schema.String
|
|
591
|
+
})
|
|
592
|
+
)
|
|
593
|
+
})
|
|
594
|
+
).addError(InternalServerError, { status: 500 })
|
|
595
|
+
).prefix("/v1/sandbox").middleware(UserSecurity);
|
|
596
|
+
var DiscoveryGroup = platform.HttpApiGroup.make("discovery").add(
|
|
597
|
+
platform.HttpApiEndpoint.get("agentCard", "/agent.json").addSuccess(effect.Schema.Any).addError(InternalServerError, { status: 500 })
|
|
598
|
+
).prefix("/.well-known");
|
|
599
|
+
var SigningKeysGroup = platform.HttpApiGroup.make("signingKeys").add(
|
|
600
|
+
platform.HttpApiEndpoint.post("generate", "/").addSuccess(
|
|
601
|
+
effect.Schema.Struct({
|
|
602
|
+
id: effect.Schema.String,
|
|
603
|
+
publicKey: effect.Schema.String,
|
|
604
|
+
privateKey: effect.Schema.String,
|
|
605
|
+
algorithm: effect.Schema.String,
|
|
606
|
+
createdAt: Timestamp
|
|
607
|
+
}),
|
|
608
|
+
{ status: 201 }
|
|
609
|
+
).setPath(effect.Schema.Struct({ id: ProjectId })).addError(AuthenticationError, { status: 401 }).addError(NotFoundError, { status: 404 }).addError(InternalServerError, { status: 500 })
|
|
610
|
+
).add(
|
|
611
|
+
platform.HttpApiEndpoint.get("get", "/").addSuccess(
|
|
612
|
+
effect.Schema.Struct({
|
|
613
|
+
id: effect.Schema.String,
|
|
614
|
+
publicKey: effect.Schema.String,
|
|
615
|
+
algorithm: effect.Schema.String,
|
|
616
|
+
createdAt: Timestamp
|
|
617
|
+
})
|
|
618
|
+
).setPath(effect.Schema.Struct({ id: ProjectId })).addError(AuthenticationError, { status: 401 }).addError(NotFoundError, { status: 404 }).addError(InternalServerError, { status: 500 })
|
|
619
|
+
).prefix("/v1/projects/:id/signing-keys").middleware(UserSecurity);
|
|
620
|
+
var PayArkApi = platform.HttpApi.make("PayArkApi").add(CheckoutGroup).add(PaymentsGroup).add(CustomersGroup).add(SubscriptionsGroup).add(AutomationGroup).add(TokensGroup).add(ProjectsGroup).add(CallbacksGroup).add(AuthGroup).add(MandatesGroup).add(DiscoveryGroup).add(RealtimeGroup).add(SandboxGroup).add(SigningKeysGroup).addError(AuthenticationError, { status: 401 }).addError(NotFoundError, { status: 404 }).addError(MandateViolationError, { status: 403 }).addError(MandateExpiredError, { status: 410 }).addError(ConflictError, { status: 409 }).addError(InternalServerError, { status: 500 }).addError(IndustrialError, { status: 400 });
|
|
409
621
|
|
|
622
|
+
exports.AuthCallbackQueryParams = AuthCallbackQueryParams;
|
|
410
623
|
exports.AuthContext = AuthContext;
|
|
624
|
+
exports.AuthGroup = AuthGroup;
|
|
411
625
|
exports.AuthenticationError = AuthenticationError;
|
|
412
626
|
exports.AutomationGroup = AutomationGroup;
|
|
413
627
|
exports.CallbacksGroup = CallbacksGroup;
|
|
@@ -415,14 +629,21 @@ exports.CheckoutGroup = CheckoutGroup;
|
|
|
415
629
|
exports.ConflictError = ConflictError;
|
|
416
630
|
exports.CronSecurity = CronSecurity;
|
|
417
631
|
exports.CustomersGroup = CustomersGroup;
|
|
632
|
+
exports.DiscoveryGroup = DiscoveryGroup;
|
|
418
633
|
exports.IndustrialError = IndustrialError;
|
|
419
634
|
exports.InternalServerError = InternalServerError;
|
|
635
|
+
exports.MandateExpiredError = MandateExpiredError;
|
|
636
|
+
exports.MandateViolationError = MandateViolationError;
|
|
637
|
+
exports.MandatesGroup = MandatesGroup;
|
|
420
638
|
exports.NotFoundError = NotFoundError;
|
|
421
639
|
exports.PayArkApi = PayArkApi;
|
|
640
|
+
exports.PaymentCallbackQueryParams = PaymentCallbackQueryParams;
|
|
422
641
|
exports.PaymentsGroup = PaymentsGroup;
|
|
423
642
|
exports.ProjectsGroup = ProjectsGroup;
|
|
424
643
|
exports.RealtimeGroup = RealtimeGroup;
|
|
644
|
+
exports.SandboxGroup = SandboxGroup;
|
|
425
645
|
exports.SecurityMiddleware = SecurityMiddleware;
|
|
646
|
+
exports.SigningKeysGroup = SigningKeysGroup;
|
|
426
647
|
exports.SubscriptionsGroup = SubscriptionsGroup;
|
|
427
648
|
exports.TokensGroup = TokensGroup;
|
|
428
649
|
exports.UserSecurity = UserSecurity;
|