Reputation: 105
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
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