We are experiencing an issue where conversations started via the JavaScript Messenger are not being associated with the company object provided during initialization. While the session ping correctly identifies the active_company_id, the resulting Conversation object via the REST API doesn’t returns companies at all.
Steps to Reproduce:
-
Initialize the Intercom Messenger using the
window.intercomSettingssnippet. -
Provide a valid
user_id,user_hash(Identity Verification), and acompanyobject (including a validcompany_id). -
The Messenger boots successfully;
identity_verifiedistrue. -
Start a brand new conversation as the user.
-
Fetch that specific conversation via the REST API (
GET /conversations/{id}).
Expected Result: The companies/company_id field in the Conversation JSON response should contain the company object passed during initialization.
Actual Result: The companies field is either missing.
Technical Context:
-
Identity Verification: Enabled. The
user_hashis generated correctly for theuser_id. -
Intercom Version: 2.11
-
Messenger Payload: ```javascript window.intercomSettings = { app_id: "...", user_id: "...", user_hash: "...", company: { company_id: "ORG_123", // This ID exists in our Intercom database name: "Test Company" } };
-
Observation: In the browser Network tab, the
pingresponse correctly showsactive_company_id: "ORG_123". However, this data does not persist to the Conversation record in the database/API.
Question: Why is the association failing for new conversations?