@nordsym/apiclaw 1.8.7 → 1.8.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.
Files changed (156) hide show
  1. package/README.md +58 -30
  2. package/convex/adminActivate.d.ts +3 -0
  3. package/convex/adminActivate.d.ts.map +1 -1
  4. package/convex/adminActivate.js +46 -0
  5. package/convex/adminActivate.js.map +1 -1
  6. package/convex/adminActivate.ts +1 -2
  7. package/convex/adminStats.d.ts +9 -0
  8. package/convex/adminStats.d.ts.map +1 -1
  9. package/convex/adminStats.js +282 -0
  10. package/convex/adminStats.js.map +1 -1
  11. package/convex/adminStats.ts +5 -3
  12. package/convex/agents.d.ts +84 -0
  13. package/convex/agents.js +809 -0
  14. package/convex/analytics.d.ts +5 -0
  15. package/convex/analytics.js +167 -0
  16. package/convex/apiKeys.d.ts +6 -0
  17. package/convex/apiKeys.d.ts.map +1 -0
  18. package/convex/apiKeys.js +186 -0
  19. package/convex/apiKeys.js.map +1 -0
  20. package/convex/backfillAnalytics.d.ts +2 -0
  21. package/convex/backfillAnalytics.js +20 -0
  22. package/convex/backfillSearchLogs.d.ts +2 -0
  23. package/convex/backfillSearchLogs.js +29 -0
  24. package/convex/billing.d.ts +88 -0
  25. package/convex/billing.d.ts.map +1 -1
  26. package/convex/billing.js +643 -0
  27. package/convex/billing.js.map +1 -1
  28. package/convex/billing.ts +2 -14
  29. package/convex/capabilities.d.ts +9 -0
  30. package/convex/capabilities.js +145 -0
  31. package/convex/chains.d.ts +68 -0
  32. package/convex/chains.js +1105 -0
  33. package/convex/credits.d.ts +25 -0
  34. package/convex/credits.js +186 -0
  35. package/convex/crons.d.ts +3 -0
  36. package/convex/crons.js +17 -0
  37. package/convex/debugFilestackLogs.d.ts +2 -0
  38. package/convex/debugFilestackLogs.js +17 -0
  39. package/convex/debugGetToken.d.ts +2 -0
  40. package/convex/debugGetToken.js +18 -0
  41. package/convex/directCall.d.ts +72 -0
  42. package/convex/directCall.d.ts.map +1 -1
  43. package/convex/directCall.js +663 -0
  44. package/convex/directCall.js.map +1 -1
  45. package/convex/earnProgress.d.ts +58 -0
  46. package/convex/earnProgress.js +649 -0
  47. package/convex/email.d.ts +14 -0
  48. package/convex/email.js +300 -0
  49. package/convex/email.js.map +1 -1
  50. package/convex/feedback.d.ts +7 -0
  51. package/convex/feedback.js +227 -0
  52. package/convex/http.d.ts +3 -0
  53. package/convex/http.d.ts.map +1 -1
  54. package/convex/http.js +2135 -0
  55. package/convex/http.js.map +1 -1
  56. package/convex/http.ts +275 -3
  57. package/convex/inbound.d.ts +2 -0
  58. package/convex/inbound.js +32 -0
  59. package/convex/logs.d.ts +48 -0
  60. package/convex/logs.d.ts.map +1 -1
  61. package/convex/logs.js +623 -0
  62. package/convex/logs.js.map +1 -1
  63. package/convex/migrateFilestack.d.ts +2 -0
  64. package/convex/migrateFilestack.js +74 -0
  65. package/convex/migratePartnersProd.d.ts +8 -0
  66. package/convex/migratePartnersProd.js +165 -0
  67. package/convex/migratePratham.d.ts +2 -0
  68. package/convex/migratePratham.js +121 -0
  69. package/convex/migrateProviderWorkspaces.d.ts +13 -0
  70. package/convex/migrateProviderWorkspaces.d.ts.map +1 -1
  71. package/convex/migrateProviderWorkspaces.js +141 -0
  72. package/convex/migrateProviderWorkspaces.js.map +1 -1
  73. package/convex/mou.d.ts +6 -0
  74. package/convex/mou.js +82 -0
  75. package/convex/providerKeys.d.ts +31 -0
  76. package/convex/providerKeys.js +257 -0
  77. package/convex/providers.d.ts +35 -0
  78. package/convex/providers.d.ts.map +1 -1
  79. package/convex/providers.js +1027 -0
  80. package/convex/providers.js.map +1 -1
  81. package/convex/purchases.d.ts +7 -0
  82. package/convex/purchases.js +157 -0
  83. package/convex/ratelimit.d.ts +4 -0
  84. package/convex/ratelimit.js +91 -0
  85. package/convex/schema.ts +4 -4
  86. package/convex/searchLogs.d.ts +13 -0
  87. package/convex/searchLogs.d.ts.map +1 -1
  88. package/convex/searchLogs.js +241 -0
  89. package/convex/searchLogs.js.map +1 -1
  90. package/convex/seedAPILayerAPIs.d.ts +7 -0
  91. package/convex/seedAPILayerAPIs.js +177 -0
  92. package/convex/seedDirectCallConfigs.d.ts +2 -0
  93. package/convex/seedDirectCallConfigs.js +324 -0
  94. package/convex/seedPratham.d.ts +6 -0
  95. package/convex/seedPratham.d.ts.map +1 -1
  96. package/convex/seedPratham.js +149 -0
  97. package/convex/seedPratham.js.map +1 -1
  98. package/convex/seedPratham.ts +1 -2
  99. package/convex/spendAlerts.d.ts +36 -0
  100. package/convex/spendAlerts.js +380 -0
  101. package/convex/spendAlerts.js.map +1 -1
  102. package/convex/stripeActions.d.ts +19 -0
  103. package/convex/stripeActions.d.ts.map +1 -1
  104. package/convex/stripeActions.js +432 -0
  105. package/convex/stripeActions.js.map +1 -1
  106. package/convex/stripeActions.ts +25 -3
  107. package/convex/teams.d.ts +21 -0
  108. package/convex/teams.js +215 -0
  109. package/convex/telemetry.d.ts +4 -0
  110. package/convex/telemetry.js +74 -0
  111. package/convex/updateAPIStatus.d.ts +6 -0
  112. package/convex/updateAPIStatus.d.ts.map +1 -1
  113. package/convex/updateAPIStatus.js +39 -0
  114. package/convex/updateAPIStatus.js.map +1 -1
  115. package/convex/usage.d.ts +27 -0
  116. package/convex/usage.js +229 -0
  117. package/convex/waitlist.d.ts +4 -0
  118. package/convex/waitlist.js +49 -0
  119. package/convex/webhooks.d.ts +12 -0
  120. package/convex/webhooks.js +410 -0
  121. package/convex/workspaceSettings.d.ts +7 -0
  122. package/convex/workspaceSettings.d.ts.map +1 -0
  123. package/convex/workspaceSettings.js +128 -0
  124. package/convex/workspaceSettings.js.map +1 -0
  125. package/convex/workspaces.d.ts +33 -0
  126. package/convex/workspaces.d.ts.map +1 -1
  127. package/convex/workspaces.js +989 -0
  128. package/convex/workspaces.js.map +1 -1
  129. package/convex/workspaces.ts +18 -20
  130. package/dist/bin.js +0 -0
  131. package/dist/cli/commands/demo.js +1 -1
  132. package/dist/cli/commands/demo.js.map +1 -1
  133. package/dist/cli/commands/doctor.js.map +1 -1
  134. package/dist/cli/commands/login.js.map +1 -1
  135. package/dist/cli/commands/setup.js.map +1 -1
  136. package/dist/credentials.d.ts.map +1 -1
  137. package/dist/credentials.js +15 -0
  138. package/dist/credentials.js.map +1 -1
  139. package/dist/discovery.js.map +1 -1
  140. package/dist/execute.js.map +1 -1
  141. package/dist/index.js +1 -1
  142. package/dist/index.js.map +1 -1
  143. package/dist/mcp-analytics.js +1 -1
  144. package/dist/mcp-analytics.js.map +1 -1
  145. package/dist/open-apis.d.ts.map +1 -1
  146. package/dist/open-apis.js +94 -2
  147. package/dist/open-apis.js.map +1 -1
  148. package/dist/ui/errors.js.map +1 -1
  149. package/dist/ui/prompts.js.map +1 -1
  150. package/package.json +1 -1
  151. package/src/cli/commands/demo.ts +1 -1
  152. package/src/credentials.ts +16 -0
  153. package/src/index.ts +1 -1
  154. package/src/mcp-analytics.ts +1 -1
  155. package/src/open-apis.ts +114 -4
  156. package/src/types/convex-api.d.ts +20 -0
