API REST

Créez des intégrations puissantes.

Une API REST JSON versionnée, sécurisée par authentification à clé unique. Abonnez-vous aux webhooks de 12 événements couvrant interventions, factures, paiements, devis et clients. Disponible dans l'offre Scale.

Authentification par clé REST versionnée · v1 12 événements webhook 5 juridictions
bash · Créer une intervention via l'API REST
curl https://api.servicesynchq.com/api/v1/jobs \
  -H "X-API-Key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "customerId": 12345,
    "scheduledDate": "2026-08-20T14:00:00Z",
    "title": "HVAC repair"
  }'
json · Réponse · réception en cours
201 Created
{  "id": 84213,  "customerId": 12345,  "status": "scheduled",  "scheduledDate": "2026-08-20T14:00:00Z",  "title": "HVAC repair",  "createdAt": "2026-07-24T08:14:22Z"}
API REST · v1
Stable, versionnée, JSON
X-API-Key
Authentification par clé
CRUD complet
Sur toutes vos données
12 événements
Webhooks en temps réel
Référence de l'API

Principaux endpoints

Un aperçu de la surface exposée. Clients, interventions, factures, devis, paiements, inventaire, planification et notifications exposent tous un CRUD complet en JSON.

REST · /api/v1

CRUD complet en JSON, sécurisé par votre X-API-Key.

/customers/jobs/estimates /invoices/payments/inventory
Webhooks · 12 événements

Enregistrez un endpoint et réagissez en temps réel.

job.createdinvoice.paidpayment.received estimate.acceptedcustomer.created

Deux façons d'intégrer — REST pour la lecture/écriture, webhooks pour le push en temps réel.

200 OK GET

/api/v1/customers

Lister tous les clients.

pagination par curseur
201 Created POST

/api/v1/customers

Créez un nouveau client.

idempotency-key pris en charge
200 OK GET

/api/v1/jobs

Listez les interventions filtrées par statut ou par date.

triable + filtrable
201 Created POST

/api/v1/jobs

Planifiez une nouvelle intervention. Déclenche job.created webhook.

consigné dans le journal d'audit
200 OK GET

/api/v1/invoices

Lister les factures avec pagination.

adapté à la juridiction
202 Accepted POST

/api/v1/invoices/:id/send

Envoyez la facture par e-mail ou SMS. IRN généré automatiquement pour l'Inde.

adossé à une file de relance

Un échantillon représentatif couvrant clients · interventions · devis · factures · paiements · stock · achats · planification · notifications. Chaque appel privilégié est consigné dans le journal d'audit. Voir la référence complète →

Conformité mondiale · C7

5 juridictions, une seule API

Transmettez un code pays et obtenez le bon calcul de taxes, la bonne mise en page de document, la bonne charge utile de facture électronique. Mêmes endpoints, comportement adapté à chaque juridiction — aucune ramification par pays dans votre code d'intégration.

