API d'Information


There is currently no API available.



L'API supporte les formats suivants:
Nous fournissons actuellement des appels API pour obtenir des informations de la place de marché
Fonction APIParamètresDescription
get_lowest_askbase
alt
Renvoie le prix le plus bas pour la demande. Précisez la monnaie de base et la monnaie alternative.
get_highest_bidbase
alt
Renvoie le prix le plus haut pour l'offre. Précisez la monnaie de base et la monnaie alternative.
get_last_tradebase
alt
Renvoie le dernier cours pour le dernier échange d'une paire. Précisez la monnaie de base et la monnaie alternative.
get_volumebase
alt
Renvoie le volume échangé sur les 24 dernières heures pour une paire. Précisez la monnaie de base et la monnaie alternative.
get_info_for_currency - none - Renvoie un résumé des informations de toutes les monnaies supportées
get_info_for_1_currencybase
alt
Renvoie un résumé des informaitons pour une paire donnée
orderbookbase
alt
Renvoie le carnet d'ordres complet pour une paire donnée. Note : plusieurs éléments peuvent apparaitre pour le même prix.
orderbook_altalt Renvoie le carnet d'ordres complet d'une paire pour une alternative donnée. C'est plus efficace que d'appeler l'api orderbook pour chaque combinaison
tradesbase
alt
since
Renvoie tous les échanges exécutés sur les 7 derniers jours. Si le paramètre "since" (depuis) est fourni, alors seulement les échanges avec un ID plus grand que "since" seront renvoyés
get_currency_info Renvoie les informations à propos de commissions de retrait, le nombre de confirmation pour dépots et le maximum de retrait par jour.
Vous devrez ajouter respectivmeent .XML or JSON pour définir le format que vous souhaitez qui vous soit renvoyé.

Les valeurs de données valides sont:
Fréquence des appels de API ci dessus: Les APIs renvoient des données à chaud. Nous nous réservons le droit de bloquer les IPs qui interrogent en continu les API avec moins de 5 secondes d'intervalle. Si d'aventure vous aviez besoin d'invoquer ces APIs plus fréquement, dites le nous, nous tâcherons de trouver une solution pour vous.


Exemples




API d'échange


L'API d'échange fournit des fonctions qui vous permet d'effectuer des activités d'échange.

Avertissement

L'API d'échange est publiée dans sa version 1.0. Si nous changeons les appels d'APIs, nous publierons une nouvelle version et maintiendrons l'ancienne pour une durée déterminée. N'importe quel changement sera bien entendu annoncé dans la section Nouveautés et Annonces mais si vous voulez souscrire à notre mailing liste sur l'API, vous pouvez nous envoyer un simple email ([email protected]).

Activer l'API

L'API de trading doit être activée avant de pouvoir être utilisée. L'API accède aux informations de votre compte et permet de créer et d'exécuter des ordres, par conséquent, par conséquent, toutes les connexions passent par HTTPS uniquement. De plus, vous devez fournir un code de sécurité pour chacune des fonctions d'API. L'API d'échange est activée dans votre profile utilisateur.


Liste des fonctions de l'API

Fonction d'APIParamètres en entréeParamètres en sortieDescription Calcul du jeton
get_balancecurrencybalance
available_balance
Fournissez la monnaie pour laquelle vous voulez le soldeEn entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;get_balance;CurrencyName
En sortie:
 YourSecurityWord;YourUserName;Timestamp;get_balance;Balance
get_balancesbalance
available_balance
En entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;get_balances
Note: the security word of this function is the security word from function "get_balance".
En sortie:
 YourSecurityWord;YourUserName;Timestamp;get_balances
create_orderordertype
amount
currency1
unitprice
currency2
orderidC Crée un nouvel ordre. Un maximum de 100 ordres ouverts simultanément est autorisé. L'ordre est seulement sauvegardé mais pas publié, par conséquent il ne sera pas échangé avant que vous ne le publiez. Les valeurs pour TypeOrdre sont : BUY, SELL
Values for ordertype: BUY, SELL
En entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;create_order;ordertype;amount;currency1;unitprice;currency2
En sortie:
 YourSecurityWord;YourUserName;Timestamp;create_order;order_id
release_orderorderidorderidPublie l'ordre pour échange.
IMPORTANT : ID_Ordre en entrée n'est pas le même que ID_Ordre en sortie, vous devez le conserver pour les futurs appels à l'API au sujet d'un ordre. Même s'ils peuvent être identiques, ils sont indépendants, les ordres non publiés n'ont pas les mêmes IDs que les ordres publiés.
En entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;release_order;orderid
En sortie:
 YourSecurityWord;YourUserName;Timestamp;release_order;orderid
delete_orderorderid
otype
orderidSupprime/Clos un ordre.En entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;delete_order;orderid;otype
En sortie:
 YourSecurityWord;YourUserName;Timestamp;delete_order;orderid
read_orderorderid
otype
currency1
currency2
open_quantity
quantity
unitprice
ordertype
orderstatus
lastchangedat
releasedat
Renvoie les information sur un ordre.En entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;read_order;orderid
En sortie:
 YourSecurityWord;YourUserName;Timestamp;read_order;orderid
