Documentation API

Lancez des analyses GPTChart.ai depuis votre propre code, vos bots et vos backtests.

Clé API

Une seule clé active par compte. Elle consomme vos crédits comme l’application, alors ne la placez ni dans du code côté client ni dans un dépôt public.

Connectez-vous pour créer une clé API

La documentation ci-dessous est ouverte à tous. Les clés sont liées à votre compte et à ses crédits.

Authentification

Envoyez votre clé comme jeton Bearer dans chaque requête. Les clés commencent par sk_live_.

En-tête
Authorization: Bearer sk_live_...

Points de terminaison

Tous les chemins sont relatifs à https://gptchart.ai. Chaque compte peut lancer 6 analyses par minute et 60 par heure, et consulter une session 30 fois par minute. Les listes de symboles autorisent 10 requêtes toutes les 5 minutes depuis une même adresse IP.

  • POSTAnalyser un graphique crypto
  • POSTAnalyser un graphique d’action
  • POSTAnalyser un graphique forex ou or
  • GETLister les symboles crypto
  • GETLister les symboles d’actions
  • GETLister les symboles forex
  • GETConsulter le dernier résultat d’une session et savoir si elle est toujours en cours

Une analyse coûte le même prix que dans l’application : le tarif dépend du modèle et du degré d’annotation du graphique par l’agent, et creditsUsed indique le coût de chaque analyse. Les listes de symboles et la consultation des sessions sont gratuites. Voir les offres et les crédits.

Modes

Chaque analyse utilise le même agent que dans l’application et est enregistrée dans une session que vous pouvez y rouvrir. mode détermine comment elle démarre.

Litemode: "lite"
Le mode par défaut. Vous choisissez la configuration — interval ou timeframes, les indicateurs, une stratégie enregistrée et des notes — et l’agent analyse exactement ces éléments, comme le ferait le formulaire Lite de l’application.
Promode: "pro"
Envoyez un message comme dans le chat, et l’agent choisit lui-même les unités de temps et les indicateurs. Un message conversationnel coûte 1 crédit et ne renvoie aucun niveau de prix.
SuivisessionId
Envoyez sessionId et message pour poursuivre une session, qu’elle ait commencé ici ou dans l’application. Le symbole, le graphique et les dessins proviennent de la session.

La requête renvoie une réponse lorsque l’analyse est terminée, ce qui peut prendre quelques minutes. Prévoyez donc un délai d’attente long pour votre client. S’il abandonne avant, l’analyse se termine quand même et est facturée. Vous la retrouverez dans la liste de vos sessions dans l’application.

Corps de la requête

Les trois endpoints d’analyse utilisent le même corps JSON ; les champs applicables dépendent du mode. expertMode et analyzeRelatedNews sont toujours acceptés, mais n’ont aucun effet.

modestring
lite (par défaut) ou pro. Non requis pour un suivi.
modelstring
Le modèle à utiliser : luna, terra (par défaut) ou sol. Le tarif de chacun est le même que dans l’application.
symbolstring · Obligatoire pour démarrer une session
Un symbole provenant de l’endpoint /symbols du marché, par exemple BTC-USD, AAPL ou EURUSD. À omettre pour un suivi.
intervalstring · Lite, sans timeframes ni strategyId
L’intervalle du graphique : 1m, 5m, 15m, 30m, 1H, 4H, 1D ou 1W. En mode Pro, il définit le graphique initial et prend par défaut la valeur 1H.
timeframesstring[]
Lite. Jusqu’à 3 unités de temps à analyser ensemble, à la place de interval.
selectedIndicatorsstring[]
Lite. Jusqu’à 3 ID d’indicateurs de la liste ci-dessous.
indicatorTimePeriodsobject
Lite. Périodes pour ema et sma, jusqu’à 2 pour chaque indicateur, par exemple ema: [20, 50].
customPromptstring
Lite. Vos propres instructions pour l’agent, jusqu’à 3 000 caractères.
strategyIdstring
Lite. Exécute l’une de vos stratégies enregistrées : elle renseigne ses unités de temps, indicateurs et instructions, et ceux que vous envoyez vous-même sont prioritaires.
messagestring · Pro et suivis
Pro et suivis. Le texte que vous saisiriez dans le chat, jusqu’à 10 000 caractères.
sessionIdstring
Poursuivre cette session. Envoyez ce champ avec message uniquement.
languagestring
La langue de l’analyse rédigée : English, Simplified Chinese, Japanese, Korean ou French. Vaut English par défaut.

Indicateurs

Utilisez ces identifiants dans selectedIndicators, jusqu’à 3 par requête.

  • Simple Moving AverageFiltre de tendance, souvent 20, 50 ou 200
  • Exponential Moving AverageRéagit plus vite à la tendance
  • Ichimoku CloudRégime de tendance et supports/résistances
  • Bollinger BandsBandes de volatilité et compressions
  • Average True RangeVolatilité, utile pour le SL/TP
  • SupertrendStop suiveur qui suit la tendance
  • Parabolic SARStop suiveur selon l’accélération du prix
  • Relative Strength IndexMomentum, 14 par défaut
  • MACDCroisements de momentum et de tendance
  • Know Sure ThingMomentum combinant plusieurs taux de variation
  • Stochastic OscillatorMomentum, surachat/survente
  • Average Directional IndexForce de la tendance, pas sa direction
  • %BPosition du prix dans les bandes de Bollinger
  • Money Flow IndexMomentum pondéré par le volume
  • Detrended Price OscillatorCycles sans la tendance de fond
  • VWAPJuste valeur pondérée par le volume
  • Relative VolumeVolume par rapport à sa moyenne
  • Accumulation/DistributionFlux de volume entrant et sortant

