Calculer via l'API
Exemple simple
Pour calculer un devis via l'API, vous devez le créer comme suit. Notez que dans les champs quantityFormula, vous pouvez utiliser de véritables formules.
POST https://app.robaws.com/api/v2/offers
Content-Type: application/json
{
"calculated": true, //geeft aan dat het over een gecalculeerde offerte gaat (versus eenvoudige offerte)
"addressDistance": { //geef optioneel het aantal kilometers door naar de werf
"value": "10",
"unit": "KM"
},
"lineItems": [
{
"quantityFormula": "DISTANCE_KM", //voorbeeld: gebruik de voorgedefinieerde DISTANCE_KM variabele om het aantal kilometers te nemen als aantal
"calculationLineItems": [
{
"description": "Kilometers",
"quantityFormula": "1",
"price": 0.5
}
]
}
]
}
Si tout se passe bien, vous recevez une réponse 201 CREATED contenant notamment dans le corps :
"calculationStatus": "PENDING"Le statut "PENDING" indique que le calcul a été demandé et qu'il est en file d'attente. Vous pouvez soit interroger régulièrement (récupérer le devis à intervalles réguliers) jusqu'à ce que le statut passe à "DONE", soit utiliser un webhook pour savoir que le calcul est terminé (recommandé).
Webhook pour calculationStatus
Enregistrez un webhook comme suit pour être averti lorsque le calcul d'un devis est terminé.
POST https://app.robaws.com/api/v2/webhook-endpoints
Content-Type: application/json
{
"url": "https://webhooks.your-app.com/robaws/offer/recalculated",
"events": ["offer.recalculated"]
}
Le message que nous enverrons à votre application via le webhook se présente comme suit :
(Cliquez ici pour plus d'informations sur les webhooks)
{
"id": "08241443-0335-4f3d-94a2-d6da6c201545",
"event": "offer.recalculated",
"resource": "/offers/3409",
"user": null,
"timestamp": "2025-09-15T06:35:10.329Z",
"data": {
"id": "3409"
}
}
Si vous effectuez ensuite un GET sur le devis concerné, vous pouvez récupérer les totaux et sous-totaux.
Exemple avec numéros de poste
Si vous souhaitez travailler avec des numéros de poste prédéfinis, c'est également possible. La requête POST se présente alors comme suit :
POST https://app.robaws.com/api/v2/offers
Content-Type: application/json
{
"calculated": true, //geeft aan dat het over een gecalculeerde offerte gaat (versus eenvoudige offerte)
"addressDistance": { //geef optioneel het aantal kilometers door naar de werf
"value": "10",
"unit": "KM"
},
"lineItems": [
{
"quantityFormula": "1",
"chapter": "1.1" // hier geef je het postnummer mee
},
{
"quantityFormula": "1",
"chapter": "1.2" // hier geef je het postnummer mee
}
],
"actions": [
{
"action": "ASSIGN_POSTS" //posten uit bibliotheek toewijzen adhv chapter
},
{
"action": "UPDATE_PRICES", // zorgen dat de prijzen correct staan adhv de laatste prijzen uit uw artikelbibliotheek
"strategy": "UPDATE_COST_PRICE_AND_SALES_PRICE" //of UPDATE_COST_PRICE_KEEP_MARGIN
}
]
}
Mis à jour le : 05/07/2026
Merci !
