@nordsym/apiclaw 1.0.0 → 1.1.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.
Files changed (154) hide show
  1. package/AGENTS.md +74 -0
  2. package/HEARTBEAT.md +4 -0
  3. package/IDENTITY.md +22 -0
  4. package/README.md +197 -202
  5. package/SOUL.md +36 -0
  6. package/STATUS.md +237 -0
  7. package/TOOLS.md +36 -0
  8. package/USER.md +17 -0
  9. package/{backend/convex → convex}/_generated/api.d.ts +6 -6
  10. package/convex/credits.ts +211 -0
  11. package/convex/http.ts +490 -0
  12. package/convex/providers.ts +516 -0
  13. package/convex/purchases.ts +183 -0
  14. package/convex/schema.ts +180 -0
  15. package/convex.json +3 -0
  16. package/dist/credentials.d.ts +19 -0
  17. package/dist/credentials.d.ts.map +1 -0
  18. package/dist/credentials.js +158 -0
  19. package/dist/credentials.js.map +1 -0
  20. package/dist/credits.d.ts +14 -11
  21. package/dist/credits.d.ts.map +1 -1
  22. package/dist/credits.js +151 -99
  23. package/dist/credits.js.map +1 -1
  24. package/dist/discovery.d.ts +7 -16
  25. package/dist/discovery.d.ts.map +1 -1
  26. package/dist/discovery.js +33 -40
  27. package/dist/discovery.js.map +1 -1
  28. package/dist/execute.d.ts +19 -0
  29. package/dist/execute.d.ts.map +1 -0
  30. package/dist/execute.js +285 -0
  31. package/dist/execute.js.map +1 -0
  32. package/dist/index.js +106 -30
  33. package/dist/index.js.map +1 -1
  34. package/dist/proxy.d.ts +6 -0
  35. package/dist/proxy.d.ts.map +1 -0
  36. package/dist/proxy.js +19 -0
  37. package/dist/proxy.js.map +1 -0
  38. package/dist/registry/apis.json +95362 -202
  39. package/dist/registry/apis_expanded.json +100853 -0
  40. package/dist/stripe.d.ts +68 -0
  41. package/dist/stripe.d.ts.map +1 -0
  42. package/dist/stripe.js +196 -0
  43. package/dist/stripe.js.map +1 -0
  44. package/dist/test.d.ts +3 -2
  45. package/dist/test.d.ts.map +1 -1
  46. package/dist/test.js +105 -75
  47. package/dist/test.js.map +1 -1
  48. package/dist/types.d.ts +0 -28
  49. package/dist/types.d.ts.map +1 -1
  50. package/dist/webhook.d.ts +2 -0
  51. package/dist/webhook.d.ts.map +1 -0
  52. package/dist/webhook.js +90 -0
  53. package/dist/webhook.js.map +1 -0
  54. package/landing/DESIGN.md +343 -0
  55. package/landing/package-lock.json +1190 -40
  56. package/landing/package.json +5 -2
  57. package/landing/public/android-chrome-192x192.png +0 -0
  58. package/landing/public/android-chrome-512x512.png +0 -0
  59. package/landing/public/apple-touch-icon.png +0 -0
  60. package/landing/public/demo.gif +0 -0
  61. package/landing/public/demo.mp4 +0 -0
  62. package/landing/public/favicon-16x16.png +0 -0
  63. package/landing/public/favicon-32x32.png +0 -0
  64. package/landing/public/favicon.ico +0 -0
  65. package/landing/public/favicon.svg +3 -0
  66. package/landing/public/icon.svg +47 -0
  67. package/landing/public/logo-mono.svg +37 -0
  68. package/landing/public/logo-simple.svg +45 -0
  69. package/landing/public/logo.svg +84 -0
  70. package/landing/public/og-image.png +0 -0
  71. package/landing/public/og-template.html +184 -0
  72. package/landing/public/site.webmanifest +31 -0
  73. package/landing/scripts/generate-assets.js +284 -0
  74. package/landing/scripts/generate-pngs.js +48 -0
  75. package/landing/scripts/generate-stats.js +42 -0
  76. package/landing/src/app/admin/page.tsx +348 -0
  77. package/landing/src/app/api/auth/magic-link/route.ts +73 -0
  78. package/landing/src/app/api/auth/session/route.ts +38 -0
  79. package/landing/src/app/api/auth/verify/route.ts +43 -0
  80. package/landing/src/app/api/og/route.tsx +74 -0
  81. package/landing/src/app/globals.css +439 -100
  82. package/landing/src/app/layout.tsx +37 -9
  83. package/landing/src/app/page.tsx +640 -552
  84. package/landing/src/app/providers/dashboard/login/page.tsx +176 -0
  85. package/landing/src/app/providers/dashboard/page.tsx +589 -0
  86. package/landing/src/app/providers/dashboard/verify/page.tsx +106 -0
  87. package/landing/src/app/providers/layout.tsx +14 -0
  88. package/landing/src/app/providers/page.tsx +402 -0
  89. package/landing/src/app/providers/register/page.tsx +670 -0
  90. package/landing/src/components/ProviderDashboard.tsx +794 -0
  91. package/landing/src/hooks/useDashboardData.ts +99 -0
  92. package/landing/src/lib/apis.json +116054 -0
  93. package/landing/src/lib/convex-client.ts +106 -0
  94. package/landing/src/lib/mock-data.ts +285 -0
  95. package/landing/src/lib/stats.json +6 -0
  96. package/landing/tailwind.config.ts +12 -11
  97. package/landing/tsconfig.tsbuildinfo +1 -0
  98. package/package.json +21 -20
  99. package/scripts/SYMBOT-FIX.md +238 -0
  100. package/scripts/demo-simulation.py +177 -0
  101. package/scripts/expand-more.py +502 -0
  102. package/scripts/expand-registry.py +434 -0
  103. package/scripts/history-sanitizer.ts +272 -0
  104. package/scripts/mass-scrape.py +1308 -0
  105. package/scripts/sync-and-deploy.sh +36 -0
  106. package/src/credentials.ts +177 -0
  107. package/src/credits.ts +190 -122
  108. package/src/discovery.ts +45 -58
  109. package/src/execute.ts +350 -0
  110. package/src/index.ts +113 -31
  111. package/src/proxy.ts +24 -0
  112. package/src/registry/apis.json +95362 -202
  113. package/src/registry/apis_expanded.json +100853 -0
  114. package/src/stripe.ts +243 -0
  115. package/src/test.ts +127 -89
  116. package/src/types.ts +0 -34
  117. package/src/webhook.ts +107 -0
  118. package/.github/ISSUE_TEMPLATE/add-api.yml +0 -123
  119. package/BRIEFING.md +0 -30
  120. package/backend/convex/apiKeys.ts +0 -75
  121. package/backend/convex/purchases.ts +0 -74
  122. package/backend/convex/schema.ts +0 -45
  123. package/backend/convex/transactions.ts +0 -57
  124. package/backend/convex/users.ts +0 -94
  125. package/backend/package-lock.json +0 -521
  126. package/backend/package.json +0 -15
  127. package/dist/registry/parse_apis.py +0 -146
  128. package/dist/revenuecat.d.ts +0 -61
  129. package/dist/revenuecat.d.ts.map +0 -1
  130. package/dist/revenuecat.js +0 -166
  131. package/dist/revenuecat.js.map +0 -1
  132. package/dist/webhooks/revenuecat.d.ts +0 -48
  133. package/dist/webhooks/revenuecat.d.ts.map +0 -1
  134. package/dist/webhooks/revenuecat.js +0 -119
  135. package/dist/webhooks/revenuecat.js.map +0 -1
  136. package/docs/revenuecat-setup.md +0 -89
  137. package/landing/src/app/api/keys/route.ts +0 -71
  138. package/landing/src/app/api/log/route.ts +0 -37
  139. package/landing/src/app/api/stats/route.ts +0 -37
  140. package/landing/src/app/page.tsx.bak +0 -567
  141. package/landing/src/components/AddKeyModal.tsx +0 -159
  142. package/newsletter-template.html +0 -71
  143. package/outreach/OUTREACH-SYSTEM.md +0 -211
  144. package/outreach/email-template.html +0 -179
  145. package/outreach/targets.md +0 -133
  146. package/src/registry/parse_apis.py +0 -146
  147. package/src/revenuecat.ts +0 -239
  148. package/src/webhooks/revenuecat.ts +0 -187
  149. /package/{backend/convex → convex}/README.md +0 -0
  150. /package/{backend/convex → convex}/_generated/api.js +0 -0
  151. /package/{backend/convex → convex}/_generated/dataModel.d.ts +0 -0
  152. /package/{backend/convex → convex}/_generated/server.d.ts +0 -0
  153. /package/{backend/convex → convex}/_generated/server.js +0 -0
  154. /package/{backend/convex → convex}/tsconfig.json +0 -0
