SignalBee
Docs/Exchange Guides

Coinbase Exchange Setup

Connect your Coinbase account to SignalBee in minutes. This guide walks you through creating and configuring API keys with the exact permissions needed for automated trading.

Important: Coinbase uses a unique JWT/ES256 authentication system that differs from most exchanges. Don't worry—SignalBee handles the complexity automatically. You just need to copy your credentials correctly.


Prerequisites

Before you begin, make sure you have:

  • Verified Coinbase account - Identity verification (KYC) completed
  • 2FA enabled on Coinbase - Required for API key creation
  • Coinbase Advanced Trade access - Formerly known as Coinbase Pro
  • SignalBee account - Ready to connect an exchange
  • Password manager - For storing your API credentials securely (especially the PEM key)

Security Note: Coinbase requires 2FA (two-factor authentication) to create API keys. We recommend using an authenticator app rather than SMS for better security.


About Coinbase

Coinbase is a US-based, publicly-traded (NASDAQ: COIN) cryptocurrency exchange known for its regulatory compliance and trusted reputation. Key highlights:

  • US-regulated - One of the most compliant exchanges operating in the United States
  • Advanced Trade - Professional trading platform (formerly Coinbase Pro) with competitive features
  • USD trading - Primarily trades against real US dollars (not USDT stablecoins)
  • Strong security - Industry-leading security practices and insurance coverage
  • Higher fees - Trading fees are higher than many exchanges (0.4%/0.6% base maker/taker)

Understanding Coinbase Authentication

Coinbase uses a completely different authentication system than most cryptocurrency exchanges. This section explains what makes it unique.

How Coinbase Differs

FeatureStandard ExchangeCoinbase
CredentialsAPI Key + Secret StringAPI Key + EC Private Key (PEM)
Signature MethodHMAC-SHA256JWT with ES256 (ECDSA)
Secret FormatSimple text stringMulti-line PEM format
Token GenerationN/AJWT tokens (SignalBee handles this)

What This Means for You

  1. Your private key looks different - Instead of a simple string like abc123def456..., you get a multi-line key that looks like:
-----BEGIN EC PRIVATE KEY-----
MHQCAQEEICJxApEhZXP... (several lines of characters)
...Yd8F0YQ==
-----END EC PRIVATE KEY-----
  1. You must copy the ENTIRE key - Including the -----BEGIN EC PRIVATE KEY----- and -----END EC PRIVATE KEY----- lines

  2. SignalBee handles the complexity - Once you provide your credentials, SignalBee automatically generates the required JWT tokens for each API request

Note: The private key format may show as -----BEGIN EC PRIVATE KEY----- or -----BEGIN PRIVATE KEY----- depending on how Coinbase generates it. Both formats work with SignalBee.


Creating Your API Key

Follow these steps to create an API key on Coinbase:

Step 1: Log In to Coinbase

  1. Go to www.coinbase.com
  2. Log in with your email and password
  3. Complete 2FA verification if prompted

Step 2: Navigate to API Settings

  1. Click your profile icon in the top-right corner
  2. Select Settings from the dropdown menu
  3. Click API in the left sidebar or navigation tabs
  4. You'll see a list of your existing API keys (if any)

Step 3: Create a New API Key

  1. Click the New API Key or Create API Key button
  2. You'll be presented with the API configuration screen

Coinbase allows you to scope API keys to specific portfolios. We recommend creating a dedicated portfolio for SignalBee:

  1. In the portfolio selection, click Create new portfolio or select an existing one
  2. Name it something like SignalBee Trading
  3. This isolates your trading funds from your main holdings

Why use a separate portfolio? If your API credentials are ever compromised, only the funds in that specific portfolio are at risk—not your entire Coinbase balance.

Step 5: Configure Permissions

  1. Check the permission boxes as described in the Configuring Permissions section below
  2. Enable View and Trade permissions
  3. Never enable permissions beyond what's needed

Step 6: Complete Security Verification

  1. Enter your 2FA code from your authenticator app
  2. Click Create or Confirm to generate your credentials
  3. Wait for the system to generate your API key and private key

Step 7: Copy Your Credentials IMMEDIATELY

After creation, your credentials will be displayed:

  • API Key Name - Can be viewed later in your API settings
  • Private Key - ⚠️ Shown only ONCE - Copy it immediately!
CredentialCan View Later?Action Required
API Key Name✅ YesCopy and save
Private Key (PEM)NO - Never shown againCopy immediately!

Critical: The private key is displayed only once. If you navigate away without copying it, you'll need to delete this API key and create a new one. There is no way to recover a private key.

When copying the private key:

  1. Copy the ENTIRE key including the header and footer lines
  2. Make sure you capture all lines (the key spans multiple lines)
  3. Paste it into your password manager immediately
  4. Verify the paste includes both -----BEGIN and -----END lines

Save both credentials in your password manager now before proceeding.


Configuring Permissions

Coinbase has a straightforward permission system. This configuration is critical for security.

Required Permissions

