{"_id":"@anshu007/falcon-api-sdk","_rev":"4-9f05f95f68a9ad303aa213cb58596017","name":"@anshu007/falcon-api-sdk","dist-tags":{"latest":"1.0.3"},"versions":{"1.0.0":{"name":"@anshu007/falcon-api-sdk","version":"1.0.0","keywords":["stellar","api","monetization","payment","xlm","blockchain","express","middleware","escrow","pay-per-user","falcon","api-gateway"],"author":{"name":"Falcon Labs"},"license":"MIT","_id":"@anshu007/falcon-api-sdk@1.0.0","maintainers":[{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"}],"homepage":"https://github.com/anshuthecoder/-The-Falcons#readme","bugs":{"url":"https://github.com/anshuthecoder/-The-Falcons/issues"},"bin":{"falcon-api":"bin/cli.js"},"dist":{"shasum":"ec425ad190e06ffe71ad4c73ffa3cac9da281bc3","tarball":"https://registry.npmjs.org/@anshu007/falcon-api-sdk/-/falcon-api-sdk-1.0.0.tgz","fileCount":14,"integrity":"sha512-esRCWkZXriLzf6nbOI+NFmIQNNVlVGBxGNfGtGVvQFteBkgxJAu3MzMs9EukDOY95GD6WL7Eg0u4slJWx2ZJIQ==","signatures":[{"sig":"MEUCIGA+jCKtXfmXVDiwa1xR8pOQo2ZCQad0AfgkY7W56X6rAiEAkYHxH2SAJBeoD9G3onCIe0HJ94bROTGH/UKHUrnGNu8=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58076},"main":"index.js","gitHead":"d152f2a61fbbdb93c53792eac4e22bf09ab3c8a0","scripts":{"init":"node bin/cli.js init","test":"node test-sdk.js"},"_npmUser":{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"},"repository":{"url":"git+https://github.com/anshuthecoder/-The-Falcons.git","type":"git"},"_npmVersion":"11.7.0","description":"Falcon API SDK - Monetize your APIs with Stellar blockchain. Supports Pay-per-User and Escrow payment modes.","directories":{},"_nodeVersion":"25.3.0","dependencies":{"axios":"^1.6.0","chalk":"^4.1.2","dotenv":"^17.2.3","inquirer":"^8.2.6","commander":"^11.1.0"},"_hasShrinkwrap":false,"peerDependencies":{"express":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/falcon-api-sdk_1.0.0_1769911183623_0.7748349867773676","host":"s3://npm-registry-packages-npm-production"}},"1.0.1":{"name":"@anshu007/falcon-api-sdk","version":"1.0.1","keywords":["stellar","api","monetization","payment","xlm","blockchain","express","middleware","escrow","pay-per-user","falcon","api-gateway"],"author":{"name":"Falcon Labs"},"license":"MIT","_id":"@anshu007/falcon-api-sdk@1.0.1","maintainers":[{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"}],"homepage":"https://github.com/anshuthecoder/-The-Falcons#readme","bugs":{"url":"https://github.com/anshuthecoder/-The-Falcons/issues"},"bin":{"falcon-api-sdk":"bin/cli.js"},"dist":{"shasum":"06df8dfea547e8693d8ffb72dcba3417b637c2a5","tarball":"https://registry.npmjs.org/@anshu007/falcon-api-sdk/-/falcon-api-sdk-1.0.1.tgz","fileCount":14,"integrity":"sha512-mCP5jNHlwIOb4Hq7cTDxRy8GPaiOuh6JG5v3IB+UGZDrTefljUdn6R8jnFubLLB9h00tbNVnot3ylstmJH4sGQ==","signatures":[{"sig":"MEUCIAx4QGJ0OKCndggk6/BuzpJ84cvpn2Rau1Q3hZy/KCI+AiEAq3AT1Ybr8Dn1jduRXqf1zh3kjTWETEHXzo8IPxLryks=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":58078},"main":"index.js","gitHead":"d152f2a61fbbdb93c53792eac4e22bf09ab3c8a0","scripts":{"init":"node bin/cli.js init","test":"node test-sdk.js"},"_npmUser":{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"},"repository":{"url":"git+https://github.com/anshuthecoder/-The-Falcons.git","type":"git"},"_npmVersion":"11.7.0","description":"Falcon API SDK - Monetize your APIs with Stellar blockchain. Supports Pay-per-User and Escrow payment modes.","directories":{},"_nodeVersion":"25.3.0","dependencies":{"axios":"^1.6.0","chalk":"^4.1.2","dotenv":"^17.2.3","inquirer":"^8.2.6","commander":"^11.1.0"},"_hasShrinkwrap":false,"peerDependencies":{"express":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/falcon-api-sdk_1.0.1_1769911321718_0.8421750917078501","host":"s3://npm-registry-packages-npm-production"}},"1.0.2":{"name":"@anshu007/falcon-api-sdk","version":"1.0.2","keywords":["stellar","api","monetization","payment","xlm","blockchain","express","middleware","escrow","pay-per-user","falcon","api-gateway"],"author":{"name":"Falcon Labs"},"license":"MIT","_id":"@anshu007/falcon-api-sdk@1.0.2","maintainers":[{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"}],"homepage":"https://github.com/anshuthecoder/-The-Falcons#readme","bugs":{"url":"https://github.com/anshuthecoder/-The-Falcons/issues"},"bin":{"falcon-api-sdk":"bin/cli.js"},"dist":{"shasum":"794ac881d0b8de4c1d55032aa8994c0020dbbf7c","tarball":"https://registry.npmjs.org/@anshu007/falcon-api-sdk/-/falcon-api-sdk-1.0.2.tgz","fileCount":14,"integrity":"sha512-XJm4y+66WRqRJewGLifrhIL7m11f58ONwf3HewWLLUl2Q/n5xEj9z5KyogXOWOMi8+WTL6+fzDLHYD2II/gthg==","signatures":[{"sig":"MEQCIBuh+6PvUk7b9gVHh3RCirvZSl2e0cDxGwowhh4c5p/9AiByyqk//A2E2e3os+6q/9j7JlNpgMaS11h4McABGlsB6A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":60783},"main":"index.js","gitHead":"d152f2a61fbbdb93c53792eac4e22bf09ab3c8a0","scripts":{"init":"node bin/cli.js init","test":"node test-sdk.js"},"_npmUser":{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"},"repository":{"url":"git+https://github.com/anshuthecoder/-The-Falcons.git","type":"git"},"_npmVersion":"11.7.0","description":"Falcon API SDK - Monetize your APIs with Stellar blockchain. Supports Pay-per-User and Escrow payment modes.","directories":{},"_nodeVersion":"25.3.0","dependencies":{"axios":"^1.6.0","chalk":"^4.1.2","dotenv":"^17.2.3","inquirer":"^8.2.6","commander":"^11.1.0"},"_hasShrinkwrap":false,"peerDependencies":{"express":"^4.0.0 || ^5.0.0"},"_npmOperationalInternal":{"tmp":"tmp/falcon-api-sdk_1.0.2_1769918442200_0.7097078511522539","host":"s3://npm-registry-packages-npm-production"}},"1.0.3":{"name":"@anshu007/falcon-api-sdk","version":"1.0.3","description":"Falcon API SDK - Monetize your APIs with Stellar blockchain. Supports Pay-per-User and Escrow payment modes.","main":"index.js","bin":{"falcon-api-sdk":"bin/cli.js"},"scripts":{"test":"node test-sdk.js","init":"node bin/cli.js init"},"keywords":["stellar","api","monetization","payment","xlm","blockchain","express","middleware","escrow","pay-per-user","falcon","api-gateway"],"author":{"name":"Falcon Labs"},"license":"MIT","dependencies":{"axios":"^1.6.0","chalk":"^4.1.2","commander":"^11.1.0","dotenv":"^17.2.3","inquirer":"^8.2.6"},"peerDependencies":{"express":"^4.0.0 || ^5.0.0"},"repository":{"type":"git","url":"git+https://github.com/anshuthecoder/-The-Falcons.git"},"homepage":"https://github.com/anshuthecoder/-The-Falcons#readme","bugs":{"url":"https://github.com/anshuthecoder/-The-Falcons/issues"},"gitHead":"d152f2a61fbbdb93c53792eac4e22bf09ab3c8a0","_id":"@anshu007/falcon-api-sdk@1.0.3","_nodeVersion":"25.3.0","_npmVersion":"11.7.0","dist":{"integrity":"sha512-U6ffHNeHqtoorjWKNtsMnxZReCfnY/ghSXodXIG6UZ4M3yw0RRIMFosU4zBIPCIoo39BVyo2J/RAJsX0MFZ2jQ==","shasum":"0265743e544674c89419cc8dc37d1e9f16a99229","tarball":"https://registry.npmjs.org/@anshu007/falcon-api-sdk/-/falcon-api-sdk-1.0.3.tgz","fileCount":14,"unpackedSize":60847,"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEUCIDFrc4sO9cLWhK76CvlIeA9tX5dWFsIgUx5DKKEsEt3tAiEAmwEG6BPpYJLOjrdXPH12s0yW8F33eN5mmhvg1vjnUhk="}]},"_npmUser":{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"},"directories":{},"maintainers":[{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/falcon-api-sdk_1.0.3_1769919487491_0.33708402600457243"},"_hasShrinkwrap":false}},"time":{"created":"2026-02-01T01:59:43.506Z","modified":"2026-02-01T04:18:07.779Z","1.0.0":"2026-02-01T01:59:43.759Z","1.0.1":"2026-02-01T02:02:01.861Z","1.0.2":"2026-02-01T04:00:42.396Z","1.0.3":"2026-02-01T04:18:07.639Z"},"bugs":{"url":"https://github.com/anshuthecoder/-The-Falcons/issues"},"author":{"name":"Falcon Labs"},"license":"MIT","homepage":"https://github.com/anshuthecoder/-The-Falcons#readme","keywords":["stellar","api","monetization","payment","xlm","blockchain","express","middleware","escrow","pay-per-user","falcon","api-gateway"],"repository":{"type":"git","url":"git+https://github.com/anshuthecoder/-The-Falcons.git"},"description":"Falcon API SDK - Monetize your APIs with Stellar blockchain. Supports Pay-per-User and Escrow payment modes.","maintainers":[{"name":"anshu007","email":"anshukumarthakur7725@gmail.com"}],"readme":"# Falcon API SDK\n\n> 🦅 Monetize your APIs with Stellar blockchain payments\n\nFalcon API SDK enables developers to wrap their Express.js API endpoints with payment protection using the Stellar blockchain. Choose between **Pay-per-User** or **Escrow** payment modes.\n\n## Installation\n\n```bash\nnpm install @anshu007/falcon-api-sdk\n```\n\n## Quick Start\n\nRun the interactive setup:\n\n```bash\nnpx @anshu007/falcon-api-sdk init\n```\n\nThis will ask you:\n1. **Payment Mode**: Pay-per-User or Escrow\n2. **Wallet Address**: Your Stellar wallet to receive payments\n3. **API Details**: Name and price per call\n\n---\n\n## Payment Modes\n\n### 💳 Mode 1: Pay-per-User\n\nDirect payment for each API call. User pays → API responds.\n\n```javascript\nconst express = require('express');\nconst { protect } = require('@anshu007/falcon-api-sdk');\n\nconst app = express();\n\napp.get('/api/premium', protect({\n  price: { amount: '5', asset: 'XLM' },\n  receiver: 'GXXXXX...'  // Your wallet\n}), (req, res) => {\n  res.json({ \n    data: 'Premium content!',\n    payer: req.paymentInfo.payer\n  });\n});\n\napp.listen(3000);\n```\n\n**How it works:**\n1. User calls your API\n2. API returns `402 Payment Required` with payment details\n3. User pays via Stellar wallet (Freighter, etc.)\n4. User retries with `x-payment-tx` header containing transaction hash\n5. SDK verifies payment on Stellar blockchain\n6. API returns premium content\n\n---\n\n### 🏦 Mode 2: Escrow (Prepaid)\n\nUsers prepay to escrow wallet, then consume credits on API calls.\n\n```javascript\nconst express = require('express');\nconst { protectWithEscrow, ESCROW_PUBLIC_KEY } = require('@anshu007/falcon-api-sdk');\n\nconst app = express();\n\nconsole.log('Escrow Wallet:', ESCROW_PUBLIC_KEY);\n\napp.get('/api/premium', protectWithEscrow({\n  apiId: 'my-api',\n  apiOwnerId: 'GXXXXX...',  // Your wallet\n  pricePerCall: 5,\n}), (req, res) => {\n  res.json({ \n    data: 'Premium content!',\n    remainingBalance: res.locals.escrowBalance\n  });\n});\n\napp.listen(3000);\n```\n\n**Escrow Wallet:**\n```\nPublic Key: GALFFRMVCGOPUHSXER3ZZKYHR25F4ISJFTLPEGX3UI4B63MPKUC75BLJ\n```\n\n**How it works:**\n1. User funds escrow wallet with XLM\n2. User records prepayment via your backend\n3. User calls API with `x-user-id` or `x-wallet-address` header\n4. SDK deducts credits from user's escrow balance\n5. API returns content + remaining balance\n\n---\n\n## API Reference\n\n### `protect(config)`\n\nPay-per-User middleware.\n\n```javascript\nprotect({\n  price: {\n    amount: '10',      // Price per call (XLM)\n    asset: 'XLM'       // Payment asset\n  },\n  receiver: 'GXXX...', // Your Stellar wallet\n  validateRequest: (req) => true  // Optional validator\n})\n```\n\n### `protectWithEscrow(config)`\n\nEscrow middleware.\n\n```javascript\nprotectWithEscrow({\n  apiId: 'my-api',           // Unique API ID\n  apiOwnerId: 'GXXX...',     // Your Stellar wallet\n  pricePerCall: 5,           // Price in XLM\n  escrowServer: 'http://...' // Optional: custom escrow server\n})\n```\n\n### `initEscrow(config)`\n\nInitialize escrow SDK for backend use.\n\n```javascript\nconst { initEscrow } = require('@anshu007/falcon-api-sdk');\n\nconst escrow = initEscrow();\n\n// Record prepayment\nawait escrow.recordPrepayment({\n  userId: 'GUSER...',\n  txHash: 'abc123...',\n  amount: 100\n});\n\n// Check balance\nconst { balance } = escrow.getUserBalance('GUSER...');\n\n// Consume credits\nescrow.consumeCredit({\n  userId: 'GUSER...',\n  apiId: 'my-api',\n  apiOwnerId: 'GOWNER...',\n  amount: 5\n});\n```\n\n---\n\n## CLI Commands\n\n```bash\n# Interactive setup\nnpx @anshu007/falcon-api-sdk init\n\n# Register API on marketplace\nnpx @anshu007/falcon-api-sdk register \\\n  --name \"My API\" \\\n  --description \"Amazing API\" \\\n  --endpoint \"https://myapi.com/api/premium\" \\\n  --price 5 \\\n  --wallet \"GXXXXX...\" \\\n  --mode escrow\n\n# List registered APIs\nnpx @anshu007/falcon-api-sdk list\n\n# Show escrow info\nnpx @anshu007/falcon-api-sdk escrow\n\n# Help\nnpx @anshu007/falcon-api-sdk help\n```\n\n---\n\n## Environment Variables\n\n| Variable | Description | Default |\n|----------|-------------|---------|\n| `FALCON_REGISTRY` | API registry URL | `http://localhost:3001` |\n| `FALCON_ESCROW_SERVER` | Escrow server URL | `http://localhost:3001` |\n\n---\n\n## Escrow Wallet Info\n\n**For Escrow Mode:**\n\n```\nPublic Key:  GALFFRMVCGOPUHSXER3ZZKYHR25F4ISJFTLPEGX3UI4B63MPKUC75BLJ\nNetwork:     Stellar Testnet\n```\n\n---\n\n## License\n\nMIT © Falcon Labs\n","readmeFilename":"README.md"}