---
title: "Exécute un calculateur (valeurs par défaut complétées ; distance calculée par itinéraire et prix moyen du carburant du jour si le calculateur en a)"
method: POST
path: "/v1/calculators/{slug}/compute"
tags: ["B2B (v1)"]
---

# Exécute un calculateur (valeurs par défaut complétées ; distance calculée par itinéraire et prix moyen du carburant du jour si le calculateur en a)

`POST /v1/calculators/{slug}/compute`

## Request

- Base URL: `https://api.vitef.com`
- URL: `https://api.vitef.com/v1/calculators/{slug}/compute`
- Auth: HTTP bearer

## Path parameters

- `slug` string, required

## Headers

- `Idempotency-Key` string: Rend la requête rejouable sans effet en double pendant 24 h (UUID v4 recommandé). Même clé et même requête : la première réponse est renvoyée avec `Idempotent-Replayed: true`, sans nouvel envoi ni nouveau débit. Même clé pour une autre requête : 422 `idempotency_key_reused`. Requête identique encore en cours : 409 `idempotency_in_progress`.

## Request body

- ComputeRequest
  - `values` Values: Valeurs du formulaire, par clé de champ.
  - `today` string: Date de référence (défaut : aujourd’hui à Paris).

## Response `200`

Résultat

- CalculatorResult
  - `calculator` string, required
  - `values` Values, required: Valeurs du formulaire, par clé de champ.
  - `result` object, required
    - `label` string, required
    - `value` string, required
    - `unit` string, required
    - `caption` string, nullable, required
    - `rows` object[], required
      - `label` string, required
      - `value` string, required
  - `route` object: Itinéraire calculé entre les deux adresses, quand la distance n’était pas fournie.
    - `distanceKm` number, required
    - `durationMin` integer, required
  - `fuelPrice` object: Prix moyen du jour utilisé, quand le prix du carburant n’était pas fourni.
    - `fuel` string, required
    - `avgCents` number, required
    - `updatedAt` string, nullable, required

## Other responses

- `400`: Requête invalide
- `401`: Authentification requise ou invalide
- `402`: Crédits ou paiement requis
- `403`: Accès refusé (`insufficient_scope`, `account_suspended`, `live_not_enabled`)
- `404`: Ressource introuvable
- `409`: Requête identique encore en cours (`idempotency_in_progress`)
- `413`: Corps trop volumineux (`payload_too_large`)
- `422`: Clé Idempotency-Key déjà utilisée pour une autre requête (`idempotency_key_reused`)
- `429`: Trop de requêtes
- `500`: Erreur interne

---

[API](https://skmtc.dev/vitef/apis/api-vitef.md) · [All operations](https://skmtc.dev/vitef/apis/api-vitef/llms.txt) · [OpenAPI document](https://skmtc.dev/vitef/apis/api-vitef/revisions/7bc459d9ef90?raw)
