Skip to main content
Interfaces enable exposing Upsonic agents through various communication protocols and platforms. Each interface provides a standardized way to connect Upsonic agents to external systems, messaging platforms, and frontend applications.

Available Interfaces

Slack

Deploy agents as Slack applications for team collaboration

WhatsApp

Serve agents via WhatsApp for direct messaging interactions

Telegram

Host agents as Telegram bots with webhooks, multi-media, and task or chat modes

Gmail

Connect agents to Gmail for automated email processing and replies

Mail (SMTP/IMAP)

Universal email interface that works with any mail provider (Gmail, Outlook, Yahoo, self-hosted, etc.)

Browse All Interface Integrations

See all messaging platform integrations including advanced Telegram features.

How Interfaces Work

Interfaces are FastAPI routers that mount protocol-specific endpoints on an InterfaceManager instance. Each interface:
  • Wraps Upsonic agents into protocol-compatible endpoints
  • Handles authentication and request validation for the target platform
  • Manages session tracking and context preservation
  • Streams responses back to clients in the appropriate format

Using Interfaces

Interfaces are added to an InterfaceManager instance through the interfaces parameter:
from upsonic import Agent
from upsonic.interfaces import InterfaceManager, SlackInterface

agent = Agent(model="anthropic/claude-sonnet-4-6")

manager = InterfaceManager(
    interfaces=[SlackInterface(agent=agent)],
)

manager.serve(port=8000)
Multiple interfaces can be added to a single InterfaceManager instance, allowing the same agents to be exposed through different protocols simultaneously.