invalid_request_error: Could not process imageInvalid base64 image_urlimage exceeds N MB maximumThe same image works in the web UI and fails through the APIObraz w base64 wysłany jako image_url potrzebuje pełnego data URL, łącznie z typem mediów: data:image/png;base64,
Narzędzie base64 z wiersza poleceń w wielu systemach domyślnie łamie linie. Wstawione znaki nowej linii sprawiają, że treść jest nieprawidłowa, choć wygląda dobrze. Użyj flagi, która wyłącza łamanie.
Limity rozmiaru dotyczą zakodowanej treści, która jest mniej więcej o jedną trzecią większa niż plik na dysku. Obraz tuż poniżej limitu lokalnie może go przekraczać w przesyłanych danych.
Zakoduj bez łamania linii i sprawdź, czy prefiks jest obecny:
b64=$(base64 -w0 image.png) # macOS: base64 -i image.png | tr -d '\n'
echo "payload bytes: ${#b64}"
printf 'data:image/png;base64,%s' "$b64" | head -c 40; echo
Pierwsze 40 znaków powinno zaczynać się od data:image/png;base64,. Jeśli treść ma znacznie więcej bajtów, niż się spodziewasz, za duży jest sam plik.
Ostatnio sprawdzono 2026-10-01. Napisane na podstawie problemów zdiagnozowanych na działającej bramce zgodnej z OpenAI, a nie zebrane z innych stron.