Integrations

Connect every channel, keep it isolated

Inno Message integrates directly with the providers you already use — and abstracts their credentials away from your partners behind a single, clean API.

WhatsApp Business Cloud API

Meta · Bidirectional — send & receive

Connect WhatsApp Business Cloud API accounts for bidirectional customer messaging at scale, with template management and per-gateway verification.

  • Inbound messages, delivery & read receipts
  • Template status updates
  • HMAC-SHA256 signature verification
  • Dedup by provider_message_id

SendGrid Email

SendGrid · Outbound send + event webhook

Configure multiple SendGrid accounts as named gateways with delivery, open, click and bounce tracking, plus per-gateway limits and failover.

  • delivered, open, click, bounce, deferred, dropped
  • Per-gateway delivery & open rates
  • Daily send limits & counters
  • Dedup by sg_message_id

Twilio SMS

Twilio · Outbound send + status callback

Manage Twilio connections for programmatic SMS with per-message cost tracking and real-time delivery confirmation via status callbacks.

  • queued, sent, delivered, undelivered, failed
  • Per-message cost tracking
  • E.164 sender & messaging service SID
  • Dedup by MessageSid

Facebook Messenger

Meta Graph API · Bidirectional

Connect Facebook Pages to receive and reply to Messenger conversations inside the unified inbox, with echo messages filtered automatically.

  • Inbound messages & attachments
  • Replies from the unified inbox
  • Per-page access tokens & app secret
  • Dedup by message.mid

Instagram Direct

Meta Graph API · Bidirectional

Connect Instagram Business accounts to handle DMs alongside every other channel, with text and media support in one thread.

  • Inbound DMs — text & media
  • Replies from the unified inbox
  • Per-account access tokens
  • Dedup by message ID

Webhook system

Inno Message · Inbound event processing

A resilient receiver logs every raw payload before processing, returns HTTP 200 immediately to prevent provider retries, and offers a built-in debug console.

  • Raw payload captured first (never lost)
  • Fast-ack to avoid timeout retries
  • Fallback file logger if DB is down
  • In-app payload inspector
Reliable by design

Webhooks that never drop an event

The webhook receiver accepts and logs the raw payload before any processing, so no event is lost even if bootstrap fails. HTTP 200 is returned immediately — using fastcgi_finish_request() when available — to prevent Meta/Twilio timeout retries, and message deduplication by provider message ID prevents double-processing of retried webhooks.

See webhook events
webhook · inbound
# 1) Capture raw payload  2) ack fast  3) process
POST /api/webhook.php
X-Hub-Signature-256: sha256=••••   # verified vs App Secret

 200 OK            # returned before processing
 saved to webhook_logs (source, ip, headers, payload)
 dedup by provider_message_id
 routed to inbox / delivery status update