feat: alchemy

This commit is contained in:
hashbro
2026-09-29 05:25:55 +08:00
parent 2c87d37051
commit 15c45a4fd2
14 changed files with 871 additions and 24 deletions
+19
View File
@@ -107,6 +107,25 @@ return [
'api_key' => env('TOKENVIEW_API_KEY', ''),
'sign_key' => env('TOKENVIEW_SIGN_KEY', ''),
'base_url' => env('TOKENVIEW_BASE_URL', 'https://services.tokenview.io/vipapi'),
// Separate Blockchain Data API key (balance + activation + all-token for ETH/BSC/BTC/SOL).
// Falls back to api_key when empty. Empty/unauthorized → per-chain RPC fallback.
'data_api_key' => env('TOKENVIEW_DATA_API_KEY', ''),
'data_timeout' => (int) env('TOKENVIEW_DATA_TIMEOUT', 30),
],
// Alchemy Blockchain Data + Prices API. Used for balance / all-token inventory
// and USD token value estimation. ETH/BSC/SOL JSON-RPC + Prices REST.
// Chains not enabled on the Alchemy app fall back to their per-chain RPC driver.
'alchemy' => [
'api_key' => env('ALCHEMY_API_KEY', ''),
// JSON-RPC endpoints per network. Empty network = not configured.
'eth_rpc_url' => env('ALCHEMY_ETH_RPC_URL', 'https://eth-mainnet.g.alchemy.com/v2'),
'bsc_rpc_url' => env('ALCHEMY_BSC_RPC_URL', 'https://bnb-mainnet.g.alchemy.com/v2'),
'sol_rpc_url' => env('ALCHEMY_SOL_RPC_URL', 'https://solana-mainnet.g.alchemy.com/v2'),
// Prices REST API (independent of RPC network enablement).
'prices_url' => env('ALCHEMY_PRICES_URL', 'https://api.g.alchemy.com/prices/v1'),
'timeout' => (int) env('ALCHEMY_TIMEOUT', 30),
// Max non-zero tokens to enrich with metadata + price per all-token query.
'max_token_enrich' => (int) env('ALCHEMY_MAX_TOKEN_ENRICH', 100),
],
'tron' => [
'full_node' => env('TRON_FULL_NODE', 'https://api.trongrid.io'),