Vue d'ensemble de l'API REST
L'API REST Qyvo — URL de base, authentification, conventions de requête/réponse et catalogue complet des endpoints.
L'API REST Qyvo expose les mêmes opérations d'espace de travail que celles disponibles dans le tableau de bord — envoi de messages, gestion des contacts, déclenchement de séquences et de flows, interrogation des templates et des tags. C'est la surface d'intégration utilisée par le n8n community node et la (future) application Zapier.
Pour les intégrations pilotées par LLM, préférez le serveur MCP — il expose les mêmes actions avec des descriptions d'outils riches conçues pour les agents.
URL de base
https://www.qyvo.io/api/v1
Tous les endpoints requièrent HTTPS. Il n'y a pas d'URL de sandbox séparée — les tests s'effectuent dans votre véritable espace de travail, sur un numéro que vous avez onboardé. Nous recommandons d'utiliser un contact de test dédié (votre propre téléphone) jusqu'à ce que votre intégration soit stable.
Authentification
Chaque requête doit inclure un jeton Bearer :
Authorization: Bearer YOUR_TOKEN_HERE
Générez le jeton dans Paramètres → Jetons API. Voir Authentification pour tous les détails.
Forme des requêtes et réponses
| Aspect | Convention |
|---|---|
| Corps de requête | JSON, Content-Type: application/json |
| Corps de réponse | JSON |
| Verbes | GET pour les triggers et les listes déroulantes ; POST pour les actions et les recherches (même en lecture seule, car elles acceptent un corps JSON) |
| IDs | UUIDs (trait Laravel HasUuids) |
| Horodatages | ISO 8601 en UTC, p. ex. 2026-05-07T08:14:23+00:00 |
| Format téléphone | International avec + initial, p. ex. +14155550123. Qyvo normalise les variations mineures côté serveur. |
| Erreurs | Voir Erreurs |
| Pagination | Voir Pagination |
| Limites de débit | Voir Limites de débit |
Catalogue des endpoints
Identité
GET /v1/me— utilisateur et tenant courants
Triggers (polling)
Ces endpoints renvoient jusqu'à 100 enregistrements les plus récents, triés par created_at DESC. Conçus pour le polling n8n / Zapier, mais utilisables directement :
GET /v1/triggers/new-message-receivedGET /v1/triggers/new-campaign-sentGET /v1/triggers/new-flow-triggeredGET /v1/triggers/new-sequence-triggered
Messages
POST /v1/actions/send-template-message— template approuvé par Meta (toujours disponible)POST /v1/actions/send-text-message— texte libre, uniquement à l'intérieur de la fenêtre de service client de 24 heures
Contacts
POST /v1/actions/create-contact— upsert par téléphonePOST /v1/actions/update-contact— par id ou téléphonePOST /v1/actions/get-contact— par id, téléphone ou emailPOST /v1/actions/search-contacts— recherche plein texte + filtre tag/emailPOST /v1/actions/add-tagPOST /v1/actions/remove-tag
Templates
Tags
Séquences et Flows
POST /v1/actions/trigger-sequencePOST /v1/actions/get-sequencePOST /v1/actions/trigger-flowPOST /v1/actions/get-flow
OpenAPI
Une spécification OpenAPI 3.1 lisible par machine pour l'intégralité de la surface est disponible à :
https://www.qyvo.io/api/v1/openapi.yaml
Importez-la dans Postman, Bruno, ou n'importe quel générateur de code (Stainless, Speakeasy, openapi-generator) pour générer un client typé dans votre langage.
Versionnage
La version majeure actuelle est v1. Nous suivons semver :
- Patch / mineure — changements additifs (nouveaux endpoints, nouveaux champs optionnels). Les payloads existants continuent de fonctionner.
- Majeure — rupture. Nouveau préfixe d'URL (
/api/v2/),/api/v1/maintenu pendant au moins 12 mois.
Voir le Changelog pour l'historique des versions.
