Skip to main content

DeleteForwardingHistory

DeleteForwardingHistory allows the caller to delete forwarding history events with a timestamp at or before a specified time. This is useful for implementing data retention policies for privacy purposes. The call deletes events in batches and returns statistics including the total number of events deleted and the aggregate fees earned from those events. The deletion is performed in a transaction-safe manner with configurable batch sizes to avoid holding large database locks.

Source: routerrpc/router.proto

gRPC

rpc DeleteForwardingHistory (DeleteForwardingHistoryRequest) returns (DeleteForwardingHistoryResponse);

REST

HTTP MethodPath
POST /v2/router/fwdhistory/delete

Code Samples

const fs = require('fs');
const grpc = require('@grpc/grpc-js');
const protoLoader = require('@grpc/proto-loader');

const GRPC_HOST = 'localhost:10009'
const MACAROON_PATH = 'LND_DIR/data/chain/bitcoin/regtest/admin.macaroon'
const TLS_PATH = 'LND_DIR/tls.cert'

const loaderOptions = {
keepCase: true,
longs: String,
enums: String,
defaults: true,
oneofs: true,
};
const packageDefinition = protoLoader.loadSync(['lightning.proto', 'routerrpc/router.proto'], loaderOptions);
const routerrpc = grpc.loadPackageDefinition(packageDefinition).routerrpc;
process.env.GRPC_SSL_CIPHER_SUITES = 'HIGH+ECDSA';
const tlsCert = fs.readFileSync(TLS_PATH);
const sslCreds = grpc.credentials.createSsl(tlsCert);
const macaroon = fs.readFileSync(MACAROON_PATH).toString('hex');
const macaroonCreds = grpc.credentials.createFromMetadataGenerator(function(args, callback) {
let metadata = new grpc.Metadata();
metadata.add('macaroon', macaroon);
callback(null, metadata);
});
let creds = grpc.credentials.combineChannelCredentials(sslCreds, macaroonCreds);
let client = new routerrpc.Router(GRPC_HOST, creds);
let request = {
delete_before_time: <uint64>,
delete_before_duration: <string>,
};
client.deleteForwardingHistory(request, function(err, response) {
console.log(response);
});
// Console output:
// {
// "events_deleted": <uint64>,
// "total_fee_msat": <int64>,
// "status": <string>,
// }

Messages

routerrpc.DeleteForwardingHistoryRequest

Source: routerrpc/router.proto

FieldgRPC TypeREST TypeREST Placement
delete_before_time
uint64stringbody
delete_before_duration
stringstringbody

routerrpc.DeleteForwardingHistoryResponse

Source: routerrpc/router.proto

FieldgRPC TypeREST Type
events_deleted
uint64string
total_fee_msat
int64string
status
stringstring