I need Contact Keys of contacts on MobilePush Demographics. Can someone explain how can I manage to retrieve Contact Key on the custom attribute on MobilePush Demographics?

I've tried these, but none of them worked. I'm going to write each solution I tried, so that this may help others not to try these steps, because these won't work.

  1. Created a filtered MobilePushList and query activity to gather ContactKey and DeviceID attributes, but query kept saying that DeviceID field is not available. Then I learned that on mobile lists, only SubscriberKey is accessible. https://salesforce.stackexchange.com/a/286994/78225
  2. Extracted that list by using Data Extract and when I checked the csv of this activity, these are the fields that are available with mobile lists: SubscriberKey,CustomerKey,AudienceId,TrackingCode,AudienceCode,SegmentCode,SegmentName,Priority,SegmentID,SplitID,SplitName,SplitCode,SendGroupID

This makes no sense, since when you manually export mobile push lists, you can see that all MobilePush Demographics attributes are in that file, even Contact Key! I can't use this file in an automation, because files are different when you manually export and export with an automation.

  1. Checked _PushAddress data view, but there is only ContactID on that table, not ContactKey.
  2. There was a data view called AllContacts which was really useful as I can tell but for some reason Salesforce decided to make it unavailable: https://help.salesforce.com/articleView?id=000314893&type=1&mode=1
  3. Tried to use _Subscribers data view, since it has both SubscriberKey and SubscriberID, but not all of our contacts are in that table, so that is also dead end.
  4. Finally, tried this, which was the closest one to the solution: https://developer.salesforce.com/docs/api-explorer/sfmc/contacts/post-contacts-v1-addresses-search-attributename This also didn't work, because we have more than 4 million contacts, and this consumes our API limit like hell, and couldn't get the data for all of our contacts.

Is there anyone that can help me on this?

  • You need ContactKey and DeviceID? Option 6 is probably the way to go. For the time being, SFMC doesn't have any means of actively monitoring API usage against your quota. That doesn't mean they won't get cluey to it, but they're busy selling super message and contact quota upgrades. It's your data. Dispute any charge and it'll keep them spinning wheels forever. They don't really know which API calls come from you or are internal to SFMC. Say, "prove it was me that made that API call".
    – Macca
    Aug 7, 2020 at 13:50
  • Thanks, I'll consider this information :)
    – Baran Sen
    Aug 10, 2020 at 10:32

1 Answer 1


In Mobile Push >> Manage Contacts >> Lists

You can export a filtered lists, This will only export subscribers on that list that exist in Mobile Push, but it will include fields:

  • Subscriberkey
  • DeviceID
  • AppID
  • Platform
  • Platformversion
  • last modified
  • OptinDate
  • OptoutDate
  • Tags
  • Custom Attributes
  • 2
    Thanks but I need an automation to do this, since it's not possible to manually export and import all the time...
    – Baran Sen
    Aug 9, 2020 at 21:18

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.