SparkSeer currently offers authentication by API key
Manage your API keys on the Account page at https://sparkseer.space
api-key
Pull historical summary information about publicly announced total capacity, nodes and channels
curl "https://api.sparkseer.space/v1/stats/ln-summary-ts" -i -X GET
{- "ln_summary": [
- {
- "time": 1592312018,
- "stats": [
- {
- "node_count": 10000,
- "channel_count": 40000,
- "total_capacity": 214204206969
}
]
}
]
}
Pull current centrality information computed by SparkSeer for all publicly visible nodes
curl "https://api.sparkseer.space/v1/stats/centralities" -i -X GET
{- "graph_timestamp": 1592312018,
- "centralities": [
- {
- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "ranks": [
- {
- "cent_between_rank": 420,
- "cent_between_weight_rank": 420,
- "cent_close_rank": 69,
- "cent_close_weight_rank": 69,
- "cent_eigen_rank": 21,
- "cent_eigen_weight_rank": 21
}
]
}
]
}
curl "https://api.sparkseer.space/v1/node/current-stats/{pubkey}" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "total_capacity": 210000000,
- "num_channels": 69,
- "mean_channel_capacity": 21000000.42,
- "median_channel_capacity": 21000000,
- "mean_outbound_base_fee": 1000,
- "mean_outbound_fee_rate": 420,
- "median_outbound_base_fee": 1000,
- "median_outbound_fee_rate": 420,
- "mean_inbound_base_fee": 1000,
- "mean_inbound_fee_rate": 420,
- "median_inbound_base_fee": 1000,
- "median_inbound_fee_rate": 420,
- "alias": "string",
- "ipv4": "string",
- "ipv6": "string",
- "torv3": "string",
- "last_update": 1592312018,
- "betweenness_rank": 420,
- "closeness_rank": 420,
- "eigenvector_rank": 420,
- "weighted_betweenness_rank": 420,
- "weighted_closeness_rank": 420,
- "weighted_eigenvector_rank": 420,
- "htlc_response_time_mean": 2.69,
- "htlc_response_time_median": 2,
- "liquidity_flexibility_score": 69.21,
- "effective_outbound_balance": 69.21,
- "effective_inbound_balance": 69.21
}
Historical node summary statistics. Default window is 14 days, 30 days with a Basic subscription, 90 days with a Standard, and 180 with a Premium.
curl "https://api.sparkseer.space/v1/node/historical/{pubkey}" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "historical_stats": [
- {
- "date": 1592312018,
- "total_capacity": 210000000,
- "num_channels": 69,
- "mean_channel_capacity": 21000000.42,
- "median_channel_capacity": 21000000,
- "mean_outbound_base_fee": 1000,
- "mean_outbound_fee_rate": 420,
- "median_outbound_base_fee": 1000,
- "median_outbound_fee_rate": 420,
- "mean_inbound_base_fee": 1000,
- "mean_inbound_fee_rate": 420,
- "median_inbound_base_fee": 1000,
- "median_inbound_fee_rate": 420,
- "alias": "string",
- "ipv4": "string",
- "ipv6": "string",
- "torv3": "string",
- "betweenness_rank": 420,
- "closeness_rank": 420,
- "eigenvector_rank": 420,
- "weighted_betweenness_rank": 420,
- "weighted_closeness_rank": 420,
- "weighted_eigenvector_rank": 420
}
]
}
curl "https://api.sparkseer.space/v1/node/local-network/{pubkey}" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "code": 401,
- "message": "Authentication failed"
}
Fetch the number of nodes in common for each peer of a given node
curl "https://api.sparkseer.space/v1/node/peers-of-peers/{pubkey}" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "peers": [
- {
- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "alias": "some_alias",
- "peers_in_common": 21
}
]
}
curl "https://api.sparkseer.space/v1/node/triangles/{pubkey}" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "triangles": [
- {
- "peer_1": "node_alias",
- "peer_2": "node_alias",
- "peer_1_pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "peer_2_pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f"
}
]
}
Get sats for your probes collected by LND's Mission Control daemon, or from data collected on your node running a different implementation (CLN/Eclair/etc.) using custom tools so you can generate a payload according to the request body schema. The maximum potential bid for probes, determined by the account subscription, can be found with the "Bid info" call. Payouts for probes are based on a number of factors, and may or may not reach the corresponding maximum bid.
Array of objects |
{- "pairs": [
- {
- "node_from": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "node_to": "0301b97933cf8d02d9d67a03acc016a5b694fe8ed2b45db326d697b88f2cc0ec88",
- "history": {
- "fail_time": 0,
- "fail_amt_sat": 0,
- "fail_amt_msat": 0,
- "success_time": 1592312018,
- "success_amt_sat": 100,
- "success_amt_msat": 100000
}
}
]
}
{- "receipt": {
- "settlement_time": 1592312018,
- "amount": 420,
- "hash": "a62f09cd09c60e76c0d86dc8cd8e55a18c9ca7a7454560c1bd510e128f3baf61"
}
}
curl "https://api.sparkseer.space/v1/sats4stats/payouts" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "payouts": [
- {
- "date_submitted": 1592312018,
- "details": {
- "data_type": "Router Mission Control",
- "amount": 420,
- "hash": "a62f09cd09c60e76c0d86dc8cd8e55a18c9ca7a7454560c1bd510e128f3baf61"
}
}
]
}
Get the latest bid maximum numbers. Bids are based on a number of factors such that payouts may fluctuate and may not always reach maximum bid.
curl "https://api.sparkseer.space/v1/sats4stats/bidinfo" -i -X GET
{- "routermc": {
- "premium_account_max": 1200,
- "standard_account_max": 1000,
- "basic_account_max": 800,
- "free_account_max": 600
}
}
Fetch the table of channel recommendations as shown on https://sparkseer.space/chanrec. Requires a subscription to access.
curl "https://api.sparkseer.space/v1/services/channel-recommendations" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "channel_recommendations": [
- {
- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "info": [
- {
- "gain_in_betweenness_rank": 69,
- "gain_in_closeness_rank": 21,
- "gain_in_eigenvector_rank": 420,
- "minimum_viable_capacity": 1000000,
- "ideal_capacity": 5000000,
- "passive_fee_ppm": 21,
- "active_fee_ppm": 420
}
]
}
]
}
Outbound liquidity value based on current channel fees with respect to other nodes. Requires a subscription to access.
curl "https://api.sparkseer.space/v1/services/outbound-liquidity-value" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "channel_peers": [
- {
- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "outbound_ppm_value": [
- {
- "current_outbound_fee_ppm": 69,
- "passive_strategy_ppm_percentile": 21,
- "active_strategy_ppm_percentile": 420
}
]
}
]
}
Get suggestions for channel fees on existing channels on your node for both passive and active rebalancing strategies. Requires a subscription to access.
curl "https://api.sparkseer.space/v1/services/suggested-fees" \ -H 'api-key: your-api-key-here' \ -i -X GET
{- "channel_peers": [
- {
- "pubkey": "03899f4a6c679c3a1bea61c3ba7bb0ac560f3d420286d1d898c5f83b8e0830844f",
- "suggested_fees": [
- {
- "passive_fee_rate": 69,
- "active_fee_rate": 420
}
]
}
]
}