I am running into a weird issue with Custom GPT Actions and wondering if anyone else has seen this.
I have an action (POST request) that returns a public PNG URL from my backend. This used to render inline in the ChatGPT UI without any issues with different models. But since 5.2 release or even before I am having the following issue
Now:
The action still returns the correct public URL
ChatGPT runs an internal url_safe check. I can see it in the network
The response is { "safe": false, "blocked": false }
The image no longer renders inline
What’s confusing:
If I don’t use actions and just paste or generate the same public URL, the image renders fine. There is no request to url_safe
If I manually open the URL (or call it directly like url_safe does), the PNG is reachable and loads correctly
I tried many things in the instructions (explicit “render image”, different formatting, etc.), but nothing helped
So it feels like this is specific to URLs coming from action responses, not the image itself.
This was working before, so I’m trying to understand:
Did something change recently (security hardening, regression)?
Is this behavior documented anywhere?
Has anyone found a clean workaround ?
Maybe I am missing something, is there any custom gpt that you can share with me which does the same thing?
This seems like a basic functionality since custom gpt already asks users to confirm request to backend. Not sure if it is blocked because of the security reasons.
Would love to hear if someone already figured this out
The same here. It began on Dec 13 - the images no longer get displayed and all outgoing links require user to confirm (with this link as a background information)
I’m not sure whether OpenAI bot is supposed to visit a given URL before marking it as safe? I checked in the server logs - it doesn’t do that. It also doesn’t get robots.txt, nothing.
Interesting. I was considering it checks first the domain and see whether safe or not to render the image. It might be because of the security reasons but actually without action request, urls are being rendered.
There is no documentation as well which indicates rendering images are forbidden. But now it is confusing why it stopped working and I am wondering whether it will ever work again.
It would be great if we can get some clarity here Maybe @OpenAI_Support can have comment about it.
I guess there is no update here. At the very least, the documentation should clearly state that images will no longer be rendered. Now we are in limbo.
Hey everyone, Apologies for the inconvenience. GPT Actions can’t return image or video files, so trying to “return a PNG” from an action (even if it’s public and valid) isn’t a supported path for inline rendering. That’s why this can look inconsistent compared to past behavior. This is explicitly called out in the Actions docs: returning files is supported, but images/videos are excluded. Docs: https://platform.openai.com/docs/actions/returning-files. My suggestion as workaround would be to Return a normal link + short caption, Action returns { "url": "https://…" } Model replies with something like: “Here’s the image link: …”. The user can click it; it may not inline-render, but it won’t break. If you need guaranteed inline images inside ChatGPT, the supported approach is to use ChatGPT’s native image generation or uploads, not external image URLs from Actions. Hope this helps. Thank you!