Skip to main content

Base URL

https://srv.msgflash.com
Tous les endpoints publics sont préfixés par /api/v1/. Exemples :
https://srv.msgflash.com/api/v1/messages/send
https://srv.msgflash.com/api/v1/templates
https://srv.msgflash.com/api/v1/contacts
https://srv.msgflash.com/api/v1/billing/usage

Authentification

Toutes les requêtes vers /api/v1/* nécessitent une clé API MsgFlash envoyée dans le header x-api-key.
curl https://srv.msgflash.com/api/v1/usage \
  -H "x-api-key: msgf_live_your_api_key_here"
Voir Authentification pour le format exact et les règles de sécurité.

Rate limiting

LimiteValeur
Requêtes par seconde10 req/s
ScopePar clé API
Code d’erreurAPI_RATE_LIMIT_EXCEEDED
En cas de dépassement :
{
  "error": {
    "code": "API_RATE_LIMIT_EXCEEDED",
    "message": "Too many API requests"
  }
}
Le rate limit temps réel est distinct du quota mensuel monthlyApiRequestQuota. Vous pouvez être sous votre quota mensuel et tout de même recevoir un 429 si vous dépassez 10 req/s.

Format des réponses

Succès

Toutes les réponses réussies sont enveloppées dans data.
{
  "data": {
    "id": "uuid",
    "status": "queued"
  }
}
Pour les listes simples :
{
  "data": [
    { "id": "..." },
    { "id": "..." }
  ]
}
Pour les listes paginées :
{
  "data": {
    "messages": [],
    "nextCursor": null,
    "hasMore": false
  }
}

Erreur

{
  "error": {
    "code": "NOT_FOUND",
    "message": "Message not found"
  }
}
Voir Codes d’erreur pour les principaux codes.

Endpoints disponibles

Messages

MéthodeEndpointDescription
POST/api/v1/messages/sendEnvoyer un message immédiat
POST/api/v1/messages/schedulePlanifier un message
GET/api/v1/messagesLister les messages
GET/api/v1/messages/{id}Détail d’un message

Campagnes

MéthodeEndpointDescription
POST/api/v1/campaignsCréer une campagne
GET/api/v1/campaigns/{id}Détail d’une campagne
GET/api/v1/campaigns/{id}/statsStatistiques d’exécution
POST/api/v1/campaigns/{id}/pausePauser une campagne
POST/api/v1/campaigns/{id}/resumeReprendre une campagne

Templates

MéthodeEndpointDescription
GET/api/v1/templatesLister les templates
POST/api/v1/templatesCréer un template
GET/api/v1/templates/{id}Détail d’un template
PUT/api/v1/templates/{id}Mettre à jour un template
DELETE/api/v1/templates/{id}Supprimer un template
POST/api/v1/templates/{id}/previewPrévisualiser le rendu d’un template

Contacts

MéthodeEndpointDescription
GET/api/v1/contactsLister les contacts
POST/api/v1/contactsCréer un contact
GET/api/v1/contacts/{id}Détail d’un contact
PUT/api/v1/contacts/{id}Mettre à jour un contact
DELETE/api/v1/contacts/{id}Supprimer un contact
POST/api/v1/contacts/bulk-deleteSupprimer plusieurs contacts

Groupes de contacts

MéthodeEndpointDescription
GET/api/v1/contacts/groupsLister les groupes
POST/api/v1/contacts/groupsCréer un groupe
GET/api/v1/contacts/groups/{groupId}Détail d’un groupe
PUT/api/v1/contacts/groups/{groupId}Mettre à jour un groupe
DELETE/api/v1/contacts/groups/{groupId}Supprimer un groupe
POST/api/v1/contacts/groups/{groupId}/membersAjouter des membres
DELETE/api/v1/contacts/groups/{groupId}/membersRetirer des membres
GET/api/v1/contacts/groups/{groupId}/membersLister les membres
GET/api/v1/contacts/{id}/groupsLister les groupes d’un contact

Webhooks

MéthodeEndpointDescription
GET/api/v1/webhooksLister vos endpoints webhook
POST/api/v1/webhooksCréer un endpoint webhook
DELETE/api/v1/webhooks/{id}Supprimer un endpoint webhook

Statuts WhatsApp

MéthodeEndpointDescription
POST/api/v1/statusesPublier un statut WhatsApp

Instances

MéthodeEndpointDescription
GET/api/v1/instancesLister les instances
GET/api/v1/instances/{id}Détail d’une instance
GET/api/v1/instances/{id}/stateÉtat live d’une instance

Billing public read-only

MéthodeEndpointDescription
GET/api/v1/usageVue usage compacte compatible
GET/api/v1/billing/plansCatalogue des plans
GET/api/v1/billing/subscriptionSouscription et période courante
GET/api/v1/billing/usageUsage, limites et features
GET/api/v1/billing/paymentsHistorique des paiements

Référence interactive

En développement, la Swagger UI est disponible sur :
http://localhost:4000/docs
La spec OpenAPI brute :
http://localhost:4000/docs.json
La Swagger UI n’est pas exposée en production.