GST IndeTaxe de vente (États-Unis)VAT Royaume-UniVAT UEVAT CCG
IN IndeCGST + SGST intra-État · IGST inter-États · facture électronique IRN (fenêtre d'annulation de 24 h) · codes HSN
UK Royaume-UniRetenue CIS 20 % / 30 % / 0 % (déduite automatiquement selon le statut d'immatriculation) · déclarations de VAT
EU UE (SDI XML)Format de facture électronique SDI XML italien · routage de VAT transfrontalier · autoliquidation
SA Arabie saoudite (ZATCA Phase 1)Bilingue arabe/anglais · QR code TLV avec 5 balises obligatoires · VAT 15 %
AE Émirats arabes unis / GCCVAT 5 % · prise en charge des factures en arabe · champs de conformité FTA
CA CanadaRoutage GST · HST · PST · QST par province · factures prêtes pour l'ARC
AU AustralieGST 10 % · retenue ABN de 49 % (fournisseur sans ABN)
US États-UnisRoutage de la taxe de vente par État · destination/origine · gestion des certificats de revente
Moteur fiscal

Les calculs de conformité, automatisés

Indiquez votre intention — nous calculons la bonne ventilation des taxes. Changements d'État, changements d'immatriculation, bascules de juridiction : ce sont des données, pas du code. Isolation de niveau bancaire : les données de chaque client résident dans leur propre coffre logique — la base de données elle-même refuse de mélanger les données entre coffres, et pas seulement le code applicatif.

Routage intra-État vs inter-État

Fournisseur et client dans le même État ? CGST + SGST. Différent ? IGST. Calculé à partir de company.state vs customer.state.

Facture électronique IRN · GST Inde

Génère l'IRN + un QR signé lors du POST. 24h cancellation window exposé via un point de terminaison dédié. Codes HSN par recherche.

Retenue CIS Royaume-Uni

Déduit automatiquement 20% / 30% / 0% selon le statut d'immatriculation du prestataire, pour chaque sous-traitant.

QR TLV ZATCA · Arabie saoudite

Facture bilingue Phase 1 + QR TLV encodant l'ensemble des 5 mandatory tags. Validé auprès de ZATCA avant le rendu.

Authentification

Authentification et sécurité

Chaque requête est authentifiée par une clé API envoyée dans l'en-tête X-API-Key en-tête. Les clés sont créées par les administrateurs de votre espace, révocables à tout moment, et chaque appel privilégié est consigné dans le journal d'audit.

Clé API ••••••••

Les clés sont affichées une seule fois à la création et stockées uniquement sous forme de hachage — jamais en clair.

  • Authentification par clé API Envoyez votre clé secrète dans l'en-tête X-API-Key en-tête à chaque requête.
  • Créées et révoquées par vos administrateurs Générez et révoquez les clés dans Paramètres → Clés API. La révocation d'une clé prend effet immédiatement.
  • Haché au repos Seul un hachage irréversible de chaque clé est stocké — la clé brute n'est affichée qu'une seule fois, à la création.
  • Journalisation d'audit sur chaque appel privilégié Qui, quand, d'où, ce qui a changé — inviolable et visible par les administrateurs de votre espace.
  • Disponible avec le plan Scale L'accès API programmatique est inclus avec l'offre Scale.
bash · Authentifier une requête
curl https://api.servicesynchq.com/api/v1/customers \
  -H "X-API-Key: YOUR_API_KEY"

# 200 OK — returns your customers as JSON.
# Manage keys under Settings → API keys (admin only).
Webhooks · 12 événements

Réagissez à chaque événement en temps réel

Abonnez-vous aux événements de cycle de vie couvrant CRM, répartition, facturation, paiements, achats et audit. Chaque webhook est signé cryptographiquement, réémis avec un backoff exponentiel et adossé à une file de reprise durable.

job.created

Nouvelle intervention créée.

job.completed

Intervention marquée comme terminée.

job.status_changed

Une intervention est passée à un nouveau statut.

invoice.created

Nouvelle facture créée.

invoice.paid

Paiement de facture reçu.

invoice.overdue

La facture a dépassé son échéance sans être payée.

payment.received

Un paiement client a été enregistré.

customer.created

Nouveau client ajouté.

estimate.sent

Devis envoyé au client.

estimate.accepted

Le client a accepté le devis.

estimate.rejected

Le client a refusé le devis.

estimate.converted_to_job

Devis accepté converti en intervention.

SDK

Bibliothèques clientes — sur la feuille de route

Des SDK officiels sont en cours de développement. En attendant leur sortie, l'API REST est entièrement documentée ci-dessus et fonctionne avec n'importe quel client HTTP.

Node.js

Bientôt disponible

Python

Bientôt disponible

PHP

Bientôt disponible

Ruby

Bientôt disponible
Isolation

Isolation des locataires, appliquée au niveau de la base de données

Chaque requête est automatiquement limitée à votre espace de travail au niveau de la couche base de données — pas seulement dans le code applicatif. Une requête d'un espace de travail ne peut littéralement pas lire les données d'un autre espace de travail — c'est la base de données elle-même qui l'impose.

  • ✓ Isolation appliquée au niveau de la base de données
  • ✓ Vérifié par une suite de tests d'isolation automatisée
  • ✓ Les tentatives de jointure inter-locataires renvoient un résultat vide, jamais une erreur
  • ✓ Usurpation d'identité super-admin consignée dans le journal d'audit
Business C Fully isolated Business B Fully isolated Business A Fully isolated POSTGRES · ROW-LEVEL SECURITY POLICIES
Limites de débit

Généreuses, transparentes — les en-têtes vous renseignent

Des limites de débit à usage raisonnable avec capacité de rafale. Votre limite actuelle et votre quota restant sont renvoyés à chaque réponse dans X-RateLimit-Limit / X-RateLimit-Remaining / X-RateLimit-Reset en-têtes (brouillon de norme IETF). Vous n'aurez jamais à deviner ce qui est autorisé.

Standard

Solo · Essentials · Growth

Inclus dans chaque offre avec accès à l'API.

Valeurs par défaut généreuses

Une marge suffisante pour les intégrations ordinaires · les en-têtes vous indiquent en temps réel

Enterprise

Scale + module complémentaire Enterprise

Plafonds sur mesure, capacité dédiée, SLA.

Sur mesure

Contacter le service commercial pour le dimensionnement

Lorsque vous atteignez une limite : vous recevrez une réponse HTTP 429 Too Many Requests avec un Retry-After en-tête en quelques secondes. Nos SDK gèrent cela automatiquement avec un backoff exponentiel. Si vous avez régulièrement besoin de plafonds plus élevés, parlons-en — les chiffres publiés sont des planchers, pas des plafonds.
Sécurité

Vos clés API, traitées comme les secrets qu'elles sont

Nous protégeons vos clés comme nous voudrions que les nôtres le soient. Voici ce sur quoi vous pouvez compter.

TLS uniquement, partout

Chaque requête vers l'API est chiffrée en transit avec un TLS moderne. Le HTTP en clair est refusé en périphérie.

Limité à votre espace, par conception

Chaque clé API est liée à un seul espace de travail. Aucun chemin ne permet à une clé de l'espace A de lire les données de l'espace B — appliqué au niveau de la base de données, pas seulement de l'application.

Journal d'audit sur chaque appel privilégié

Qui, quand, d'où, ce qui a changé. Inviolable et consultable par les administrateurs de votre espace. Parfait pour les revues de conformité. En savoir plus sur la page de sécurité.

Révocation instantanée des clés

Révocation instantanée des clés

Haché au repos

Seul un hachage irréversible de chaque clé est stocké. La clé brute est affichée une seule fois, à la création, et n'est jamais conservée en clair.

Journal d'audit à chaque appel

Chaque action API privilégiée est enregistrée — qui, quand, d'où, ce qui a changé — dans un journal inviolable que vos administrateurs peuvent consulter.

Bonnes pratiques pour protéger vos clés API

Ne committez jamais de clés dans git Utilisez des variables d'environnement ou un gestionnaire de secrets. En cas de fuite, faites une rotation de la clé dans notre panneau d'administration avant de publier le correctif.
Appelez l'API depuis votre backend Gardez les clés côté serveur — ne les exposez jamais dans un navigateur ou une application mobile.
Effectuez une rotation trimestrielle Ou à chaque fois qu'une personne ayant accès aux clés quitte votre équipe.
Une clé par intégration Une clé distincte par intégration vous permet de n'en révoquer qu'une seule en cas de fuite.
Stockez les clés dans un gestionnaire de secrets Variables d'environnement ou un coffre-fort — pas le contrôle de version, pas un document partagé.
Surveillez le journal d'audit Une adresse IP inconnue utilisant votre clé est un signal qui mérite investigation.

Prêt à développer ?

L'accès API est inclus dans l'offre Scale. Consultez d'abord la documentation, récupérez vos clés quand vous êtes prêt.