import miro_api
from miro_api.models import PositionChange, FixedRatioGeometry
from miro_api.models.upload_file_from_device_data import UploadFileFromDeviceData
access_token = '<access_token>'
board_id = '<board_id>'
miro = miro_api.MiroApi(access_token)
img_path = r'<path_to_image>'
img_upload_data = UploadFileFromDeviceData(title='img_title', altText='img_alt', position = PositionChange().from_dict({'x': -400, 'y': 350}), geometry = FixedRatioGeometry(height=300))
miro.create_image_item_using_local_file(board_id_platform_file_upload=board_id, resource=img_path) # THIS WORKS OK
miro.create_image_item_using_local_file(board_id_platform_file_upload=board_id, resource=img_path, data=img_upload_data) # THIS CRASHES
Hello, I’m getting this exception when trying to create an image from local file using data parameter. Without the data parameter it works fine, but I want to set image position, geometry, title, etc. on creation.
EDIT: I’m using Python 3.11
Error message reads:
File "<my_project_path>\.venv\Lib\site-packages\urllib3\filepost.py", line 90, in encode_multipart_formdata body.write(data) TypeError: a bytes-like object is required, not 'dict'

