I'm trying to send 2 photos + json-payload in request. First, I did as described in How to send a "multipart/form-data" with requests in python?, but it doesn't work.
from requests_toolbelt.multipart.encoder import MultipartEncoder
import requests
mp_encoder = MultipartEncoder(fields={"parameters": {"sysId": 1, "clientId": 4029487, "fsid": 'ChNKoXqa87YucQ1nlf3hJGTl',
                               "deviceId":"89DEB49F37DD49559D124C9F3AFA2A54"},
                                                          'file1':('img317.jpg',open('/Users/12fhntv21Q/Downloads/pasport_rf.jpg',"rb"),'image/jpeg'),
                                                          'file2':('img317.jpg',open('/Users/12fhntv21Q/Downloads/pasport_rf_1.jpg',"rb"),'image/jpeg')
                                                          }
                                          )
print(mp_encoder)
url = 'https://clientsapi01./..../'
response = requests.post(url,headers={'Content-Type': mp_encoder.content_type}, data=mp_encoder)
Gives such error:
Traceback (most recent call last):
  File "/Users/12fhntv21Q/PycharmProjects/Api_Test/Client_CUPIS/identification_cupis.py", line 17, in <module>
    'file2':('img317.jpg',open('/Users/12fhntv21Q/Downloads/pasport_rf_1.jpg',"rb"),'image/jpeg')
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 125, in __init__
    self._prepare_parts()
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 246, in _prepare_parts
    self.parts = [Part.from_field(f, enc) for f in self._iter_fields()]
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 246, in <listcomp>
    self.parts = [Part.from_field(f, enc) for f in self._iter_fields()]
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 494, in from_field
    body = coerce_data(field.data, encoding)
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 472, in coerce_data
    return CustomBytesIO(data, encoding)
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 535, in __init__
    buffer = encode_with(buffer, encoding)
  File "/Users/12fhntv21Q/Api_Test/lib/python3.7/site-packages/requests_toolbelt/multipart/encoder.py", line 416, in encode_with
    return string.encode(encoding)
AttributeError: 'dict' object has no attribute 'encode'
Tried to import the request code from postman ( in it the 2 photos and parameters are sent correctly)
import requests
 url = "https://clientsapi01/..../"
        payload = "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\nContent-Disposition:" \
              " form-data; name=\"parameters\"\r\n\r\n{\"sysId\":1,\n\"lang\":\"ru\"," \
              "\n\"clientId\":4029487,\n\"fsid\":\"ChNKoXqa87YucQ1nlf3hJGTl\"," \
              "\n\"devPrototype\":false,\n\"devPrototypeValue\":0," \
              "\n\"deviceId\":\"89DEB49F37DD49559D124C9F3AFA2A54\"}" \
              "\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW\r\n" \
              "Content-Disposition: form-data; name=\"file1\"; " \
              "filename=\"img317.jpg\"\r\nContent-Type: image/jpeg\r\n\r\n\r\n" \
              "------WebKitFormBoundary7MA4YWxkTrZu0gW\r\n" \
              "Content-Disposition: form-data; name=\"file2\"; filename=\"img318.jpg" \
              "\"\r\nContent-Type: image/jpeg\r\n\r\n\r\n------WebKitFormBoundary7MA4YWxkTrZu0gW--"
    headers = {
        'content-type': "multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW",
        'Content-Type': "multipart/mixed",
        'User-Agent': "PostmanRuntime/7.18.0",
        'Accept': "*/*",
        'Cache-Control': "no-cache",
        'Postman-Token': "9faf7642-3ba3-44da-9353-295a90073191,93b2a684-2b39-496a-b492-68899c3cb82c",
        'Host': "clientsapi01.bksndbx.com",
        'Accept-Encoding': "gzip, deflate",
        'Content-Length': "4566826",
        'Connection': "keep-alive",
        'cache-control': "no-cache"
        }
    response = requests.request("POST", url, data=payload, headers=headers)
    print(response.text)
Вut in doesn't work either. Finally, this method :
payload_for_request = {"parameters": [{"sysId": 1, "clientId": 4029487, "fsid": 'JXvI1jbXteO8NOpRZPAeKeeh',
                                      "deviceId":"89DEB49F37DD49559D124C9F3AFA2A54",
                                       "lang":"ru"}]}
files = [("file1",("img317.jpg", open('img317.jpg',"rb"),'image/jpeg')),
         ("file2", ("img318.jpg",open('img318.jpg',"rb"), 'image/jpeg'))]
headers={'Content-Type': 'multipart/form-data; boundary=93c1068f0d0c354feca39cdd75562cf0'}
r = requests.post(url,   data=payload_for_request, files=files)
print(r.text)
print(r.headers)
Also throws an error - {"result":"error","errorCode":1,"errorMessage":"bad request","errorValue":"common parameters parsing error"}
 
    