API des transactions
Une transaction est une opportunité de vente sur votre tableau de Pipeline de ventes — un titre, une valeur, l’étape dans laquelle elle se trouve, et éventuellement le contact auquel elle appartient et le membre de l’équipe auquel elle est assignée. Ce guide couvre la lecture et la gestion des transactions via l’API.
- URL de base —
https://api.dmchamp.com/v1 - Authentification — votre clé API (voir Authentification)
- Erreurs et pagination — voir Erreurs et pagination
Tous les exemples ci-dessous utilisent le format de requête ?apiKey= en cURL et l’en-tête X-API-Key en JavaScript et Python — les deux fonctionnent sur chaque point de terminaison.
L’objet transaction
{
"id": "deal_abc123",
"title": "Annual plan – Jane's Clinic",
"description": "Asked for pricing on the annual plan.",
"company": "Jane's Clinic",
"stage": "stage-2",
"value": 4800,
"probability": 60,
"priority": "high",
"status": "open",
"source": "whatsapp",
"position": 0,
"contact_id": "ctc_9f8e7d",
"assigned_to": "usr_4a2b",
"tags": ["clinic"],
"close_date": "2026-10-01T00:00:00.000Z",
"created_at": "2026-09-05T09:12:00.000Z",
"updated_at": "2026-09-05T09:40:00.000Z",
"stage_entered_at": "2026-09-05T09:40:00.000Z"
}
stage est l’identifiant de l’une des étapes de votre pipeline — lisez-les depuis les paramètres de votre pipeline (GET /users/me/pipeline-settings). Les horodatages sont au format ISO 8601.
Lister les transactions
GET /deals — renvoie les transactions de votre compte, de la plus récente à la plus ancienne.
Paramètres de requête (tous optionnels) : stage (un identifiant d’étape), contact_id, limit (50 par défaut, 200 maximum), cursor (depuis le next_cursor de la page précédente).
cURL
curl "https://api.dmchamp.com/v1/deals?apiKey=YOUR_API_KEY&stage=stage-2&limit=50"
JavaScript
const res = await fetch("https://api.dmchamp.com/v1/deals?stage=stage-2&limit=50", {
headers: { "X-API-Key": "YOUR_API_KEY" },
});
const { deals, next_cursor } = await res.json();
Python
res = requests.get(
"https://api.dmchamp.com/v1/deals",
headers={"X-API-Key": "YOUR_API_KEY"},
params={"stage": "stage-2", "limit": 50},
)
deals = res.json()["deals"]
Réponse (200)
{ "success": true, "deals": [{ "id": "deal_abc123", "title": "Annual plan – Jane's Clinic", "...": "..." }], "next_cursor": null }
Obtenir une transaction
GET /deals/{dealId}
curl "https://api.dmchamp.com/v1/deals/deal_abc123?apiKey=YOUR_API_KEY"
Réponse (200)
{ "success": true, "deal": { "id": "deal_abc123", "title": "Annual plan – Jane's Clinic", "...": "..." } }
Une transaction qui n’existe pas, ou qui appartient à un autre compte, renvoie 404.
Créer une transaction
POST /deals — title et stage sont requis ; stage doit être l’un des identifiants d’étape de votre pipeline.
curl -X POST "https://api.dmchamp.com/v1/deals?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "title": "Annual plan – Jane'"'"'s Clinic", "stage": "stage-1", "value": 4800, "contact_id": "ctc_9f8e7d" }'
Réponse (201)
{ "success": true, "deal_id": "deal_abc123" }
Mettre à jour une transaction
PUT /deals/{dealId} — envoyez uniquement les champs que vous souhaitez modifier (title, description, value, stage, status, priority, contact_id, …). value doit être un nombre.
curl -X PUT "https://api.dmchamp.com/v1/deals/deal_abc123?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "value": 5200, "priority": "high" }'
Réponse (200) : { "success": true, "deal_id": "deal_abc123" }
Déplacer une affaire vers une autre étape
POST /deals/{dealId}/move — corps { "new_stage_id": "stage-3", "new_position": 0 }. La position 0 place la carte en haut de la colonne.
curl -X POST "https://api.dmchamp.com/v1/deals/deal_abc123/move?apiKey=YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{ "new_stage_id": "stage-3", "new_position": 0 }'
Réponse (200) : { "success": true, "deal_id": "deal_abc123", "stage": "stage-3", "position": 0 }
Supprimer une affaire
DELETE /deals/{dealId} — supprime l’affaire. Cette action est irréversible.
curl -X DELETE "https://api.dmchamp.com/v1/deals/deal_abc123?apiKey=YOUR_API_KEY"
Réponse (200) : { "success": true }
Étapes suivantes
- Pipeline de ventes — fonctionnement des étapes, des étiquettes d’étape et du tableau.
- API Tâches — les tâches peuvent être liées à une affaire avec
deal_id. - Automatisations — les étapes Trouver des affaires et Trouver une affaire lisent les mêmes données au sein d’un flux de travail.