I am looking for method to get the list of all the mailboxes through ews api.
Is there any method call,Get-Mailbox cmd in powershell, that can get me the list of all the mailboxes in an exchange server/ office 365 in EWS API?
No. EWS is used to access mailbox data, not get lists of mailboxes. Get-Mailbox is the way to do it, and you can invoke this programmatically if needed.
ExchangeService.GetSearchableMailboxes is what you need, specify the the filter as an empty string, then you get all the mail boxes.
Related
Is it possible to retrieve emails from multiple inboxes using EWS Managed API 2.2? I am able to retrieve email from an Inbox using ExchangeService passing in Credentials to the service call then doing a FindItems on the service connection. All of this works good.
I would like to get emails from multiple inboxes using a single call. Is this possible. Any sample code would be very much appreciated.
You can acces EWS through either Oauth, NTLM or Basic-authentication, which all are per-request authentication schemes. Oauth takes some initial setup, and NTLM takes 3 requests in total for every EWS request, but in either way, it's just for one user at a time.
I'm trying to search items across folders in office 365 using EWS Java API.
I'm using EWS Java API 1.3 version (https://github.com/OfficeDev/ews-java-api)
I have seen the following link and tried like that in Java but still this one also not working
Exchange Web Services (EWS) FindItems within All Folders
Regards
Ramesh
In 2013 and Office365 the best thing to use to search a Mailbox is eDiscovery which you can use from EWS http://msdn.microsoft.com/en-us/library/office/jj190897(v=exchg.150).aspx . There is nothing in the Java API to use the eDiscovery SOAP operations so you would need to either build those yourself or use raw SOAP or generate some proxyclass to use it.
Cheers
Glen
I'm trying to drop Outlook from my MS Access application. The main problem is to fetch emails from my gmail account and for example delete it or read the body etc.
I know I can use CDO to send email from VBA using my gmail account, but is it possible to get my inbox using VBA?
Thanks.
I have found the solution. There is a library you can use to fetch emails from using IMAP or POP3 protocol via VBA http://emailarchitect.net/eagetmail/kb/vb.aspx
You would need some type of intermediate API call, such as an SMTP service, in order to accomplish this task. You would then be able to setup a CDO object through which to read/write messages.
When a meeting invitee proposes a new meeting time, in outlook this information can be found in the "Scheduling Assistant" (outlook 2007):
Is there any way to access this information programmatically through the EWS API? The RequiredAttendees and OptionalAttendees collections of the Appointment allow me to find out whether and when the attendee has responded, but how can one access the actual proposed new time?
I haven't tried this before but here is how I think you'd go about getting this information. The EWS service and the EWS Managed API don't have this implemented as first class functionality. To be more precise, the propose new time functionality is currently available as first class functionality with Exchange Online. For Exchange Online, you will need to inspect the meeting response message XML for the ProposedStartTime and ProposedEndTime elements. So if you are using Exchange 2007, 2010, and currently 2013, you will need to do what I state in the next paragraph. You should be able to access this information by using extended properties.
An attendee that proposes a new meeting time will always result in the organizer getting a meeting message. When the organizer performs a GetItem request for the meeting message sent by an attendee, the request should request the PR_RECIPIENT_PROPOSED property. A value of true indicates that the recipient proposed a new time. This should trigger a request to get the PR_RECIPIENT_PROPOSEDENDTIME and PR_RECIPIENT_PROPOSEDSTARTTIME property values.
Here is an example of getting this type of property with the EWS Managed API;
Here is a quick property definition:
ExtendedPropertyDefinition PidTagRecipientProposed = new ExtendedPropertyDefinition(0x5FE1, MapiPropertyType.Boolean);
You cannot get this information using the EWS from the Appointment, I'm afraid. It's part of the PR_MESSAGE_RECIPIENTS property, which is a MAPI table (or Object, if you will), and EWS does not support retrieving this. Technically, you could probably get it if you want to build out the ExportItem functionality (a supported function serverside that is not built into the EWS Managed API) and pick through a massive binary stream to find the information, but that's hardly feasible. I haven't tried it myself. The other alternative would be to use something other than EWS to access the data.
I'm using Exchange web services, trying to create a calendar entry in another user's mailbox. My account in EWS has rights to do this, and I can successfully use Impersonation to create thes appointment in any mailbox.
However, some examples I've seen of doing this, use an instance of DistinguishedFolderIdType, not impersonation, to set the mailbox for the appointment.
Problem is, this class simply isn't appearing in my installation of the EWS SDK for Visual Studio. It's v1.1, obtained here, but can't be found in Object Explorer. What am I missing?
The type DistinguishedFolderIdType is not part of the EWS Managed API.
If you do not use the EWS Managed API but generate your own SOAP client proxy manually from Visual Studio by adding a reference to the EWS .asmx service, the generated proxy will contain DistinguishedFolderIdType.
However, depending on what you are trying to accomplish, you should be able to do it using the classes provided på EWS Managed API 1.1 and you won't need DistinguishedFolderIdType.