Overview
The Inbox Enterprise API is built around managing conversations across messaging platforms. Understanding these core concepts will help you build effective integrations.Multi-Platform Future: While the API currently supports X (Twitter) DMs, it’s designed to support Instagram, LinkedIn, TikTok, and WhatsApp in the future. The data model is platform-agnostic where possible.
Key Entities
Threads
A thread represents a DM conversation between one of your account links and a prospect.- One thread per prospect-account pair
- Can be assigned to team members
- Can be marked as “done” to archive
- Contains all messages in the conversation
Messages
Messages are individual DMs sent or received in a thread.inbound: Messages received from the prospectoutbound: Messages sent by your team
Prospects
A prospect represents an external user on a messaging platform.- Prospects are shared across all account links in your team
- Profile data is synced from the platform
- You can add custom context (notes, valuation, tags, status)
Account Links
An account link is a messaging platform account connected to your team.- Send messages from specific accounts
- Filter threads by account
- Manage multi-account workflows
Tags
Tags are flexible labels you can apply to prospects for organization.- Segment prospects (e.g., “Hot Lead”, “Customer”, “Partner”)
- Track source (e.g., “Twitter Ad”, “Referral”)
- Custom categorization
Statuses
Statuses represent a fixed pipeline stage or state for a prospect.- A prospect can have multiple tags but only one status
- Statuses are ordered (e.g., “New → Qualified → Customer”)
- Ideal for sales pipelines
Members
Members are users on your team who can access the API and inbox.- Assigning threads to specific team members
- Filtering by assignee
- Access control (coming soon)
The Dual ID System
Inbox uses two types of IDs for platform-related objects:Inbox ID
Format:
id
Example: "thread_abc123"The internal Inbox database ID. Use this for all API operations.Platform ID
Format:
platformId
Example: "123456789"The original ID from X (or other platforms). Use this to lookup or reference objects from the platform side.Thread States & Inbox Views
Threads can exist in different states, which determine their inbox view:Default View
Active conversations that need attention.No-Reply View
Threads where you sent the last message but haven’t received a reply.Requests View
New message requests from prospects who haven’t messaged you before (or were previously deleted).Archived View
Threads marked as “done” that are removed from active views. Example: Filtering by viewEntity Relationships
Pagination Pattern
Most list endpoints use cursor-based pagination:Platform Field
All platform-related entities include aplatform field:
'x' is supported.
Future: Use this field to handle multi-platform scenarios:
Context Data
Prospects support custom context data for your workflow:Best Practices
Always use Inbox IDs for operations
Always use Inbox IDs for operations
When making API calls, use
id (Inbox ID) not platformId. Only use platformId for lookups.Cache platform data appropriately
Cache platform data appropriately
Prospect profile data (followers, etc.) is synced periodically but may be stale. Don’t rely on it being real-time.
Use tags and statuses together
Use tags and statuses together
Handle pagination properly
Handle pagination properly
Always implement pagination to avoid missing data or hitting response size limits.