Как создать электронное письмо с большим вложением в общий почтовый ящик

Я не могу загрузить вложение большого размера (более 4 МБ) в электронное письмо, созданное в общем почтовом ящике с помощью Microsoft Graph. Шаги, которые я выполнил, задокументированы здесь, но не Работа.

Создание черновика (ОК):

=> POST /users/[email protected]/mailFolders('drafts')/messages

{ message json }

<= 201

{ message json, id:"XXXX" }

Загрузка небольшого вложения (ОК):

=> POST /users/[email protected]/messages/XXXX/attachments

{"contentBytes": "BASE64..." }

<= 201 

{ attachment json }

Загрузка большого вложения (FAIL)

=> POST
/users/[email protected]/messages/XXXX/attachments/createUploadSession

{ AttachmentItem: { attachment json } }

<= 201 

{ upload session json, uploadUrl: "https://outlook.office.com/api/beta/Users('guid@otherguid')/Messages('XXXX')?authtoken=SOME-JWT" }
=> PUT uploadUrl-from-above

attachment-body

<= 403 

{ 
  "error": {
    "code":"ErrorAccessDenied",
    "message":"Access is denied. Check credentials and try again."
  }
}

Я запросил следующие разрешения: user.read, mail.readwrite, mail.send, mail.readwrite.shared, mail.send.shared. И электронное письмо с небольшим вложением прекрасно создается в общем почтовом ящике.

Как я могу создать электронное письмо с большим вложением в общем почтовом ящике через Microsoft Graph?


person lazyden    schedule 24.12.2019    source источник


Ответы (2)


createUploadSession конечной точке требуется одна из следующих областей разрешений: Files.ReadWrite, Files.ReadWrite.All, Sites.ReadWrite.All.

Поскольку это касается другого пользователя, я считаю, что вам понадобится Files.ReadWrite.All, поскольку Files.ReadWrite предоставляет доступ только к вашему Диску.

person Marc LaFleur    schedule 24.12.2019
comment
Хорошая идея, спасибо, но не помогло. Использование токена доступа с этими дополнительными разрешениями вызывает ту же ошибку. - person lazyden; 26.12.2019

Теперь проблема отображается как известные проблемы на сайте документации ms.

person lazyden    schedule 10.06.2020