@@ -0,0 +1,68 @@
1
+ import Stripe from 'stripe';
2
+ export declare const CREDIT_PACKAGES: {
3
+ readonly starter: {
4
+ readonly id: "starter";
5
+ readonly name: "Starter Pack";
6
+ readonly amountUsd: 10;
7
+ readonly credits: 100;
8
+ readonly bonus: 0;
9
+ readonly description: "$10 → 100 credits";
10
+ };
11
+ readonly growth: {
12
+ readonly id: "growth";
13
+ readonly name: "Growth Pack";
14
+ readonly amountUsd: 50;
15
+ readonly credits: 550;
16
+ readonly bonus: 50;
17
+ readonly description: "$50 → 550 credits (10% bonus)";
18
+ };
19
+ readonly scale: {
20
+ readonly id: "scale";
21
+ readonly name: "Scale Pack";
22
+ readonly amountUsd: 100;
23
+ readonly credits: 1200;
24
+ readonly bonus: 200;
25
+ readonly description: "$100 → 1,200 credits (20% bonus)";
26
+ };
27
+ };
28
+ export type PackageType = keyof typeof CREDIT_PACKAGES;
29
+ /**
30
+ * Create a Stripe Checkout Session for credit purchase
31
+ */
32
+ export declare function createCheckoutSession(agentId: string, packageType: PackageType, successUrl: string, cancelUrl: string): Promise<{
33
+ sessionId: string;
34
+ url: string;
35
+ } | {
36
+ error: string;
37
+ }>;
38
+ /**
39
+ * Create a Payment Intent for programmatic payment (agent-to-agent)
40
+ */
41
+ export declare function createPaymentIntent(agentId: string, packageType: PackageType): Promise<{
42
+ clientSecret: string;
43
+ paymentIntentId: string;
44
+ amount: number;
45
+ } | {
46
+ error: string;
47
+ }>;
48
+ /**
49
+ * Verify Stripe webhook signature
50
+ */
51
+ export declare function verifyWebhookSignature(payload: string | Buffer, signature: string): Stripe.Event | null;
52
+ /**
53
+ * Process webhook event and return credit grant info
54
+ */
55
+ export interface CreditGrant {
56
+ agentId: string;
57
+ packageType: string;
58
+ credits: number;
59
+ amountUsd: number;
60
+ stripeSessionId?: string;
61
+ stripePaymentIntentId?: string;
62
+ }
63
+ export declare function processWebhookEvent(event: Stripe.Event): CreditGrant | null;
64
+ /**
65
+ * Get Stripe instance (for advanced usage)
66
+ */
67
+ export declare function getStripe(): Stripe | null;
68
+ //# sourceMappingURL=stripe.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe.d.ts","sourceRoot":"","sources":["../src/stripe.ts"],"names":[],"mappings":"AACA,OAAO,MAAM,MAAM,QAAQ,CAAC;AAe5B,eAAO,MAAM,eAAe;;;;;;;;;;;;;;;;;;;;;;;;;CAyBlB,CAAC;AAEX,MAAM,MAAM,WAAW,GAAG,MAAM,OAAO,eAAe,CAAC;AAEvD;;GAEG;AACH,wBAAsB,qBAAqB,CACzC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,EACxB,UAAU,EAAE,MAAM,EAClB,SAAS,EAAE,MAAM,GAChB,OAAO,CAAC;IAAE,SAAS,EAAE,MAAM,CAAC;IAAC,GAAG,EAAE,MAAM,CAAA;CAAE,GAAG;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CAAC,CAkDjE;AAED;;GAEG;AACH,wBAAsB,mBAAmB,CACvC,OAAO,EAAE,MAAM,EACf,WAAW,EAAE,WAAW,GACvB,OAAO,CACN;IAAE,YAAY,EAAE,MAAM,CAAC;IAAC,eAAe,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,GACjE;IAAE,KAAK,EAAE,MAAM,CAAA;CAAE,CACpB,CAmCA;AAED;;GAEG;AACH,wBAAgB,sBAAsB,CACpC,OAAO,EAAE,MAAM,GAAG,MAAM,EACxB,SAAS,EAAE,MAAM,GAChB,MAAM,CAAC,KAAK,GAAG,IAAI,CAerB;AAED;;GAEG;AACH,MAAM,WAAW,WAAW;IAC1B,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,SAAS,EAAE,MAAM,CAAC;IAClB,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,qBAAqB,CAAC,EAAE,MAAM,CAAC;CAChC;AAED,wBAAgB,mBAAmB,CAAC,KAAK,EAAE,MAAM,CAAC,KAAK,GAAG,WAAW,GAAG,IAAI,CAiD3E;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,MAAM,GAAG,IAAI,CAEzC"}
package/dist/stripe.js ADDED
@@ -0,0 +1,196 @@
1
+ // Stripe integration for APIClaw credit purchases
2
+ import Stripe from 'stripe';
3
+ import { config } from 'dotenv';
4
+ // Load environment
5
+ config({ path: '.env.local' });
6
+ const stripeSecretKey = process.env.STRIPE_SECRET_KEY;
7
+ if (!stripeSecretKey) {
8
+ console.warn('STRIPE_SECRET_KEY not set - Stripe features disabled');
9
+ }
10
+ const stripe = stripeSecretKey ? new Stripe(stripeSecretKey) : null;
11
+ // Credit packages
12
+ export const CREDIT_PACKAGES = {
13
+ starter: {
14
+ id: 'starter',
15
+ name: 'Starter Pack',
16
+ amountUsd: 10,
17
+ credits: 100,
18
+ bonus: 0,
19
+ description: '$10 → 100 credits',
20
+ },
21
+ growth: {
22
+ id: 'growth',
23
+ name: 'Growth Pack',
24
+ amountUsd: 50,
25
+ credits: 550,
26
+ bonus: 50,
27
+ description: '$50 → 550 credits (10% bonus)',
28
+ },
29
+ scale: {
30
+ id: 'scale',
31
+ name: 'Scale Pack',
32
+ amountUsd: 100,
33
+ credits: 1200,
34
+ bonus: 200,
35
+ description: '$100 → 1,200 credits (20% bonus)',
36
+ },
37
+ };
38
+ /**
39
+ * Create a Stripe Checkout Session for credit purchase
40
+ */
41
+ export async function createCheckoutSession(agentId, packageType, successUrl, cancelUrl) {
42
+ if (!stripe) {
43
+ return { error: 'Stripe not configured' };
44
+ }
45
+ const pkg = CREDIT_PACKAGES[packageType];
46
+ if (!pkg) {
47
+ return { error: `Invalid package: ${packageType}` };
48
+ }
49
+ try {
50
+ const session = await stripe.checkout.sessions.create({
51
+ mode: 'payment',
52
+ payment_method_types: ['card'],
53
+ line_items: [
54
+ {
55
+ price_data: {
56
+ currency: 'usd',
57
+ product_data: {
58
+ name: `APIClaw ${pkg.name}`,
59
+ description: pkg.description,
60
+ metadata: {
61
+ packageType,
62
+ credits: pkg.credits.toString(),
63
+ },
64
+ },
65
+ unit_amount: pkg.amountUsd * 100, // Stripe uses cents
66
+ },
67
+ quantity: 1,
68
+ },
69
+ ],
70
+ metadata: {
71
+ agentId,
72
+ packageType,
73
+ credits: pkg.credits.toString(),
74
+ },
75
+ success_url: successUrl,
76
+ cancel_url: cancelUrl,
77
+ });
78
+ return {
79
+ sessionId: session.id,
80
+ url: session.url,
81
+ };
82
+ }
83
+ catch (error) {
84
+ console.error('Stripe checkout error:', error);
85
+ return {
86
+ error: error instanceof Error ? error.message : 'Checkout failed',
87
+ };
88
+ }
89
+ }
90
+ /**
91
+ * Create a Payment Intent for programmatic payment (agent-to-agent)
92
+ */
93
+ export async function createPaymentIntent(agentId, packageType) {
94
+ if (!stripe) {
95
+ return { error: 'Stripe not configured' };
96
+ }
97
+ const pkg = CREDIT_PACKAGES[packageType];
98
+ if (!pkg) {
99
+ return { error: `Invalid package: ${packageType}` };
100
+ }
101
+ try {
102
+ const paymentIntent = await stripe.paymentIntents.create({
103
+ amount: pkg.amountUsd * 100,
104
+ currency: 'usd',
105
+ metadata: {
106
+ agentId,
107
+ packageType,
108
+ credits: pkg.credits.toString(),
109
+ },
110
+ automatic_payment_methods: {
111
+ enabled: true,
112
+ },
113
+ });
114
+ return {
115
+ clientSecret: paymentIntent.client_secret,
116
+ paymentIntentId: paymentIntent.id,
117
+ amount: pkg.amountUsd,
118
+ };
119
+ }
120
+ catch (error) {
121
+ console.error('Stripe payment intent error:', error);
122
+ return {
123
+ error: error instanceof Error ? error.message : 'Payment intent failed',
124
+ };
125
+ }
126
+ }
127
+ /**
128
+ * Verify Stripe webhook signature
129
+ */
130
+ export function verifyWebhookSignature(payload, signature) {
131
+ if (!stripe)
132
+ return null;
133
+ const webhookSecret = process.env.STRIPE_WEBHOOK_SECRET;
134
+ if (!webhookSecret) {
135
+ console.error('STRIPE_WEBHOOK_SECRET not set');
136
+ return null;
137
+ }
138
+ try {
139
+ return stripe.webhooks.constructEvent(payload, signature, webhookSecret);
140
+ }
141
+ catch (error) {
142
+ console.error('Webhook signature verification failed:', error);
143
+ return null;
144
+ }
145
+ }
146
+ export function processWebhookEvent(event) {
147
+ switch (event.type) {
148
+ case 'checkout.session.completed': {
149
+ const session = event.data.object;
150
+ if (session.payment_status !== 'paid')
151
+ return null;
152
+ const metadata = session.metadata || {};
153
+ const agentId = metadata.agentId;
154
+ const packageType = metadata.packageType;
155
+ const credits = parseInt(metadata.credits || '0', 10);
156
+ if (!agentId || !packageType || !credits) {
157
+ console.error('Missing metadata in checkout session:', metadata);
158
+ return null;
159
+ }
160
+ return {
161
+ agentId,
162
+ packageType,
163
+ credits,
164
+ amountUsd: (session.amount_total || 0) / 100,
165
+ stripeSessionId: session.id,
166
+ };
167
+ }
168
+ case 'payment_intent.succeeded': {
169
+ const paymentIntent = event.data.object;
170
+ const metadata = paymentIntent.metadata || {};
171
+ const agentId = metadata.agentId;
172
+ const packageType = metadata.packageType;
173
+ const credits = parseInt(metadata.credits || '0', 10);
174
+ if (!agentId || !packageType || !credits) {
175
+ console.error('Missing metadata in payment intent:', metadata);
176
+ return null;
177
+ }
178
+ return {
179
+ agentId,
180
+ packageType,
181
+ credits,
182
+ amountUsd: paymentIntent.amount / 100,
183
+ stripePaymentIntentId: paymentIntent.id,
184
+ };
185
+ }
186
+ default:
187
+ return null;
188
+ }
189
+ }
190
+ /**
191
+ * Get Stripe instance (for advanced usage)
192
+ */
193
+ export function getStripe() {
194
+ return stripe;
195
+ }
196
+ //# sourceMappingURL=stripe.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"stripe.js","sourceRoot":"","sources":["../src/stripe.ts"],"names":[],"mappings":"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"}
package/dist/test.d.ts CHANGED
@@ -1,6 +1,7 @@
1
+ #!/usr/bin/env npx tsx
1
2
  /**
2
- * Test script for APIvault
3
- * Run: pnpm test
3
+ * APIClaw End-to-End Test
4
+ * Tests the full flow: credits → purchase → real credentials
4
5
  */