PermissionEnable?Why
View✅ YesAllows SignalBee to check your balances and account info
Trade✅ YesAllows SignalBee to place and manage orders

Optional Permissions

PermissionEnable?Why
Transfer⚠️ Only if neededOnly enable if you need to move funds between portfolios via API

Never Enable Beyond What's Needed

Coinbase permissions are portfolio-scoped, meaning they only apply to the selected portfolio. However, you should still follow the principle of least privilege:

  • Don't enable Transfer unless you have a specific need
  • Don't enable Withdraw or any fund removal capability
  • Review permissions periodically and remove any you don't use

Security Note: With only View and Trade permissions enabled, even if your API key is compromised, attackers cannot withdraw your funds or transfer them out of Coinbase.


Coinbase's portfolio system provides an additional layer of security and organization.

What Are Portfolios?

Portfolios are separate accounts within your Coinbase account. Each portfolio has its own:

  • Balance for each cryptocurrency
  • Trade history
  • API key access (keys can be scoped to specific portfolios)

Benefits of a Dedicated SignalBee Portfolio

BenefitDescription
IsolationTrading funds are separate from long-term holdings
Limited exposureIf credentials are compromised, only that portfolio's funds are at risk
Clear accountingEasy to track SignalBee-specific trades and performance
Controlled fundingOnly deposit what you intend to trade

How to Create a SignalBee Portfolio

  1. Log in to Coinbase
  2. Navigate to Advanced Trade or Trade
  3. Look for portfolio selection (usually top of the page)
  4. Click Create Portfolio or the + button
  5. Name it SignalBee or SignalBee Trading
  6. Transfer funds from your default portfolio as needed

Funding Your SignalBee Portfolio

  1. Go to your default portfolio
  2. Click Transfer or Move funds
  3. Select the SignalBee portfolio as the destination
  4. Transfer only the amount you intend to trade

Tip: Start with a smaller amount while testing your SignalBee integration. You can always add more later.


Adding to SignalBee

Now connect your Coinbase API key to SignalBee:

Step 1: Go to Exchanges Page

  1. Log in to your SignalBee account
  2. Navigate to Exchanges in the main menu

Step 2: Add New Exchange

  1. Click the Add Exchange button
  2. Select Coinbase from the exchange list

Step 3: Enter Your Credentials

Coinbase uses a two-value API system (no passphrase required):

  1. API Key - Paste your Coinbase API key name
  2. Private Key - Paste your full PEM-formatted private key
  3. Label (optional) - Enter a name like "Coinbase Main" or "Coinbase SignalBee"

Important: Include the entire private key with the -----BEGIN EC PRIVATE KEY----- and -----END EC PRIVATE KEY----- lines. The field may appear to only show a few lines, but all content is captured.

Step 4: Test the Connection

  1. Click Save and Test Connection
  2. Wait for SignalBee to verify your credentials
  3. Look for the ✅ success message

Step 5: Verify Your Setup

After successful connection:

  1. Your Coinbase balances should appear in SignalBee
  2. Check that your expected assets are listed
  3. Balances confirm the View permission is working

Tip: If balances don't appear, verify that View permission is enabled and you've selected the correct portfolio for your API key.


Coinbase-Specific Considerations

Ticker Format and USD Trading

Coinbase primarily trades against real US dollars (USD), not USDT stablecoins like most other exchanges:

SignalBee FormatCoinbase FormatNotes
BTC-USDTBTC-USDAutomatic conversion
ETH-USDTETH-USDAutomatic conversion
SOL-USDTSOL-USDAutomatic conversion

Key points:

  • SignalBee automatically converts USDT pairs to USD pairs when sending orders to Coinbase
  • Your webhook signals can use standard USDT pairs (e.g., BTC-USDT)
  • You need USD balance in your Coinbase account, not USDT
  • Some USDT pairs exist on Coinbase, but USD pairs have better liquidity

Important: If you're used to trading with USDT on other exchanges, remember that Coinbase uses real dollars. Make sure you have USD deposited, not USDT.

Supported Order Types

Coinbase supports the following order types:

Order TypeSupportedNotes
Market Order✅ YesExecutes immediately at best available price
Limit Order✅ YesExecutes at specified price or better
Stop-Loss✅ YesTriggers market sell when price drops to stop price
Stop-Loss Limit✅ YesTriggers limit order when price reaches stop
Take-Profit✅ YesTriggers when price rises to target
Take-Profit Limit✅ YesTriggers limit order at take-profit price
Trailing Stop❌ NoNot available on Coinbase spot

Minimum Order Sizes

Coinbase enforces minimum order values. Orders below these minimums will be rejected:

RequirementTypical ValueNotes
Minimum order value~$1 USDVaries slightly by pair
Minimum quantityVaries by assetCheck Coinbase for specifics

Tip: Check Coinbase's trading rules for current minimum order sizes for specific trading pairs.

Trading Fees

Coinbase fees are higher than many exchanges but include strong regulatory compliance:

Fee TypeRate RangeNotes
Maker0.4% - 0.0%Volume-based discounts
Taker0.6% - 0.05%Volume-based discounts

