Change Updates

Do not miss any OpenAI API changes, ever again

Subscribe to the OpenAI API changelog to be up to date on recent changes.

RSS

Jun 10, 2025

main
2.3.0
Compare
2.3.0

API structure has changed

Next change
109 structure changes including:
62 Additions
47 Modifications
Modified 47 Breaking
POST /vector_stores/{vector_store_id}/files
  • Body
  • application/json content type Modified
    • attributes property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • attributes property Added
POST /assistants/{assistant_id}
  • Body
  • application/json content type Modified
    • model property Modified
      • AssistantSupportedModels alternative Added
    • tools property Modified
      • AssistantToolsFileSearch alternative Modified
        • file_search property Modified
      • AssistantToolsFunction alternative Modified
        • function property Modified
    • metadata property Modified
      • * property Added
    • response_format property Modified
      • AssistantsApiResponseFormat alternative Removed
        • Removing a resource is always breaking unless it was deprecated before
          Breaking
      • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
    • reasoning_effort property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
POST /assistants
  • Body
  • application/json content type Modified
    • tools property Modified
      • AssistantToolsFileSearch alternative Modified
        • file_search property Modified
      • AssistantToolsFunction alternative Modified
        • function property Modified
    • tool_resources property Modified
      • file_search property Modified
        • object-1, object-2 properties Modified
    • metadata property Modified
      • * property Added
    • response_format property Modified
      • AssistantsApiResponseFormat alternative Removed
        • Removing a resource is always breaking unless it was deprecated before
          Breaking
      • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
    • reasoning_effort property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
