---
title: "Changes to Create chat completion"
method: POST
path: "/chat/completions"
---

# Changes to Create chat completion

`POST /chat/completions`

> Every recorded change to this endpoint, newest first.

## Timeline

Changed in 35 of 163 revisions.

- **2026-09-25** `d86203de41ae` — 5 info
- **2026-09-22** `ffdb5d7f0842` — 1 breaking
- **2026-09-22** `7ff3b738210c` — 2 info
- **2026-09-21** `c9f7dc51cc0a` — 1 info
- **2026-09-16** `087f9c841f65` — 1 breaking, 2 info
- **2026-09-03** `9430b00d75b4` — 3 info
- **2026-09-03** `5f6acbcbb919` — 1 info
- **2026-09-01** `ca86486f9fef` — 2 warning
- **2026-08-27** `60c5936f2a2f` — 2 info
- **2026-08-19** `6ee02d0cc907` — 1 info
- **2026-08-14** `9080adae100c` — 1 info
- **2026-08-14** `6ac2618eefd7` — 1 info
- **2026-08-14** `fe3335711e48` — 6 info
- **2026-08-13** `fc45a2f64c0a` — 1 warning, 2 info
- **2026-08-05** `ab0c5306e390` — 2 warning, 24 info
- **2026-05-13** `74cbcf73838f` — 51 breaking, 9 warning, 71 info
- **2025-04-29** `6a6c681b1820` — 7 warning, 17 info
- **2025-03-22** `86ed5d923809` — 1 breaking
- **2025-03-22** `41844462b873` — 11 breaking, 2 warning, 7 info
- **2025-03-11** `6ab43fe7798e` — 2 breaking, 30 warning, 1 info
- **2025-02-11** `96060afbb5b9` — 1 info
- **2025-02-04** `5c0e3ef6b492` — 1 warning, 9 info
- **2025-01-31** `fc164a27fdb9` — 2 info
- **2025-01-21** `47138a7dd8b9` — 1 breaking, 1 info
- **2025-01-21** `0d83ef8a5f65` — 1 breaking, 2 warning, 1 info
- **2025-01-17** `88f3bede7665` — 1 breaking, 1 info
- **2024-12-18** `8fbbc11fa933` — 2 breaking, 7 info
- **2024-12-04** `223e7c033ac6` — 1 info
- **2024-11-04** `681d8ec16477` — 3 breaking, 8 info
- **2024-10-17** `cc9f99ba40bc` — 14 info
- **2024-09-13** `4c9e3967c707` — 7 info
- **2024-08-15** `3aa75ca80feb` — 1 info
- **2024-08-06** `8eca3b09b705` — 1 breaking, 1 warning, 10 info
- **2024-07-17** `12529f330aab` — 2 breaking
- **2024-07-15** `493a67abde1a` — 2 info

## Changes

- **2026-09-25** `d86203de41ae` — 5 info
  - added the non-success response with the status `400`
  - added the non-success response with the status `401`
  - added the non-success response with the status `403`
  - added the non-success response with the status `404`
  - added the non-success response with the status `500`
- **2026-09-22** `ffdb5d7f0842` — 1 breaking
  - the `allOf[subschema #2]/seed` request property format changed from no format to `int64`
- **2026-09-22** `7ff3b738210c` — 2 info
  - added the new `gpt-6-luna` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-6-sol` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
- **2026-09-21** `c9f7dc51cc0a` — 1 info
  - added the new `gpt-5.1-mini` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
- **2026-09-16** `087f9c841f65` — 1 breaking, 2 info
  - removed the enum value `gpt-5.1-mini` of the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-audio-mini` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-audio-mini-2025-12-15` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
- **2026-09-03** `9430b00d75b4` — 3 info
  - added the new `gpt-6-astra` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the optional property `error/misalignment` to the response with the `429` status
  - added the optional property `error/misalignment` to the response with the `503` status
- **2026-09-03** `5f6acbcbb919` — 1 info
  - added the non-success response with the status `503`
- **2026-09-01** `ca86486f9fef` — 2 warning
  - removed the optional property `usage/compute_units` from the response with the `200` status (media type: application/json)
  - removed the optional property `usage/compute_units` from the response with the `200` status (media type: text/event-stream)
- **2026-08-27** `60c5936f2a2f` — 2 info
  - added the optional property `usage/compute_units` to the response with the `200` status (media type: application/json)
  - added the optional property `usage/compute_units` to the response with the `200` status (media type: text/event-stream)
- **2026-08-19** `6ee02d0cc907` — 1 info
  - added the optional property `obfuscation` to the response with the `200` status
- **2026-08-14** `9080adae100c` — 1 info
  - added the optional property `metadata` to the response with the `200` status
- **2026-08-14** `6ac2618eefd7` — 1 info
  - added the non-success response with the status `429`
- **2026-08-14** `fe3335711e48` — 6 info
  - added the optional property `usage/completion_tokens_details/text_tokens` to the response with the `200` status (media type: application/json)
  - added the optional property `usage/completion_tokens_details/text_tokens` to the response with the `200` status (media type: text/event-stream)
  - added the optional property `usage/prompt_tokens_details/image_tokens` to the response with the `200` status (media type: application/json)
  - added the optional property `usage/prompt_tokens_details/image_tokens` to the response with the `200` status (media type: text/event-stream)
  - added the optional property `usage/prompt_tokens_details/text_tokens` to the response with the `200` status (media type: application/json)
  - added the optional property `usage/prompt_tokens_details/text_tokens` to the response with the `200` status (media type: text/event-stream)
- **2026-08-13** `fc45a2f64c0a` — 1 warning, 2 info
  - removed the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier`
  - added the new optional request property `allOf[subschema #2]/service_tier`
  - added the new `gpt-5.5-2026-04-23` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
