Marketing Cloud SOAP API Retrieval of All Subscriber List returns a List that does not exist

marketing-cloudmarketingcloudapirest-apisoap-api

I am retrieving the All Subscribers list via SOAP calls then using the Customer Key returned to then create a Triggered Send definition.

For one particular customer, the All Subscribers list Object that is returned does not seem to exist. A List object is returned by Marketing Cloud, however the CustomerKey of this List object does not match the CustomerKey of All Subscribers list that is within Marketing Cloud. This is not something I have run into previously.

When I attempt to then use the CustomerKey of this List to create a TriggeredSend, I receive the general, unhelpful error from SOAP (Error Code: 2 with the generic message containing a log id), and from Rest I receive the error 'MCMS_UTM_Validation_InvalidValue_list: Unable to find List All Subscribers – xxxxxx'. (xxxxxx rather than the number as I do not know if this is sensitive data or not)

When I retrieve an existing Triggered Send definition via Rest Api, all have the correct All Subscriber CustomerKey defined.

I have tried querying for All Subscribers a few ways using SOAP retrieve of a List:

ListName EQUALS 'All Subscribers'
ListName LIKE 'All Subscribers'
CustomerKey LIKE 'All Subscribers'

All return only a single List definition, all the incorrect definition. I cannot retrieve the actual All Subscriber List that exists within Marketing Cloud via SOAP no matter how much I try.

CustomerKey EQUALS 'All Subscribers – xxxxxx' return no results.

I can get around this by hard-coding the CustomerKey for TriggeredSend definition creation, but I am unsure of what other repercussions this behavior may have in this BU (things like adding subscribers).

So, my question is: Has anyone run into this or have any suggestions for further filtering on Api calls to retrieve the correct List?

As additional information, this is within parent child business units. The Installed Package allowing Api access is created in the Parent and Licensed to the child. Within Marketing Cloud, the Parent and the Child both show the same CustomerKey for All Subscribers which is not that returning via Api. Auth tokens have been generated using both the Parent and the Child MIDS, both returning this same, seemingly-nonexistent All Subscriber list rather than the list shown with Marketing Cloud.

Best Answer

In Enterprise Accounts, there is an All Subscribers list per child Business Unit. This List is returned when using an Auth token generated using the Child Business Unit's account id in the token request.

This List is not useable for Triggered Sends or anything else. It is also not visible anywhere within the Marketing Cloud UIs.

In order to retrieve the All Subscribers List shared thru all BUs in an Enterprise Account, you must retrieve a token using the Parent BUs account id/Mid then use this to make the query. This also means that your installed package must be licensed for the Parent BU and have proper scopes added.

This is the answer. A non-useable List is returned when querying using Child BU tokens.

Related Topic