What is refused
Requests Raon refuses, and what to send instead.
Raon keeps no conversation state for you and runs no tools other than web search, so these requests are refused with 400 instead of being forwarded. Function tools your own code runs pass as they are.
| API | Refused | Instead |
|---|---|---|
| Responses | previous_response_id, conversation, prompt, background: true, item_reference inputs, files given by file_id | Send the whole conversation in input. |
| Responses | file_search, code_interpreter, computer use, image generation and mcp tools | unsupported_tool |
| Messages | web_fetch_*, code_execution_* and mcp_toolset tools, and mcp_servers | unsupported_tool |
| Messages | Naming one tool in tool_choice (type: "tool") | Omit tool_choice, or use auto, any or none. |
| Messages | Uploaded files (source.type: "file"), container_upload, container | Put the content in the request itself. |
| All | A model whose backend does not serve the API you called | model_not_supported_on_this_api |
POST /v1/messages/count_tokens and stored-response routes such as GET /v1/responses/{id} are not served and return 404.
Refused requests return 400 in each API's error format; on Chat Completions and Responses, code names the reason, such as unsupported_tool. Errors lists every status.

