Acheter
TradingAuthentification requiseAcheter un contrat. Le paramètre loginid a été supprimé et la validation du champ buy assouplie.
3 modifications incompatibles
loginid a été supprimé. Les utilisateurs multi-comptes doivent mettre à jour leurs demandes.Comparaison rapide
Modifications majeures
1. Paramètre loginid supprimé
Le paramètre loginid a été supprimé dans la nouvelle version. Ce paramètre était auparavant utilisé pour l'authentification multi-comptes.
Modification requise : Supprimez le champ loginid de vos requêtes d'achat. La sélection de compte est désormais gérée via le token d'autorisation.
2. Validation du champ buy assouplie
The buy field no longer enforces the strict pattern ^(:[\w-]{{32,128}}|1)$.
Modification requise : Si vous avez une validation côté client correspondant au modèle legacy, vous pouvez l'assouplir.
3. Objet buy désormais requis dans la réponse
L'objet buy est désormais un champ obligatoire dans la réponse.
Modification requise : Mettez à jour la gestion des erreurs pour vous attendre à ce que l'objet buy soit toujours présent dans les réponses réussies.
Structure de la demande
{
"buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfAB",
"price": 10.50,
"loginid": "CR123456"
}{
"buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfAB",
"price": 10.50
}Structure de réponse
{
"buy": {
"balance_after": 9989.50,
"buy_price": 10.50,
"contract_id": 123456789,
"longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
"payout": 20.00,
"purchase_time": 1234567890,
"shortcode": "CALL_R_100_20_1234567890_1234568190_S0P_0",
"start_time": 1234567890,
"transaction_id": 987654321
},
"echo_req": { "buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfAB", "price": 10.50 },
"msg_type": "buy"
}{
"buy": {
"balance_after": 9989.50,
"buy_price": 10.50,
"contract_id": 123456789,
"longcode": "Win payout if Volatility 100 Index is strictly higher than entry spot at 5 minutes after contract start time.",
"payout": 20.00,
"purchase_time": 1234567890,
"shortcode": "CALL_R_100_20_1234567890_1234568190_S0P_0",
"start_time": 1234567890,
"transaction_id": 987654321
},
"echo_req": { "buy": "uw2mk7no3oktoRVVsB4Dz7TQnFfAB", "price": 10.50 },
"msg_type": "buy"
}Exemples de code
async function buyContract(proposalId, price, loginid) {
const request = {
buy: proposalId,
price: price,
// loginid used for multi-account support
loginid: loginid
};
ws.send(JSON.stringify(request));
ws.onmessage = (event) => {
const response = JSON.parse(event.data);
if (response.msg_type === "buy") {
// buy object may be missing in some cases
if (response.buy) {
console.log("Contract ID:", response.buy.contract_id);
}
}
};
}D'autres questions ? Nous contacter