OmniManager Docs

Développeurs

Comment fonctionnent les clés API

Créer, sécuriser et utiliser une clé API OmniManager — ce qu'elle permet et ses limites anti-spam.

Not available in English yet

This article has not been translated, so it is shown in French.

Une clé API (omk_live_…) permet à un logiciel externe (votre site, votre CRM, un script) d'agir sur votre compte OmniManager sans que vous soyez devant l'écran : lister vos boutiques, connecter WhatsApp, envoyer des messages, publier un statut, déclarer un contact consentant.

Créer une clé

Paramètres → API → « Créer une clé ». La clé brute n'est affichée qu'une seule fois : copiez-la immédiatement, OmniManager ne conserve que son empreinte et ne peut pas vous la redonner. En cas de perte, régénérez-la.

Sécurité

⚠️ Ne partagez jamais votre clé dans un message, un dépôt de code public ou une capture d'écran. Toute personne qui la possède peut agir à votre place dans la limite des permissions accordées.

Trouver votre boutique avant toute chose

Chaque appel identifie une boutique par son identifiant ou son nom exact. Si deux boutiques portent le même nom, l'appel échoue avec 409 AMBIGUOUS_SHOP — utilisez alors l'identifiant.

curl -H "Authorization: Bearer omk_live_VOTRE_CLE" https://app.omni-manager.com/api/v1/shops?limit=20

Ce que vous pouvez faire

  • Lister et créer des boutiques
  • Connecter/déconnecter WhatsApp (QR code)
  • Envoyer des messages WhatsApp, consulter leur état
  • Publier un statut WhatsApp
  • Lister vos groupes WhatsApp
  • Déclarer ou retirer des contacts consentants (pour envoyer à des numéros

qui n'ont jamais écrit à la boutique sans les compter comme « inconnus »)

Ce que vous ne pouvez pas faire — les limites anti-spam

OmniManager protège votre numéro WhatsApp contre le bannissement : un plafond quotidien et horaire de messages, un plafond réduit pour les numéros jamais contactés (« froids »), un plafond dédié pour les contacts que vous avez déclarés, et un blocage si le même texte part vers trop de destinataires différents en une heure. Un destinataire qui répond « STOP » ne peut plus être recontacté tant qu'il n'écrit pas à nouveau.

Le détail complet (codes d'erreur, valeurs par défaut) est dans Messaging & the anti-ban policy (article anglais, partagé avec la documentation développeur publique).

Exemple : envoyer un message

curl -X POST -H "Authorization: Bearer omk_live_VOTRE_CLE" \
  -H "Content-Type: application/json" \
  -d '{"channel":"whatsapp","to":"+24177000000","text":"Bonjour !","idempotencyKey":"commande-1234"}' \
  https://app.omni-manager.com/api/v1/shops/ID_BOUTIQUE/messages

La réponse (202) contient l'identifiant du message et le verdict de la politique anti-spam qui a laissé passer l'envoi. Interrogez ensuite GET /messages/ID_DU_MESSAGE pour connaître son état final (sent, failed, rejected).

MarkdownOpenAPI schema