Outeract

The unified messaging gateway and event ledger. Connect every platform — every message becomes a structured, queryable event.

Outeract connects WhatsApp, Instagram, Telegram, Slack, Discord, SMS, Email and more through a single GraphQL API. Inbound and outbound messages, delivery receipts, and your own custom events all land in one event ledger — linked by graph edges to users, identities, conversations, and files.

Why Outeract?#

ChallengeOuteract solution
One API per platformA single GraphQL API and one sendMessage for 10 platforms
OAuth complexityManaged platform connections with automatic token refresh
Webhook chaosOne inbound webhook architecture; signed, retried outbound subscriptions
Fragmented identityUsers with multiple platform identities, linkable across channels
Reconstructing stateAn event ledger with graph edges — traverse relationships, don’t rebuild them
Blind operationsBuilt-in console with a live event stream, delivery logs, and health checks

Quick start#

Get up and running in under five minutes:

1. Create an application — sign in at outeract.com/console and create your first app.

2. Create an API key — in Config → API Keys, create a key with the scopes you need.

3. Connect a platform — in Config → Platforms, connect WhatsApp, Slack, Telegram, or any other channel via OAuth or a bot token.

4. Send your first message:

mutation SendMessage {
  sendMessage(
    recipientUserId: "user-uuid"
    message: "Hello from Outeract!"
    platform: WHATSAPP
  ) {
    id
    eventTypeName
    createdAt
  }
}
curl -X POST https://api.outeract.com/ \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "query": "mutation { sendMessage(recipientUserId: \"user-uuid\", message: \"Hello from Outeract!\", platform: WHATSAPP) { id eventTypeName createdAt } }"
  }'
import requests

response = requests.post(
    "https://api.outeract.com/",
    headers={"Authorization": "Bearer YOUR_API_KEY"},
    json={
        "query": """
            mutation SendMessage($userId: UUID, $message: String) {
              sendMessage(recipientUserId: $userId, message: $message) {
                id
                eventTypeName
              }
            }
        """,
        "variables": {"userId": "user-uuid", "message": "Hello from Outeract!"},
    },
)

print(response.json())

The API is plain GraphQL over HTTP — no SDK required. Open api.outeract.com in a browser for the built-in GraphiQL explorer.

How it fits together#

flowchart TB
    Platforms["Messaging platforms<br/>WhatsApp · Slack · Telegram · …"] --> Outeract["Outeract<br/>gateway · event ledger"]
    Outeract -->|signed webhooks| App["Your application"]
    App -->|sendMessage / GraphQL| Outeract
    Outeract -.->|live view| Console["Outeract console"]

Messages flow in from every connected platform, become structured events in the ledger, and reach your application through signed webhook subscriptions or GraphQL queries. Your app sends replies back through the same gateway.

Core features#

Event ledger with graph edges — every message, delivery receipt, and custom event carries typed edges to users, identities, conversations, and files. Query your entire messaging history with powerful filters.

Auto-created conversations — inbound messages are threaded into conversations automatically, matched on participant sets. No session bookkeeping in your app.

Account linking — connect user identities across platforms with secure link codes, so the WhatsApp user and the Slack user resolve to one person.

Outbound webhooks — subscribe to events with pattern matching (message.*), HMAC-signed payloads, automatic retries, and per-delivery logs.

Custom events & schemas — define your own event types with JSON Schema validation and mix product events into the same ledger.

Health monitoring — per-connection health checks and delivery metrics, in the console and over the API.

Documentation#

Getting Started#

Create your account, authenticate, and send your first message in minutes.

Core Concepts#

Understand applications, users, events, and the graph-based data model.

API Reference#

The complete GraphQL API, with real queries and mutations.

Platform Guides#

Step-by-step setup instructions for each messaging platform.

How-To Guides#

Practical guides for webhooks, schemas, account linking, and files.

Reference#

Configuration options, event types, error codes, and rate limits.

Support#