You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Photo upload URL does not contain photoIds — MAX больше не присылает photoIds в ссылке загрузки фото #108
С конца сентября все отправки сообщений с фото падают в UploadService.upload_photo ещё до загрузки файла:
File ".../pymax/api/uploads/service.py", line 79, in upload_photo
photo_id = str(parse_qs(parsed_url.query)["photoIds"][0])
KeyError: 'photoIds'
The above exception was the direct cause of the following exception:
...
pymax.exceptions.UploadError: Photo upload URL does not contain photoIds
MAX перестал добавлять параметр photoIds в ссылку, которую возвращает PHOTO_UPLOAD. Ссылка теперь выглядит так: https://iu.oneme.ru/uploadImage?r=<token>. При этом photo_id в upload_photo нужен только как ключ, чтобы найти токен в ответе на POST.
Что видно в продакшене
MAX переходил на новый формат постепенно: первые такие ошибки появились 25.09.2026, а с 02.10.2026 падают 100% отправок с фото.
Сообщения без вложений уходят нормально.
У нас ничего не менялось: образ и версия библиотеки те же, что работали до 25.09.
2.4.1 не помогает: там тот же поиск по parse_qs(...)["photoIds"][0].
Окружение
maxapi-python 2.3.1 (в 2.4.1 код upload_photo тот же)
Python 3.12
Исправление
PR #107 исправляет ровно этот случай. В нём токен берётся из единственной записи ответа загрузки, а если записей ноль или больше одной, поднимается ошибка. Мы поставили у себя такую же логику патчем: если photoIds в ссылке есть, токен ищется по нему, как раньше, а если нет, берётся единственная запись. Будет здорово, если PR #107 примут и выпустят релиз.
Activity
docs(debug): resolve max-photo-upload-no-photoids session
LTVA1 commentedon Oct 14, 2026
@ink-developer можно это починить? У меня сломалось выставление фотки на аву беседы из-за этого изменения