Troubleshooting of Ollama API: Difference between revisions
Jump to navigation
Jump to search
| Line 24: | Line 24: | ||
</pre> | </pre> | ||
Correct Format: ✅ This is an array containing an object | Correct Format in PHP: ✅ This is an array containing an object | ||
<pre> | <pre> | ||
'messages' => [['role' => 'user', 'content' => $message]] | 'messages' => [['role' => 'user', 'content' => $message]] | ||
Revision as of 13:48, 29 August 2025
If you have any questions about the Ollama API, you can post them on the Ollama GitHub Repository.
How to fix "json: cannot unmarshal object ..."
Error message:
HTTP Error 400: {"error": "json: cannot unmarshal object into Go struct field ChatRequest.messages of type []api.Message"}
Applicable Model:
- gpt-oss:120b
Solution
Root Cause: Incorrect `messages` format. The API expects an array format, but a single object was being sent.
Incorrect Format in PHP: ❌ This is an object
'messages' => ['role' => 'user', 'content' => $message]
Correct Format in PHP: ✅ This is an array containing an object
'messages' => [['role' => 'user', 'content' => $message]]
Explanation: The `messages` parameter must be an array of message objects, not a single message object. Each message object should contain `role` and `content` properties. The extra square brackets `[]` wrap the message object into an array, which matches the API's expected format.
This fix resolves the `"cannot unmarshal object into Go struct field ChatRequest.messages"` error.