Sign Up

Sign Up to our social questions and Answers Engine to ask questions, answer people’s questions, and connect with other people.

Have an account? Sign In

Have an account? Sign In Now

Sign In

Login to our social questions & Answers Engine to ask questions answer people’s questions & connect with other people.

Sign Up Here

Forgot Password?

Don't have account, Sign Up Here

Forgot Password

Lost your password? Please enter your email address. You will receive a link and will create a new password via email.

Have an account? Sign In Now

You must login to ask a question.

Forgot Password?

Need An Account, Sign Up Here

Please briefly explain why you feel this question should be reported.

Please briefly explain why you feel this answer should be reported.

Please briefly explain why you feel this user should be reported.

Sign InSign Up

The Archive Base

The Archive Base Logo The Archive Base Logo

The Archive Base Navigation

  • SEARCH
  • Home
  • About Us
  • Blog
  • Contact Us
Search
Ask A Question

Mobile menu

Close
Ask a Question
  • Home
  • Add group
  • Groups page
  • Feed
  • User Profile
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Buy Points
  • Users
  • Help
  • Buy Theme
  • SEARCH
Home/ Questions/Q 8738627
In Process

The Archive Base Latest Questions

Editorial Team
  • 0
Editorial Team
Asked: June 13, 20262026-06-13T10:46:12+00:00 2026-06-13T10:46:12+00:00

I have a requirement. I need to access a user’s email that is on

  • 0

I have a requirement. I need to access a user’s email that is on company specific domain. I need to get the calendar of that user and publish it to web application. I am exhausted finding any API that can help me to do that. The email client used by company is Thunder Bird, So , in specific, I need to access calender’s from Thunder Bird for that particular user. Can any one tell me some suggestions for this.

  • 1 1 Answer
  • 0 Views
  • 0 Followers
  • 0
Share
  • Facebook
  • Report

Leave an answer
Cancel reply

You must login to add an answer.

Forgot Password?

Need An Account, Sign Up Here

1 Answer

  • Voted
  • Oldest
  • Recent
  • Random
  1. Editorial Team
    Editorial Team
    2026-06-13T10:46:13+00:00Added an answer on June 13, 2026 at 10:46 am

    Kumar

    Your question is very unprecise (what kind of is the server providing the emails/calendars? Is there a LDAP Domain? And so on). I suppose you are talking about an old Exchange Server because of some Domain and WebDAV and problems while searching? But I maybe can give you at least a bit of help, that may lead you to already trodden paths of other coders, so that you may find a simple and fast solution.

    Today I finished a M$ Exchange 2003 Connector as a proof-of-concept. And I tell you, that it was really hard for me as a student while an Internship. Nonetheless, I researched and searched and queried and annoyed other to get hints for a useful API, but none fulfilled my purposes.

    One small framework I found which is nice to use is called Sardine WebDAV Client for Java. The project is very light-weighted, though it was helpful to get an idea how WebDAV works, even due to sources you can always look at.

    All other solutions aimed at a lot of different MAPI CC++ Libs for Linux. That was no option for me.

    So, what options did I have? No direct access to the customers Exchange 2k3 Server, but one email account. So you all may forgive me, but I found it much easier to make a POST request to the E2k3 Server via OWA, because it was activated than trying some heavy lib supported ways of accessing.

    Maybe this comes to your avail- Get the form-field information from the OWA form and build a connection string you Post to the server. Perhaps this is a string that might give you an idea. So you need to call a DLL like this:

    HttpPost httpPost = new HttpPost("https://" + getUrl()
            + "/exchweb/bin/auth/owaauth.dll");
    
    httpPost.setEntity(new StringEntity("destination=https%3A%2F%2F"
        + getUrl() + "%2Fexchange%2F&flags=0&username=" + getUser()
        + "&password=" + getPassword()
        + "&SubmitCreds=Log+On&trusted=4&flags=4", "UTF-8"));
    

    The information how to make a form based authentication came from here: Exchange 2003 Forms-Based Authentication. As you can see I grabbed from the browser the Link, which is used to communicate with the E2k. The next step is simple – send the request and wait for…

    HttpResponse response = httpclient.execute(httpPost);
    

    If you get a good response in return, then you can filter out the Session ID. The next step after a successful login is to search for appointments. Therefore you should find a appropriate method to work with on an established WebDAV connection by asking M$ for some Information: SEARCH Method

    Then, you read what it can do. I went on with a well-known Find-Machine and queried for Searching Calendar Folders with WebDAV.

    After that you can create a POST request like this:

    HttpPost hp = new HttpPost(
        "https://owa.SERVER.de/exchange/USER/Calendar") {
         @Override
         public String getMethod() {
             return "SEARCH";
         }
        };
    

    Now you can make use of the SEARCH method. That is good, because your program is ready to send the request.

    hp.setEntity(new StringEntity(QUERY, ContentType.TEXT_XML));
    HttpResponse response = httpclient2.execute(hp);
    

    I know it is no perfect solution. Because there were two circumstances which made me wonder. Firstly: I retrieved a Session ID, but I wasn’t in need to re-use it anywhere, as long as I kept it in a field. And secondly: I needed to call for another HttpClient. I cannot explain right now. If I used the same HttpClient I used for logon, then all request were in vain. That is why I had to call another HttpClient.

    The last and most difficult step was to get behind the query, because the only debugging help I had were HTTP Error Numbers and the bad descriptions in the MSDN. Sorry for that. Well, this is what really worked fine. I got behind it with Trial and Error.

    private final static String QUERY = "<?xml version=\"1.0\"?><g:searchrequest   
        xmlns:g=\"DAV:\"><g:sql> Select \"DAV:href\", \"urn:schemas:calendar:dtstart\",   
        \"urn:schemas:calendar:dtend\", \"urn:schemas:mailheader:subject\", 
        \"urn:schemas:calendar:duration\" FROM Scope('SHALLOW TRAVERSAL OF 
        \"/exchange/USER/Calendar\"')</g:sql></g:searchrequest>";
    

    This is no particular query. I just alternated it from another Document and removed all stuff I didnt’t need.

    I hope this helps you a bit. About providing Thunderbird Appointment/Calendar dates I can’t tell anything because this is yet beyond my knowledge.

    Best regards and good night,

    Semo

    • 0
    • Reply
    • Share
      Share
      • Share on Facebook
      • Share on Twitter
      • Share on LinkedIn
      • Share on WhatsApp
      • Report

Sidebar

Related Questions

I have the requirement that I need to open a document in Microsoft word
I have a requirement that I need to show my records in a gridview
I have a requirement wherein I need to display on a User form, a
I have a requirement where I need to to do cross domain SSO using
I have a web application that stores a lot of user generated files. Currently
I have come across a requirement that needs to access a set of databases
I have a requirement where I need to be able to access a list
I have a user table that controls access to a website. We currently have
I currently have a requirement where I need to validate that all the files
Hi i have a requirement i need your help for it:- I have a

Explore

  • Home
  • Add group
  • Groups page
  • Communities
  • Questions
    • New Questions
    • Trending Questions
    • Must read Questions
    • Hot Questions
  • Polls
  • Tags
  • Badges
  • Users
  • Help
  • SEARCH

Footer

© 2021 The Archive Base. All Rights Reserved
With Love by The Archive Base

Insert/edit link

Enter the destination URL

Or link to existing content

    No search term specified. Showing recent items. Search or use up and down arrow keys to select an item.