GET /vector_stores/{vector_store_id}/files/{file_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • attributes property Added
GET /vector_stores/{vector_store_id}/files
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • attributes property Added
GET /vector_stores/{vector_store_id}/file_batches/{batch_id}/files
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • attributes property Added
GET /vector_stores/{vector_store_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
GET /vector_stores
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • metadata property Modified
GET /threads/{thread_id}/runs/{run_id}/steps/{step_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • step_details property Modified
        • RunStepDetailsToolCallsObject alternative Modified
      • metadata property Modified
        • * property Added
  • Query
  • include[] query parameter Added
GET /threads/{thread_id}/runs/{run_id}/steps
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • step_details, metadata properties Modified
  • Query
  • include[] query parameter Added
GET /threads/{thread_id}/runs/{run_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • truncation_strategy property Modified
        • Type went from object | null to object
          Breaking
      • tool_choice property Modified
        • string-1 property Modified
          • Type went from string | null to string
            Breaking
        • AssistantsNamedToolChoice property Modified
          • Type went from object | null to object
            Breaking
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
      • parallel_tool_calls property Added
GET /threads/{thread_id}/runs
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • tools, metadata, tool_choice, response_format properties Modified
        • truncation_strategy property Modified
          • Type went from object | null to object
            Breaking
        • parallel_tool_calls property Added
GET /threads/{thread_id}/messages/{message_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • content property Modified
        • MessageContentTextObject alternative Modified
        • MessageContentRefusalObject alternative Added
      • attachments property Modified
        • tools property Modified
      • metadata property Modified
        • * property Added
GET /threads/{thread_id}/messages
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • content, attachments, metadata properties Modified
GET /threads/{thread_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
GET /fine_tuning/jobs/{fine_tuning_job_id}/events
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • type, data properties Added
      • has_more property Added
GET /fine_tuning/jobs/{fine_tuning_job_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • hyperparameters property Modified
        • n_epochs property Modified
        • batch_size, learning_rate_multiplier properties Added
      • method, metadata properties Added
GET /fine_tuning/jobs
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • hyperparameters property Modified
        • method, metadata properties Added
  • Query
  • metadata query parameter Added
GET /files/{file_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • expires_at property Added
GET /files
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • expires_at property Added
      • first_id, last_id, has_more properties Added
  • Query
  • limit, order, after query parameters Added
GET /batches/{batch_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
GET /batches
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • metadata property Modified
GET /assistants/{assistant_id}
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
GET /assistants
  • Response
  • 200 response Modified
    • application/json content type Modified
      • data property Modified
        • tools, metadata, response_format properties Modified
POST /vector_stores/{vector_store_id}/file_batches
  • Body
  • application/json content type Modified
    • attributes property Added
POST /vector_stores/{vector_store_id}
  • Body
  • application/json content type Modified
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
POST /vector_stores
  • Body
  • application/json content type Modified
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
POST /threads/{thread_id}/runs/{run_id}/submit_tool_outputs
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • truncation_strategy property Modified
        • Type went from object | null to object
          Breaking
      • tool_choice property Modified
        • string-1 property Modified
          • Type went from string | null to string
            Breaking
        • AssistantsNamedToolChoice property Modified
          • Type went from object | null to object
            Breaking
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
      • parallel_tool_calls property Added
POST /threads/{thread_id}/runs/{run_id}/cancel
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • truncation_strategy property Modified
        • Type went from object | null to object
          Breaking
      • tool_choice property Modified
        • string-1 property Modified
          • Type went from string | null to string
            Breaking
        • AssistantsNamedToolChoice property Modified
          • Type went from object | null to object
            Breaking
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
      • parallel_tool_calls property Added
POST /threads/{thread_id}/runs/{run_id}
  • Body
  • application/json content type Modified
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • truncation_strategy property Modified
        • Type went from object | null to object
          Breaking
      • tool_choice property Modified
        • string-1 property Modified
          • Type went from string | null to string
            Breaking
        • AssistantsNamedToolChoice property Modified
          • Type went from object | null to object
            Breaking
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
      • parallel_tool_calls property Added
POST /threads/{thread_id}/runs
  • Body
  • application/json content type Modified
    • additional_messages property Modified
      • attachments property Modified
        • tools property Modified
      • metadata property Modified
        • * property Added
    • tools property Modified
      • AssistantToolsFileSearch alternative Modified
        • file_search property Modified
      • AssistantToolsFunction alternative Modified
        • function property Modified
    • metadata property Modified
      • * property Added
    • truncation_strategy property Modified
      • Type went from object | null to object
        Breaking
    • tool_choice property Modified
      • string-1 property Modified
        • Type went from string | null to string
          Breaking
      • AssistantsNamedToolChoice property Modified
        • Type went from object | null to object
          Breaking
    • response_format property Modified
      • AssistantsApiResponseFormat alternative Removed
        • Removing a resource is always breaking unless it was deprecated before
          Breaking
      • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
    • reasoning_effort, parallel_tool_calls properties Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • truncation_strategy property Modified
        • Type went from object | null to object
          Breaking
      • tool_choice property Modified
        • string-1 property Modified
          • Type went from string | null to string
            Breaking
        • AssistantsNamedToolChoice property Modified
          • Type went from object | null to object
            Breaking
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
      • parallel_tool_calls property Added
  • Query
  • include[] query parameter Added
POST /threads/{thread_id}/messages/{message_id}
  • Body
  • application/json content type Modified
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • content property Modified
        • MessageContentTextObject alternative Modified
        • MessageContentRefusalObject alternative Added
      • attachments property Modified
        • tools property Modified
      • metadata property Modified
        • * property Added
POST /threads/{thread_id}/messages
  • Body
  • application/json content type Modified
    • attachments property Modified
      • tools property Modified
        • AssistantToolsFileSearch alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • AssistantToolsFileSearchTypeOnly alternative Added
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • content property Modified
        • MessageContentTextObject alternative Modified
        • MessageContentRefusalObject alternative Added
      • attachments property Modified
        • tools property Modified
      • metadata property Modified
        • * property Added
POST /threads/{thread_id}
  • Body
  • application/json content type Modified
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
POST /threads/runs
  • Body
  • application/json content type Modified
    • thread property Modified
      • messages property Modified
        • attachments, metadata properties Modified
      • tool_resources property Modified
        • file_search property Modified
      • metadata property Modified
        • * property Added
    • tools property Modified
      • AssistantToolsFileSearch alternative Modified
        • file_search property Modified
      • AssistantToolsFunction alternative Modified
        • function property Modified
    • metadata property Modified
      • * property Added
    • truncation_strategy property Modified
      • Type went from object | null to object
        Breaking
    • tool_choice property Modified
      • string-1 property Modified
        • Type went from string | null to string
          Breaking
      • AssistantsNamedToolChoice property Modified
        • Type went from object | null to object
          Breaking
    • response_format property Modified
      • AssistantsApiResponseFormat alternative Removed
        • Removing a resource is always breaking unless it was deprecated before
          Breaking
      • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
    • parallel_tool_calls property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • tools property Modified
        • AssistantToolsFileSearch, AssistantToolsFunction alternatives Modified
      • metadata property Modified
        • * property Added
      • truncation_strategy property Modified
        • Type went from object | null to object
          Breaking
      • tool_choice property Modified
        • string-1 property Modified
          • Type went from string | null to string
            Breaking
        • AssistantsNamedToolChoice property Modified
          • Type went from object | null to object
            Breaking
      • response_format property Modified
        • AssistantsApiResponseFormat alternative Removed
          • Removing a resource is always breaking unless it was deprecated before
            Breaking
        • ResponseFormatText, ResponseFormatJsonObject, ResponseFormatJsonSchema alternatives Added
      • parallel_tool_calls property Added
POST /audio/speech
  • Body
  • application/json content type Modified
    • voice property Modified
      • Combinator is now anyOf
      • voice alternative Removed
        • Removing a resource is always breaking unless it was deprecated before
          Breaking
      • string-1, string-2 alternatives Added
    • instructions property Added
POST /audio/transcriptions
  • Body
  • multipart/form-data content type Modified
    • include[], stream properties Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • CreateTranscriptionResponseJson alternative Modified
        • logprobs property Added
      • CreateTranscriptionResponseVerboseJson alternative Modified
        • duration property Modified
          • Type went from string to number
            Breaking
    • text/event-stream content type Added
POST /audio/translations
  • Response
  • 200 response Modified
    • application/json content type Modified
      • CreateTranslationResponseVerboseJson alternative Modified
        • duration property Modified
          • Type went from string to number
            Breaking
POST /batches
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
POST /batches/{batch_id}/cancel
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
POST /chat/completions
  • Body
  • application/json content type Modified
    • messages property Modified
      • ChatCompletionRequestSystemMessage alternative Modified
        • content property Modified
          • Combinator is now oneOf
      • ChatCompletionRequestUserMessage alternative Modified
        • content property Modified
      • ChatCompletionRequestAssistantMessage alternative Modified
        • content property Modified
          • Combinator is now oneOf
        • refusal, audio properties Added
      • ChatCompletionRequestToolMessage alternative Modified
        • content property Modified
          • Combinator is now oneOf
      • ChatCompletionRequestDeveloperMessage alternative Added
    • response_format property Modified
      • Combinator is now oneOf
      • response_format alternative Removed
        • Removing a resource is always breaking unless it was deprecated before
          Breaking
      • ResponseFormatText, ResponseFormatJsonSchema, ResponseFormatJsonObject alternatives Added
    • stop property Modified
      • array-2 alternative Modified
        • Type went from array[string] to array[string] | null
    • max_tokens property Modified
      • Property is now deprecated
    • tools property Modified
      • function property Modified
        • strict property Added
    • metadata, modalities, reasoning_effort, max_completion_tokens, web_search_options, service_tier, audio, store, PredictionContent, parallel_tool_calls properties Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • choices property Modified
        • message, logprobs properties Modified
      • usage property Modified
        • completion_tokens_details, prompt_tokens_details properties Added
      • service_tier property Added
    • text/event-stream content type Added
POST /completions
  • Response
  • 200 response Modified
    • application/json content type Modified
      • usage property Modified
        • completion_tokens_details, prompt_tokens_details properties Added
POST /files
  • Response
  • 200 response Modified
    • application/json content type Modified
      • expires_at property Added
POST /fine_tuning/jobs
  • Body
  • application/json content type Modified
    • hyperparameters property Modified
      • Property is now deprecated
    • method, metadata properties Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • hyperparameters property Modified
        • n_epochs property Modified
        • batch_size, learning_rate_multiplier properties Added
      • method, metadata properties Added
POST /fine_tuning/jobs/{fine_tuning_job_id}/cancel
  • Response
  • 200 response Modified
    • application/json content type Modified
      • hyperparameters property Modified
        • n_epochs property Modified
        • batch_size, learning_rate_multiplier properties Added
      • method, metadata properties Added
POST /moderations
  • Body
  • application/json content type Modified
    • input property Modified
      • array-3 alternative Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • results property Modified
        • categories, category_scores properties Modified
        • category_applied_input_types property Added
POST /threads
  • Body
  • application/json content type Modified
    • messages property Modified
      • attachments property Modified
        • tools property Modified
      • metadata property Modified
        • * property Added
    • tool_resources property Modified
      • file_search property Modified
        • object-1, object-2 properties Modified
    • metadata property Modified
      • * property Added
  • Response
  • 200 response Modified
    • application/json content type Modified
      • metadata property Modified
        • * property Added
Added 62
POST /vector_stores/{vector_store_id}/search
POST /vector_stores/{vector_store_id}/files/{file_id}
POST /uploads/{upload_id}/parts
POST /uploads/{upload_id}/complete
POST /uploads/{upload_id}/cancel
POST /uploads
POST /responses
POST /realtime/transcription_sessions
GET /organization/projects/{project_id}/users
GET /organization/projects/{project_id}/service_accounts/{service_account_id}
GET /organization/projects/{project_id}/service_accounts
GET /organization/projects/{project_id}/rate_limits
GET /organization/projects/{project_id}/api_keys/{key_id}
GET /organization/projects/{project_id}/api_keys
GET /organization/projects/{project_id}
GET /organization/projects
GET /organization/invites/{invite_id}
GET /organization/invites
GET /organization/costs
GET /organization/audit_logs
GET /organization/admin_api_keys/{key_id}
GET /organization/admin_api_keys
GET /fine_tuning/checkpoints/{permission_id}/permissions
GET /chat/completions/{completion_id}/messages
GET /chat/completions/{completion_id}
GET /chat/completions
DELETE /responses/{response_id}
DELETE /organization/users/{user_id}
DELETE /organization/projects/{project_id}/users/{user_id}
DELETE /organization/projects/{project_id}/service_accounts/{service_account_id}
DELETE /organization/projects/{project_id}/api_keys/{key_id}
DELETE /organization/invites/{invite_id}
DELETE /organization/admin_api_keys/{key_id}
DELETE /fine_tuning/checkpoints/{permission_id}/permissions
DELETE /chat/completions/{completion_id}
POST /realtime/sessions
POST /organization/users/{user_id}
POST /organization/projects/{project_id}/users/{user_id}
POST /organization/projects/{project_id}/users
POST /organization/projects/{project_id}/service_accounts
POST /organization/projects/{project_id}/rate_limits/{rate_limit_id}
POST /organization/projects/{project_id}/archive
POST /organization/projects/{project_id}
POST /organization/projects
POST /organization/invites
POST /organization/admin_api_keys
POST /fine_tuning/checkpoints/{permission_id}/permissions
POST /chat/completions/{completion_id}
GET /vector_stores/{vector_store_id}/files/{file_id}/content
GET /responses/{response_id}/input_items
GET /responses/{response_id}
GET /organization/users/{user_id}
GET /organization/users
GET /organization/usage/vector_stores
GET /organization/usage/moderations
GET /organization/usage/images
GET /organization/usage/embeddings
GET /organization/usage/completions
GET /organization/usage/code_interpreter_sessions
GET /organization/usage/audio_transcriptions
GET /organization/usage/audio_speeches
GET /organization/projects/{project_id}/users/{user_id}