Créer en brouillon, sans envoyer
Créer le parcours sans l'envoyer, pour le relire ou le compléter, puis le lancer.
curl -X POST "https://staging-api.docage.com/Transactions/CreateFullTransaction?launchTransaction=false" \
-H "Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9…" \
-F 'Transaction={"Name":"Contrat avec Atelier Lumière","TransactionFiles":[{"FriendlyName":"Contrat","Name":"Contrat de prestation"}],"TransactionMembers":[{"FriendlyName":"Client","MemberRole":0,"SignMode":1}]}' \
-F "Client=00000000-0000-4000-8000-000000000201" \
-F "Contrat=@contrat-atelier-lumiere.pdf;type=application/pdf" \
-F 'Client,Contrat={"Pages":"-1","Coordinates":"320,90,180,100"}'launchTransaction=false enregistre le parcours sans l'envoyer : la réponse est le parcours, en brouillon (GlobalStatus à 0), avec
les identifiants de ses participants et de ses documents. Personne n'est invité, et rien n'est consommé.
Le relire, le compléter
Tant qu'il est en brouillon, tout se change :
- ses réglages :
PUT https://staging-api.docage.com/Transactions/{id}; - ses documents :
POST https://staging-api.docage.com/TransactionFiles,DELETE https://staging-api.docage.com/TransactionFiles/BatchDelete; - ses participants :
POST https://staging-api.docage.com/TransactionMembers,DELETE https://staging-api.docage.com/TransactionMembers/BatchDelete; - ses emplacements de signature :
POST https://staging-api.docage.com/TransactionFields,PUT https://staging-api.docage.com/TransactionFields/{id}.
Les documents se relisent tels qu'ils seront envoyés : GET https://staging-api.docage.com/TransactionFiles/Download/{id}?format=pdf.
L'envoyer
POST https://staging-api.docage.com/Transactions/LaunchTransaction/cccccccc-0000-4000-8000-000000000003
Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9…curl -X POST "https://staging-api.docage.com/Transactions/LaunchTransaction/cccccccc-0000-4000-8000-000000000003" \
-H "Authorization: Bearer eyJhbGciOiJSUzI1NiIsInR5cCI6IkpXVCJ9…"using HttpClient client = new();
using HttpRequestMessage request = new(HttpMethod.Post, "https://staging-api.docage.com/Transactions/LaunchTransaction/cccccccc-0000-4000-8000-000000000003");
request.Headers.Authorization = new AuthenticationHeaderValue("Bearer", token);
using HttpResponseMessage response = await client.SendAsync(request);
string result = await response.Content.ReadAsStringAsync();
if (!response.IsSuccessStatusCode)
throw new HttpRequestException(result);const response = await fetch("https://staging-api.docage.com/Transactions/LaunchTransaction/cccccccc-0000-4000-8000-000000000003", {
method: "POST",
headers: {
Authorization: `Bearer ${token}`
}
});
const text = await response.text();
if (!response.ok) throw new Error(text);
const result = text ? JSON.parse(text) : null;Voir Lancer le parcours pour ce que l'envoi vérifie.
Les pièges
- Sans le paramètre, la création envoie aussitôt : écrivez
falseen toutes lettres. - C'est aussi la seule façon de garder un parcours dont l'envoi échouerait : un envoi refusé à la création laisse un brouillon, dont l'identifiant n'est donné que dans le message du refus.