- **2026-08-05** `ab0c5306e390` — 2 warning, 24 info
  - added the new `fast` enum value to the `service_tier/anyOf[subschema #1]/` response property for the response status `200` (media type: application/json)
  - added the new `fast` enum value to the `service_tier/anyOf[subschema #1]/` response property for the response status `200` (media type: text/event-stream)
  - added the new optional request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[subschema #2]/prompt_cache_options`
  - added the new optional request property `allOf[subschema #2]/messages/items/oneOf[subschema #1: Developer message]/content/oneOf[subschema #2: Array of content parts]/items/prompt_cache_breakpoint`
  - added the new optional request property `allOf[subschema #2]/messages/items/oneOf[subschema #2: System message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[subschema #1: Text content part]/prompt_cache_breakpoint`
  - 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[subschema #1: Text content part]/prompt_cache_breakpoint`
  - 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[subschema #2: Image content part]/prompt_cache_breakpoint`
  - 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[subschema #3: Audio content part]/prompt_cache_breakpoint`
  - 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[subschema #4: File content part]/prompt_cache_breakpoint`
  - added the new optional 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[subschema #1: Text content part]/prompt_cache_breakpoint`
  - added the new optional request property `allOf[subschema #2]/messages/items/oneOf[subschema #5: Tool message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[subschema #1: Text content part]/prompt_cache_breakpoint`
  - added the new optional request property `allOf[subschema #2]/moderation`
  - added the new optional request property `allOf[subschema #2]/prediction/oneOf[subschema #1: Static Content]/content/oneOf[subschema #2: Array of content parts]/items/prompt_cache_breakpoint`
  - request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/prompt_cache_retention` deprecated
  - added the new `fast` enum value to the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier/anyOf[subschema #1]/`
  - added the new `gpt-5.5` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-5.6-luna` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-5.6-sol` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-5.6-terra` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `max` enum value to the request property `allOf[subschema #2]/reasoning_effort/anyOf[subschema #1]/`
  - request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/prompt_cache_key` list-of-types was widened by adding types `null` to media type `application/json`
  - request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/safety_identifier` list-of-types was widened by adding types `null` to media type `application/json`
  - added the optional property `moderation` to the response with the `200` status (media type: application/json)
  - added the optional property `moderation` to the response with the `200` status (media type: text/event-stream)
  - added the optional property `usage/prompt_tokens_details/cache_write_tokens` to the response with the `200` status (media type: application/json)
  - added the optional property `usage/prompt_tokens_details/cache_write_tokens` to the response with the `200` status (media type: text/event-stream)
- **2026-05-13** `74cbcf73838f` — 51 breaking, 9 warning, 71 info
  - added `subschema #2` to the `allOf[#/components/schemas/CreateModelResponseProperties]/` request property `allOf` list
  - removed `subschema #1, subschema #2` from the `allOf[subschema #2]/audio/voice` request property `anyOf` list
  - the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/metadata` became not nullable
  - the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier` became not nullable
  - the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/temperature` became not nullable
  - the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/top_p` became not nullable
  - the request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/audio` became not nullable
  - the request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/content` became not nullable
  - the request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/function_call` became not nullable
  - the request property `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/refusal` became not nullable
  - the request property `allOf[subschema #2]/messages/items/oneOf[subschema #6: Function message]/content` became not nullable
  - the request property `allOf[subschema #2]/modalities` became not nullable
  - the request property `allOf[subschema #2]/reasoning_effort` became not nullable
  - the request property `allOf[subschema #2]/response_format/oneOf[subschema #2: JSON schema]/json_schema/strict` became not nullable
  - the request property `allOf[subschema #2]/stream_options` became not nullable
  - removed the enum value `auto` of the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier`
  - removed the enum value `default` of the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier`
  - removed the enum value `flex` of the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier`
  - removed the enum value `high` of the request property `allOf[subschema #2]/reasoning_effort`
  - removed the enum value `low` of the request property `allOf[subschema #2]/reasoning_effort`
  - removed the enum value `medium` of the request property `allOf[subschema #2]/reasoning_effort`
  - removed `subschema #1` from the `allOf[subschema #2]/tool_choice` request property `oneOf` list
  - removed `subschema #1: Text content, subschema #2: Array of content parts` from the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/content` request property `oneOf` list
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/audio` request property type changed from `object` to no type
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/function_call` request property type changed from `object` to no type
  - the `allOf[subschema #2]/messages/items/oneOf[subschema #4: Assistant message]/tool_calls/items/` request property type changed from `object` to no type
  - the `allOf[subschema #2]/stream_options` request property type changed from `object` to no type
  - the `allOf[subschema #2]/tools/items/` request property type changed from `object` to no type
  - response property `choices/items/delta/content` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - response property `choices/items/delta/refusal` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - response property `choices/items/logprobs/content/items/bytes` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - response property `choices/items/logprobs/content/items/top_logprobs/items/bytes` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - response property `choices/items/logprobs/refusal/items/bytes` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - response property `choices/items/logprobs/refusal/items/top_logprobs/items/bytes` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - response property `choices/items/message/content` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `choices/items/message/refusal` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `service_tier` list-of-types was widened by adding types `null` to media type `application/json` of response `200`
  - response property `service_tier` list-of-types was widened by adding types `null` to media type `text/event-stream` of response `200`
  - added `#/components/schemas/ChatCompletionMessageToolCall, #/components/schemas/ChatCompletionMessageCustomToolCall` to the `choices/items/message/tool_calls/items/` response property `oneOf` list for the response status `200` (media type: application/json)
  - the `choices/items/logprobs` response's property type changed from `object` to no type for status `200` (media type: application/json)
  - …91 more
- **2025-04-29** `6a6c681b1820` — 7 warning, 17 info
  - the `allOf[subschema #2]/seed` request property's max was set to `9223372036854775808.00`
  - the `allOf[subschema #2]/seed` request property's min was set to `-9223372036854775808.00`
  - removed the request property `allOf[subschema #2]/service_tier`
  - added the new `auto` enum value to the `service_tier` response property for the response status `200` (media type: application/json)
  - added the new `auto` enum value to the `service_tier` response property for the response status `200` (media type: text/event-stream)
  - added the new `flex` enum value to the `service_tier` response property for the response status `200` (media type: application/json)
  - added the new `flex` enum value to the `service_tier` response property for the response status `200` (media type: text/event-stream)
  - added the new optional request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/service_tier`
  - added the new `aac` enum value to the request property `allOf[subschema #2]/audio/format`
  - added the new `gpt-4.1` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-4.1-2025-04-14` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-4.1-mini` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-4.1-mini-2025-04-14` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-4.1-nano` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `gpt-4.1-nano-2025-04-14` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `o3` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `o3-2025-04-16` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `o4-mini` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - added the new `o4-mini-2025-04-16` enum value to the request property `allOf[subschema #2]/model/anyOf[subschema #2]/`
  - the `allOf[subschema #2]/seed` request property format was generalized from `int64` to no format
  - the `service_tier` response's property default value `auto` was added for the status `200` (media type: application/json)
  - the `service_tier` response's property default value `auto` was added for the status `200` (media type: text/event-stream)
  - removed the `scale` enum value from the `service_tier` response property for the response status `200` (media type: application/json)
  - removed the `scale` enum value from the `service_tier` response property for the response status `200` (media type: text/event-stream)
- **2025-03-22** `86ed5d923809` — 1 breaking
  - the `allOf[subschema #2]/seed` request property type changed from `int64` to `integer`, and format from no format to `int64`
- **2025-03-22** `41844462b873` — 11 breaking, 2 warning, 7 info
  - added the new required request property `allOf[subschema #2]/model`
  - removed the enum value `alloy` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `ash` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `ballad` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `coral` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `echo` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `sage` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `shimmer` of the request property `allOf[subschema #2]/audio/voice`
  - removed the enum value `verse` of the request property `allOf[subschema #2]/audio/voice`
  - the `allOf[subschema #2]/audio/voice` request property type changed from `string` to no type
  - the `allOf[subschema #2]/seed` request property type changed from `integer` to `int64`
  - removed the request property `allOf[#/components/schemas/CreateModelResponseProperties]/allOf[#/components/schemas/ModelResponseProperties]/model`
  - removed the request property `allOf[subschema #2]/messages/items/oneOf[subschema #3: User message]/content/oneOf[subschema #2: Array of content parts]/items/oneOf[subschema #4: File content part]/file/file_name`
  - 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[subschema #4: File content part]/file/filename`
  - added `subschema #1, subschema #2` to the `allOf[subschema #2]/audio/voice` request property `anyOf` list
  - added the optional property `usage/completion_tokens_details` to the response with the `200` status
  - added the optional property `usage/prompt_tokens_details` to the response with the `200` status
  - the `completion_tokens` response's property default value `0` was added for the status `200`
  - the `prompt_tokens` response's property default value `0` was added for the status `200`
  - the `total_tokens` response's property default value `0` was added for the status `200`
- **2025-03-11** `6ab43fe7798e` — 2 breaking, 30 warning, 1 info
  - added `#/components/schemas/CreateModelResponseProperties, subschema #2` to the request body `allOf` list
  - the request's body type changed from `object` to no type
  - removed the request property `audio`
  - removed the request property `frequency_penalty`
  - removed the request property `function_call`
  - removed the request property `functions`
  - removed the request property `logit_bias`
  - removed the request property `logprobs`
  - removed the request property `max_completion_tokens`
  - removed the request property `max_tokens`
  - removed the request property `messages`
  - removed the request property `metadata`
  - removed the request property `modalities`
  - removed the request property `model`
  - removed the request property `n`
  - removed the request property `parallel_tool_calls`
  - removed the request property `prediction`
  - removed the request property `presence_penalty`
  - removed the request property `reasoning_effort`
  - removed the request property `response_format`
  - removed the request property `seed`
  - removed the request property `service_tier`
  - removed the request property `stop`
  - removed the request property `store`
  - removed the request property `stream`
  - removed the request property `stream_options`
  - removed the request property `temperature`
  - removed the request property `tool_choice`
  - removed the request property `tools`
  - removed the request property `top_logprobs`
  - removed the request property `top_p`
  - removed the request property `user`
  - added the optional property `choices/items/message/annotations` to the response with the `200` status (media type: application/json)
- **2025-02-11** `96060afbb5b9` — 1 info
  - the request property `reasoning_effort` became nullable
- **2025-02-04** `5c0e3ef6b492` — 1 warning, 9 info
  - added the new `developer` enum value to the `choices/items/delta/role` response property for the response status `200` (media type: text/event-stream)
  - the `accepted_prediction_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `audio_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `audio_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `cached_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `completion_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `prompt_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `reasoning_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `rejected_prediction_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
  - the `total_tokens` response's property default value `0` was added for the status `200` (media type: application/json)
- **2025-01-31** `fc164a27fdb9` — 2 info
  - added the new `o3-mini` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `o3-mini-2025-01-31` enum value to the request property `model/anyOf[subschema #2]/`
- **2025-01-21** `47138a7dd8b9` — 1 breaking, 1 info
  - the `seed` request property format changed from no format to `int64`
  - added the media type `text/event-stream` for the response with the status `200`
- **2025-01-21** `0d83ef8a5f65` — 1 breaking, 2 warning, 1 info
  - removed the media type `text/event-stream` for the response with the status `200`
  - the `seed` request property's max was set to `9223372036854775808.00`
  - the `seed` request property's min was set to `-9223372036854775808.00`
  - the `seed` request property format was generalized from `int64` to no format
- **2025-01-17** `88f3bede7665` — 1 breaking, 1 info
  - the `seed` request property format changed from no format to `int64`
  - added the media type `text/event-stream` for the response with the status `200`
- **2024-12-18** `8fbbc11fa933` — 2 breaking, 7 info
  - removed the enum value `gpt-4o-realtime-preview` of the request property `model/anyOf[subschema #2]/`
  - removed the enum value `gpt-4o-realtime-preview-2024-10-01` of the request property `model/anyOf[subschema #2]/`
  - added the new optional request property `reasoning_effort`
  - added the new `gpt-4o-audio-preview-2024-12-17` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-mini-audio-preview` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-mini-audio-preview-2024-12-17` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `o1` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `o1-2024-12-17` enum value to the request property `model/anyOf[subschema #2]/`
  - added `#/components/schemas/ChatCompletionRequestDeveloperMessage` to the `messages/items/` request property `oneOf` list
- **2024-12-04** `223e7c033ac6` — 1 info
  - added the new `gpt-4o-2024-11-20` enum value to the request property `model/anyOf[subschema #2]/`
- **2024-11-04** `681d8ec16477` — 3 breaking, 8 info
  - removed the enum value `fable` of the request property `audio/voice`
  - removed the enum value `nova` of the request property `audio/voice`
  - removed the enum value `onyx` of the request property `audio/voice`
  - added the new optional request property `prediction`
  - added the new `ash` enum value to the request property `audio/voice`
  - added the new `ballad` enum value to the request property `audio/voice`
  - added the new `coral` enum value to the request property `audio/voice`
  - added the new `sage` enum value to the request property `audio/voice`
  - added the new `verse` enum value to the request property `audio/voice`
  - added the optional property `usage/completion_tokens_details/accepted_prediction_tokens` to the response with the `200` status
  - added the optional property `usage/completion_tokens_details/rejected_prediction_tokens` to the response with the `200` status
- **2024-10-17** `cc9f99ba40bc` — 14 info
  - added the new optional request property `audio`
  - added the new optional request property `messages/items/oneOf[subschema #3: Assistant message]/audio`
  - added the new optional request property `metadata`
  - added the new optional request property `modalities`
  - added the new optional request property `store`
  - the `service_tier` request property default value `auto` was added
  - added the new `gpt-4o-audio-preview` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-audio-preview-2024-10-01` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-realtime-preview` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-realtime-preview-2024-10-01` enum value to the request property `model/anyOf[subschema #2]/`
  - added `#/components/schemas/ChatCompletionRequestMessageContentPartAudio` to the `messages/items/oneOf[subschema #2: User message]/content/oneOf[subschema #2: Array of content parts]/items/` request property `oneOf` list
  - added the optional property `choices/items/message/audio` to the response with the `200` status
  - added the optional property `usage/completion_tokens_details/audio_tokens` to the response with the `200` status
  - added the optional property `usage/prompt_tokens_details` to the response with the `200` status
- **2024-09-13** `4c9e3967c707` — 7 info
  - added the new optional request property `max_completion_tokens`
  - request property `max_tokens` deprecated
  - added the new `o1-mini` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `o1-mini-2024-09-12` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `o1-preview` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `o1-preview-2024-09-12` enum value to the request property `model/anyOf[subschema #2]/`
  - added the optional property `usage/completion_tokens_details` to the response with the `200` status
- **2024-08-15** `3aa75ca80feb` — 1 info
  - added the new `chatgpt-4o-latest` enum value to the request property `model/anyOf[subschema #2]/`
- **2024-08-06** `8eca3b09b705` — 1 breaking, 1 warning, 10 info
  - the `response_format` request property type changed from `object` to no type
  - removed the request property `response_format/type`
  - added the new optional request property `messages/items/oneOf[subschema #3: Assistant message]/refusal`
  - added the new optional request property `tools/items/function/strict`
  - added the new `gpt-4o-2024-08-06` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-2024-08-06` enum value to the request property `model/anyOf[subschema #2]/`
  - request property `messages/items/oneOf[subschema #1: System message]/content` list-of-types was widened by adding types `array` to media type `application/json`
  - request property `messages/items/oneOf[subschema #3: Assistant message]/content` list-of-types was widened by adding types `array` to media type `application/json`
  - request property `messages/items/oneOf[subschema #4: Tool message]/content` list-of-types was widened by adding types `array` to media type `application/json`
  - added `#/components/schemas/ResponseFormatText, #/components/schemas/ResponseFormatJsonObject, #/components/schemas/ResponseFormatJsonSchema` to the `response_format` request property `oneOf` list
  - added the required property `choices/items/logprobs/refusal` to the response with the `200` status
  - added the required property `choices/items/message/refusal` to the response with the `200` status
- **2024-07-17** `12529f330aab` — 2 breaking
  - removed the enum value `gpt-4o-mini` of the request property `model/anyOf[subschema #2]/`
  - removed the enum value `gpt-4o-mini-2024-07-18` of the request property `model/anyOf[subschema #2]/`
- **2024-07-15** `493a67abde1a` — 2 info
  - added the new `gpt-4o-mini` enum value to the request property `model/anyOf[subschema #2]/`
  - added the new `gpt-4o-mini-2024-07-18` enum value to the request property `model/anyOf[subschema #2]/`

---

[Operation](https://skmtc.dev/openai/apis/openapi/docs/chat/completions/post.md) · [API](https://skmtc.dev/openai/apis/openapi.md) · [Page](https://skmtc.dev/openai/apis/openapi/changes/chat/completions/post)