Réponse

Une analyse réussie renvoie le statut 200 avec ces champs. Les champs de prix sont définis sur null lorsque la réponse n’enregistre aucune analyse, par exemple pour un message conversationnel en mode Pro. La consultation d’une session renvoie les mêmes champs, ainsi que status.

biasstring | null
Buy, Sell ou Neutral. Seuls les signaux d’achat ou de vente francs renvoient Buy ou Sell.
biasDetailstring | null
Le signal complet de l’agent : Buy, Neutral Buy, No Trade, Neutral Sell ou Sell.
entrynumber | null
Prix d’entrée suggéré.
stopLossnumber | null
Stop loss suggéré.
takeProfitnumber | null
Take profit suggéré.
confirmationPricenumber | null
Le prix qui confirme le setup avant d’entrer.
reasoningstring | null
Une courte justification du trade.
analysisstring
La réponse complète de l’agent.
creditsUsednumber
Crédits utilisés par cette requête.
modestring | null
lite ou pro, ou null pour un suivi.
modelstring
Le modèle qui a répondu. Les réponses conversationnelles utilisent toujours luna.
sessionIdstring
La session dans laquelle cette analyse est enregistrée. Renvoyez cette valeur sous sessionId pour poursuivre la session.
chartUrlstring
Ouvre le graphique avec les dessins de l’agent pour le compte propriétaire de la clé.
timeframesstring[]
Les unités de temps du graphique après l’analyse.
indicatorsobject[]
Les indicateurs du graphique et leurs paramètres.
drawingsobject[]
Les annotations de l’agent sur le graphique : lignes, zones, figures et marqueurs.
statusstring
Consultation des sessions uniquement : running pendant que l’agent travaille, puis done ou failed.

Exemples

cURL
curl https://gptchart.ai/api/v2/crypto/analyze \
  -H "Authorization: Bearer sk_live_..." \
  -H "Content-Type: application/json" \
  -d '{ "symbol": "BTC-USD", "interval": "4H" }'
Corps Lite avec deux unités de temps
{
  "symbol": "BTC-USD",
  "timeframes": ["15m", "1H"],
  "selectedIndicators": ["bbands", "atr", "ema"],
  "indicatorTimePeriods": { "ema": [20, 50] },
  "customPrompt": "Look for liquidity sweeps around the previous high and low. Use ATR for SL/TP.",
  "model": "sol"
}
Corps Pro
{
  "mode": "pro",
  "symbol": "AAPL",
  "message": "Where is the next resistance, and is a breakout likely this week?"
}
Corps de suivi
{
  "sessionId": "3mQk8vZr2LxTn5WcHd1F",
  "message": "If price breaks 78,000, where would you trail the stop?"
}
Corps avec stratégie enregistrée
{
  "symbol": "AAPL",
  "strategyId": "c1mEhAha9qaVpHdAKQx0"
}
Réponse
{
  "bias": "Neutral",
  "biasDetail": "Neutral Buy",
  "entry": 77502.82,
  "stopLoss": 77002.44,
  "takeProfit": 78254.17,
  "confirmationPrice": 77502.82,
  "reasoning": "Early bullish structure shift on the 1H; a close above 77,500 confirms it.",
  "analysis": "Bias: **Neutral Buy** The 1H chart is turning up out of a decline...",
  "creditsUsed": 7,
  "mode": "lite",
  "model": "terra",
  "sessionId": "3mQk8vZr2LxTn5WcHd1F",
  "chartUrl": "https://gptchart.ai/btcusdt?session=3mQk8vZr2LxTn5WcHd1F",
  "timeframes": ["1H"],
  "indicators": [],
  "drawings": [
    { "id": "ai-stop", "type": "horizontal", "price": 77002.44, "label": "Stop", "author": "ai" }
  ]
}

Erreurs

Les erreurs renvoient un corps JSON contenant un message error.

  • 400Requête incorrecteLe corps ne respecte pas les règles de validation ou ne correspond pas au mode, par exemple si le symbole est inconnu ou si l’intervalle est mensuel.
  • 401Non autoriséLa clé est manquante, mal formée, expirée ou révoquée.
  • 402Crédits insuffisantsLe solde ne permet pas de couvrir l’analyse. Le message indique le nombre de crédits nécessaires.
  • 403InterditLe compte n’est plus sur une offre payante (SUBSCRIPTION_REQUIRED).
  • 404IntrouvableLe strategyId ou le sessionId ne vous appartient pas.
  • 405Méthode non autoriséeMauvaise méthode HTTP pour ce point de terminaison.
  • 409Session occupéeLa session répond encore à un message précédent. Réessayez une fois la réponse terminée.
  • 429Trop de requêtesPlus de 6 analyses par minute ou 60 par heure sur un même compte. Attendez, puis réessayez.
  • 500Erreur serveurUne erreur s’est produite de notre côté. Une analyse échouée n’est pas facturée, et le corps inclut sessionId si une session a été enregistrée.
Réponse 400
{
  "error": "Interval 1M (monthly) is not available. Use 1W or shorter."
}
GPTChart.ai

Une IA auto-apprenante, construite sur des données de marché réelles et une logique de trading structurée, qui évolue à chaque analyse pour fournir rapidement des insights clairs directement depuis vos graphiques.

Le trading comporte un risque de perte important. GPTChart.ai fournit des analyses générées par l’IA à titre informatif uniquement et ne constitue pas un conseil financier. L’IA peut se tromper ; faites toujours vos propres recherches.

© 2026 GPTChart.ai. Tous droits réservés.