I'm currently building a clienteling app that integrated the Mobile Push SDK on both iOS and Android and encountered some issue on switching the account.

I found that when I login to user A, and set contact key to A, the Inbox Messages will be send to this device. However, I logout user A and switch to a user B, I should set the contact key to B. But seems the inbox messages are associated with the Device instead of Contact, I can still see the inbox messages that were sent to contact A previously.

My question is, how should we deal with this situation, to prevent from seeing the previous inbox messages if the contact key has been changed?

1 Answer 1


First, as of 2018-11-16 neither the SDK nor the Marketing Cloud supports the use-case you describe. Please open a Voice of Customer (VoC) request through your account manager. The more of these requests that exist the more likely it is the feature will be implemented.

Now, we do have people who have successfully implemented your use-case. It requires that you send the ContactKey (or similar unique identifier) along with your inbox message in a "Custom Key". Then you would implement your inbox message adapter such that you inspect your custom key to determine whether or not your message should be included in the message list.

UPDATE 20190108 -- Apparently, I have misspoken. This was our understood solution from the SDK's perspective until such time that the messages could be filtered at the system level for a given contact, but we are mistaken. You are correct in your comment that messages are rendered at the time that they are downloaded. There is work underway to allow for the use-case you describe.

UPDATE 20200924 -- Inbox messages can now be targeted to a Contact rather than a device. Your application in the Marketing Cloud must be configured to do so. Please contact your support representative for more information.

  • Hi Bill, we tried this before as well. But soon we realised it won't solve the issue. As the inbox messages are re-rendered (not cached) at time of request from the SDK, the custom key is not fixed and will be updated every time the contact key has been switched.
    – Parker Liu
    Jan 8, 2019 at 4:11
  • It's a basic feature that SDKs should be able to offer to developers. Firebase and crashlytics for example do that. This is not a solution for the current problem. I'm facing the same issue with notifications. As we have a way to set the current contact key, we should be able to clear it. Sep 23, 2020 at 16:56
  • Poster did not ask for a way to clear Contact Key @douglas.iacovelli
    – Bill Mote
    Sep 24, 2020 at 12:01
  • I'm sorry about that. The use case seemed pretty close to me. I'm opening a new question for that matter Sep 24, 2020 at 16:17
  • No big deal @douglas.iacovelli and it brought attention to this question/answer which deserved an update :). Thanks!
    – Bill Mote
    Sep 24, 2020 at 17:00

You must log in to answer this question.

Not the answer you're looking for? Browse other questions tagged .