5
6
  export {};
6
7
  //# sourceMappingURL=test.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"AAAA;;;GAGG"}
1
+ {"version":3,"file":"test.d.ts","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":";AACA;;;GAGG"}
package/dist/test.js CHANGED
@@ -1,81 +1,111 @@
1
+ #!/usr/bin/env npx tsx
1
2
  /**
2
- * Test script for APIvault
3
- * Run: pnpm test
3
+ * APIClaw End-to-End Test
4
+ * Tests the full flow: credits → purchase → real credentials
4
5
  */
5
- import { discoverAPIs, getAPIDetails, getCategories, getAPICount } from './discovery.js';
6
- import { addCredits, purchaseAPIAccess, getBalanceSummary } from './credits.js';
7
- console.log('🔐 APIvault Test Suite\n');
8
- console.log('='.repeat(50));
9
- // Test 1: API Count
10
- console.log('\n📊 Test 1: API Registry');
11
- console.log('-'.repeat(40));
12
- console.log(`Total APIs loaded: ${getAPICount()}`);
13
- // Test 2: Discovery
14
- console.log('\n📡 Test 2: API Discovery');
15
- console.log('-'.repeat(40));
16
- const smsResults = discoverAPIs('SMS');
17
- console.log(`Query: "SMS"`);
18
- console.log(`Results: ${smsResults.length}`);
19
- smsResults.slice(0, 5).forEach(r => {
20
- console.log(` - ${r.api.name} (score: ${r.relevance_score})`);
21
- console.log(` ${r.api.description.slice(0, 60)}...`);
22
- });
23
- const weatherResults = discoverAPIs('weather');
24
- console.log(`\nQuery: "weather"`);
25
- console.log(`Results: ${weatherResults.length}`);
26
- weatherResults.slice(0, 5).forEach(r => {
27
- console.log(` - ${r.api.name} (score: ${r.relevance_score})`);
28
- });
29
- const paymentResults = discoverAPIs('payment');
30
- console.log(`\nQuery: "payment"`);
31
- console.log(`Results: ${paymentResults.length}`);
32
- paymentResults.slice(0, 5).forEach(r => {
33
- console.log(` - ${r.api.name} (score: ${r.relevance_score})`);
34
- });
35
- // Test 3: Get API Details
36
- console.log('\n📋 Test 3: API Details');
37
- console.log('-'.repeat(40));
38
- const stripe = getAPIDetails('stripe');
39
- if (stripe) {
40
- console.log(`\n${stripe.name}:`);
41
- console.log(` Category: ${stripe.category}`);
42
- console.log(` Auth: ${stripe.auth}`);
43
- console.log(` HTTPS: ${stripe.https}`);
44
- console.log(` Link: ${stripe.link}`);
6
+ import { config } from 'dotenv';
7
+ config({ path: '.env.local' });
8
+ import { getAgentCredits, addCredits, purchaseAPIAccess, getBalanceSummary, getProvidersWithRealCredentials, } from './credits.js';
9
+ import { hasRealCredentials } from './credentials.js';
10
+ import { CREDIT_PACKAGES, createPaymentIntent } from './stripe.js';
11
+ const TEST_AGENT_ID = 'test_agent_001';
12
+ function log(msg) {
13
+ console.log(`\n${'='.repeat(60)}\n${msg}\n${'='.repeat(60)}`);
45
14
  }
46
- // Test 4: Categories
47
- console.log('\n📂 Test 4: Categories');
48
- console.log('-'.repeat(40));
49
- const categories = getCategories();
50
- console.log(`Total categories: ${categories.length}`);
51
- console.log(`Sample: ${categories.slice(0, 10).join(', ')}...`);
52
- // Test 5: Credits System
53
- console.log('\n💰 Test 5: Credit System');
54
- console.log('-'.repeat(40));
55
- const testAgent = 'agent_test_123';
56
- // Check initial balance
57
- let balance = getBalanceSummary(testAgent);
58
- console.log(`Initial balance: $${balance.credits.balance_usd}`);
59
- // Add credits
60
- addCredits(testAgent, 50);
61
- balance = getBalanceSummary(testAgent);
62
- console.log(`After adding $50: $${balance.credits.balance_usd}`);
63
- // Purchase API access
64
- console.log('\n🛒 Purchasing stripe access for $10...');
65
- const purchase = purchaseAPIAccess(testAgent, 'stripe', 10);
66
- if (purchase.success) {
67
- console.log(` ✅ Purchase successful!`);
68
- console.log(` Purchase ID: ${purchase.purchase.id}`);
69
- console.log(` Credits received: ${purchase.purchase.credits_purchased}`);
15
+ function logResult(label, data) {
16
+ console.log(`\n[${label}]`);
17
+ console.log(JSON.stringify(data, null, 2));
70
18
  }
71
- else {
72
- console.log(` ❌ Purchase failed: ${purchase.error}`);
19
+ async function runTests() {
20
+ console.log('\n🧪 APIClaw Connected Infrastructure Test\n');
21
+ // Test 1: Check real credentials availability
22
+ log('TEST 1: Real Credentials Check');
23
+ const realCredProviders = getProvidersWithRealCredentials();
24
+ console.log('Providers with real credentials:', realCredProviders);
25
+ console.log('46elks real:', hasRealCredentials('46elks'));
26
+ console.log('Twilio real:', hasRealCredentials('twilio'));
27
+ // Test 2: Credit packages
28
+ log('TEST 2: Credit Packages');
29
+ logResult('Packages', CREDIT_PACKAGES);
30
+ // Test 3: Add credits to agent
31
+ log('TEST 3: Add Credits');
32
+ const initialCredits = getAgentCredits(TEST_AGENT_ID);
33
+ logResult('Initial balance', initialCredits);
34
+ const afterAdd = addCredits(TEST_AGENT_ID, 50);
35
+ logResult('After adding $50', afterAdd);
36
+ // Test 4: Check balance summary
37
+ log('TEST 4: Balance Summary');
38
+ const summary = getBalanceSummary(TEST_AGENT_ID);
39
+ logResult('Summary', summary);
40
+ // Test 5: Purchase 46elks access
41
+ log('TEST 5: Purchase 46elks Access');
42
+ const purchase46elks = purchaseAPIAccess(TEST_AGENT_ID, '46elks', 10);
43
+ logResult('46elks Purchase Result', purchase46elks);
44
+ if (purchase46elks.success && purchase46elks.purchase) {
45
+ console.log('\n🔑 CREDENTIALS RECEIVED:');
46
+ console.log(' Type:', purchase46elks.purchase.credentials?.type);
47
+ if (purchase46elks.purchase.credentials?.type === 'basic') {
48
+ console.log(' Username:', purchase46elks.purchase.credentials?.username);
49
+ console.log(' Password:', purchase46elks.purchase.credentials?.password?.slice(0, 8) + '...');
50
+ }
51
+ console.log(' Real credentials:', hasRealCredentials('46elks'));
52
+ }
53
+ // Test 6: Purchase Twilio access
54
+ log('TEST 6: Purchase Twilio Access');
55
+ const purchaseTwilio = purchaseAPIAccess(TEST_AGENT_ID, 'twilio', 10);
56
+ logResult('Twilio Purchase Result', purchaseTwilio);
57
+ if (purchaseTwilio.success && purchaseTwilio.purchase) {
58
+ console.log('\n🔑 CREDENTIALS RECEIVED:');
59
+ console.log(' Type:', purchaseTwilio.purchase.credentials?.type);
60
+ if (purchaseTwilio.purchase.credentials?.type === 'basic') {
61
+ console.log(' Account SID:', purchaseTwilio.purchase.credentials?.username);
62
+ console.log(' Auth Token:', purchaseTwilio.purchase.credentials?.password?.slice(0, 8) + '...');
63
+ }
64
+ console.log(' Real credentials:', hasRealCredentials('twilio'));
65
+ }
66
+ // Test 7: Final balance
67
+ log('TEST 7: Final Balance');
68
+ const finalSummary = getBalanceSummary(TEST_AGENT_ID);
69
+ logResult('Final Summary', {
70
+ balance: finalSummary.credits.balance_usd,
71
+ active_purchases: finalSummary.active_purchases.length,
72
+ total_spent: finalSummary.total_spent_usd,
73
+ real_credential_providers: finalSummary.real_credentials_available,
74
+ });
75
+ // Test 8: Stripe integration (if configured)
76
+ log('TEST 8: Stripe Integration');
77
+ if (process.env.STRIPE_SECRET_KEY) {
78
+ console.log('Stripe is configured!');
79
+ // Test creating a payment intent
80
+ const paymentIntent = await createPaymentIntent('test_agent_stripe', 'starter');
81
+ if ('error' in paymentIntent) {
82
+ console.log('Payment Intent Error:', paymentIntent.error);
83
+ }
84
+ else {
85
+ console.log('Payment Intent Created:');
86
+ console.log(' ID:', paymentIntent.paymentIntentId);
87
+ console.log(' Amount: $' + paymentIntent.amount);
88
+ console.log(' Client Secret:', paymentIntent.clientSecret.slice(0, 20) + '...');
89
+ }
90
+ }
91
+ else {
92
+ console.log('Stripe not configured - skipping');
93
+ }
94
+ // Test 9: Insufficient balance
95
+ log('TEST 9: Insufficient Balance Check');
96
+ const insufficientPurchase = purchaseAPIAccess(TEST_AGENT_ID, '46elks', 1000);
97
+ logResult('Should fail', insufficientPurchase);
98
+ // Summary
99
+ log('TEST SUMMARY');
100
+ console.log(`
101
+ ✅ Real credentials available for: ${realCredProviders.join(', ') || 'none'}
102
+ ✅ Agent can add credits
103
+ ✅ Agent can purchase API access
104
+ ✅ Real 46elks/Twilio credentials returned when available
105
+ ✅ Insufficient balance check works
106
+ ${process.env.STRIPE_SECRET_KEY ? '✅ Stripe integration working' : '⚠️ Stripe not configured'}
107
+ `);
73
108
  }
74
- // Check updated balance
75
- balance = getBalanceSummary(testAgent);
76
- console.log(`\nFinal balance: $${balance.credits.balance_usd}`);
77
- console.log(`Total spent: $${balance.total_spent_usd}`);
78
- console.log(`Active purchases: ${balance.active_purchases.length}`);
79
- console.log('\n' + '='.repeat(50));
80
- console.log('✅ All tests completed!\n');
109
+ // Run tests
110
+ runTests().catch(console.error);
81
111
  //# sourceMappingURL=test.js.map
package/dist/test.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"test.js","sourceRoot":"","sources":["../src/test.ts"],"names":[],"mappings":"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"}
package/dist/types.d.ts CHANGED
@@ -1,15 +1,3 @@
1
- export interface SimpleAPI {
2
- id: string;
3
- name: string;
4
- description: string;
5
- category: string;
6
- auth: string;
7
- https: boolean;
8
- cors: string;
9
- link: string;
10
- pricing: string;
11
- keywords: string[];
12
- }
13
1
  export interface APIProvider {
14
2
  id: string;
15
3
  name: string;
@@ -77,20 +65,4 @@ export interface UsageRecord {
77
65
  cost_incurred_usd: number;
78
66
  last_used_at: string;
79
67
  }
80
- export interface UserSubscription {
81
- user_id: string;
82
- tier: 'free' | 'pro';
83
- status: 'active' | 'cancelled' | 'expired' | 'paused' | 'billing_issue';
84
- product_id: string | null;
85
- expires_at: string | null;
86
- fee_percentage: number;
87
- updated_at: string;
88
- }
89
- export interface TransactionFee {
90
- amount_usd: number;
91
- fee_percentage: number;
92
- fee_amount_usd: number;
93
- net_amount_usd: number;
94
- tier: 'free' | 'pro';
95
- }
96
68
  //# sourceMappingURL=types.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../src/types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAC;IACX,IAAI,EAAE,MAAM,CAAC;IACb,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,EAAE,CAAC;IACvB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,OAAO,EAAE,UAAU,CAAC;IACpB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,WAAW,EAAE,CAAC;IACzB,QAAQ,EAAE,MAAM,EAAE,CAAC;IACnB,UAAU,EAAE,MAAM,EAAE,CAAC;IACrB,OAAO,EAAE,MAAM,EAAE,CAAC;IAClB,kBAAkB,EAAE,MAAM,CAAC;IAC3B,cAAc,EAAE,MAAM,CAAC;CACxB;AAED,MAAM,WAAW,UAAU;IACzB,KAAK,EAAE,MAAM,CAAC;IACd,SAAS,EAAE,OAAO,CAAC;IACnB,gBAAgB,EAAE,MAAM,GAAG,IAAI,CAAC;IAChC,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,GAAG,OAAO,GAAG,IAAI,GAAG,SAAS,CAAC;CAC7D;AAED,MAAM,WAAW,WAAW;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,CAAC;IACf,IAAI,EAAE,MAAM,CAAC;IACb,MAAM,EAAE,MAAM,EAAE,CAAC;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,WAAW,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;IACxB,aAAa,EAAE,MAAM,EAAE,CAAC;CACzB;AAED,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,QAAQ;IACvB,EAAE,EAAE,MAAM,CAAC;IACX,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,MAAM,EAAE,SAAS,GAAG,QAAQ,GAAG,WAAW,GAAG,UAAU,CAAC;IACxD,WAAW,CAAC,EAAE,cAAc,CAAC;IAC7B,UAAU,EAAE,MAAM,CAAC;CACpB;AAED,MAAM,WAAW,cAAc;IAC7B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,WAAW;IAC1B,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,EAAE,MAAM,CAAC;IACpB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,MAAM,CAAC;IACxB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;CACtB"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=webhook.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"webhook.d.ts","sourceRoot":"","sources":["../src/webhook.ts"],"names":[],"mappings":""}