List All Pairs
Retrieves a list of all available trading pairs on Binance exchange.
Common Properties
- Name - The custom name of the node.
- Color - The custom color of the node.
- Delay Before (sec) - Waits in seconds before executing the node.
- Delay After (sec) - Waits in seconds after executing node.
- Continue On Error - Automation will continue regardless of any error. The default value is false.
If the ContinueOnError property is true, no error is caught when the project is executed, even if a Catch node is used.
Inputs
- Client Id - The unique identifier from the Connect node (optional if using direct credentials).
Options
- Api Key - (Optional) Binance API key credential. Use if not providing Client Id.
- Secret Key - (Optional) Binance API secret key credential. Use if not providing Client Id.
Output
- Result - An array of trading pair symbols (e.g.,
["BTCUSDT", "ETHUSDT", "BNBUSDT", ...]).
How It Works
The List All Pairs node queries Binance's exchange information to retrieve all available trading pairs.
When executed, the node:
- Retrieves the Binance client (from Client Id or creates one from credentials)
- Queries Binance exchange information
- Extracts all trading pair symbols
- Returns an array of pair symbols
Requirements
- Either a Client Id from Connect node OR API credentials in options
- Appropriate API permissions (reading enabled)
Error Handling
The node will return specific errors in the following cases:
- ErrListAllPairs - Failed to retrieve exchange information from Binance
- ErrSetResult - Failed to set the output result
Usage Notes
- Returns all spot trading pairs available on Binance
- The list includes thousands of pairs
- Pairs are returned as symbol strings (e.g., "BTCUSDT")
- The list may change as Binance adds or removes pairs
- Useful for validating pair existence before trading
Example Output
[
"BTCUSDT",
"ETHUSDT",
"BNBUSDT",
"ADAUSDT",
"DOGEUSDT",
"XRPUSDT",
"DOTUSDT",
"UNIUSDT",
"ETHBTC",
"BNBBTC",
...
]
Example: Validate Trading Pair
Scenario: Check if a trading pair exists before placing an order
Inputs:
- Client Id: (from Connect node)
Output: Array of all trading pair symbols.
Usage:
[Connect]
|
v
[List All Pairs]
|
v
[Check if: "NEWCOINUSDT" in result]
|
+---> [Yes: Proceed with trade]
+---> [No: Alert "Pair not available"]
v
[Disconnect]
Example: Find All USDT Pairs
[Connect]
|
v
[List All Pairs]
|
v
[Filter: pairs ending with "USDT"]
|
v
[Log: "Found " + filtered_pairs.length + " USDT pairs"]
|
v
[For Each: pair in filtered_pairs]
|
v
[Process pair...]
|
v
[Disconnect]
Example: Find All Pairs for a Coin
[Input: coin = "BTC"]
|
v
[List All Pairs]
|
v
[Filter: pairs starting with coin or ending with coin]
|
v
[Display Pairs]
| BTCUSDT, BTCBUSD, ETHBTC, BNBBTC, etc.
v
[User selects pair]
Example: Pair Discovery System
[Timer: Daily]
|
v
[Connect]
|
v
[List All Pairs]
|
v
[Store: current_pairs = result]
|
v
[Compare: with yesterday_pairs]
|
v
[Find: new_pairs = current_pairs - yesterday_pairs]
|
v
[If: new_pairs.length > 0]
|
v
[Alert: "New pairs added: " + new_pairs.join(", ")]
|
v
[Update: yesterday_pairs = current_pairs]
|
v
[Disconnect]
Filtering Pairs
By Quote Currency:
// Get all USDT pairs
const usdtPairs = allPairs.filter(pair => pair.endsWith('USDT'));
// Get all BTC pairs
const btcPairs = allPairs.filter(pair => pair.endsWith('BTC'));
// Get all BUSD pairs
const busdPairs = allPairs.filter(pair => pair.endsWith('BUSD'));
By Base Currency:
// Get all pairs containing BTC
const btcPairs = allPairs.filter(pair => pair.startsWith('BTC'));
// Get all pairs containing ETH
const ethPairs = allPairs.filter(pair => pair.startsWith('ETH'));
By Pattern:
// Get stablecoin pairs
const stablePairs = allPairs.filter(pair =>
pair.includes('USDT') || pair.includes('BUSD') || pair.includes('USDC')
);
Common Quote Currencies
Most traded quote currencies on Binance:
- USDT - Tether (most common)
- BUSD - Binance USD
- BTC - Bitcoin
- ETH - Ethereum
- BNB - Binance Coin
- USDC - USD Coin
- EUR - Euro (limited pairs)
Use Cases
Pair Validation:
- Verify a pair exists before trading
- Check if new listings are available
- Validate user input for pair selection
Discovery:
- Find all pairs for a specific coin
- Discover new trading opportunities
- Monitor newly listed pairs
Automation:
- Build dynamic pair selectors
- Create multi-pair trading bots
- Monitor all markets simultaneously
Analytics:
- Track total number of pairs
- Analyze market structure
- Identify delisted pairs
Best Practices
- Cache the pair list to reduce API calls (pairs don't change frequently)
- Refresh the list daily or weekly to catch new listings
- Use case-insensitive comparison when validating pairs
- Filter pairs based on your trading strategy needs
- Combine with Get Price Change Info to analyze all pairs
- Consider only liquid pairs (high volume) for serious trading
- Validate pair format before using in other nodes
Pair Format
Binance trading pairs follow the format: BASEQUOTE
- Base asset: What you're buying/selling
- Quote asset: What you're using to pay/receive
Examples:
BTCUSDT- Buy/sell BTC using USDTETHBTC- Buy/sell ETH using BTCBNBBUSD- Buy/sell BNB using BUSD
Performance Considerations
- This endpoint returns all pairs (thousands)
- Response size can be large
- Consider caching the result
- Update cache periodically (e.g., daily)
- Don't call on every operation
Combining with Other Operations
List All Pairs
→ Filter by criteria
→ For each pair:
→ Get Price
→ Get Price Change Info
→ Analyze opportunity
→ Execute trade if criteria met
Common Patterns
Pair Existence Check:
List All Pairs
→ Check if target_pair in result
→ Proceed if exists, error if not
Multi-Pair Monitoring:
List All Pairs
→ Filter USDT pairs
→ For each pair:
→ Get Price
→ Get Price Change Info
→ Store data
→ Analyze all data
Dynamic Pair Selection:
List All Pairs
→ Filter by user criteria
→ Display options to user
→ User selects pair
→ Execute operation on selected pair