Programmer un transfert ======================= .. http:post:: /api/transfers .. deprecated:: 0.1.0 Les propriétés ``sourcePath`` et ``destPath`` de la requête ont été remplacées par les propriétés ``localFilepath`` et ``remoteFilepath``. .. deprecated:: 0.1.0 La propriété ``startDate`` de la requête a été remplacée par la propriété ``start``. .. versionremoved:: 0.5.0 Les propriétés ``blockSize``, ``blockCheck`` et ``hashAlgo`` ont été supprimées afin de simplifier le code. Ces propriétés n'étaient que très peu utilisées. Programme un nouveau transfert avec les informations renseignées en format JSON dans le corps de la requête. :reqheader Authorization: Les identifiants de l'utilisateur :reqjson string rule: L'identifiant de la règle utilisée :reqjson bool isSend: Indique le transfert est un envoi (``true``) ou une réception (``false``). :reqjson string client: Le nom du client avec lequel effectuer le transfert. Peut être omit si Waarp Transfer ne possède qu'un seul client du protocole concerné, auquel cas, le client en question sera sélectionné automatiquement. :reqjson string account: Le nom du compte avec lequel le transfert sera demandé :reqjson string partner: Le nom du partenaire auquel le transfert sera demandé :reqjson string sourcePath: *Déprécié*. Le chemin du fichier source :reqjson string destPath: *Déprécié*. Le chemin de destination du fichier :reqjson string file: Le chemin du fichier à transférer :reqjson string output: Le chemin de destination du fichier :reqjson date start: La date de début du transfert (en format ISO 8601) :reqjson object transferInfo: Des informations de transfert personnalisées sous la forme d'une liste de pairs clé:valeur, c'est-à-dire sous forme d'un objet JSON. :reqjson number numberOfTries: Le nombre de fois que le transfert sera automatiquement retenté en cas d'échec. :reqjson number firstRetryDelay: Le délai (en secondes) entre la tentative de transfert initiale et la première reprise automatique. :reqjson number retryIncrementFactor: Le facteur par lequel le délai décris ci-dessus sera multiplié entre chaque nouvelle tentative. Par exemple, si le délai initial est de 30s et que le facteur est de 2, alors le délai entre chaque tentative sera respectivement de 30s, puis 60s, 120s, 240s, etc jusqu'à ce que le transfert réussisse ou bien que le nombre de tentatives soit épuisé. :statuscode 201: Le transfert a été enregistré avec succès :statuscode 400: Un ou plusieurs des paramètres du transfert sont invalides :statuscode 401: Authentification d'utilisateur invalide :resheader Location: Le chemin d'accès au nouveau transfert créé **Exemple de requête** .. code-block:: http POST https://my_waarp_transfer.net/api/transfers HTTP/1.1 Authorization: Basic QWxhZGRpbjpvcGVuIHNlc2FtZQ== Content-Type: application/json Content-Length: 212 { "rule": "règle_1", "isSend": true, "account": "toto", "partner": "waarp_r66", "file": "chemin/du/fichier", "output": "destination/du/fichier", "start": "2019-01-01T02:00:00+02:00", "transferInfo": { "key1": "val1", "key2": 2, "key3": true } } **Exemple de réponse** .. code-block:: http HTTP/1.1 201 CREATED Location: https://my_waarp_transfer.net/api/transfers/123