@@ -0,0 +1,432 @@
1
+ import Stripe from "stripe";
2
+ import { httpAction } from "./_generated/server";
3
+ import { api } from "./_generated/api";
4
+ // Initialize Stripe (will use env var at runtime)
5
+ function getStripe() {
6
+ const key = process.env.STRIPE_SECRET_KEY;
7
+ if (!key) {
8
+ throw new Error("STRIPE_SECRET_KEY not configured");
9
+ }
10
+ return new Stripe(key);
11
+ }
12
+ // CORS headers
13
+ const corsHeaders = {
14
+ "Access-Control-Allow-Origin": "*",
15
+ "Access-Control-Allow-Methods": "GET, POST, OPTIONS",
16
+ "Access-Control-Allow-Headers": "Content-Type, Authorization, stripe-signature",
17
+ };
18
+ function jsonResponse(data, status = 200) {
19
+ return new Response(JSON.stringify(data), {
20
+ status,
21
+ headers: { "Content-Type": "application/json", ...corsHeaders },
22
+ });
23
+ }
24
+ /**
25
+ * Create Stripe Checkout Session
26
+ * POST /api/billing/checkout
27
+ */
28
+ export const createCheckoutSession = httpAction(async (ctx, request) => {
29
+ try {
30
+ const body = await request.json();
31
+ const { workspaceId, returnUrl, mode = "setup" } = body;
32
+ if (!workspaceId) {
33
+ return jsonResponse({ error: "workspaceId required" }, 400);
34
+ }
35
+ const stripe = getStripe();
36
+ // Get workspace
37
+ const workspace = await ctx.runQuery(api.billing.getWorkspace, {
38
+ id: workspaceId,
39
+ });
40
+ if (!workspace) {
41
+ return jsonResponse({ error: "Workspace not found" }, 404);
42
+ }
43
+ let customerId = workspace.stripeCustomerId;
44
+ // Create Stripe customer if doesn't exist
45
+ if (!customerId) {
46
+ const customer = await stripe.customers.create({
47
+ email: workspace.email,
48
+ metadata: {
49
+ workspaceId: workspaceId,
50
+ source: "apiclaw",
51
+ },
52
+ });
53
+ customerId = customer.id;
54
+ // Link customer to workspace
55
+ await ctx.runMutation(api.billing.linkCustomer, {
56
+ workspaceId: workspaceId,
57
+ stripeCustomerId: customerId,
58
+ });
59
+ }
60
+ const baseUrl = returnUrl || "https://apiclaw.cloud";
61
+ // Create checkout session
62
+ if (mode === "setup") {
63
+ // Setup mode - just save card for future billing
64
+ const session = await stripe.checkout.sessions.create({
65
+ customer: customerId,
66
+ mode: "setup",
67
+ payment_method_types: ["card"],
68
+ success_url: `${baseUrl}/billing?session_id={CHECKOUT_SESSION_ID}&success=true`,
69
+ cancel_url: `${baseUrl}/billing?canceled=true`,
70
+ metadata: {
71
+ workspaceId: workspaceId,
72
+ },
73
+ });
74
+ return jsonResponse({
75
+ checkoutUrl: session.url,
76
+ sessionId: session.id,
77
+ });
78
+ }
79
+ else if (mode === "subscription") {
80
+ // Create metered subscription
81
+ const priceId = process.env.STRIPE_PRICE_ID_USAGE;
82
+ if (!priceId) {
83
+ return jsonResponse({ error: "Usage price not configured" }, 500);
84
+ }
85
+ const session = await stripe.checkout.sessions.create({
86
+ customer: customerId,
87
+ mode: "subscription",
88
+ line_items: [
89
+ {
90
+ price: priceId,
91
+ },
92
+ ],
93
+ success_url: `${baseUrl}/billing?session_id={CHECKOUT_SESSION_ID}&success=true`,
94
+ cancel_url: `${baseUrl}/billing?canceled=true`,
95
+ metadata: {
96
+ workspaceId: workspaceId,
97
+ },
98
+ });
99
+ return jsonResponse({
100
+ checkoutUrl: session.url,
101
+ sessionId: session.id,
102
+ });
103
+ }
104
+ else {
105
+ return jsonResponse({ error: "Invalid mode. Use 'setup' or 'subscription'" }, 400);
106
+ }
107
+ }
108
+ catch (e) {
109
+ console.error("Checkout error:", e);
110
+ return jsonResponse({ error: e.message || "Failed to create checkout" }, 500);
111
+ }
112
+ });
113
+ /**
114
+ * Create Stripe Billing Portal Session
115
+ * POST /api/billing/portal
116
+ */
117
+ export const createPortalSession = httpAction(async (ctx, request) => {
118
+ try {
119
+ const body = await request.json();
120
+ const { workspaceId, returnUrl } = body;
121
+ if (!workspaceId) {
122
+ return jsonResponse({ error: "workspaceId required" }, 400);
123
+ }
124
+ const stripe = getStripe();
125
+ // Get workspace
126
+ const workspace = await ctx.runQuery(api.billing.getWorkspace, {
127
+ id: workspaceId,
128
+ });
129
+ if (!workspace) {
130
+ return jsonResponse({ error: "Workspace not found" }, 404);
131
+ }
132
+ if (!workspace.stripeCustomerId) {
133
+ return jsonResponse({ error: "No billing account. Add a payment method first." }, 400);
134
+ }
135
+ const session = await stripe.billingPortal.sessions.create({
136
+ customer: workspace.stripeCustomerId,
137
+ return_url: returnUrl || "https://apiclaw.com/workspace?tab=settings&portal=success",
138
+ });
139
+ return jsonResponse({
140
+ portalUrl: session.url,
141
+ });
142
+ }
143
+ catch (e) {
144
+ console.error("Portal error:", e);
145
+ return jsonResponse({ error: e.message || "Failed to create portal session" }, 500);
146
+ }
147
+ });
148
+ /**
149
+ * Stripe Webhook Handler
150
+ * POST /api/webhooks/stripe
151
+ */
152
+ export const handleStripeWebhook = httpAction(async (ctx, request) => {
153
+ const webhookSecret = process.env.STRIPE_WEBHOOK_SECRET;
154
+ if (!webhookSecret) {
155
+ console.error("STRIPE_WEBHOOK_SECRET not configured");
156
+ return jsonResponse({ error: "Webhook not configured" }, 500);
157
+ }
158
+ const stripe = getStripe();
159
+ const signature = request.headers.get("stripe-signature");
160
+ if (!signature) {
161
+ return jsonResponse({ error: "Missing stripe-signature header" }, 400);
162
+ }
163
+ let event;
164
+ try {
165
+ const body = await request.text();
166
+ event = stripe.webhooks.constructEvent(body, signature, webhookSecret);
167
+ }
168
+ catch (err) {
169
+ console.error("Webhook signature verification failed:", err.message);
170
+ return jsonResponse({ error: `Webhook Error: ${err.message}` }, 400);
171
+ }
172
+ // Handle the event
173
+ try {
174
+ switch (event.type) {
175
+ case "checkout.session.completed": {
176
+ const session = event.data.object;
177
+ await handleCheckoutComplete(ctx, session);
178
+ break;
179
+ }
180
+ case "customer.subscription.created":
181
+ case "customer.subscription.updated": {
182
+ const subscription = event.data.object;
183
+ await handleSubscriptionUpdate(ctx, subscription);
184
+ break;
185
+ }
186
+ case "customer.subscription.deleted": {
187
+ const subscription = event.data.object;
188
+ await handleSubscriptionCanceled(ctx, subscription);
189
+ break;
190
+ }
191
+ case "invoice.paid": {
192
+ const invoice = event.data.object;
193
+ await handleInvoicePaid(ctx, invoice);
194
+ break;
195
+ }
196
+ case "invoice.payment_failed": {
197
+ const invoice = event.data.object;
198
+ await handlePaymentFailed(ctx, invoice);
199
+ break;
200
+ }
201
+ case "setup_intent.succeeded": {
202
+ const setupIntent = event.data.object;
203
+ await handleSetupSuccess(ctx, setupIntent);
204
+ break;
205
+ }
206
+ case "payment_method.attached": {
207
+ const paymentMethod = event.data.object;
208
+ await handlePaymentMethodAttached(ctx, paymentMethod);
209
+ break;
210
+ }
211
+ case "payment_method.detached": {
212
+ const paymentMethod = event.data.object;
213
+ await handlePaymentMethodDetached(ctx, paymentMethod);
214
+ break;
215
+ }
216
+ default:
217
+ console.log(`Unhandled event type: ${event.type}`);
218
+ }
219
+ return jsonResponse({ received: true, type: event.type });
220
+ }
221
+ catch (e) {
222
+ console.error(`Error handling ${event.type}:`, e);
223
+ // Return 200 to prevent Stripe retries for business logic errors
224
+ return jsonResponse({ received: true, error: e.message });
225
+ }
226
+ });
227
+ // ============================================
228
+ // Webhook Event Handlers
229
+ // ============================================
230
+ async function handleCheckoutComplete(ctx, session) {
231
+ const workspaceId = session.metadata?.workspaceId;
232
+ if (!workspaceId) {
233
+ console.log("No workspaceId in checkout session metadata");
234
+ return;
235
+ }
236
+ // If subscription mode, the subscription webhook will handle it
237
+ if (session.mode === "subscription" && session.subscription) {
238
+ console.log("Subscription checkout completed, waiting for subscription webhook");
239
+ return;
240
+ }
241
+ // If setup mode, upgrade to usage-based billing
242
+ if (session.mode === "setup") {
243
+ await ctx.runMutation(api.billing.updateSubscription, {
244
+ workspaceId: workspaceId,
245
+ billingPlan: "usage_based",
246
+ });
247
+ console.log(`Workspace ${workspaceId} upgraded to usage-based billing`);
248
+ }
249
+ }
250
+ // Map Stripe product IDs to APIClaw billing plans
251
+ const PRODUCT_PLAN_MAP = {
252
+ "prod_UEPEBJUtrXDTLS": "pro", // APIClaw Pro ($79/mo)
253
+ "prod_UEPFCcnUqfIaIn": "scale", // APIClaw Scale ($249/mo)
254
+ };
255
+ async function handleSubscriptionUpdate(ctx, subscription) {
256
+ const customerId = typeof subscription.customer === "string"
257
+ ? subscription.customer
258
+ : subscription.customer.id;
259
+ // Get workspace by customer ID
260
+ const workspace = await ctx.runQuery(api.billing.getByStripeCustomerId, {
261
+ stripeCustomerId: customerId,
262
+ });
263
+ if (!workspace) {
264
+ console.log(`No workspace found for customer ${customerId}`);
265
+ return;
266
+ }
267
+ // Determine plan from subscription product
268
+ let plan = "free";
269
+ if (subscription.status === "active") {
270
+ // Check each subscription item's product to determine the plan
271
+ for (const item of subscription.items.data) {
272
+ const productId = typeof item.price.product === "string"
273
+ ? item.price.product
274
+ : item.price.product.id;
275
+ if (PRODUCT_PLAN_MAP[productId]) {
276
+ plan = PRODUCT_PLAN_MAP[productId];
277
+ break;
278
+ }
279
+ }
280
+ // Fallback: if no known product matched but subscription is active
281
+ if (plan === "free") {
282
+ plan = "usage_based";
283
+ }
284
+ }
285
+ await ctx.runMutation(api.billing.updateSubscription, {
286
+ workspaceId: workspace._id,
287
+ stripeSubscriptionId: subscription.id,
288
+ billingPlan: plan,
289
+ });
290
+ console.log(`Subscription ${subscription.id} updated for workspace ${workspace._id} -> plan: ${plan}`);
291
+ }
292
+ async function handleSubscriptionCanceled(ctx, subscription) {
293
+ const customerId = typeof subscription.customer === "string"
294
+ ? subscription.customer
295
+ : subscription.customer.id;
296
+ const workspace = await ctx.runQuery(api.billing.getByStripeCustomerId, {
297
+ stripeCustomerId: customerId,
298
+ });
299
+ if (!workspace) {
300
+ console.log(`No workspace found for customer ${customerId}`);
301
+ return;
302
+ }
303
+ // Downgrade to free and reset usage
304
+ await ctx.runMutation(api.billing.updateSubscription, {
305
+ workspaceId: workspace._id,
306
+ stripeSubscriptionId: undefined,
307
+ billingPlan: "free",
308
+ });
309
+ // Reset usage count to 0 for clean slate on free tier
310
+ await ctx.runMutation(api.billing.resetUsageOnCancellation, {
311
+ workspaceId: workspace._id,
312
+ });
313
+ console.log(`Workspace ${workspace._id} downgraded to free (subscription canceled)`);
314
+ }
315
+ async function handleInvoicePaid(ctx, invoice) {
316
+ const customerId = typeof invoice.customer === "string"
317
+ ? invoice.customer
318
+ : invoice.customer?.id;
319
+ if (!customerId)
320
+ return;
321
+ const workspace = await ctx.runQuery(api.billing.getByStripeCustomerId, {
322
+ stripeCustomerId: customerId,
323
+ });
324
+ if (!workspace) {
325
+ console.log(`No workspace found for customer ${customerId}`);
326
+ return;
327
+ }
328
+ // Calculate call count from line items (for metered billing)
329
+ let callCount = 0;
330
+ if (invoice.lines?.data) {
331
+ for (const line of invoice.lines.data) {
332
+ if (line.quantity) {
333
+ callCount += line.quantity;
334
+ }
335
+ }
336
+ }
337
+ await ctx.runMutation(api.billing.processPayment, {
338
+ stripeInvoiceId: invoice.id,
339
+ workspaceId: workspace._id,
340
+ amount: invoice.amount_paid,
341
+ periodStart: invoice.period_start * 1000,
342
+ periodEnd: invoice.period_end * 1000,
343
+ callCount,
344
+ pdfUrl: invoice.invoice_pdf || undefined,
345
+ });
346
+ console.log(`Invoice ${invoice.id} processed for workspace ${workspace._id}`);
347
+ }
348
+ async function handlePaymentFailed(ctx, invoice) {
349
+ const customerId = typeof invoice.customer === "string"
350
+ ? invoice.customer
351
+ : invoice.customer?.id;
352
+ if (!customerId)
353
+ return;
354
+ // Update invoice status to failed
355
+ await ctx.runMutation(api.billing.updateInvoiceStatus, {
356
+ stripeInvoiceId: invoice.id,
357
+ status: "failed",
358
+ });
359
+ console.log(`Payment failed for invoice ${invoice.id}`);
360
+ // TODO: Send notification to user about failed payment
361
+ }
362
+ async function handleSetupSuccess(ctx, setupIntent) {
363
+ // Card saved successfully
364
+ const customerId = typeof setupIntent.customer === "string"
365
+ ? setupIntent.customer
366
+ : setupIntent.customer?.id;
367
+ if (!customerId)
368
+ return;
369
+ const workspace = await ctx.runQuery(api.billing.getByStripeCustomerId, {
370
+ stripeCustomerId: customerId,
371
+ });
372
+ if (!workspace) {
373
+ console.log(`No workspace found for customer ${customerId}`);
374
+ return;
375
+ }
376
+ // Upgrade to usage-based if still on free
377
+ if (!workspace.billingPlan || workspace.billingPlan === "free") {
378
+ await ctx.runMutation(api.billing.updateSubscription, {
379
+ workspaceId: workspace._id,
380
+ billingPlan: "usage_based",
381
+ });
382
+ console.log(`Workspace ${workspace._id} upgraded after setup intent`);
383
+ }
384
+ }
385
+ async function handlePaymentMethodAttached(ctx, paymentMethod) {
386
+ // Payment method attached to customer
387
+ const customerId = typeof paymentMethod.customer === "string"
388
+ ? paymentMethod.customer
389
+ : paymentMethod.customer?.id;
390
+ if (!customerId) {
391
+ console.log("Payment method attached but no customer ID");
392
+ return;
393
+ }
394
+ const workspace = await ctx.runQuery(api.billing.getByStripeCustomerId, {
395
+ stripeCustomerId: customerId,
396
+ });
397
+ if (!workspace) {
398
+ console.log(`No workspace found for customer ${customerId}`);
399
+ return;
400
+ }
401
+ // Sync payment method info
402
+ await ctx.runMutation(api.billing.updatePaymentMethodInfo, {
403
+ workspaceId: workspace._id,
404
+ hasPaymentMethod: true,
405
+ paymentMethodType: paymentMethod.type,
406
+ cardBrand: paymentMethod.card?.brand,
407
+ cardLast4: paymentMethod.card?.last4,
408
+ });
409
+ console.log(`Payment method attached for workspace ${workspace._id}`);
410
+ }
411
+ async function handlePaymentMethodDetached(ctx, paymentMethod) {
412
+ // When a payment method is detached, we need to check if customer still has payment methods
413
+ // Since customer info isn't available on detached event, we log it
414
+ console.log(`Payment method ${paymentMethod.id} detached`);
415
+ // Note: In a production system, you might want to:
416
+ // 1. Query Stripe for remaining payment methods
417
+ // 2. If no payment methods remain, downgrade the workspace
418
+ // For now, we rely on subscription cancellation to handle downgrades
419
+ }
420
+ // ============================================
421
+ // OPTIONS handlers for CORS
422
+ // ============================================
423
+ export const checkoutOptions = httpAction(async () => {
424
+ return new Response(null, { headers: corsHeaders });
425
+ });
426
+ export const portalOptions = httpAction(async () => {
427
+ return new Response(null, { headers: corsHeaders });
428
+ });
429
+ export const webhookOptions = httpAction(async () => {
430
+ return new Response(null, { headers: corsHeaders });
431
+ });
432
+ //# sourceMappingURL=stripeActions.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"stripeActions.js","sourceRoot":"","sources":["stripeActions.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"stripeActions.js","sourceRoot":"","sources":["stripeActions.ts"],"names":[],"mappings":"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"}
@@ -291,6 +291,12 @@ async function handleCheckoutComplete(
291
291
  }
