Releases: lnbotdev/go-sdk
Releases · lnbotdev/go-sdk
v1.0.0
v1.0.0 — Wallet-scoped API
Breaking changes
All wallet-scoped resources now live under client.Wallet(id) instead of directly on the client.
Before:
client := lnbot.New("key_...")
client.Invoices.Create(ctx, params)
client.Wallets.Current(ctx)After:
client := lnbot.New("uk_...")
w := client.Wallet("wal_...")
w.Invoices.Create(ctx, params)
w.Get(ctx)New features
Register(ctx)— create a new account (returns user keys + recovery passphrase)Me(ctx)— identity checkWallet(id)— wallet handle with all sub-resourcesWallets.List(ctx)— list all walletsWalletKeyService— create, get, delete, rotate wallet keys (wk_)Payments.Resolve(ctx, target)— inspect a payment target before sendingPublicInvoicesService—CreateForWallet,CreateForAddress(no auth)
Removed
Wallets.Current()→ useWallet(id).Get()Wallets.Update()→ useWallet(id).Update()Wallets.Create(params)→Wallets.Create()(no params, no keys returned)CreateWalletParams,WalletCredentialstypes removed
Authentication
Two key types:
- User key (
uk_) — all wallets under the account - Wallet key (
wk_) — single wallet, required for SSE
Tests
- 117 unit tests
- Integration test suite (
go test -tags=integration)
v0.5.0
What's new
- L402 paywall support —
client.L402.CreateChallenge(),client.L402.Verify(),client.L402.Pay() - Get/watch by payment hash —
GetByHash()andWatchByHash()on Invoices and Payments - Removed
client.Keys.List()— server endpoint removed (key listing is a local CLI operation)
Breaking changes
Keys.List()removedAPIKeytype removed
v0.4.0
v0.3.0
What's new
- Payment watch:
Payments.Watch()SSE stream for real-time payment events (settled/failed) - Unauthenticated invoice creation:
Invoices.CreateForWallet()andInvoices.CreateForAddress()— no API key required - LNURL support:
Payments.Create()docs updated to mention LNURL as accepted target - New types:
PaymentEvent,CreateInvoiceForWalletParams,CreateInvoiceForAddressParams,AddressInvoice