Documentation de l'API Propulxia
Intégrez la puissance de Propulxia directement dans votre CRM, vos outils internes ou vos applications. Créez des propositions, gérez vos prospects et recevez des mises à jour en temps réel via nos webhooks.
Introduction
L'API Propulxia est de type REST, basée sur des réponses au format JSON et sécurisée via clé API.
- URL de base :
https://app.propulxia.com/api/v1 - Format : JSON (
Content-Type: application/json) - Authentification : Clé API
- Disponibilité : Forfait Entreprise (pro)
1. Authentification
Toutes les requêtes vers l'API exigent une clé API passée dans l'en-tête de requête HTTP Authorization :
Authorization: Bearer plx_live_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
Obtenir une clé API
Les clés se génèrent depuis votre tableau de bord dans Paramètres → Accès API. Vous pouvez nommer plusieurs clés pour différents environnements ou les révoquer à tout moment. La clé n'est affichée qu'une seule fois lors de la création : conservez-la de manière sécurisée.
2. Conventions
- Les identifiants (id) sont des chaînes de caractères opaques.
- Les montants sont exprimés dans l'unité monétaire courante (ex: 1500.00 pour 1500,00 $).
- Les dates (createdAt, etc.) sont des timestamps Unix en millisecondes.
- Toute erreur renvoie un corps au format {"error": "message"} avec le code HTTP correspondant.
3. Propositions
Liste les propositions de votre compte.
curl https://app.propulxia.com/api/v1/proposals?status=sent&limit=10 \ -H "Authorization: Bearer plx_live_..."
{
"proposals": [
{
"id": "abc123",
"title": "Refonte site web — Acme inc.",
"status": "sent",
"clientId": "cl_789",
"companyId": "co_456",
"totalAmount": 4500,
"currency": "CAD",
"shareUrl": "https://app.propulxia.com/share/a1b2c3...",
"createdAt": 1737331200000
}
]
}Crée une nouvelle proposition.
curl -X POST https://app.propulxia.com/api/v1/proposals \
-H "Authorization: Bearer plx_live_..." \
-H "Content-Type: application/json" \
-d '{
"title": "Refonte site web",
"clientId": "cl_789",
"companyId": "co_456",
"totalAmount": 4500,
"currency": "CAD"
}'Envoie la proposition par email et change son statut à sent.
curl -X POST https://app.propulxia.com/api/v1/proposals/abc123/send \
-H "Authorization: Bearer plx_live_..." \
-H "Content-Type: application/json" \
-d '{"to": "client@example.com"}'4. Clients
Gérez vos clients commerciaux (contacts au sein de vos entreprises cibles) via ces endpoints :
| Méthode | Route | Description |
|---|---|---|
| GET | /clients | Liste tous les clients. |
| GET | /clients/:id | Détails d'un client. |
| POST | /clients | Création d'un prospect (firstName, lastName, email). |
| PATCH | /clients/:id | Mise à jour partielle des infos du client. |
| DELETE | /clients/:id | Suppression d'un client. |
5. Tâches
Gérez vos tâches de relance ou de suivi associées à vos propositions et prospects :
| Méthode | Route | Description |
|---|---|---|
| GET | /tasks | Liste toutes les tâches du compte. |
| GET | /tasks/:id | Récupère les détails d'une tâche. |
| POST | /tasks | Créée une tâche (title, dueDate requis). |
| PATCH | /tasks/:id | Modifie une tâche existante. |
| DELETE | /tasks/:id | Supprime une tâche. |
Exemple de création de tâche :
curl -X POST https://app.propulxia.com/api/v1/tasks \
-H "Authorization: Bearer plx_live_..." \
-H "Content-Type: application/json" \
-d '{
"title": "Relancer le client Acme",
"dueDate": 1789958156189,
"proposalId": "abc123",
"status": "todo"
}'6. Modèles (Templates)
Récupérez en lecture seule les modèles de propositions structurés créés sur votre compte :
| Méthode | Route | Description |
|---|---|---|
| GET | /templates | Liste tous les modèles. |
| GET | /templates/:id | Détails et sections d'un modèle. |
7. Catalogue Produits
Synchronisez votre bibliothèque d'articles ou grilles tarifaires avec vos outils de facturation :
| Méthode | Route | Description |
|---|---|---|
| GET | /products | Liste les produits. |
| GET | /products/:id | Détails d'un produit. |
| POST | /products | Création d'un produit (name, price requis). |
| PATCH | /products/:id | Mise à jour d'un produit. |
| DELETE | /products/:id | Suppression d'un produit. |
8. Collaborateurs (Équipe)
Gérez les comptes des collaborateurs de votre organisation commerciale :
| Méthode | Route | Description |
|---|---|---|
| GET | /employees | Liste l'équipe. |
| GET | /employees/:id | Détails d'un collaborateur. |
| POST | /employees | Ajout d'un membre (firstName, lastName, email requis). |
| PATCH | /employees/:id | Mise à jour d'un membre. |
| DELETE | /employees/:id | Retrait d'un membre. |
9. Reporting
Récupère des KPI sur vos performances commerciales.
{
"totalProposals": 42,
"byStatus": { "backlog": 5, "in_progress": 3, "sent": 10, "won": 20, "lost": 4 },
"totalValue": 187500,
"wonValue": 92000,
"winRate": 0.8333
}10. Webhooks
Abonnez une URL HTTPS pour recevoir des notifications en temps réel.
Événements disponibles :
proposal.created : Proposition créée via l'API.proposal.sent : Proposition envoyée.proposal.paid : Paiement d'acompte ou solde confirmé.proposal.signed : Proposition signée électroniquement par le client.
Souscription :
curl -X POST https://app.propulxia.com/api/v1/webhooks \
-H "Authorization: Bearer plx_live_..." \
-H "Content-Type: application/json" \
-d '{
"url": "https://votre-service.com/webhooks/propulxia",
"events": ["proposal.sent", "proposal.paid"]
}'11. Intégrations (Zapier)
Connectez Propulxia à plus de 6 000 applications via Zapier, sans écrire de code. L'intégration officielle s'appuie sur cette API et ses webhooks.
Déclencheurs (quand un événement survient dans Propulxia) :
proposal.createdproposal.sentproposal.signedproposal.paidnew_client
Actions (Zapier agit dans Propulxia) :
create_proposalcreate_clientsend_proposal
Recherche :
find_client
Se connecter
Dans Zapier, cherchez « Propulxia », puis collez une clé API générée dans Réglages → Accès API. Chaque Zap agit sur votre compte uniquement.
12. Codes d'erreur
| Code | Signification / Cause |
|---|---|
| 400 | Requête mal formée ou champs obligatoires manquants. |
| 401 | Authentification absente ou clé API invalide. |
| 403 | Le forfait n'inclut pas l'API ou droit insuffisant sur la ressource. |
| 404 | Ressource introuvable. |
13. Limites
Il n'y a pas de limitation stricte de débit dans cette version (Rate Limits) sous réserve d'une utilisation raisonnable. La pagination par défaut limite les requêtes de listes à 25 résultats (max 100).