Skip to main content
Paths are relative to https://inkbox.ai/api/v1/whatsapp. Use your authorized agent’s agent_identity_id query parameter where required.

Quote a message

Send to an existing conversation_id and supply the exact reply_to_message_id. The quoted message must be visible in that same conversation. The API does not accept a caller-supplied quote snapshot or silently fall back to a plain message.

Read a quote chain

Both routes accept limit (1–200, default 50) and an optional opaque cursor. Both return exactly these envelope keys:
Messages are chronological and permission-filtered. Do not infer hidden parent content from a missing message. Keep the same route, identity, and limit when following next_cursor; null means the visible chain has no next page. Python exposes identity.get_whatsapp_thread(message_id, limit=50, cursor=None) and identity.get_whatsapp_conversation_thread(conversation_id, thread_id, limit=50, cursor=None). TypeScript exposes getWhatsAppThread(messageId, options) and getWhatsAppConversationThread(conversationId, threadId, options). The CLI commands are whatsapp thread <message-id> and whatsapp conversation-thread <conversation-id> <thread-id> with --identity, --limit, and --cursor. plain_reply_fallback=false explicitly requires a native quote. The option defaults to true, but all currently supported WhatsApp targets support native quotes, so no current target uses a plain fallback. Missing quote evidence or an uncertain send is never permission to send another, unquoted message. See the send contract.