Razwill
Razwill

Reputation: 105

How to get email signature from OWA/Outlook 365 using EWS Managed API

I have a problem accessing email signature using EWS (Exchange Web Services) Managed API in C#. So far I wrote this code in my Main method:

ServicePointManager.ServerCertificateValidationCallback = CertificateValidationCallBack;
ExchangeService service = new ExchangeService
{
    Credentials = new WebCredentials(mail, password)
};
service.UseDefaultCredentials = false;
service.AutodiscoverUrl(mail, RedirectionUrlValidationCallback);

//CertificateValidationCallBack and RedirectionUrlValidationCallback 
//methods are declared in other place;
//I literally took them from Microsoft site

var OWAConfig = UserConfiguration.Bind(service, "OWA.UserOptions", WellKnownFolderName.Root,
    UserConfigurationProperties.All);

This code works, but, as I understand, OWAConfig should contain all settings from OWA/Outlook 365 - but it doesn't. The OWAConfig variable has a property called Dictionary (as it should), which has 16 entries (eg. entry with key "ClientTypeOptInState" and value 2, entry with key "IsFocusedInboxEnabled" with value true, etc.). But as far as I can tell it doesn't have what I'm most interested in - the email signature.

How can I access email signature configured in OWA/Outlook 365 settings? Should I change the Bind method? Is "OWA.UserOptions" the right parameter? Does it not have the signature? Or maybe it does, but I just can't find it? Please help me.

Upvotes: 1

Views: 1662

Answers (1)

Glen Scales
Glen Scales

Reputation: 22032

With the introduction of the new https://office365itpros.com/2020/05/18/roaming-signatures-outlook-for-windows/ feature the signature does not get stored in that configuration item anymore. Currently Microsoft hasn't released an API to manage this signature data if you look at what OWA is doing with something like fiddler it calls PATCH https://outlook.office.com/ows/beta/OutlookCloudSettings/settings so it maybe a little bit of time before this becomes a production API that third parties can use.

Upvotes: 3

Related Questions