Platforms
MorisBox is one Partner API that reaches users across several client surfaces and delivery channels. This page catalogs everything available today.
At a glance
| Layer | Description | Used by |
|---|
| Partner API | REST API (/api/v1) for messages, accounts, templates, bots, and webhooks | Your backend |
| Partner Hub | Web console for keys, bots, templates, and support replies | Partner operators |
| Partner Docs | This site - API reference and integration guides | Developers |
| Mobile app | Native iOS / Android end-user app (Expo) | End users |
| Client Application | Progressive web app (the same product as mobile) | End users |
| Realtime | Live push for inbox, chat, and broadcasts | Mobile / Client Application |
| In-app channel | Delivery inside MorisBox mobile / Client Application | Primary path |
| WhatsApp channel | Fallback / reach when in-app is unavailable | Fallback |
| SMS channel | Final fallback for OTPs and critical alerts | Fallback |
One send call; MorisBox selects the best channel in order.
Delivery channels
Configured per partner as an ordered chain, which each message can override. A typical production order is:
| Order | Channel code | Surface | Typical use |
|---|
| 1 | inapp | MorisBox Mobile and Client Application | Hub messages, flows, newsletters, and chat - the richest experience |
| 2 | whatsapp | WhatsApp | User offline / without the app; template-compatible alerts |
| 3 | sms | SMS | OTPs, unclaimed accounts, and last-resort text |
Behavior notes
| Topic | Rule |
|---|
| Claimed account | Prefer inapp after the user claims MorisBox |
| Unclaimed account | In-app is generally skipped (not_claimed) → WhatsApp / SMS |
| OTP | Can force SMS / WhatsApp when no app session exists yet |
| Timeouts | Per step; after failure or timeout → next channel |
| Offline reminder | After in-app delivery, if the user is offline → WhatsApp/SMS “new message in MorisBox” notice without the E2EE body |
| Idempotency | The same idempotency_key does not trigger duplicate fan-out |
See Core Concepts for the account lifecycle and Messages for send payloads.
End-user platforms
Users authenticate with their phone number and an OTP. Linked partners appear in their hub.
Mobile (iOS / Android)
| |
|---|
| Product | Native MorisBox app (Expo) |
| Authentication | Passwordless OTP |
| Features | Partner hub, standalone messages, media, HTML newsletters, link CTAs, interactive flows, bots, support conversations, pin / unread, and realtime updates |
| Best for | Full offline-capable experience, push-ready clients, and production consumers |
Client Application (web)
| |
|---|
| Product | The same end-user product as a progressive web app |
| Authentication | Passwordless OTP |
| Features | Same hub model as mobile: messages, flows, bots, support, and newsletters |
| Best for | Immediate access without an app-store install; partner demos and desktop users |
What users see (hub model)
| Area | Purpose |
|---|
| Messages | Standalone partner items (text, media, link, HTML, and flow cards) - not a chat thread |
| Forms / bots | Interactive multi-step flows and bot menus |
| Conversations | Support threads started by the user |
Partner API POST /messages always targets the hub, not support chat. Details: Message UI and Experiences.
Partner platforms
Partner API
| |
|---|
| Base | https://api.morisbox.com/api/v1 (sandbox) |
| Authentication | Authorization: Bearer <api_key> |
| Capabilities | Send all content types, accounts and linking, templates, broadcasts, agent conversations, bots, webhooks, and sandbox |
Full map: API Overview · Quickstart · Authentication.
Partner Hub
| |
|---|
| Product | Web console for operators |
| Typical tasks | API keys, templates, channel settings, bot / flow configuration, support replies, sandbox phones, and compliance |
| URL (sandbox) | https://partner.morisbox.com |
Developer dashboard
Partner documentation
| |
|---|
| Product | Partner docs (docs.morisbox.com/partners) and Developer docs (docs.morisbox.com/developers) |
| Audience | Partner and developer integration engineers |
| Scope | REST, media types, newsletters, flows, bots, webhooks, developers, and sandbox |
Realtime platform
Live updates for end-user clients: new hub messages, conversation events, and broadcast delivery.
| |
|---|
| Transport | Socket.IO through the realtime edge |
| Clients | Mobile and Client Application with authenticated user sessions |
| Scaling model | Stateless gateways; rooms per user account |
| Partner impact | You send once through REST; clients update live without polling |
Partner backends do not call the realtime layer for normal sends - the Partner API is sufficient.
Content types by platform
content_type | In-app (mobile / Client Application) | WhatsApp | SMS |
|---|
text | Full | Yes (text) | Yes (truncated) |
image | Full viewer | Provider-dependent | Link / skip |
document | Download / open | Provider-dependent | Link / skip |
audio | Player | Provider-dependent | Link / skip |
video | Player | Provider-dependent | Link / skip |
link | CTA card | Text and URL | URL |
html | Complete HTML newsletter reader | Summary / link | Summary / link |
flow | Interactive multi-step UI | Invitation text and deep link | Invitation text |
system | Platform notice | Rare | Rare |
The richest experience is always in-app. Design payloads for in-app first and retain SMS-compatible short text for last-mile fallback.
Interactive platforms (flows and bots)
Platform matrix (who talks to what)
Your systems
│ Partner API key
▼
Partner API ──────► routing (inapp → whatsapp → sms)
│ │
│ ├─► Mobile / Client Application (hub + realtime)
│ ├─► WhatsApp
│ └─► SMS
│
├─► Partner Hub (operators)
└─► Webhooks → your HTTPS endpoints
Availability summary
| Platform | Status | Notes |
|---|
| Partner REST API | Available | Production path for integrations |
| Partner Hub | Available | Operations and configuration |
| Partner Docs | Available | This site |
| Mobile app | Available | iOS / Android through Expo |
| Client Application | Available | Same product family as mobile |
| Realtime push | Available | Live inbox, chat, and broadcasts |
inapp channel | Available | Primary delivery |
whatsapp channel | Available | Adapter / provider configured per deployment |
sms channel | Available | Adapter / provider configured per deployment |
| Sandbox keys | Available | Risk-free send testing - Sandbox |
| In-app E2EE | Available | Conversations and sealed hub payloads - E2E Encryption |
| Email / native push channels | Roadmap | Not in the default chain yet |
Provider connectivity for WhatsApp and SMS depends on the environment (live keys versus local stubs). The fallback-chain behavior is the same in every environment.
Choose the right surface
| Goal | Use |
|---|
| Send OTP / critical alert | Partner API → chain prioritizing SMS/WA as needed |
| Rich newsletter or media | content_type=html / image / video → in-app first |
| Multi-step form (SEED-style) | Flow invitation and flow runner |
| Ongoing support | User starts a conversation; agent replies through Hub / API |
| Mass announcement | Broadcast API |
| Automated menus | 360Bots (local or service runtime) |
Next steps