---
title: "Changes to Create a Chat Completion"
method: POST
path: "/v1/chat/completions"
---

# Changes to Create a Chat Completion

`POST /v1/chat/completions`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 1 of 2 revisions.

- **2026-11-03** `0dfd8d5c3b27`: 24 breaking, 9 info

## Changes

- **2026-11-03** `0dfd8d5c3b27`: 24 breaking, 9 info
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartAudio -> subschema #3: Audio content part]/input_audio`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartAudio -> subschema #3: Audio content part]/type`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartFile -> subschema #4: File content part]/file`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartFile -> subschema #4: File content part]/type`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartImage -> subschema #2: Image content part]/image_url`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartImage -> subschema #2: Image content part]/type`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/content/anyOf[subschema #1]/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartRefusal -> subschema #2: Refusal content part]/refusal`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/content/anyOf[subschema #1]/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartRefusal -> subschema #2: Refusal content part]/type`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/custom`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/id`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/type`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/function`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/id`
  - added the new required request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/type`
  - the request property `allOf[subschema #2]/tool_choice/oneOf[subschema #2: Allowed tools]/allowed_tools/mode` became required
  - the request property `allOf[subschema #2]/tool_choice/oneOf[subschema #2: Allowed tools]/allowed_tools/tools` became required
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartAudio -> subschema #3: Audio content part]/` request property type changed from no type to `object`
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartFile -> subschema #4: File content part]/` request property type changed from no type to `object`
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartImage -> subschema #2: Image content part]/` request property type changed from no type to `object`
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/content/anyOf[subschema #1]/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartRefusal -> subschema #2: Refusal content part]/` request property type changed from no type to `object`
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/` request property type changed from no type to `object`
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/` request property type changed from no type to `object`
  - the `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/` response's property type changed from no type to `object` for status `200`
  - the `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/` response's property type changed from no type to `object` for status `200`
  - added the new optional request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartAudio -> subschema #3: Audio content part]/cache_control`
  - added the new optional request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartFile -> subschema #4: File content part]/cache_control`
  - added the new optional request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[#/components/schemas/ChatCompletionRequestMessageContentPartImage -> subschema #2: Image content part]/cache_control`
  - added the required property `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/custom` to the response with the `200` status
  - added the required property `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/id` to the response with the `200` status
  - added the required property `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageCustomToolCall -> subschema #2: Custom tool call]/type` to the response with the `200` status
  - added the required property `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/function` to the response with the `200` status
  - added the required property `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/id` to the response with the `200` status
  - added the required property `choices/items/message/tool_calls/items/oneOf[#/components/schemas/ChatCompletionMessageToolCall -> subschema #1: Function tool call]/type` to the response with the `200` status

---

[Operation](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api/docs/v1/chat/completions/post.md) - [API](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api.md) - [Page](https://skmtc.dev/aihubmix/apis/aihubmix-gateway-api/changes/v1/chat/completions/post)