read_ordersotypenumberorders
otype
For each order:
currency1
currency2
openquantity
quantity
unitprice
ordertype
orderstatus
lastchangedat
releasedat
Renvoie les information sur les ordres de tous les utilisateurs qu'ils soient sauvés ou publiés. Ca ne renvoie pas d'information sur les ordres clos (que ce soit manuellement ou suite à l'exécution) ou supprimés.En entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;read_orders
En sortie:
 YourSecurityWord;YourUserName;Timestamp;read_order
read_orderexecutionsorderidcurrency1
currency2
quantity
unitprice
feepaid
ordertype
Renvoie les informations de l'exécution de l'ordre, c'est à dire les échanges exécutés pour un ordreEn entrée:
 YourSecurityWord;YourUserName;Timestamp;ID;read_orderexecutions;orderid
En sortie:
 YourSecurityWord;YourUserName;Timestamp;
create_couponamount
currency
coupon
amount
currency
Créer un bonEn entrée:
YourSecurityWord;YourUserName;Timestamp;ID;redeem_oupon;amount;currency
En sortie:
YourSecurityWord;YourUserName;Timestamp;create_coupon;coupon;amount;currency
redeem_couponcouponcoupon
amount
currency
Echanger un bon et créditer le montant correspondant sur le compte utilisateur.En entrée:
YourSecurityWord;YourUserName;Timestamp;create_coupon;coupon
En sortie:
YourSecurityWord;YourUserName;Timestamp;redeem_coupon;coupon;amount;currency

Notes sur les paramètres:
n plus des paramètres listés dans le tableau plus haut, les 4 paramètres suivants doivent toujours être fournis
Paramètre Description
accountVotre compte de connexion, pas votre adresse email
idN'importe quelle valeur, La valeur d'ID ne peut pas être réutilise dans une période de dix minutes. C'est le garde fou contre le double envoi comme les URLs rejouées par des sources malveillantes.
tokenUn hash en SHA2 sur le nombre de valeur en entrée. Voyez plus bas pour la façon de le calculer.
timestampUn timestamp UTC, doit être dans les 5 minutes suivant l'heure actuelle

Calcul du jeton

Le jeton est calculé par la concaténation des paramètres d'entrée, séparés par un point-virgule et ensuite calculé en un hash SHA2 sur la chaine complète. Voir la colonne "Calcul du Jeton" dans le tableau des fonctions d'APIs pour les champs requis dans le calcul du hash.
Voici un exemple (en Ruby) pour créer un ordre:

 t = Time.now.gmtime.strftime("%Y-%m-%dT%H:%M:%S")
 trx_id = Digest::SHA2.hexdigest("#{t}-#{rand}")
 user_name = "MY_USER_NAME"
 secret_word = "123456789"
 tok = Digest::SHA2.hexdigest("#{secret_word};#{user_name};#{t};#{trx_id};create_order;sell;10;btc;50;nmc")
 Order.call_https("https://vircurex.com","/api/create_order.json?account=#{user_name}&id=#{trx_id}&token=#{tok}&timestamp=#{t}&ordertype=sell&amount=10&currency1=btc&unitprice=50&currency2=nmc")


 def self.call_https(my_url,my_params)
  uri = URI.parse(my_url)
  http = Net::HTTP.new(uri.host, '443')
  http.use_ssl = true
  http.verify_mode = OpenSSL::SSL::VERIFY_PEER
  response=""
  resp=""
  http.start do |http|
   cmd = my_params
   req = Net::HTTP::Get.new(cmd)
   response = http.request(req)
   resp = response.body
  end
  return ActiveSupport::JSON.decode(resp)
 end


Error codes


Error Code Description
1L'ordre n'existe pas.
2L'ordre n'appartient pas à l'utilisateur.
3 L'ordre est déjà publié.
4 Identifiant de compte inconnu.
5Type d'ordre inconnu.
6Paramètre manquant.
7 L'ordre n'est pas publié.
8 Monnaie inconnue.
9L'API n'est pas configurée, soit inactive, soit le code sécurité est vide.
10Fonds insufisants. Votre solde disponible est inférieur à la quantité spécifiée dans l'appel à l'API.
12Monnaie manquante.
13Monnaie non autorisée. Monnaie1 ne peut pas être une monnaie fiduciaire.
14Le type d'ordre est manquant.
15Le type d'ordre est inconnu.
16Echanger sur cette paire n'est pas permis.
17L'ordre est déjà clos.
18Type d'ordre inconnu. Seules les valeurs 0 et 1 sont acceptées.
100 Cet ID a déjà été utilisé dans les dix dernières minutes.
200 Le volume de l'ordre (quantité*prix unitaire) doit être d'au moins 0,0001.
201Le nombre maximal d'ordres a été atteint. Un maximum de 50 est autorisé.
7999Fonction inactive. Vous devez activer cette fonction dans votre profil utilisateur
8000Le timestamp est dépassé de plus de 5 minutes.
8001Les APIs n'ont pas été activées.
8002Cet utilisateur est banni de l'utilisation des APIs.
8003Authentification échouée.
9999Erreur non spécifiée. Contactez le service utilisateur.

Nous nous réservons le droit de bloquer les appels d'APIs des utilisateurs dont nous pensons qu'ils font des appels sans véritable intention d'exécuter des ordres mais qui tentent apparament de perturber les échanges.




Aide Terms Commissions API Vie privée Investors Changelog Contactez-nous