guide
📖 10 min de lecture 15 janv. 2026

Coinbase API - Créer ton Bot de Trading Crypto 2026

Découvre comment utiliser l'API Coinbase pour automatiser tes trades, récupérer des données et créer ton propre bot crypto. Tutoriel pas à pas.

Thomas Music
Thomas MusicExpert Fintech
10 min de lecture

🎁 Offre de parrainage

10$ en BTC offerts

Acheter ou vendre pour 100$ de crypto minimum

Obtenir le bonus →
Coinbase API - Créer ton Bot de Trading Crypto 2026

Tu veux automatiser tes trades sur Coinbase ? Créer un bot qui achète le dip pendant que tu dors ? Ou simplement récupérer des données de marché pour ton projet ? L’API Coinbase est ta porte d’entrée vers le trading algorithmique.

En bref : L’API Coinbase te permet d’interagir programmatiquement avec la plateforme. Tu peux passer des ordres, consulter tes soldes, récupérer l’historique des prix et bien plus. Gratuite, bien documentée et compatible avec tous les langages de programmation.

Spoiler : ce n’est pas réservé aux développeurs seniors. Avec les bons outils et ce guide, tu peux lancer ta première requête API en moins de 10 minutes.

👉 Crée ton compte Coinbase et récupère 10$ en BTC offerts pour commencer à expérimenter avec l’API.

Qu’est-ce que l’API Coinbase et pourquoi l’utiliser ?

L’API (Application Programming Interface) de Coinbase, c’est un ensemble de “portes d’entrée” qui te permettent de communiquer avec les serveurs de la plateforme via du code. Au lieu de cliquer sur des boutons dans l’interface web, tu envoies des requêtes HTTP.

Les cas d’usage concrets

Pourquoi s’embêter avec du code quand l’app mobile existe ? Bonne question.

  • Trading automatisé : ton bot achète quand le RSI passe sous 30, vend quand il dépasse 70
  • Alertes personnalisées : notification Telegram dès que Bitcoin touche un certain prix
  • Portfolio tracking : agrège tes positions Coinbase avec d’autres exchanges
  • Arbitrage : détecte les écarts de prix entre plateformes
  • DCA automatique : investis 50€ chaque lundi à 9h sans y penser

J’utilise personnellement l’API Coinbase depuis 2 ans pour un petit bot de DCA. Résultat : je n’ai plus à me soucier du timing, le code s’en charge.

Les différentes APIs disponibles

Coinbase propose plusieurs APIs selon tes besoins :

APIUsageAuthentification
REST APIOrdres, comptes, historiqueOui (clé API)
WebSocketDonnées temps réel (prix, orderbook)Non pour les données publiques
FIX APITrading haute fréquence institutionnelOui
Data APIDonnées onchain (balances, transactions)Non

Pour 90% des projets perso, la REST API + WebSocket suffisent largement.

💡 Astuce pro : La FIX API offre une latence plus faible mais nécessite une infrastructure spécifique. Reste sur REST/WebSocket sauf si tu trades des millions.

Comment créer et configurer tes clés API Coinbase

Avant de coder quoi que ce soit, tu as besoin de tes credentials. Voici la marche à suivre.

Étape 1 : accéder au portail développeur

Rends-toi sur le Coinbase Developer Platform. Tu devras te connecter avec ton compte Coinbase classique.

Pas encore de compte ? Inscris-toi via ce lien pour obtenir ton bonus de bienvenue de 10$ en BTC.

Étape 2 : créer un nouveau projet API

Une fois connecté :

  1. Clique sur “Create new API key”
  2. Donne un nom explicite (ex: “Bot-DCA-BTC”)
  3. Sélectionne les permissions nécessaires

Étape 3 : choisir les bonnes permissions

C’est ici que beaucoup font une erreur. Ne donne jamais plus de droits que nécessaire.

  • View : lecture seule (prix, soldes)
  • Trade : passer des ordres
  • Transfer : envoyer des cryptos (⚠️ dangereux)

Pour un bot de trading basique, “View” + “Trade” suffisent. Évite “Transfer” sauf besoin absolu.

