diff --git a/snippets/go/buy_btc.go b/snippets/go/buy_btc.go index 4e2714dc..4827da7c 100644 --- a/snippets/go/buy_btc.go +++ b/snippets/go/buy_btc.go @@ -6,13 +6,16 @@ import ( "github.com/breez/breez-sdk-go/breez_sdk" ) -func BuyBitcoin() { +func BuyBitcoin() error { // ANCHOR: buy-btc buyBitcoinRequest := breez_sdk.BuyBitcoinRequest{ Provider: breez_sdk.BuyBitcoinProviderMoonpay, } - if buyBitcoinResponse, err := sdk.BuyBitcoin(buyBitcoinRequest); err == nil { - log.Printf("%#v", buyBitcoinResponse) + buyBitcoinResponse, err := sdk.BuyBitcoin(buyBitcoinRequest) + if err != nil { + return err } + log.Printf("%#v", buyBitcoinResponse) // ANCHOR_END: buy-btc + return nil } diff --git a/snippets/go/closed_channel.go b/snippets/go/closed_channel.go index 2696ba37..3bc0e2a5 100644 --- a/snippets/go/closed_channel.go +++ b/snippets/go/closed_channel.go @@ -6,22 +6,28 @@ import ( "github.com/breez/breez-sdk-go/breez_sdk" ) -func PrepareRedeemOnchainFunds(feeRate uint32) { +func PrepareRedeemOnchainFunds(feeRate uint32) error { // ANCHOR: prepare-redeem-onchain-funds satPerVbyte := feeRate destinationAddress := "bc1.." req := breez_sdk.PrepareRedeemOnchainFundsRequest{SatPerVbyte: satPerVbyte, ToAddress: destinationAddress} - if prepareRedeemOnchainFundsResponse, err := sdk.PrepareRedeemOnchainFunds(req); err == nil { - log.Printf("PrepareRedeemOnchainFundsRequest is %#v", prepareRedeemOnchainFundsResponse) + prepareRedeemOnchainFundsResponse, err := sdk.PrepareRedeemOnchainFunds(req) + if err != nil { + return err } + log.Printf("PrepareRedeemOnchainFundsRequest is %#v", prepareRedeemOnchainFundsResponse) // ANCHOR_END: prepare-redeem-onchain-funds + return nil } -func RedeemOnchainFunds(satPerVbyte uint32, toAddress string) { +func RedeemOnchainFunds(satPerVbyte uint32, toAddress string) error { // ANCHOR: redeem-onchain-funds req := breez_sdk.RedeemOnchainFundsRequest{SatPerVbyte: satPerVbyte, ToAddress: toAddress} - if redeemOnchainFundsResponse, err := sdk.RedeemOnchainFunds(req); err == nil { - log.Printf("RedeemOnchainFunds error %#v", redeemOnchainFundsResponse) + redeemOnchainFundsResponse, err := sdk.RedeemOnchainFunds(req) + if err != nil { + return err } + log.Printf("RedeemOnchainFunds error %#v", redeemOnchainFundsResponse) // ANCHOR_END: redeem-onchain-funds + return nil } diff --git a/snippets/go/communicating_fees.go b/snippets/go/communicating_fees.go index a2c4af94..b536beab 100644 --- a/snippets/go/communicating_fees.go +++ b/snippets/go/communicating_fees.go @@ -6,32 +6,37 @@ import ( "github.com/breez/breez-sdk-go/breez_sdk" ) -func getFeeInfoBeforeInvoiceCreated() { +func getFeeInfoBeforeInvoiceCreated() error { // ANCHOR: get-fee-info-before-receiving-payment - if nodeInfo, err := sdk.NodeInfo(); err == nil { - var inboundLiquiditySat = nodeInfo.MaxReceivableSinglePaymentAmountMsat / 1_000 + nodeInfo, err := sdk.NodeInfo() + if err != nil { + return err + } + var inboundLiquiditySat = nodeInfo.MaxReceivableSinglePaymentAmountMsat / 1_000 - if openingFeeResponse, err := sdk.OpenChannelFee(breez_sdk.OpenChannelFeeRequest{}); err == nil { - var openingFees = openingFeeResponse.FeeParams - var feePercentage = (openingFees.Proportional * 100) / 1_000_000.0 - var minFeeSat = openingFees.MinMsat / 1_000 + openingFeeResponse, err := sdk.OpenChannelFee(breez_sdk.OpenChannelFeeRequest{}) + if err != nil { + return err + } + var openingFees = openingFeeResponse.FeeParams + var feePercentage = (openingFees.Proportional * 100) / 1_000_000.0 + var minFeeSat = openingFees.MinMsat / 1_000 - if inboundLiquiditySat == 0 { - log.Printf( - "A setup fee of %v%% with a minimum of %v sats will be applied.", - feePercentage, minFeeSat) - } else { - log.Printf( - "A setup fee of %v%% with a minimum of %v sats will be applied"+ - "for receiving more than %v sats.", - feePercentage, minFeeSat, inboundLiquiditySat) - } - } + if inboundLiquiditySat == 0 { + log.Printf( + "A setup fee of %v%% with a minimum of %v sats will be applied.", + feePercentage, minFeeSat) + } else { + log.Printf( + "A setup fee of %v%% with a minimum of %v sats will be applied"+ + "for receiving more than %v sats.", + feePercentage, minFeeSat, inboundLiquiditySat) } // ANCHOR_END: get-fee-info-before-receiving-payment + return nil } -func GetFeeInfoAfterInvoiceCreated(receivePaymentResponse breez_sdk.ReceivePaymentResponse) { +func GetFeeInfoAfterInvoiceCreated(receivePaymentResponse breez_sdk.ReceivePaymentResponse) error { // ANCHOR: get-fee-info-after-invoice-created var openingFeeSat int openingFeeMsat := receivePaymentResponse.OpeningFeeMsat @@ -40,27 +45,33 @@ func GetFeeInfoAfterInvoiceCreated(receivePaymentResponse breez_sdk.ReceivePayme } log.Printf("A setup fee of %v sats is applied to this invoice.", openingFeeSat) // ANCHOR_END: get-fee-info-after-invoice-created + return nil } -func getFeeInfoReceiveOnchain() { +func getFeeInfoReceiveOnchain() error { // ANCHOR: get-fee-info-receive-onchain - if swapInfo, err := sdk.ReceiveOnchain(breez_sdk.ReceiveOnchainRequest{}); err != nil { - var minDepositSat = swapInfo.MinAllowedDeposit - var maxDepositSat = swapInfo.MaxAllowedDeposit + swapInfo, err := sdk.ReceiveOnchain(breez_sdk.ReceiveOnchainRequest{}) + if err != nil { + return err + } + var minDepositSat = swapInfo.MinAllowedDeposit + var maxDepositSat = swapInfo.MaxAllowedDeposit - if nodeInfo, err := sdk.NodeInfo(); err == nil { - var inboundLiquiditySat = nodeInfo.MaxReceivableSinglePaymentAmountMsat / 1_000 + nodeInfo, err := sdk.NodeInfo() + if err != nil { + return err + } + var inboundLiquiditySat = nodeInfo.MaxReceivableSinglePaymentAmountMsat / 1_000 - var swapOpeningFees = swapInfo.ChannelOpeningFees - var feePercentage = (swapOpeningFees.Proportional * 100) / 1_000_000.0 - var minFeeSat = swapOpeningFees.MinMsat / 1_000 + var swapOpeningFees = swapInfo.ChannelOpeningFees + var feePercentage = (swapOpeningFees.Proportional * 100) / 1_000_000.0 + var minFeeSat = swapOpeningFees.MinMsat / 1_000 - log.Printf( - "Send more than %v sats and up to %v sats to this address. "+ - "A setup fee of %v%% with a minimum of %v sats will be applied "+ - "for sending more than %v sats. This address can only be used once.", - minDepositSat, maxDepositSat, feePercentage, minFeeSat, inboundLiquiditySat) - } - } + log.Printf( + "Send more than %v sats and up to %v sats to this address. "+ + "A setup fee of %v%% with a minimum of %v sats will be applied "+ + "for sending more than %v sats. This address can only be used once.", + minDepositSat, maxDepositSat, feePercentage, minFeeSat, inboundLiquiditySat) // ANCHOR_END: get-fee-info-receive-onchain + return nil } diff --git a/snippets/go/connecting_lsp.go b/snippets/go/connecting_lsp.go index e9ccce32..5c1738f6 100644 --- a/snippets/go/connecting_lsp.go +++ b/snippets/go/connecting_lsp.go @@ -4,32 +4,44 @@ import ( "log" ) -func GetLspInfo() { +func GetLspInfo() error { // ANCHOR: get-lsp-info - if lspId, err := sdk.LspId(); lspId != nil && err == nil { + lspId, err := sdk.LspId() + if err != nil { + return err + } + if lspId != nil { log.Printf("%#v", *lspId) } - if lspInfo, err := sdk.LspInfo(); err == nil { - log.Printf("%#v", lspInfo) + lspInfo, err := sdk.LspInfo() + if err != nil { + return err } + log.Printf("%#v", lspInfo) // ANCHOR_END: get-lsp-info + return nil } -func ListLsps() { +func ListLsps() error { // ANCHOR: list-lsps - if lspList, err := sdk.ListLsps(); err == nil { - log.Printf("%#v", lspList) + lspList, err := sdk.ListLsps() + if err != nil { + return err } + log.Printf("%#v", lspList) // ANCHOR_END: list-lsps + return nil } -func ConnectLsp() { +func ConnectLsp() error { // ANCHOR: connect-lsp lspId := "your selected lsp id" - if err := sdk.ConnectLsp(lspId); err != nil { - log.Printf("%#v", err) + err := sdk.ConnectLsp(lspId) + if err != nil { + return err } // ANCHOR_END: connect-lsp + return nil } diff --git a/snippets/go/fiat_currencies.go b/snippets/go/fiat_currencies.go index 5e2ffe8d..114f7710 100644 --- a/snippets/go/fiat_currencies.go +++ b/snippets/go/fiat_currencies.go @@ -4,18 +4,24 @@ import ( "log" ) -func ListFiatCurrencies() { +func ListFiatCurrencies() error { // ANCHOR: list-fiat-currencies - if fiatCurrencies, err := sdk.ListFiatCurrencies(); err == nil { - log.Printf("%#v", fiatCurrencies) + fiatCurrencies, err := sdk.ListFiatCurrencies() + if err != nil { + return err } + log.Printf("%#v", fiatCurrencies) // ANCHOR_END: list-fiat-currencies + return nil } -func FetchFiatRates() { +func FetchFiatRates() error { // ANCHOR: fetch-fiat-rates - if fiatRates, err := sdk.FetchFiatRates(); err == nil { - log.Printf("%#v", fiatRates) + fiatRates, err := sdk.FetchFiatRates() + if err != nil { + return err } + log.Printf("%#v", fiatRates) // ANCHOR_END: fetch-fiat-rates + return nil } diff --git a/snippets/go/getting_started.go b/snippets/go/getting_started.go index 017c51d4..a3123249 100644 --- a/snippets/go/getting_started.go +++ b/snippets/go/getting_started.go @@ -61,15 +61,19 @@ func GettingStartedRestoreOnly(config breez_sdk.Config, seed []uint8) *breez_sdk return sdk } -func FetchBalance() { +func FetchBalance() error { // ANCHOR: fetch-balance - if nodeInfo, err := sdk.NodeInfo(); err == nil { - lnBalance := nodeInfo.ChannelsBalanceMsat - onchainBalance := nodeInfo.OnchainBalanceMsat - - log.Printf("%#v %#v", lnBalance, onchainBalance) + nodeInfo, err := sdk.NodeInfo() + if err != nil { + return err } + + lnBalance := nodeInfo.ChannelsBalanceMsat + onchainBalance := nodeInfo.OnchainBalanceMsat + + log.Printf("%#v %#v", lnBalance, onchainBalance) // ANCHOR_END: fetch-balance + return nil } // ANCHOR: logging diff --git a/snippets/go/list_payments.go b/snippets/go/list_payments.go index 858a561d..21182c1d 100644 --- a/snippets/go/list_payments.go +++ b/snippets/go/list_payments.go @@ -6,15 +6,18 @@ import ( "github.com/breez/breez-sdk-go/breez_sdk" ) -func ListPayments() { +func ListPayments() error { // ANCHOR: list-payments - if payments, err := sdk.ListPayments(breez_sdk.ListPaymentsRequest{}); err == nil { - log.Printf("%#v", payments) + payments, err := sdk.ListPayments(breez_sdk.ListPaymentsRequest{}) + if err != nil { + return err } + log.Printf("%#v", payments) // ANCHOR_END: list-payments + return nil } -func ListPaymentsFiltered() { +func ListPaymentsFiltered() error { // ANCHOR: list-payments-filtered filters := []breez_sdk.PaymentTypeFilter{breez_sdk.PaymentTypeFilterSent} fromTimestamp := int64(1696880000) @@ -24,8 +27,11 @@ func ListPaymentsFiltered() { FromTimestamp: &fromTimestamp, IncludeFailures: &includeFailures, } - if payments, err := sdk.ListPayments(listPaymentsRequest); err == nil { - log.Printf("%#v", payments) + payments, err := sdk.ListPayments(listPaymentsRequest) + if err != nil { + return err } + log.Printf("%#v", payments) // ANCHOR_END: list-payments-filtered + return nil } diff --git a/snippets/go/lnurl_auth.go b/snippets/go/lnurl_auth.go index 9ce0d840..f4d81e8e 100644 --- a/snippets/go/lnurl_auth.go +++ b/snippets/go/lnurl_auth.go @@ -6,23 +6,30 @@ import ( "github.com/breez/breez-sdk-go/breez_sdk" ) -func LnurlAuth() { +func LnurlAuth() error { // ANCHOR: lnurl-auth // keyauth://domain.com/auth?key=val lnurlAuthUrl := "lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttvdankjm3lw3skw0tvdankjm3xdvcn6vtp8q6n2dfsx5mrjwtrxdjnqvtzv56rzcnyv3jrxv3sxqmkyenrvv6kve3exv6nqdtyv43nqcmzvdsnvdrzx33rsenxx5unqc3cxgeqgntfgu" - if input, err := breez_sdk.ParseInput(lnurlAuthUrl); err != nil { - switch inputType := input.(type) { - case breez_sdk.InputTypeLnUrlAuth: - if result, err := sdk.LnurlAuth(inputType.Data); err != nil { - switch result.(type) { - case breez_sdk.LnUrlCallbackStatusOk: - log.Printf("Successfully authenticated") - default: - log.Printf("Failed to authenticate") - } - } + input, err := breez_sdk.ParseInput(lnurlAuthUrl) + if err != nil { + return err + } + + switch inputType := input.(type) { + case breez_sdk.InputTypeLnUrlAuth: + result, err := sdk.LnurlAuth(inputType.Data) + if err != nil { + return err + } + + switch result.(type) { + case breez_sdk.LnUrlCallbackStatusOk: + log.Printf("Successfully authenticated") + default: + log.Printf("Failed to authenticate") } } // ANCHOR_END: lnurl-auth + return nil } diff --git a/snippets/go/lnurl_pay.go b/snippets/go/lnurl_pay.go index c4ed8920..1b78a105 100644 --- a/snippets/go/lnurl_pay.go +++ b/snippets/go/lnurl_pay.go @@ -6,36 +6,43 @@ import ( "github.com/breez/breez-sdk-go/breez_sdk" ) -func LnurlPay() { +func LnurlPay() error { // ANCHOR: lnurl-pay // Endpoint can also be of the form: // lnurlp://domain.com/lnurl-pay?key=val // lnurl1dp68gurn8ghj7mr0vdskc6r0wd6z7mrww4excttsv9un7um9wdekjmmw84jxywf5x43rvv35xgmr2enrxanr2cfcvsmnwe3jxcukvde48qukgdec89snwde3vfjxvepjxpjnjvtpxd3kvdnxx5crxwpjvyunsephsz36jf lnurlPayUrl := "lightning@address.com" - if input, err := breez_sdk.ParseInput(lnurlPayUrl); err != nil { - switch inputType := input.(type) { - case breez_sdk.InputTypeLnUrlPay: - useTrampoline := true - amountMsat := inputType.Data.MinSendable - optionalComment := "" - optionalPaymentLabel := "