I’m trying to get the list of Contacts from Audience Manager using the Tridion.OutboundEmail.ContentDelivery.Profile. But I am not getting some method to do the same. How I can do it? My requirement is : I have a list of users and one of the user is Admin who can add more users to this list. All the users added by this admin will be tagged by a specific keyword. Now I want to get the list of the contacts who are tagged by this specific keywords so that Admin can modify any user from this list.
Tridion.OutboundEmail.ContentDelivery namespace classes are intended for Contacts to manage their own profile within your web applications. For management of contacts by an administrator consider using the CM-side Audience Manager API (found in SDL Tridion 2013 Audience Manager API.chm), or simply use the Content Explorer GUI for adding and removing contacts.
As Will Price explains, there is indeed no method available on the delivery side to get a list of all Audience Manager contacts. I once had a discussion about this with one of the developers and they explained me the reasoning behind that was privacy (preventing users from seeing the profile of other users).
My requirement at the time was a social use case, where a list of all users was not seen as a privacy issue (provided we hide personal details, just showing things like name and image in the list).
The solution I came up with wasn't one of the cleanest, but I'll share it with you anyways. I basically made a Page Template which would list all Audience Manager Contacts and output them as an XML document. So you could publish this Page to your delivery side, and then have an XML document to read from your delivery side (since it gets published to some location in your website). The tricky part was when to publish this Page, as there are no events triggered on Contact creation, I planned on using the confirmation email that was sent for each new user (adding a TBB in its Page Template, which would publish the users list Page).
Now I don't remember if that actually worked or not (it was a long time ago), but I'll leave that up to you to sort out. Because somewhere in my memory I recall the issue of an email Page only being rendered when you test it, and it is not actually rendered every time it is sent. So that would break this whole idea again, but if so, it hopefully has given you enough ideas to figure out how to get it working...