Étape 4 : sécuriser tes clés

Tu vas recevoir trois éléments :

  • API Key : ton identifiant
  • API Secret : ton mot de passe (ne le partage JAMAIS)
  • Passphrase : couche de sécurité supplémentaire

⚠️ Attention : Ces informations ne s’affichent qu’une seule fois. Copie-les immédiatement dans un gestionnaire de mots de passe comme Bitwarden ou 1Password.

Stocke-les dans des variables d’environnement, jamais en dur dans ton code :

export COINBASE_API_KEY="ta-clé"
export COINBASE_API_SECRET="ton-secret"
export COINBASE_PASSPHRASE="ta-passphrase"

Ta première requête API en Python

Passons aux choses sérieuses. On va récupérer le prix actuel du Bitcoin.

Installation des dépendances

pip install requests python-dotenv

Code pour récupérer le prix BTC

import requests

# Endpoint public (pas besoin d'auth)
url = "https://api.coinbase.com/v2/prices/BTC-EUR/spot"

response = requests.get(url)
data = response.json()

prix_btc = data["data"]["amount"]
print(f"Prix actuel du Bitcoin : {prix_btc} EUR")

Exécute ce script. En 3 lignes, tu as interrogé l’API Coinbase. Pas mal, non ?

Requête authentifiée : consulter ton solde

Pour accéder à tes données privées, il faut signer tes requêtes. C’est un peu plus complexe.

import hmac
import hashlib
import time
import requests
import os

api_key = os.environ.get("COINBASE_API_KEY")
api_secret = os.environ.get("COINBASE_API_SECRET")

timestamp = str(int(time.time()))
method = "GET"
request_path = "/v2/accounts"

message = timestamp + method + request_path
signature = hmac.new(
    api_secret.encode(),
    message.encode(),
    hashlib.sha256
).hexdigest()

headers = {
    "CB-ACCESS-KEY": api_key,
    "CB-ACCESS-SIGN": signature,
    "CB-ACCESS-TIMESTAMP": timestamp,
    "CB-VERSION": "2024-01-01"
}

response = requests.get(
    f"https://api.coinbase.com{request_path}",
    headers=headers
)

print(response.json())

Ce code affiche tous tes wallets Coinbase avec leurs soldes.

💡 Astuce pro : Utilise la librairie coinbase-advanced-py (SDK officiel) pour éviter de gérer l’authentification manuellement.

Créer un bot de trading simple avec l’API Coinbase

Tu veux passer à l’action ? Voici un mini-bot de DCA (Dollar Cost Averaging) qui achète automatiquement du Bitcoin chaque semaine.

Architecture du bot

Le bot va :

  1. Vérifier ton solde EUR disponible
  2. Passer un ordre d’achat de 50€ de BTC
  3. Logger l’opération
  4. S’exécuter via un cron job chaque lundi

Le code complet

import hmac
import hashlib
import time
import requests
import os
import json
from datetime import datetime

class CoinbaseDCABot:
    def __init__(self):
        self.api_key = os.environ.get("COINBASE_API_KEY")
        self.api_secret = os.environ.get("COINBASE_API_SECRET")
        self.base_url = "https://api.coinbase.com"
    
    def _sign_request(self, method, path, body=""):
        timestamp = str(int(time.time()))
        message = timestamp + method + path + body
        signature = hmac.new(
            self.api_secret.encode(),
            message.encode(),
            hashlib.sha256
        ).hexdigest()
        
        return {
            "CB-ACCESS-KEY": self.api_key,
            "CB-ACCESS-SIGN": signature,
            "CB-ACCESS-TIMESTAMP": timestamp,
            "CB-VERSION": "2024-01-01",
            "Content-Type": "application/json"
        }
    
    def get_eur_balance(self):
        path = "/v2/accounts/EUR"
        headers = self._sign_request("GET", path)
        response = requests.get(f"{self.base_url}{path}", headers=headers)
        return float(response.json()["data"]["balance"]["amount"])
    
    def buy_btc(self, amount_eur):
        path = "/v2/accounts/BTC/buys"
        body = json.dumps({
            "amount": str(amount_eur),
            "currency": "EUR"
        })
        headers = self._sign_request("POST", path, body)
        response = requests.post(
            f"{self.base_url}{path}",
            headers=headers,
            data=body
        )
        return response.json()

    def run_dca(self, amount=50):
        balance = self.get_eur_balance()
        
        if balance < amount:
            print(f"Solde insuffisant : {balance}€")
            return
        
        result = self.buy_btc(amount)
        print(f"[{datetime.now()}] Achat de {amount}€ de BTC effectué")
        print(result)

