> ## Documentation Index
> Fetch the complete documentation index at: https://condor.hummingbot.org/llms.txt
> Use this file to discover all available pages before exploring further.

# Adding Credentials

> Connect your exchange accounts via API keys

Before trading, you need to connect your exchange accounts by adding API credentials.

## Add Exchange Credentials

1. In Telegram, send `/keys`
2. Select **Perpetual** or **Spot**
3. Choose an exchange (e.g., Binance, Hyperliquid)
4. Enter your API key and secret

<Warning>
  For security, only enable **read + trade** permissions on your API keys. Never enable withdraw or transfer permissions.
</Warning>

## Supported Exchanges

| Exchange | Spot | Perpetual |
| - | - | - |
| **Binance** | ✓ | ✓ |
| **Bybit** | ✓ | ✓ |
| **OKX** | ✓ | ✓ |
| **Hyperliquid** | - | ✓ |
| **Kucoin** | ✓ | ✓ |
| **Gate.io** | ✓ | ✓ |
| **Kraken** | ✓ | - |
| **Coinbase** | ✓ | - |

## Getting API Keys

### Binance

1. Go to [Binance API Management](https://www.binance.com/en/my/settings/api-management)
2. Create a new API key
3. Enable **Spot & Margin Trading** and/or **Futures**
4. Restrict to your IP address (recommended)

### Hyperliquid

1. Go to [Hyperliquid](https://app.hyperliquid.xyz/)
2. Connect your wallet
3. Go to **API** in settings
4. Generate API credentials

### Other Exchanges

Each exchange has its own API management page. Look for:

* API Management
* API Keys
* Developer Settings

## Verify Connection

After adding credentials, verify the connection:

```
You: What's my balance on Binance?
Condor: Here's your Binance balance:
- USDT: 1,234.56
- BTC: 0.025
- ETH: 0.5
```

Or use `/portfolio` to see all connected exchanges.

## Multiple Exchanges

You can add credentials for multiple exchanges. Condor aggregates them into a single portfolio view.

```
/portfolio

📊 Portfolio Overview
Total Value: $15,234.56

Binance: $10,000
Hyperliquid: $5,234.56
```

## Troubleshooting

<AccordionGroup>
  <Accordion title="Invalid API key">
    * Double-check the key and secret
    * Ensure the API key is active (not expired)
    * Verify permissions include trading
    * Adding a credential runs a live balance check before saving it, so a rejected key fails with the **exchange's own error text** rather than a generic message — read it for the actual cause (bad key, wrong permissions, expired key, clock skew, and so on)
  </Accordion>

  <Accordion title="IP restriction error">
    * Add your server's IP to the exchange's allowed list
    * Or temporarily disable IP restriction for testing
  </Accordion>
</AccordionGroup>

## Next Step

<Card title="Using Web Dashboard" icon="arrow-right" href="/getting-started/web-dashboard">
  Access the browser-based interface for managing trading
</Card>


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.