Skip to content

Releases: vgrem/Office365-REST-Python-Client

v 2.3.7

28 Aug 20:51
Compare
Choose a tag to compare

Changelog

Bug fixes

  • #402 and #387: removed invalid dependency to generator module @rikeshtailor
  • #399: fix for downloading a file
  • Web.get_folder_by_server_relative_path return type fix @sharifhsn

Improvements:

  • error handling improvements (in terms of covering network exceptions along with invalid HTTP requests) @beliaev-maksim
  • improvements for JSON Batching support, for both v3 and v4 versions

v 2.3.6

09 Aug 09:35
Compare
Choose a tag to compare

Changelog

General

  • a preliminary support for communications API has been introduced
  • optimizing PyPI package in terms of excluding packages from production (e.g. tests)

SharePoint API specific

  • upload large files improvements in terms of optimizing of memory consumption (#377) @beliaev-maksim
  • new examples for SharePoint section (#293) @beliaev-maksim
  • Document Set improvements and bug fixes #379
  • settings Taxonomy field values fixes #380

OneDrive API specific

  • fixes for addressing drive items #374
  • improvements in terms of supporting and new nav types and methods for better API coverage, for example:

Example 1: address folder by path, where archive/2018 is a folder path:

folder_item = client.me.drive.root.get_by_path("archive/2018").get().execute_query()  # type: DriveItem

Teams API specific

  • improvements in terms of supporting and new nav types and methods for better API coverage

Examples: list all teams

client = GraphClient(acquire_token_by_client_credentials)
teams = client.teams.get_all(["displayName"]).execute_query()
for team in teams:  # type: Team
    print(team.display_name)

v 2.3.5

05 Jul 21:17
Compare
Choose a tag to compare

Changelog

  • general: compatibility with Python 2.7 (related: #326 & #275)
  • OneDrive API: improvements and fixes for addressing drive items #276
  • Graph client: improvements in terms of error handling for batch request, dependencies updated: msal 1.12.0
  • SharePoint API: fix for ListItem.update method (related #365)
  • SharePoint API: better support for addressing resources by resource path
  • SharePoint API: batch request improvements, i.e. support for specifying maximum of items to be executed per bulk operations, default is 100 (related: #349)

v 2.3.4

22 May 20:35
Compare
Choose a tag to compare

Changelog

  • SharePoint API: improved support for a file and folders addressing details

  • SharePoint API: support for saving taxonomy columns #353

Example: save a single-valued taxonomy field value

ctx = ClientContext(site_url).with_credentials(credentials)

tasks_list = ctx.web.lists.get_by_title("Tasks")
tax_field_value = TaxonomyFieldValue("{term-label}", "{term-guid}")
item_to_create = tasks_list.add_item({
    "Title": "New task",
    "{tex-column-name}": tax_field_value,
}).execute_query()

Example: save a multi-valued taxonomy field value

ctx = ClientContext(site_url).with_credentials(credentials)

tasks_list = ctx.web.lists.get_by_title("Tasks")
tax_field_value = TaxonomyFieldValue("{term-label}", "{term-guid}")
tax_field_values = TaxonomyFieldValueCollection([tax_field_value])
item_to_create = tasks_list.add_item({
    "Title": "New task",
    "{tex-column-name}": tax_field_values,
}).execute_query()

v 2.3.3

25 Apr 18:28
Compare
Choose a tag to compare

Changelog

  • #339: Introduced browser mode to imitate browser when obtaining the authentication cookies by @nsmcan
  • API improvements for Fluent interface
  • SharePoint Batching API improvements for error handling

v 2.3.2

03 Apr 20:05
Compare
Choose a tag to compare

Changelog

  • #320: escape XML characters in STS request by @andreas-j-hauser
  • #310: Revert ClientObject.get_property() semantics by @kraptor
  • SharePoint API improvements: #303 (addressing versions of ListItem), hubsite namespace, File/Folder copy/move operations
  • Graph client: initial support for batching
  • improved support for Calendar API

Support for batching for Graph client

def acquire_token_client_credentials():

    authority_url = 'https://login.microsoftonline.com/{tenant}'
    app = msal.ConfidentialClientApplication(
        authority=authority_url,
        client_id='{client-id}',
        client_credential='{client-secret}'
    )
    result = app.acquire_token_for_client(scopes=["https://graph.microsoft.com/.default"])
    return result

client = GraphClient(acquire_token_client_credentials)

current_user = self.client.users['{user-principal-name}'].get()  # 1.1: construct query to retrieve user details
my_drive = self.client.users['{user-principal-name}'].drive.get()  # 1.2: construct query to retrieve user's drive
client.execute_batch()  # 2: submit a query to the server

v 2.3.1

13 Dec 20:21
Compare
Choose a tag to compare

Changelog

Summary:

  • improved support for SharePoint API (fields, tenants namespaces)
  • bug fixes: #303 , #302 and #265

Improved support for SharePoint API

Here are a few examples which demonstrate how to create field and set values for a different field types:

Create a multi lookup field:

lookup_field = list.fields.add_lookup_field(title=lookup_field_name,
                                                                lookup_list_id=lookup_list.properties['Id'],
                                                                lookup_field_name='Title',
                                                                allow_multiple_values=True).execute_query()

Set a multi lookup field value

field_value = FieldMultiLookupValue()
field_value.add(FieldLookupValue(lookup_id))
updated = item_to_update.set_property(lookup_field_name, field_value).update().execute_query()

The list of methods (fields namespace):

  • FieldCollection.add_url_field(title)
  • FieldCollection.add_lookup_field(title, lookup_list_id, lookup_field_name, allow_multiple_values)
  • FieldCollection.add_choice_field(title, values, multiple_values)
  • FieldCollection.create_taxonomy_field(name, ssp_id, term_set_id, anchor_id,field_id, text_field_id, web_id, list_id)

The list of methods (tenant namespace):

  • Tenant.get_site_health_status(site_url)

v 2.3.0 (with patches)

06 Dec 20:19
Compare
Choose a tag to compare

Changelog

  • requests_ntlm is included as an optional dependency
  • README.md broken links resolved

v 2.3.0

06 Dec 18:40
Compare
Choose a tag to compare

Changelog

  • improvements for SAML-based claims authentication, kudos to @wreiner for the implementation and @nsmcan for the proposal #297, #272
  • support for # and % in SharePoint Online and OneDrive for Business by @kraptor #300
  • support for optional arguments for FileCollection.create_upload_session method by @beliaev-maksim #289
  • migration from adal library to msal as a mandatory dependency #296
  • improved support for sharepoint namespace, new types and methods (Tenant, ViewField, ContentType classes)
  • migration from Outlook API v1.0 to Microsoft Graph. Note: OutlookClient is decommissioned and no longer available

v 2.2.2

03 Nov 21:13
Compare
Choose a tag to compare

Changelog