if __name__ == "__main__":
    bot = CoinbaseDCABot()
    bot.run_dca(50)

Automatiser avec cron

Sur Linux/Mac, ajoute cette ligne à ton crontab (crontab -e) :

0 9 * * 1 /usr/bin/python3 /chemin/vers/ton/bot.py

Ton bot achètera 50€ de BTC chaque lundi à 9h. Simple et efficace.

Tu préfères une solution clé en main sans coder ? Binance propose aussi des fonctionnalités de DCA automatique directement dans l’app.

Utiliser le WebSocket pour les données temps réel

L’API REST, c’est bien pour les actions ponctuelles. Mais si tu veux suivre les prix en temps réel, le WebSocket est indispensable.

Pourquoi le WebSocket ?

Avec REST, tu dois interroger l’API régulièrement (polling). Problèmes :

  • Latence : tu rates les mouvements rapides
  • Limite de requêtes : tu te fais bloquer si tu spammes
  • Inefficace : 90% de tes requêtes retournent les mêmes données

Avec WebSocket, le serveur t’envoie les mises à jour instantanément. Zéro gaspillage.

Code WebSocket basique

import websocket
import json

def on_message(ws, message):
    data = json.loads(message)
    if data["type"] == "ticker":
        prix = data["price"]
        print(f"BTC-EUR : {prix}")

def on_open(ws):
    subscribe_message = {
        "type": "subscribe",
        "product_ids": ["BTC-EUR"],
        "channels": ["ticker"]
    }
    ws.send(json.dumps(subscribe_message))

ws = websocket.WebSocketApp(
    "wss://ws-feed.exchange.coinbase.com",
    on_message=on_message,
    on_open=on_open
)

ws.run_forever()

Ce script affiche le prix du BTC en temps réel, mis à jour à chaque trade sur la plateforme.

Les channels disponibles

ChannelDonnées
tickerDernier prix, volume 24h
level2Orderbook (bid/ask)
matchesChaque trade exécuté
fullOrderbook complet + tous les ordres

💡 Astuce pro : Le channel “level2” est parfait pour détecter les murs d’achat/vente et ajuster ta stratégie.

L’environnement Sandbox pour tester sans risque

Avant de lâcher ton bot sur tes vrais fonds, teste-le en Sandbox.

Qu’est-ce que le Sandbox ?

C’est une copie de l’environnement de production avec :

  • De faux fonds (BTC, ETH, EUR fictifs)
  • Les mêmes endpoints API
  • Un orderbook simulé

Configurer le Sandbox

  1. Crée un compte sur public.sandbox.exchange.coinbase.com
  2. Génère des clés API dédiées au Sandbox
  3. Change l’URL de base dans ton code :
# Production
base_url = "https://api.exchange.coinbase.com"

# Sandbox
base_url = "https://api-public.sandbox.exchange.coinbase.com"

Teste ton bot pendant quelques jours en Sandbox. Vérifie qu’il gère bien les erreurs, les timeouts et les cas limites.

⚠️ Attention : Le Sandbox n’a pas la même liquidité que la production. Les ordres se remplissent différemment. C’est pour tester la logique, pas les performances exactes.

Erreurs courantes et comment les éviter

Après avoir aidé plusieurs développeurs sur Discord, voici les problèmes les plus fréquents.

Erreur 401 : Invalid signature

Ta signature HMAC est incorrecte. Vérifie :

  • L’ordre des éléments dans le message (timestamp + method + path + body)
  • Que le body est vide pour les requêtes GET
  • Que ton horloge système est synchronisée (NTP)

