We have an app version in APPROVED status that we are currently unable to publish.
When clicking Publish → Publish Version, the dashboard sends:
POST /v1/dashapi/versions/{version_id}/publish
Content-Length: 0
and the API responds with:
{
"error": {
"message": "App image is not authorized. Upload the image again for this app.",
"type": "invalid_request_error",
"param": null,
"code": null
}
}
The important detail is that the publish request has no request body (Content-Length: 0).
That suggests the dashboard is not uploading or modifying any image during publish. Instead, the backend appears to be loading the already-saved approved version, validating its existing image assets, and rejecting the publish because one of those stored assets is no longer considered authorized.
The UI does not identify which image is causing the failure, and the API response provides no useful field-level information because both param and code are null.
From the browser console, the failure originates from the dashboard’s publishVersion mutation and the server returns the actual 400 Bad Request, so this does not appear to be a client-side JavaScript issue.
Current behavior:
Approved version
↓
Publish Version
↓
POST /v1/dashapi/versions/{version_id}/publish
(no payload)
↓
Backend validates existing version assets
↓
400 App image is not authorized
Because the version is already approved/read-only, there is also no obvious UI path to replace the offending image before publishing.
This looks like a backend asset-authorization/state issue affecting an image already associated with the approved version.
It would be very helpful if OpenAI could:
- identify which asset is failing validation in the error response;
- re-authorize or repair stale image references on affected approved versions; or
- allow affected versions to enter an editable draft state so the image can be uploaded again.
We have seen other developers reporting the same "App image is not authorized" error when trying to create drafts or update approved apps, so this may not be isolated to a single app.
If anyone from OpenAI can confirm whether this is a known issue or whether there is a supported recovery path without recreating the app, that would be greatly appreciated.