POST

Chat.SingleConversations

Return chat messages for one customer conversation from MongoDB messenger, filtered by messenger_meta_id. Includes WhatsApp, Biz1 inboard, notes, email timeline entries, and custom channel types for that thread. Use Chat.Conversations first to obtain messenger_meta_id.

Permissions

  • User must be logged in with a valid bearer token.
  • Returned or changed records are limited by the user permissions, team access, folder access, and account settings.

Action

  • Runs the Chat.SingleConversations function and returns JSON.

Push Service

No push is sent because this function only reads data or returns helper information.

Automation

No automation is run for this function.

Special Instructions

  • Send the bearer token on protected calls with Authorization: Bearer YOUR TOKEN.
  • Send parameters as POST body fields exactly as documented.

Required Parameters

NameTypeSampleExplanation
messenger_meta_id
post
string69dbd3053541bea1809e658dMongo messenger_meta _id for the conversation thread. Aliases: messanger_meta_id, chat_id, meta_id, conversation_id. Get this value from Chat.Conversations.

Optional Parameters

NameTypeSampleWhat it gives
page
post
int1Page number (1-based). Ignored when start/offset is sent.
limit
post
int25Maximum messages to return. Values above 25 are capped to 25.
per_page
post
int25Alias for limit.
start
post
int0Optional row offset. When set, overrides page-based skip.
type
post
stringwhatsappOptional channel filter on messenger.type (whatsapp, biz1, notes, email, or a custom channel type).
customer_id
post
int108545Optional extra filter on contactus_id. Aliases: contactus_id, cust_id.
sort
post
stringdate_descSort hint for the UI. Backend sorts newest first (inserted_date / _id desc).

Authentication

Send the bearer token returned by Login in the request header.

Authorization: Bearer YOUR TOKEN

Sample Request

{
    "url": "\/app\/Chat.SingleConversations",
    "method": "POST",
    "headers": {
        "Authorization": "Bearer YOUR TOKEN"
    },
    "body": {
        "messenger_meta_id": "69dbd3053541bea1809e658d",
        "page": "1",
        "limit": "25"
    },
    "url_user": "https:\/\/{user}.bull36.com\/app\/Chat.SingleConversations",
    "url_domain": "https:\/\/{domain}\/app\/Chat.SingleConversations"
}

Endpoint

POST /app/Chat.SingleConversations
POST https://{user}.bull36.com/app/Chat.SingleConversations
POST https://{domain}/app/Chat.SingleConversations

Sample Output

{
    "success": 1,
    "messenger_meta_id": "69dbd3053541bea1809e658d",
    "customer_id": 108545,
    "contactus_id": 108545,
    "owner": 14,
    "page": 1,
    "limit": 25,
    "total": 42,
    "count": 25,
    "total_pages": 2,
    "source": "mongo.messenger",
    "data": [
        {
            "id": "69e8b2f63541bea180a1c201",
            "messenger_meta_id": "69dbd3053541bea1809e658d",
            "customer_id": 108545,
            "type": "whatsapp",
            "message": "Hello how are you",
            "time": "24.07.2026 11:42:10",
            "direction": 0,
            "user_id": 14,
            "user_name": "User"
        }
    ]
}

Count Only

Use the matching count route with the same filters when the UI only needs total rows for paging.

{
    "url": "\/app\/Chat.SingleConversations",
    "url_user": "https:\/\/{user}.bull36.com\/app\/Chat.SingleConversations",
    "url_domain": "https:\/\/{domain}\/app\/Chat.SingleConversations",
    "method": "POST",
    "headers": {
        "Authorization": "Bearer YOUR TOKEN"
    },
    "body": {
        "messenger_meta_id": "69dbd3053541bea1809e658d"
    },
    "sample_output": {
        "success": 1,
        "count": 123
    },
    "notes": {
        "total": "Total matching messages in the conversation.",
        "count": "Messages returned in this page.",
        "total_pages": "Pages available at this limit."
    }
}

Count JavaScript

const token = 'YOUR TOKEN';
const body = new URLSearchParams();
body.set('messenger_meta_id', '69dbd3053541bea1809e658d');

const res = await fetch('https://{domain}/app/Chat.SingleConversations', {
  method: 'POST',
  headers: { Authorization: `Bearer ${token}` },
  body
});
const data = await res.json();
console.log(data.count);

JavaScript Example

const token = 'YOUR TOKEN';
const body = new URLSearchParams();
body.set('messenger_meta_id', '69dbd3053541bea1809e658d');
body.set('page', '1');
body.set('limit', '25');
const res = await fetch('/app/Chat.SingleConversations', { method: 'POST', headers: { Authorization: 'Bearer ' + token }, body });
const data = await res.json();
console.log(data);

Error Example

{
    "success": 0,
    "message": "Missing required parameter: messenger_meta_id"
}