{"id":13666746,"url":"https://github.com/MiguelMedeiros/lnbits-js","last_synced_at":"2025-04-26T12:31:34.504Z","repository":{"id":40261394,"uuid":"340125464","full_name":"MiguelMedeiros/lnbits-js","owner":"MiguelMedeiros","description":"NPM Package for LNBits.com API.","archived":false,"fork":false,"pushed_at":"2023-10-12T13:07:00.000Z","size":67,"stargazers_count":24,"open_issues_count":6,"forks_count":13,"subscribers_count":2,"default_branch":"main","last_synced_at":"2025-04-10T20:51:05.534Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"TypeScript","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/MiguelMedeiros.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2021-02-18T17:26:43.000Z","updated_at":"2025-04-08T06:11:08.000Z","dependencies_parsed_at":"2024-06-19T07:54:41.531Z","dependency_job_id":null,"html_url":"https://github.com/MiguelMedeiros/lnbits-js","commit_stats":{"total_commits":33,"total_committers":8,"mean_commits":4.125,"dds":"0.33333333333333337","last_synced_commit":"e3660b8cdb0493a340f7ab2e4f4d5ca590f175e6"},"previous_names":[],"tags_count":10,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelMedeiros%2Flnbits-js","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelMedeiros%2Flnbits-js/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelMedeiros%2Flnbits-js/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/MiguelMedeiros%2Flnbits-js/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/MiguelMedeiros","download_url":"https://codeload.github.com/MiguelMedeiros/lnbits-js/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":250986485,"owners_count":21518523,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-08-02T06:01:24.505Z","updated_at":"2025-04-26T12:31:34.196Z","avatar_url":"https://github.com/MiguelMedeiros.png","language":"TypeScript","funding_links":[],"categories":["Uncategorized"],"sub_categories":["Uncategorized"],"readme":"# **LNBits JS API**\r\n\r\n[![npm version](https://img.shields.io/npm/v/lnbits.svg?style=flat-square)](https://www.npmjs.org/package/lnbits)\r\n[![NPM](https://img.shields.io/david/MiguelMedeiros/lnbits-js.svg?style=flat-square)](https://david-dm.org/MiguelMedeiros/lnbits-js#info=dependencies)\r\n[![Known Vulnerabilities](https://snyk.io/test/github/MiguelMedeiros/lnbits-js/badge.svg?style=flat-square)](https://snyk.io/test/github/MiguelMedeiros/lnbits-js)\r\n[![License: MIT](https://img.shields.io/badge/License-MIT-yellow.svg?style=flat-square)](https://opensource.org/licenses/MIT)\r\n\r\n---\r\n\r\nEasy way to add LNBits API to your JS application.\r\n\r\n---\r\n\r\n## **References**\r\n\r\n- LNBits Website: [https://lnbits.com](https://lnbits.com)\r\n- LNBits Telegram Group: [https://t.me/lnbits](https://t.me/lnbits)\r\n\r\n---\r\n\r\n## **Donate**\r\n\r\nHelp me to stack sats! :blush:\r\n\r\n[bc1qg2sm9tjqy35j50g0zf27s0e8fhflrame5d7q3s](bitcoin:bc1qg2sm9tjqy35j50g0zf27s0e8fhflrame5d7q3s)\r\n\r\n[Or donate via Lightning Network!](https://miguelmedeiros.dev)\r\n\r\n---\r\n\r\n## **Features**\r\n\r\n- [References](#references)\r\n- [Donate](#donate)\r\n- [Instalation](#installation)\r\n- [Usage](#usage)\r\n  - [Initial Configuration](#initial-config)\r\n  - [Wallet](#wallet)\r\n    - [Wallet Details](#wallet-details)\r\n    - [Create Invoice](#create-invoice)\r\n    - [Pay Invoice](#pay-invoice)\r\n    - [Check Invoice](#check-invoice)\r\n  - [User Manager](#user-manager)\r\n    - [Get Users](#get-users)\r\n    - [Get Wallets](#get-wallets)\r\n    - [Get Transactions](#get-transactions)\r\n    - [Create User](#create-user)\r\n    - [Delete User](#delete-user)\r\n    - [Delete Wallet](#delete-wallet)\r\n    - [Active Extension](#active-extension)\r\n  - [Paywall](#paywall)\r\n    - [Get Paywalls](#get-paywalls)\r\n    - [Create Paywall](#create-paywall)\r\n    - [Create Invoice](#create-invoice)\r\n    - [Check Invoice](#check-invoice)\r\n    - [Delete Paywall](#delete-paywall)\r\n  - [Withdraw](#withdraw)\r\n    - [Get Links](#get-links)\r\n    - [Create Link](#create-link)\r\n    - [Update Link](#update-link)\r\n    - [Delete Link](#delete-link)\r\n  - [TPoS](#tpos)\r\n    - [Get TPoS](#get-tpos)\r\n    - [Create Link](#create-tpos)\r\n    - [Delete Link](#delete-tpos)\r\n- [Contribute](#contribute)\r\n- [License](#license)\r\n\r\n---\r\n\r\n## **Installation**\r\n\r\nUsing npm:\r\n\r\n```bash\r\n$ npm install lnbits\r\n```\r\n\r\nUsing yarn:\r\n\r\n```bash\r\n$ yarn add lnbits\r\n```\r\n\r\n---\r\n\r\n## **Usage**\r\n\r\n### **Initial Configuration**\r\n\r\n```javascript\r\nconst LNBits = require('lnbits').default; // using require\r\n\r\nimport LNBits from 'lnbits'; // using import\r\n\r\nconst { wallet, userManager, paywall, withdraw, paylink, tpos } = LNBits({\r\n  adminKey: 'd00265e7de5f44f59b2408d9f0564181',\r\n  invoiceReadKey: '23e34be59d57408688a74500a3f24f03',\r\n  endpoint: 'https://lnbits.com', //default\r\n});\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Wallet**\r\n\r\n### **Wallet Details**\r\n\r\n[ [Example](examples/wallet.ts) ] [ [top](#donate) ]\r\n\r\n```js\r\nconst walletDetails = await wallet.walletDetails();\r\nconsole.log(walletDetails);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Create Invoice**\r\n\r\n[ [Example](examples/wallet.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {number} params.amount\r\n- {string} params.memo\r\n- {boolean} params.out\r\n\r\n```js\r\nconst newInvoice = await wallet.createInvoice({\r\n  amount: 10,\r\n  memo: 'test',\r\n  out: false,\r\n});\r\nconsole.log(newInvoice);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Pay Invoice**\r\n\r\n[ [Example](examples/wallet.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.bolt11\r\n- {boolean} params.out\r\n\r\n```js\r\nconst newPayInvoice = await wallet.payInvoice({\r\n  bolt11: '',\r\n  out: true,\r\n});\r\nconsole.log(newPayInvoice);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Check Invoice**\r\n\r\n[ [Example](examples/wallet.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.payment_hash\r\n\r\n```js\r\nconst checkinvoice = await wallet.checkInvoice({\r\n  payment_hash: '...',\r\n});\r\nconsole.log(checkinvoice);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **User Manager**\r\n\r\n### **Get Users**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\n```js\r\nconst users = await userManager.getUsers();\r\nconsole.log(users);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Get Wallets**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.user_id\r\n\r\n```js\r\nconst wallets = await userManager.getWallets({\r\n  user_id: '355c5110bed24744bebb12aecf8fad14',\r\n});\r\nconsole.log(wallets);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Get Transactions**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.wallet_id\r\n\r\n```js\r\nconst tx = await userManager.getTransactions({\r\n  wallet_id: '4a18ae4b204044069bd349a37ba0be1d',\r\n});\r\nconsole.log(tx);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Create User**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.admin_id\r\n- {string} params.user_name\r\n- {string} params.wallet_name\r\n\r\n```js\r\nconst user = await userManager.createUser({\r\n  admin_id: '355c5110bed24744bebb12aecf8fad14',\r\n  user_name: 'user',\r\n  wallet_name: 'wallet',\r\n});\r\nconsole.log(user);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Delete User**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.user_id\r\n\r\n```js\r\nconst userDeleted = await userManager.deleteUser({\r\n  user_id: 'b7cab6e3744347f2b6516510f5d40e9d',\r\n});\r\nconsole.log(userDeleted);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Delete Wallet**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.wallet_id\r\n\r\n```js\r\nconst walletDeleted = await userManager.deleteWallet({\r\n  wallet_id: '0d52c8a832f84f9b86bd993b985e6f10',\r\n});\r\nconsole.log(walletDeleted);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Active Extension**\r\n\r\n[ [Example](examples/userManager.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.userid\r\n- {string} params.extension\r\n- {boolean} params.active\r\n\r\n```js\r\nconst extension = await userManager.activeExtension({\r\n  userid: '355c5110bed24744bebb12aecf8fad14',\r\n  extension: 'usermanager',\r\n  active: true,\r\n});\r\nconsole.log(extension);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Paywall**\r\n\r\n### **Get Paywalls**\r\n\r\n[ [Example](examples/paywall.ts) ] [ [top](#donate) ]\r\n\r\n```js\r\nconst paywalls = await paywall.getPaywalls();\r\nconsole.log(paywalls);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Create Paywall**\r\n\r\n[ [Example](examples/paywall.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {number} params.amount\r\n- {string} params.description\r\n- {string} params.memo\r\n- {boolean} params.remembers\r\n- {string} params.url\r\n\r\n```js\r\nconst paywallNew = await paywall.createPaywall({\r\n  amount: 10,\r\n  description: 'teste',\r\n  memo: 'teste memo',\r\n  remembers: false,\r\n  url: 'https://teste.com',\r\n});\r\nconsole.log(paywallNew);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Create Invoice**\r\n\r\n[ [Example](examples/paywall.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {number} params.amount\r\n- {string} params.paywall_id\r\n\r\n```js\r\nconst invoice = await paywall.createInvoice({\r\n  amount: 10,\r\n  paywall_id: '3UWoiHV7SYCytUjMfG8ySq',\r\n});\r\nconsole.log(invoice);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Check Invoice**\r\n\r\n[ [Example](examples/paywall.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.paywall_id\r\n- {string} params.payment_hash\r\n\r\n```js\r\nconst invoiceCheck = await paywall.checkInvoice({\r\n  paywall_id: '3UWoiHV7SYCytUjMfG8ySq',\r\n  payment_hash:\r\n    'e73dc54e857823b7c0bdd3faf6c0f6e8af2b07556fdc304cc8fe7c692a2562e8',\r\n});\r\nconsole.log(invoiceCheck);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Delete Paywall**\r\n\r\n[ [Example](examples/paywall.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.paywall_id\r\n\r\n```js\r\nconst paywallDeleted = await paywall.deletePaywall({\r\n  paywall_id: '3UWoiHV7SYCytUjMfG8ySq',\r\n});\r\nconsole.log(paywallDeleted);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Withdraw**\r\n\r\n### **Get Links**\r\n\r\n[ [Example](examples/withdraw.ts) ] [ [top](#donate) ]\r\n\r\n```js\r\nconst withdrawLinks = await withdraw.getLinks({\r\n  withdraw_id: '5o57EM9Qty5CLQB2QNjQ2p',\r\n});\r\nconsole.log(withdrawLinks);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Create Link**\r\n\r\n[ [Example](examples/withdraw.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.title\r\n- {number} params.min_withdrawable\r\n- {number} params.max_withdrawable\r\n- {number} params.uses\r\n- {number} params.wait_time\r\n- {boolean} params.is_unique\r\n\r\n```js\r\nconst link = await withdraw.createLink({\r\n  title: 'title',\r\n  min_withdrawable: 10,\r\n  max_withdrawable: 20,\r\n  uses: 10,\r\n  wait_time: 3600,\r\n  is_unique: false,\r\n});\r\nconsole.log(link);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Update Link**\r\n\r\n[ [Example](examples/withdraw.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.withdraw_id\r\n- {string} params.title\r\n- {number} params.min_withdrawable\r\n- {number} params.max_withdrawable\r\n- {number} params.uses\r\n- {number} params.wait_time\r\n- {boolean} params.is_unique\r\n\r\n```js\r\nconst linkUpdated = await withdraw.updateLink({\r\n  withdraw_id: 'aaWVY3cu655xHxJpYLJhcA',\r\n  title: 'title',\r\n  min_withdrawable: 10,\r\n  max_withdrawable: 20,\r\n  uses: 10,\r\n  wait_time: 3600,\r\n  is_unique: false,\r\n});\r\nconsole.log(linkUpdated);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Delete Link**\r\n\r\n[ [Example](examples/withdraw.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.withdraw_id\r\n\r\n```js\r\nconst linkDeleted = await withdraw.deleteLink({\r\n  withdraw_id: 'aaWVY3cu655xHxJpYLJhcA',\r\n});\r\nconsole.log(linkDeleted);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **TPoS**\r\n\r\n### **Get TPoS**\r\n\r\n[ [Example](examples/tpos.ts) ] [ [top](#donate) ]\r\n\r\n```js\r\nconst tposs = await tpos.getTPoS();\r\nconsole.log(tposs);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Create TPoS**\r\n\r\n[ [Example](examples/tpos.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.currency\r\n- {string} params.name\r\n\r\n```js\r\nconst tposNew = await tpos.createTPoS({\r\n  currency: 'usd',\r\n  name: 'teste tpos',\r\n});\r\nconsole.log(tposNew);\r\n```\r\n\r\n\u003cbr/\u003e\r\n\r\n### **Delete TPoS**\r\n\r\n[ [Example](examples/tpos.ts) ] [ [top](#donate) ]\r\n\r\nParameters:\r\n\r\n- {Object} params - Params object.\r\n- {string} params.tpos_id\r\n\r\n```js\r\nconst tposDeleted = await tpos.deleteTPoS({\r\n  tpos_id: 'PCXNcLsoLSaBhUybxHfoCN',\r\n});\r\nconsole.log(tposDeleted);\r\n```\r\n\r\n---\r\n\r\n## **Contributing**\r\n\r\nPull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.\r\n\r\n---\r\n\r\n## **License [MIT](https://choosealicense.com/licenses/mit/)**\r\n\r\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMiguelMedeiros%2Flnbits-js","html_url":"https://awesome.ecosyste.ms/projects/github.com%2FMiguelMedeiros%2Flnbits-js","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2FMiguelMedeiros%2Flnbits-js/lists"}