# Nylas Python SDK v6.16.0

Source: https://developer.nylas.com/docs/changelogs/2026-06-16-nylas-python-v6-16-0/

## Added

- **Application and workspace admin APIs**: manage applications and workspaces from the SDK.
  - `applications.update()` for `PATCH /v3/applications`.
  - Redirect URI updates corrected to `PATCH /v3/applications/redirect-uris/{id}`.
  - A [`Workspaces`](/docs/reference/api/workspaces/) resource for `/v3/workspaces` CRUD, plus `auto_group` and `manual_assign`.
- **Callback URIs in application updates**: `UpdateApplicationRequest` now accepts `callback_uris`, and a new `UpdateApplicationRedirectUriRequest` exposes optional `id`, `platform`, and `settings`. Include an existing callback URI `id` to preserve or update an entry. Workspace auto-grouping also gains `invalid_also` support.
- **Microsoft Graph large attachment support**: a resumable upload-session flow sends attachments up to 150 MB on Microsoft (Graph) grants, mirroring the Node.js SDK.
  - `attachments.create_upload_session(identifier, request_body)` returns a pre-signed `url` and an `attachment_id`.
  - Upload the file bytes directly to that URL, then call `attachments.complete_upload_session(identifier, attachment_id)` to finalize it.
  - Reference the `attachment_id` in `messages.send()` or `drafts.create()`. See the [create](/docs/reference/api/attachments/create-attachment-upload-session/) and [complete](/docs/reference/api/attachments/complete-attachment-upload-session/) upload-session references.

## Fixed

- **JSON `Content-Type` header**: JSON requests now send `Content-Type: application/json` without the `; charset=utf-8` parameter that the Nylas API rejected. This fixes draft creation and other JSON requests that previously failed with "only JSON and multipart supported."