Fee tiers decrease with higher 30-day trading volume. Check Coinbase's fee schedule for current rates.

API Rate Limits

  • Private endpoints: 5-10 requests per second
  • Public endpoints: Higher limits
  • SignalBee handles rate limiting automatically
  • If you see rate limit errors, reduce your signal frequency

Testing Considerations

Coinbase has a sandbox environment, but it has limited functionality:

Testing ApproachRecommendation
SandboxAvailable but limited—not all features work
Production testingStart with very small order sizes ($10-20)
Signal verificationTest webhook delivery before enabling live trading

Tip: Due to sandbox limitations, we recommend starting with small real orders on production to verify your SignalBee integration works correctly.


Troubleshooting

Common Coinbase-specific errors and solutions:

ErrorCodeLikely CauseSolution
Invalid API KeyINVALID_API_KEYWrong key or revokedRe-copy API key. Verify key exists in API settings.
Authentication ErrorAUTHENTICATION_ERRORInvalid credentialsCheck both API key and private key are correct.
Permission DeniedPERMISSION_DENIEDMissing required permissionEnable View and Trade permissions.
Invalid Private Key(parse error)Malformed PEM keyEnsure full PEM format including BEGIN/END lines.
Insufficient FundsINSUFFICIENT_FUNDSNot enough balanceDeposit USD (not USDT) to correct portfolio.
Invalid ProductINVALID_PRODUCT_IDWrong trading pairUse USD pairs (BTC-USD not BTC-USDT).
Order Not FoundORDER_NOT_FOUNDInvalid order IDOrder may have been filled or cancelled.
Order Size Too SmallORDER_SIZE_TOO_SMALLBelow minimumIncrease order size above minimum.
Quantity Too SmallQUANTITY_TOO_SMALLAmount below minimumIncrease order quantity.
Quantity Too LargeQUANTITY_TOO_LARGEAmount above maximumDecrease order quantity.
Price Too LowPRICE_TOO_LOWLimit price too lowIncrease limit price.
Price Too HighPRICE_TOO_HIGHLimit price too highDecrease limit price.
Rate Limit ExceededRATE_LIMIT_EXCEEDEDToo many API requestsWait and retry. Reduce request frequency.
Service UnavailableSERVICE_UNAVAILABLEServer issueWait and retry. Check Coinbase status.

Connection Test Fails?

If your connection test fails in SignalBee:

  1. Double-check both credentials - Copy-paste errors are the most common issue
  2. Verify the entire private key - Must include -----BEGIN and -----END lines
  3. Check line breaks - Private key should have proper line breaks, not be on one line
  4. Verify permissions - Ensure View and Trade permissions are enabled
  5. Check portfolio selection - API key must have access to a funded portfolio
  6. Wait a few minutes - New API keys may take 1-2 minutes to propagate
  7. Check Coinbase status - Verify Coinbase is not under maintenance

Private Key Format Issues

The most common issue is an incorrectly copied private key. Your private key should:

-----BEGIN EC PRIVATE KEY-----
MHQCAQEEICJxApEhZXPPKdL... (multiple lines of base64 characters)
...lines continue...
...final line...Yd8F0YQ==
-----END EC PRIVATE KEY-----

Common mistakes:

  • Missing the -----BEGIN EC PRIVATE KEY----- line
  • Missing the -----END EC PRIVATE KEY----- line
  • All content on a single line (should be multiple lines)
  • Extra whitespace at the beginning or end
  • Truncated content (key is incomplete)

For persistent issues, see our Error Codes Reference or contact support@signalbee.trade.


Security Best Practices

Follow this checklist to keep your Coinbase account secure:

Coinbase Account Security

  • Enable 2FA with Google Authenticator or similar app - more secure than SMS
  • Use a unique, strong password for Coinbase (not reused from other sites)
  • Enable email notifications for account activity
  • Review login history regularly for unauthorized access
  • Consider using Coinbase Vault for long-term holdings

API Key Security

  • Create a dedicated API key just for SignalBee - don't reuse keys across services
  • Never enable withdrawal permission - SignalBee never needs it
  • Use a dedicated portfolio to isolate trading funds
  • Never share your private key via email, chat, or screenshots
  • Store credentials in a password manager (1Password, Bitwarden, etc.)
  • Copy the entire PEM key including header and footer lines

Portfolio Isolation

  • Create a SignalBee-specific portfolio for trading
  • Only fund the portfolio with your intended trading amount
  • Keep long-term holdings in a separate portfolio or Coinbase Vault
  • Regularly review portfolio balances and activity

Ongoing Security

  • Review your API keys periodically - delete any you don't recognize
  • Rotate API keys every 90 days as a security habit
  • Monitor trade history for any unauthorized activity
  • Check Coinbase security notifications for any alerts

Security Note: Even with all these precautions, the most important protections are: (1) never enabling withdrawal permission, and (2) using a dedicated portfolio with limited funds. These two measures ensure that even in a worst-case scenario, your exposure is limited.