I am trying to retrieve specific Subscriber details using an API request. The details are:

<Envelope xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.xmlsoap.org/soap/envelope/">
        <RetrieveRequestMsg xmlns="http://exacttarget.com/wsdl/partnerAPI">
            <Filter xsi:type="SimpleFilterPart" xmlns:ns1="http://exacttarget.com/wsdl/partnerAPI">

If I remove the filter, I get what I assume is all Subscribers, so I know the format of the request works. But when I do filter all I get is an OK. The IDs I need to filter on are being provided to me by in one of two ways:

  1. The much preferred method: a merge field for the Subscriber ID is added onto an URL in an email I receive.

  2. Alternatively, Subscriber details are regularly added to a Data Extension using automation studio, which I then I'm able to successfully get its contents via an API request. The query used in automation studio is:

    ,CONVERT(varchar, s.EventDate, 103) as 'EventDate'
FROM [_Job] j
INNER JOIN  [_Sent] s ON  j.jobID = s.jobID
s.EventDate > dateadd(d,-30,getdate())

Neither approach seems to give me IDs I'm able to filter on. Is there a different approach here I should be taking? Unfortunately I have no access via the SFMC front end - I'd have to pass instructions on -, only via API requests.

I've looked in:

  • How does the Subscriber ID value you get look? Only contain numbers there? Is there any characters?
    – Duc Le
    Commented May 9, 2023 at 13:45
  • @DucLe they look like 10 digit numbers
    – dlp_dev
    Commented May 9, 2023 at 14:35

1 Answer 1


s.subscriberID field from the data extension should give {{myID}} which is filterable in SOAP API retrieve call.

I assume that you don't see any records through automation studio and if this is right, there are chances that you are running the query in automation studio from a wrong business unit. Did you try adding Ent. Prefix to the data views like the query below:

SELECT j.JobID ,j.EmailName ,s.subscriberID ,s.SubscriberKey ,CONVERT(varchar, s.EventDate, 103) as 'EventDate' FROM Ent.[_Job] j INNER JOIN Ent.[_Sent] s ON j.jobID = s.jobID WHERE s.EventDate > dateadd(d,-30,getdate())

You must log in to answer this question.

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