Erreur 429 : Rate limit exceeded

Tu envoies trop de requêtes. Solutions :

  • Ajoute des délais entre tes appels (time.sleep(0.1))
  • Cache les données qui ne changent pas souvent
  • Passe au WebSocket pour les données temps réel

Erreur 400 : Invalid product

Le format du produit est incorrect. Utilise :

  • BTC-EUR (pas BTCEUR ni BTC/EUR)
  • Vérifie que la paire existe sur Coinbase

Ordres non exécutés

Ton ordre limit est trop loin du prix actuel. Options :

  • Utilise un ordre market pour une exécution immédiate
  • Rapproche ton prix limite du marché
  • Vérifie que tu as assez de solde (frais inclus)

Alternatives et compléments à l’API Coinbase

L’API Coinbase ne fait pas tout. Voici des outils complémentaires.

CCXT : la librairie multi-exchanges

CCXT unifie les APIs de 100+ exchanges. Un seul code pour trader sur Coinbase, Binance, Kraken, etc.

import ccxt

exchange = ccxt.coinbase({
    'apiKey': 'ta-clé',
    'secret': 'ton-secret'
})

ticker = exchange.fetch_ticker('BTC/EUR')
print(ticker['last'])

Idéal si tu veux diversifier tes plateformes sans réécrire ton code.

TradingView + Webhooks

Configure des alertes TradingView qui déclenchent ton bot via webhook. Tu combines l’analyse technique visuelle avec l’exécution automatique.

Comparer avec Binance API

Si tu hésites entre Coinbase et Binance pour ton projet :

CritèreCoinbase APIBinance API
DocumentationExcellenteTrès bonne
LatenceMoyenneFaible
Paires disponibles~200~1500
Limites de requêtes10/s20/s
SandboxOuiOui (Testnet)
Frais0.5% maker/taker0.1% maker/taker

Pour le marché français et la simplicité, Coinbase reste un excellent choix. Pour plus de paires et des frais réduits, découvre l’offre Binance.

Notre verdict sur l’API Coinbase

Notre verdict : L’API Coinbase est parfaite pour débuter dans le trading automatisé. Documentation claire, environnement de test gratuit et communauté active. Les développeurs intermédiaires y trouveront tout ce qu’il faut pour créer des bots robustes.

Les points forts

  • Documentation parmi les meilleures du secteur
  • SDK officiels en plusieurs langages
  • Sandbox gratuit pour tester
  • Support Discord réactif
  • Sécurité solide (PSAN en France)

Les limites

  • Frais de trading plus élevés que certains concurrents
  • Moins de paires que Binance ou Kraken
  • WebSocket parfois instable en période de forte volatilité

Pour qui ?

L’API Coinbase convient si tu :

  • Débutes en trading algorithmique
  • Veux une plateforme régulée en France
  • Privilégies la simplicité à la performance brute
  • Trades sur les cryptos majeures (BTC, ETH, etc.)

Pour du trading haute fréquence ou des altcoins exotiques, regarde plutôt du côté de Binance.


Tu es prêt à te lancer ? Crée ton compte Coinbase maintenant et récupère tes 10$ en BTC offerts après 100$ de transactions. C’est le moment parfait pour commencer à expérimenter avec l’API.

Besoin d’autres offres de parrainage dans la finance ? Découvre notre sélection complète avec Binance, Fortuneo, Lydia et bien d’autres.

À lire aussi

Tags :

#coinbase #api #trading automatisé #bot crypto #développement #python

✍️ À propos de l'auteur

Thomas Music

Thomas Music

Expert Fintech

Ex-conseiller bancaire, certifié AMF

Passionné de finance personnelle depuis plus de 8 ans, Thomas teste et compare les banques en ligne et services financiers pour vous aider à faire les meilleurs choix. Il a personnellement utilisé plus de 15 offres de parrainage.

Profite de l'offre de parrainage

10$ en BTC t'attendent. Inscris-toi maintenant !

Obtenir mon bonus

Partager cet article :

🎁 10$ en BTC offerts