API Reference

API REST de Somust Markets. Accès aux marchés scorés, briefs IA et alertes. Authentification par clé API (plan Pro).

Authentification

Toutes les routes /api/v1/* nécessitent une clé API Pro dans le header :

Authorization: Bearer smkt_xxxxxxxxxxxxxxxx

Ou en query string : ?apikey=smkt_xxx

Obtiens ta clé sur somustmarkets.com/pricing après activation du plan Pro.

Endpoints

GET/api/v1/marketsPro
Retourne les 50 marchés Polymarket les plus actifs, scorés et triés par volume 24h.

Paramètres

ParamTypeDescription
Aucun paramètre requis

Réponse

{
  "ok": true,
  "count": 50,
  "markets": [
    {
      "question": "Will Bitcoin exceed $100K before end of 2025?",
      "prob": 0.724,
      "prob_pct": 72,
      "volume_24h": 2847293,
      "signal": "hot",        // "hot" | "watch" | "rising" | "wait"
      "url": "https://polymarket.com/event/...",
      "source": "polymarket"
    }
  ]
}
GET/api/v1/briefPro
Génère un Morning Brief IA (Claude Haiku) basé sur les marchés les plus actifs du moment.

Réponse

{
  "ok": true,
  "date": "2026-06-29",
  "brief": "BTC consolide au-dessus de 95K avec un volume en hausse...",
  "generated_at": "2026-06-29T08:00:00.000Z"
}
GET/api/v1/alertsPro
Retourne les dernières alertes détectées (mouvements >5pts de probabilité).

Paramètres

ParamTypeDefaultDescription
limitinteger20Nombre d'alertes (max 100)

Réponse

{
  "ok": true,
  "count": 3,
  "alerts": [
    {
      "question": "Will the Fed cut rates in July 2025?",
      "old_pct": 28,
      "new_pct": 35,
      "delta_pts": 7.5,
      "type": "movement",
      "detected_at": "2026-06-29T07:05:00.000Z"
    }
  ]
}

Exemples

cURL

curl https://somustmarkets.com/api/v1/markets \
  -H "Authorization: Bearer smkt_votre_cle"

JavaScript

const res = await fetch('https://somustmarkets.com/api/v1/markets', {
  headers: { 'Authorization': 'Bearer smkt_votre_cle' }
});
const { markets } = await res.json();
console.log(markets[0].question, markets[0].prob_pct + '%');

Python

import requests
r = requests.get('https://somustmarkets.com/api/v1/alerts',
    headers={'Authorization': 'Bearer smkt_votre_cle'})
for alert in r.json()['alerts']:
    print(f"{alert['delta_pts']:+.1f}pts — {alert['question'][:60]}")

Limites

PlanRequêtes/minEndpoints
Pro60/api/v1/markets · /api/v1/brief · /api/v1/alerts

Erreurs

CodeSignification
401Clé API manquante ou invalide
403Plan insuffisant (Pro requis)
500Erreur serveur