Я не python эксперт, но, увидев оба кода, здесь есть некоторые неясности.
Любой ответ, который вы получаете от сервера, стоит поделиться, и я просто выполнил некоторые из ваших команд, которые показывают что тело хотя и отформатировано json, но путь к файлу обрабатывается как строка, что означает, что файл не присоединяется
{
"roomId": "Y2lzY2.........",
"files": "C:\\Users\\user\\Documents\\myfile.txt; type=text/csv",
"text": "Hello World"
}
Выше выводится тело, когда я выполняю ваш код так как вы видите, что данные из файла не загружены и в коде Python вы открываете файл и отправляете его на запрос, вы можете использовать указанный ниже код для достижения этого
$file = Get-Content C:\sample.txt
$body = @{roomId = $SpaceId; text = "Hello World"; files=$file+'; type=text/csv'} | ConvertTo-Json
Write-Output $body
Это загружает содержимое файла в виде простого текста и добавляет его к json.
Код ниже читает все байты и присоединяет его к телу как вложение
$file = Get-ChildItem -Path "C:\\sample.txt"
$file = [System.IO.File]::ReadAllBytes($file.FullName)
$body = @{roomId = $SpaceId; text = "Hello World"; files=$file+'; type=text/csv'} | ConvertTo-Json
Write-Output $body
Надежда это помогает.