Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/areed1192/ms-graph-python-client
A Python Client Application that allows users to interact with the Microsoft Graph API.
https://github.com/areed1192/ms-graph-python-client
api-client microsoft microsoft-graph-api microsoft-graph-client python
Last synced: 14 days ago
JSON representation
A Python Client Application that allows users to interact with the Microsoft Graph API.
- Host: GitHub
- URL: https://github.com/areed1192/ms-graph-python-client
- Owner: areed1192
- License: mit
- Created: 2020-10-08T23:37:20.000Z (about 4 years ago)
- Default Branch: master
- Last Pushed: 2022-11-21T13:51:02.000Z (almost 2 years ago)
- Last Synced: 2024-09-16T05:26:01.053Z (about 2 months ago)
- Topics: api-client, microsoft, microsoft-graph-api, microsoft-graph-client, python
- Language: Python
- Homepage:
- Size: 200 KB
- Stars: 55
- Watchers: 3
- Forks: 45
- Open Issues: 3
-
Metadata Files:
- Readme: README.md
- Funding: .github/FUNDING.yml
- License: LICENSE
Awesome Lists containing this project
README
# Microsoft Graph Python Client Library
## Table of Contents
- [Overview](#overview)
- [Setup](#setup)
- [Usage](#usage)
- [Support These Projects](#support-these-projects)## Overview
Microsoft Graph is the gateway to data and intelligence in Microsoft 365. It provides
a unified programmability model that you can use to access the tremendous amount of data
in Microsoft 365, Windows 10, and Enterprise Mobility + Security. This project utilizes python
to help users interact with and manage data on Microsoft Graph API.## Setup
**Setup - Requirements Install:**
For this particular project, you only need to install the dependencies, to use the project. The dependencies
are listed in the `requirements.txt` file and can be installed by running the following command:```console
pip install -r requirements.txt
```After running that command, the dependencies should be installed.
**Setup - Local Install:**
If you are planning to make modifications to this project or you would like to access it
before it has been indexed on `PyPi`. I would recommend you either install this project
in `editable` mode or do a `local install`. For those of you, who want to make modifications
to this project. I would recommend you install the library in `editable` mode.If you want to install the library in `editable` mode, make sure to run the `setup.py`
file, so you can install any dependencies you may need. To run the `setup.py` file,
run the following command in your terminal.```console
pip install -e .
```If you don't plan to make any modifications to the project but still want to use it across
your different projects, then do a local install.```console
pip install .
```This will install all the dependencies listed in the `setup.py` file. Once done
you can use the library wherever you want.**Setup - PyPi Install:**
To **install** the library, run the following command from the terminal.
```console
pip install
```**Setup - PyPi Upgrade:**
To **upgrade** the library, run the following command from the terminal.
```console
pip install --upgrade
```## Usage
Here is a simple example of using the `ms_graph` library.
```python
from pprint import pprint
from ms_graph.client import MicrosoftGraphClient
from configparser import ConfigParser# Specify your scopes when you want access certain resources.
scopes = [
"Calendars.ReadWrite",
"Files.ReadWrite.All",
"User.ReadWrite.All",
"Notes.ReadWrite.All",
"Directory.ReadWrite.All",
"User.Read.All",
"Directory.Read.All",
"Directory.ReadWrite.All",
"offline_access",
"openid",
"profile"
]# Initialize the Parser.
config = ConfigParser()# Read the file.
config.read("config/config.ini")# Get the specified credentials.
client_id = config.get("graph_api", "client_id")
client_secret = config.get("graph_api", "client_secret")
redirect_uri = config.get("graph_api", "redirect_uri")# Initialize the Client.
graph_client = MicrosoftGraphClient(
client_id=client_id,
client_secret=client_secret,
redirect_uri=redirect_uri,
scope=scopes,
credentials="config/ms_graph_state.jsonc"
)# Login to the Client.
graph_client.login()# Grab the User Services.
user_services = graph_client.users()# List the Users.
pprint(user_services.list_users())# Grab the Drive Services.
drive_services = graph_client.drives()# List the Root Drive.
pprint(drive_services.get_root_drive())
```## Support These Projects
**Patreon:**
Help support this project and future projects by donating to my [Patreon Page](https://www.patreon.com/sigmacoding). I'm
always looking to add more content for individuals like yourself, unfortuantely some of the APIs I would require me to
pay monthly fees.**YouTube:**
If you'd like to watch more of my content, feel free to visit my YouTube channel [Sigma Coding](https://www.youtube.com/c/SigmaCoding).