Skip to content

Python client for Microsoft Exchange Web Services (EWS)

License

NotificationsYou must be signed in to change notification settings

ecederstrand/exchangelib

Folders and files

NameName
Last commit message
Last commit date

Latest commit

author
Erik Cederstrand
Jun 10, 2024
5fa602e · Jun 10, 2024
May 29, 2024
Jun 10, 2024
Jun 10, 2024
Mar 4, 2024
Jun 5, 2024
Oct 22, 2020
Mar 11, 2021
Mar 4, 2024
May 8, 2022
Jul 23, 2023
Jun 10, 2024
Dec 10, 2019
Jan 27, 2020
Dec 13, 2023
Jul 23, 2023
May 18, 2024
May 18, 2024
Mar 17, 2024
May 8, 2022
Jul 23, 2023

Exchange Web Services client library

This module is an ORM for your Exchange mailbox, providing Django-style access to all your data. It is a platform-independent, well-performing, well-behaving, well-documented, well-tested and simple interface for communicating with an on-premise Microsoft Exchange 2007-2016 server or Office365 using Exchange Web Services (EWS). Among other things, it implements autodiscover, and functions for searching, creating, updating, deleting, exporting and uploading calendar, mailbox, task, contact and distribution list items.

imageimageimageimagexscode

Teaser

Here's a short example of how exchangelib works. Let's print the first 100 inbox messages in reverse order:

from exchangelib import Credentials, Account

credentials = Credentials("john@example.com", "topsecret")
account = Account("john@example.com", credentials=credentials, autodiscover=True)

for item in account.inbox.all().order_by("-datetime_received")[:100]:
    print(item.subject, item.sender, item.datetime_received)

Documentation

Documentation is available at https://ecederstrand.github.io/exchangelib/. Source code documentation is available at https://ecederstrand.github.io/exchangelib/exchangelib/.