Hi @Jarvis Roamless Paul here from weekend support engineering to help you out 🤝
This issue happens because Intercom doesn’t automatically merge anonymous and identified users in the mobile SDK.
When you start with loginUnidentifiedUser() and later switch to loginIdentifiedUser() with a JWT, Intercom creates a new user profile, and the previous anonymous conversations become inaccessible — which causes the 404 you're seeing.
Use the Contacts Merge API to merge the anonymous user into the identified one after login:
POST /contacts/merge
{
"from": { "type": "user", "id": "anonymous_user_id" },
"into": { "type": "user", "user_id": "your_user_id" }
}
You can get the anonymous user’s ID from Intercom.getVisitorId() before switching sessions.
Let me know if you want help setting this up!