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

# Changes to Create chat completion

`POST /v1/chat/completions`

> Every recorded change to this operation, newest first.

## Timeline

Changed in 5 of 10 revisions.

- **2025-02-12** `9945200613ee`: 18 breaking, 4 warning, 16 info
- **2025-01-29** `1ae6677fa6b2`: 2 info
- **2025-01-03** `81b556597d6e`: 2 breaking, 1 info
- **2024-11-15** `812517a82337`: 1 warning, 1 info
- **2024-11-12** `f19c5a263347`: 9 breaking, 15 warning, 14 info

## Changes

- **2025-02-12** `9945200613ee`: 18 breaking, 4 warning, 16 info
  - removed `#/components/schemas/StopCondition, subschema #1` from the `stop` request property `oneOf` list
  - removed `subschema #1, subschema #2, subschema #3, subschema #4` from the `messages/items/` request property `oneOf` list
  - added 'propertyNames' constraint to the request property `tools/items/function/parameters`
  - the `logit_bias/propertyNames/` request property type changed from `string` to `integer`, and format from no format to `int32`
  - the `n` request property format changed from no format to `int32`
  - the `stop` request property type changed from no type to `array, null`
  - the `tools/items/function/parameters` request property type changed from no type to `object, null`
  - the response property `choices/items/finish_reason` became nullable for the status `200`
  - the response property `system_fingerprint` became nullable for the status `200`
  - the response property `choices/items/finish_reason` became optional for the status `200`
  - the response property `system_fingerprint` became optional for the status `200`
  - the response property `usage` became optional for the status `200`
  - added `#/components/schemas/ChatCompletionLogProbs, subschema #1` to the `choices/items/logprobs` response property `oneOf` list for the response status `200`
  - added `#/components/schemas/CompletionUsage, subschema #1` to the `usage` response property `oneOf` list for the response status `200`
  - added `subschema #1, subschema #2, subschema #3, subschema #4` to the `choices/items/message` response property `oneOf` list for the response status `200`
  - the `usage` response's property type changed from `object` to no type for status `200`
  - removed the required property `usage/prompt_tokens` from the response with the `200` status
  - removed the required property `usage/total_tokens` from the response with the `200` status
  - the `logit_bias/propertyNames/` request property's min was set to `0.00`
  - removed the request property `logprobs`
  - removed the optional property `usage/completion_tokens` from the response with the `200` status
  - removed the optional property `usage/completion_tokens_details` from the response with the `200` status
  - added the new optional request property `function_call`
  - added the new optional request property `functions`
  - added the new optional request property `parallel_tool_calls`
  - added the new optional request property `response_format`
  - added the new optional request property `service_tier`
  - added the new optional request property `stream_options`
  - added the new optional request property `tool_choice`
  - the request property `stop` became nullable
  - the request property `tools/items/function/parameters` became nullable
  - the `stop` request property default value `[]` was added
  - added `subschema #1, subschema #2, subschema #3, subschema #4` to the `messages/items/` request property `oneOf` list
  - added the optional property `service_tier` to the response with the `200` status
  - removed the `content_filter` enum value from the `choices/items/finish_reason` response property for the response status `200`
  - removed the `length_capped` enum value from the `choices/items/finish_reason` response property for the response status `200`
  - removed the `stopped` enum value from the `choices/items/finish_reason` response property for the response status `200`
  - removed `subschema #1, subschema #2, subschema #3, subschema #4` from the `choices/items/message` response property `oneOf` list for the response status `200`
- **2025-01-29** `1ae6677fa6b2`: 2 info
  - added the new optional request property `max_completion_tokens`
  - request property `max_tokens` deprecated
- **2025-01-03** `81b556597d6e`: 2 breaking, 1 info
  - the response property `usage/completion_tokens` became nullable for the status `200`
  - the response property `usage/completion_tokens` became optional for the status `200`
  - added the optional property `usage/completion_tokens_details` to the response with the `200` status
- **2024-11-15** `812517a82337`: 1 warning, 1 info
  - removed the request property `max_completion_tokens`
  - added the new optional request property `max_tokens`
- **2024-11-12** `f19c5a263347`: 9 breaking, 15 warning, 14 info
  - the request property `stop` became not nullable
  - the request property `tools/items/function/parameters` became not nullable
  - removed `subschema #1, subschema #2, subschema #3, subschema #4` from the `messages/items/` request property `oneOf` list
  - the `logit_bias/propertyNames/` request property type changed from `integer` to `string`, and format from `int32` to no format
  - the `n` request property format changed from `int32` to no format
  - the `stop` request property type changed from `array, null` to no type
  - the `tools/items/function/parameters` request property type changed from `object, null` to no type
  - added `subschema #1, subschema #2, subschema #3, subschema #4` to the `choices/items/message` response property `oneOf` list for the response status `200`
  - the `usage` response's property type changed from no type to `object` for status `200`
  - the `max_completion_tokens` request property's min was set to `0.00`
  - the `n` request property's min was set to `0.00`
  - the `seed` request property's min was set to `0.00`
  - removed the request property `function_call`
  - removed the request property `functions`
  - removed the request property `max_tokens`
  - removed the request property `parallel_tool_calls`
  - removed the request property `response_format`
  - removed the request property `service_tier`
  - removed the request property `stream_options`
  - removed the request property `tool_choice`
  - removed the optional property `service_tier` from the response with the `200` status
  - added the new `content_filter` enum value to the `choices/items/finish_reason` response property for the response status `200`
  - added the new `length_capped` enum value to the `choices/items/finish_reason` response property for the response status `200`
  - added the new `stopped` enum value to the `choices/items/finish_reason` response property for the response status `200`
  - added the new optional request property `logprobs`
  - the `stop` request property default value `[]` was removed
  - added `#/components/schemas/StopCondition, subschema #1` to the `stop` request property `oneOf` list
  - added `subschema #1, subschema #2, subschema #3, subschema #4` to the `messages/items/` request property `oneOf` list
  - removed 'propertyNames' constraint from the request property `tools/items/function/parameters`
  - the response property `choices/items/finish_reason` became required for the status `200`
  - the response property `system_fingerprint` became required for the status `200`
  - the response property `usage` became required for the status `200`
  - removed `#/components/schemas/ChatCompletionLogProbs, subschema #1` from the `choices/items/logprobs` response property `oneOf` list for the response status `200`
  - removed `#/components/schemas/CompletionUsage, subschema #1` from the `usage` response property `oneOf` list for the response status `200`
  - removed `subschema #1, subschema #2, subschema #3, subschema #4` from the `choices/items/message` response property `oneOf` list for the response status `200`
  - added the required property `usage/completion_tokens` to the response with the `200` status
  - added the required property `usage/prompt_tokens` to the response with the `200` status
  - added the required property `usage/total_tokens` to the response with the `200` status

---

[Operation](https://skmtc.dev/atomaai/apis/atoma-service/docs/v1/chat/completions/post.md) - [API](https://skmtc.dev/atomaai/apis/atoma-service.md) - [Page](https://skmtc.dev/atomaai/apis/atoma-service/changes/v1/chat/completions/post)
