WebSockets
Émet un mot de passe à usage unique (OTP) de courte durée qui authentifie une connexion WebSocket ultérieure pour le compte spécifié. La réponse inclut l'OTP et une URL WebSocket prête à l'emploi avec l'OTP joint en tant que paramètre de requête. L'OTP est valide pendant 120 secondes et ne peut être utilisé qu'une seule fois, alors ouvrez la connexion WebSocket rapidement après avoir appelé ce point de terminaison.
Point de terminaison
/trading/v1/options/accounts/{accountId}/otpURL de base : https://api.derivws.com
Codes de statut
Réponses d'erreur
{
"errors": [
{
"status": 400,
"code": "ValidationError",
"message": "Invalid account ID format"
}
],
"meta": {
"endpoint": "/accounts/INVALID/otp",
"method": "POST",
"timing": 12
}
}{
"errors": [
{
"status": 401,
"code": "Unauthorized",
"message": "Invalid or missing authentication credentials"
}
],
"meta": {
"endpoint": "/accounts/DOT90004580/otp",
"method": "POST",
"timing": 45
}
}{
"errors": [
{
"status": 500,
"code": "InternalServerError",
"message": "Failed to generate OTP"
}
],
"meta": {
"endpoint": "/accounts/DOT90004580/otp",
"method": "POST",
"timing": 234
}
}Authentification requise
Deriv-App-ID pour identifier votre application. Champ OAuth2 : tradeÀ propos de WebSockets
Le point de terminaison POST /trading/v1/options/accounts/{accountId}/otp : Émet un mot de passe à usage unique (OTP) de courte durée qui authentifie une connexion WebSocket ultérieure pour le compte spécifié. La réponse inclut l'OTP et une URL WebSocket prête à l'emploi avec l'OTP joint en tant que paramètre de requête. L'OTP est valide pendant 120 secondes et ne peut être utilisé qu'une seule fois, alors ouvrez la connexion WebSocket rapidement après avoir appelé ce point de terminaison.
Étape 1 : Obtenir votre URL WebSocket
Appelez le point de terminaison OTP avec votre token Bearer. La réponse contient une URL WebSocket prête à l'emploi qui inclut déjà le mot de passe à usage unique comme paramètre de requête.
// Request OTP — returns a WebSocket URL
const response = await fetch(
'https://api.derivws.com/trading/v1/options/accounts/DOT90004580/otp',
{
method: 'POST',
headers: {
'Deriv-App-ID': 'YOUR_APP_ID',
'Authorization': 'Bearer YOUR_AUTH_TOKEN',
},
}
);
const { data } = await response.json();
// data.url === "wss://api.derivws.com/trading/v1/options/ws/demo?otp=abc123xyz789"Étape 2 : Se connecter au WebSocket
Utilisez l'URL renvoyée à l'étape précédente directement comme point de terminaison WebSocket. Aucun en-tête d'authentification supplémentaire n'est nécessaire — l'OTP dans l'URL gère l'authentification.
// Connect using the URL from the OTP response
const ws = new WebSocket(data.url);
ws.onopen = () => {
console.log('Connected to Options trading WebSocket');
};
ws.onmessage = (event) => {
const message = JSON.parse(event.data);
console.log('Received:', message);
};
ws.onerror = (error) => {
console.error('WebSocket error:', error);
};Durée de vie OTP
Les tokens OTP sont de courte durée et doivent être utilisés immédiatement après la génération. Si le token expire avant que vous ne vous connectiez, demandez-en un nouveau en appelant à nouveau le point de terminaison OTP.
WebSocket public (pas d'authentification)
Pour les données de marché publiques en lecture seule, vous pouvez vous connecter directement à wss://api.derivws.com/trading/v1/options/ws/public sans authentification ni OTP.
D'autres questions ? Nous contacter