Skip to content

Releases: vgrem/Office365-REST-Python-Client

v 2.5.13

20 Sep 08:44
Compare
Choose a tag to compare

Changelog

#835 - JSON batch request fixes

v 2.5.12

11 Aug 16:46
Compare
Choose a tag to compare

Changelog

#788 - batch request fixes and improvements

v 2.5.11

26 Jun 08:37
Compare
Choose a tag to compare

Changelog

  • #873: fix error when creating a choice field
  • #872: fix shares.by_url method
  • #869: Bump msal from 1.24.1 to 1.28.0
  • #627: Fixes failing driveItem move operation by @ErmalKristo

v 2.5.10

26 May 12:16
Compare
Choose a tag to compare

Changelog

  • #866: fix path issue when addressing drive items

v 2.5.9

06 May 19:24
Compare
Choose a tag to compare

Changelog

  • #847 Add a note for Entra ID permissions when updating SP metadata fields
  • #850 Fixes issue of str raising exception when DecodeUrl is None
  • #844 changes for DriveItem.get_files and DriveItem.get_folders methods to address retrieving all the items (if collection exceeds the default page size)

v 2.5.8

14 Apr 15:58
Compare
Choose a tag to compare

Changelog

  • SharePoint resources addressing enhancements
  • introduced methods for granting and revoking delegated & application permissions

Example 1: grant an app role to a client service principal

client = GraphClient.with_token_interactive(
    tenant_name_or_id, app_client_id, admin_principal_name
)

resource = client.service_principals.get_by_name("Microsoft Graph")
app = client.applications.get_by_app_id(app_client_id)
resource.grant_application(app, "MailboxSettings.Read").execute_query()

Example 2: grant a delegated permission to the client service principal on behalf of a user

client = GraphClient.with_token_interactive(
    tenant_name_or_id, app_client_id, admin_principal_name
)

resource = client.service_principals.get_by_name("Microsoft Graph")
app_role = "User.Read.All"
user = client.users.get_by_principal_name(test_user_principal_name)
resource.grant_delegated(app_client_id, user, app_role).execute_query()

v 2.5.7

01 Apr 10:44
Compare
Choose a tag to compare

Changelog

  • #836: support for passing a passphrase in ClientContext.with_client_certificate method

Example:

cert_credentials = {
    "tenant": tenant_name,
    "client_id": client_id,
    "thumbprint": cert_thumbprint,
    "cert_path": "selfsignkeyenc.pem",
    "passphrase": "Password",
}
ctx = ClientContext(site_url).with_client_certificate(**cert_credentials)
current_web = ctx.web.get().execute_query()

v 2.5.6

29 Feb 20:23
Compare
Choose a tag to compare

Changelog

  • #693: support for folder coloring methods in SharePoint API

Example: create a folder with a color

ctx = ClientContext(site_url).with_credentials(user_credentials)
root_folder = ctx.web.default_document_library().root_folder
folder = root_folder.folders.add(
    "archive", color_hex=FolderColors.DarkGreen
).execute_query()

v 2.5.5

21 Jan 19:27
Compare
Choose a tag to compare

Changelog

  • #745: better support for Range in OneDrive API

Example: get Range

client = GraphClient.with_username_and_password(
    tenant_name, client_id, username, password
)
drive_item = client.me.drive.root.get_by_path("Financial Report.xlsx")
worksheets = drive_item.workbook.worksheets.get().execute_query()
if len(worksheets) == 0:
    sys.exit("No worksheets found")

worksheet_range = worksheets["Sheet1"].range(address="A1:B3").execute_query()

v 2.5.4

24 Dec 14:25
Compare
Choose a tag to compare

Changelog

  • #794 SharePoint authentication support with GCC High Environments by @DEADSCOP
  • #802 fix listing folders insted of listing files by @Yusuf-ASM
  • #801 fix for addressing shared drive items