292
292
  }
293
293
 
294
+ // Map Stripe product IDs to APIClaw billing plans
295
+ const PRODUCT_PLAN_MAP: Record<string, string> = {
296
+ "prod_UEPEBJUtrXDTLS": "pro", // APIClaw Pro ($79/mo)
297
+ "prod_UEPFCcnUqfIaIn": "scale", // APIClaw Scale ($249/mo)
298
+ };
299
+
294
300
  async function handleSubscriptionUpdate(
295
301
  ctx: any,
296
302
  subscription: Stripe.Subscription
@@ -310,8 +316,24 @@ async function handleSubscriptionUpdate(
310
316
  return;
311
317
  }
312
318
 
313
- // Determine plan from subscription
314
- const plan = subscription.status === "active" ? "usage_based" : "free";
319
+ // Determine plan from subscription product
320
+ let plan = "free";
321
+ if (subscription.status === "active") {
322
+ // Check each subscription item's product to determine the plan
323
+ for (const item of subscription.items.data) {
324
+ const productId = typeof item.price.product === "string"
325
+ ? item.price.product
326
+ : item.price.product.id;
327
+ if (PRODUCT_PLAN_MAP[productId]) {
328
+ plan = PRODUCT_PLAN_MAP[productId];
329
+ break;
330
+ }
331
+ }
332
+ // Fallback: if no known product matched but subscription is active
333
+ if (plan === "free") {
334
+ plan = "usage_based";
335
+ }
336
+ }
315
337
 
316
338
  await ctx.runMutation(api.billing.updateSubscription, {
317
339
  workspaceId: workspace._id,
@@ -319,7 +341,7 @@ async function handleSubscriptionUpdate(
319
341
  billingPlan: plan,
320
342
  });
321
343
 
322
- console.log(`Subscription ${subscription.id} updated for workspace ${workspace._id}`);
344
+ console.log(`Subscription ${subscription.id} updated for workspace ${workspace._id} -> plan: ${plan}`);
323
345
  }
324
346
 
325
347
  async function handleSubscriptionCanceled(
@@ -0,0 +1,21 @@
1
+ /**
2
+ * Get team members for a workspace
3
+ */
4
+ export declare const getMembers: any;
5
+ /**
6
+ * Invite a member to the workspace (creates pending invite)
7
+ */
8
+ export declare const inviteMember: any;
9
+ /**
10
+ * Accept an invite
11
+ */
12
+ export declare const acceptInvite: any;
13
+ /**
14
+ * Remove a member from the workspace
15
+ */
16
+ export declare const removeMember: any;
17
+ /**
18
+ * Get invite details (public, for invite acceptance page)
19
+ */
20
+ export declare const getInviteDetails: any;
21
+ //# sourceMappingURL=teams.d.ts.map