lnbits-ts
TypeScript icon, indicating that this package has built-in type declarations

0.0.3 • Public • Published

LNBits JS API

npm version License: MIT


Easy way to add LNBits API to your JS application.


References


Donate

Help me to stack sats! 😊

donate via Lightning Network!


Features


Installation

Using npm:

$ npm install lnbits-ts

Using yarn:

$ yarn add lnbits-ts

Usage

Initial Configuration

const LNBits = require("lnbits-ts").default; // using require

import LNBits from "lnbits-ts"; // using import

const { wallet, userManager, paywall, withdraw, paylink, tpos } = LNBits({
  adminKey: "d00265e7de5f44f59b2408d9f0564181",
  invoiceReadKey: "23e34be59d57408688a74500a3f24f03",
  endpoint: "https://lnbits.com", //default
});

Wallet

Wallet Details

[ Example ] [ top ]

const walletDetails = await wallet.walletDetails();
console.log(walletDetails);

Create Invoice

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {number} params.amount
  • {string} params.memo
  • {boolean} params.out
const newInvoice = await wallet.createInvoice({
  amount: 10,
  memo: "test",
  out: false,
});
console.log(newInvoice);

Pay Invoice

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.bolt11
  • {boolean} params.out
const newPayInvoice = await wallet.payInvoice({
  bolt11: "",
  out: true,
});
console.log(newPayInvoice);

Check Invoice

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.payment_hash
const checkinvoice = await wallet.checkInvoice({
  payment_hash: "...",
});
console.log(checkinvoice);

User Manager

Get Users

[ Example ] [ top ]

const users = await userManager.getUsers();
console.log(users);

Get Wallets

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.user_id
const wallets = await userManager.getWallets({
  user_id: "355c5110bed24744bebb12aecf8fad14",
});
console.log(wallets);

Get Transactions

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.wallet_id
const tx = await userManager.getTransactions({
  wallet_id: "4a18ae4b204044069bd349a37ba0be1d",
});
console.log(tx);

Create User

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.admin_id
  • {string} params.user_name
  • {string} params.wallet_name
const user = await userManager.createUser({
  admin_id: "355c5110bed24744bebb12aecf8fad14",
  user_name: "user",
  wallet_name: "wallet",
});
console.log(user);

Delete User

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.user_id
const userDeleted = await userManager.deleteUser({
  user_id: "b7cab6e3744347f2b6516510f5d40e9d",
});
console.log(userDeleted);

Delete Wallet

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.wallet_id
const walletDeleted = await userManager.deleteWallet({
  wallet_id: "0d52c8a832f84f9b86bd993b985e6f10",
});
console.log(walletDeleted);

Active Extension

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.userid
  • {string} params.extension
  • {boolean} params.active
const extension = await userManager.activeExtension({
  userid: "355c5110bed24744bebb12aecf8fad14",
  extension: "usermanager",
  active: true,
});
console.log(extension);

Paywall

Get Paywalls

[ Example ] [ top ]

const paywalls = await paywall.getPaywalls();
console.log(paywalls);

Create Paywall

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {number} params.amount
  • {string} params.description
  • {string} params.memo
  • {boolean} params.remembers
  • {string} params.url
const paywallNew = await paywall.createPaywall({
  amount: 10,
  description: "teste",
  memo: "teste memo",
  remembers: false,
  url: "https://teste.com",
});
console.log(paywallNew);

Create Invoice

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {number} params.amount
  • {string} params.paywall_id
const invoice = await paywall.createInvoice({
  amount: 10,
  paywall_id: "3UWoiHV7SYCytUjMfG8ySq",
});
console.log(invoice);

Check Invoice

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.paywall_id
  • {string} params.payment_hash
const invoiceCheck = await paywall.checkInvoice({
  paywall_id: "3UWoiHV7SYCytUjMfG8ySq",
  payment_hash:
    "e73dc54e857823b7c0bdd3faf6c0f6e8af2b07556fdc304cc8fe7c692a2562e8",
});
console.log(invoiceCheck);

Delete Paywall

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.paywall_id
const paywallDeleted = await paywall.deletePaywall({
  paywall_id: "3UWoiHV7SYCytUjMfG8ySq",
});
console.log(paywallDeleted);

Withdraw

Get Links

[ Example ] [ top ]

const withdrawLinks = await withdraw.getLinks({
  withdraw_id: "5o57EM9Qty5CLQB2QNjQ2p",
});
console.log(withdrawLinks);

Create Link

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.title
  • {number} params.min_withdrawable
  • {number} params.max_withdrawable
  • {number} params.uses
  • {number} params.wait_time
  • {boolean} params.is_unique
const link = await withdraw.createLink({
  title: "title",
  min_withdrawable: 10,
  max_withdrawable: 20,
  uses: 10,
  wait_time: 3600,
  is_unique: false,
});
console.log(link);

Update Link

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.withdraw_id
  • {string} params.title
  • {number} params.min_withdrawable
  • {number} params.max_withdrawable
  • {number} params.uses
  • {number} params.wait_time
  • {boolean} params.is_unique
const linkUpdated = await withdraw.updateLink({
  withdraw_id: "aaWVY3cu655xHxJpYLJhcA",
  title: "title",
  min_withdrawable: 10,
  max_withdrawable: 20,
  uses: 10,
  wait_time: 3600,
  is_unique: false,
});
console.log(linkUpdated);

Delete Link

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.withdraw_id
const linkDeleted = await withdraw.deleteLink({
  withdraw_id: "aaWVY3cu655xHxJpYLJhcA",
});
console.log(linkDeleted);

TPoS

Get TPoS

[ Example ] [ top ]

const tposs = await tpos.getTPoS();
console.log(tposs);

Create TPoS

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.currency
  • {string} params.name
const tposNew = await tpos.createTPoS({
  currency: "usd",
  name: "teste tpos",
});
console.log(tposNew);

Delete TPoS

[ Example ] [ top ]

Parameters:

  • {Object} params - Params object.
  • {string} params.tpos_id
const tposDeleted = await tpos.deleteTPoS({
  tpos_id: "PCXNcLsoLSaBhUybxHfoCN",
});
console.log(tposDeleted);

Contributing

Pull requests are welcome! For major changes, please open an issue first to discuss what you would like to change.


License MIT

Package Sidebar

Install

npm i lnbits-ts

Weekly Downloads

300

Version

0.0.3

License

MIT OR Apache-2.0

Unpacked Size

32.1 kB

Total Files

20

Last publish

Collaborators

  • billigsteruser