diff --git a/.release-please-manifest.json b/.release-please-manifest.json index 4caf2c18e..d1d50bcaf 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "0.11.9" + ".": "0.11.10" } \ No newline at end of file diff --git a/CHANGELOG.md b/CHANGELOG.md index 63e8743aa..243092256 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,13 @@ # Changelog +## 0.11.10 (2025-01-21) + +Full Changelog: [v0.11.9...v0.11.10](https://github.com/openai/openai-java/compare/v0.11.9...v0.11.10) + +### Bug Fixes + +* **client:** add missing default headers ([#145](https://github.com/openai/openai-java/issues/145)) ([18d5270](https://github.com/openai/openai-java/commit/18d5270326561ca8e5f10b5a671da1d30ced5993)) + ## 0.11.9 (2025-01-21) Full Changelog: [v0.11.8...v0.11.9](https://github.com/openai/openai-java/compare/v0.11.8...v0.11.9) diff --git a/README.md b/README.md index b92902e24..39d7ee38f 100644 --- a/README.md +++ b/README.md @@ -9,8 +9,8 @@ -[![Maven Central](https://img.shields.io/maven-central/v/com.openai/openai-java)](https://central.sonatype.com/artifact/com.openai/openai-java/0.11.9) -[![javadoc](https://javadoc.io/badge2/com.openai/openai-java/0.11.9/javadoc.svg)](https://javadoc.io/doc/com.openai/openai-java/0.11.8) +[![Maven Central](https://img.shields.io/maven-central/v/com.openai/openai-java)](https://central.sonatype.com/artifact/com.openai/openai-java/0.11.10) +[![javadoc](https://javadoc.io/badge2/com.openai/openai-java/0.11.10/javadoc.svg)](https://javadoc.io/doc/com.openai/openai-java/0.11.10) @@ -31,7 +31,7 @@ The REST API documentation can be foundĀ on [platform.openai.com](https://platfo ```kotlin -implementation("com.openai:openai-java:0.11.9") +implementation("com.openai:openai-java:0.11.10") ``` #### Maven @@ -40,7 +40,7 @@ implementation("com.openai:openai-java:0.11.9") com.openai openai-java - 0.11.9 + 0.11.10 ``` diff --git a/build.gradle.kts b/build.gradle.kts index 222387ad2..6f3392cf4 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,7 +8,7 @@ repositories { allprojects { group = "com.openai" - version = "0.11.9" // x-release-please-version + version = "0.11.10" // x-release-please-version } subprojects { diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/BetaServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/BetaServiceAsyncImpl.kt index dff5c993e..767ea7f69 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/BetaServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/BetaServiceAsyncImpl.kt @@ -3,6 +3,7 @@ package com.openai.services.async import com.openai.core.ClientOptions +import com.openai.core.http.Headers import com.openai.services.async.beta.AssistantServiceAsync import com.openai.services.async.beta.AssistantServiceAsyncImpl import com.openai.services.async.beta.ThreadServiceAsync @@ -15,6 +16,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : BetaServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val vectorStores: VectorStoreServiceAsync by lazy { VectorStoreServiceAsyncImpl(clientOptions) } diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/AssistantServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/AssistantServiceAsyncImpl.kt index 5537f40f7..3e6a56455 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/AssistantServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/AssistantServiceAsyncImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -27,6 +28,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : AssistantServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -44,6 +50,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -74,6 +81,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -103,6 +111,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -134,6 +143,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -164,6 +174,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/ThreadServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/ThreadServiceAsyncImpl.kt index 6ab2ba5de..9915f6bb3 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/ThreadServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/ThreadServiceAsyncImpl.kt @@ -11,6 +11,7 @@ import com.openai.core.handlers.mapJson import com.openai.core.handlers.sseHandler import com.openai.core.handlers.withErrorHandler import com.openai.core.http.AsyncStreamResponse +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -39,6 +40,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : ThreadServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val runs: RunServiceAsync by lazy { RunServiceAsyncImpl(clientOptions) } @@ -64,6 +70,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -94,6 +101,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -123,6 +131,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -153,6 +162,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() @@ -183,6 +193,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -215,6 +226,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body( json( diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/VectorStoreServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/VectorStoreServiceAsyncImpl.kt index f8930731f..2c0e1f30e 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/VectorStoreServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/VectorStoreServiceAsyncImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -31,6 +32,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : VectorStoreServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val files: FileServiceAsync by lazy { FileServiceAsyncImpl(clientOptions) } @@ -58,6 +64,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -88,6 +95,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -117,6 +125,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -148,6 +157,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -178,6 +188,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/MessageServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/MessageServiceAsyncImpl.kt index 1922990e6..015906aeb 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/MessageServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/MessageServiceAsyncImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -27,6 +28,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : MessageServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -44,6 +50,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -79,6 +86,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -113,6 +121,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -144,6 +153,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -179,6 +189,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncImpl.kt index a878e9868..84ea3506d 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/RunServiceAsyncImpl.kt @@ -11,6 +11,7 @@ import com.openai.core.handlers.mapJson import com.openai.core.handlers.sseHandler import com.openai.core.handlers.withErrorHandler import com.openai.core.http.AsyncStreamResponse +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -37,6 +38,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : RunServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val steps: StepServiceAsync by lazy { StepServiceAsyncImpl(clientOptions) } @@ -58,6 +64,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -90,6 +97,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body( json( @@ -133,6 +141,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -162,6 +171,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -193,6 +203,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -229,6 +240,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() @@ -269,6 +281,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -311,6 +324,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body( json( diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/runs/StepServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/runs/StepServiceAsyncImpl.kt index 86df558d6..317f0e086 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/runs/StepServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/threads/runs/StepServiceAsyncImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -22,6 +23,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : StepServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val retrieveHandler: Handler = @@ -46,6 +52,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -82,6 +89,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileBatchServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileBatchServiceAsyncImpl.kt index 1c0276907..8a544f93c 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileBatchServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileBatchServiceAsyncImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -25,6 +26,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : FileBatchServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -42,6 +48,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -77,6 +84,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -115,6 +123,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() @@ -152,6 +161,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileServiceAsyncImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileServiceAsyncImpl.kt index 33265ba1c..00e724395 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileServiceAsyncImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/beta/vectorStores/FileServiceAsyncImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -26,6 +27,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : FileServiceAsync { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -47,6 +53,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -82,6 +89,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -112,6 +120,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.executeAsync(request, requestOptions).thenApply { response @@ -151,6 +160,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/BetaServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/BetaServiceImpl.kt index 64faa0138..d3652849b 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/BetaServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/BetaServiceImpl.kt @@ -3,6 +3,7 @@ package com.openai.services.blocking import com.openai.core.ClientOptions +import com.openai.core.http.Headers import com.openai.services.blocking.beta.AssistantService import com.openai.services.blocking.beta.AssistantServiceImpl import com.openai.services.blocking.beta.ThreadService @@ -15,6 +16,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : BetaService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val vectorStores: VectorStoreService by lazy { VectorStoreServiceImpl(clientOptions) } private val assistants: AssistantService by lazy { AssistantServiceImpl(clientOptions) } diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/AssistantServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/AssistantServiceImpl.kt index 290ee97d4..80f112d75 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/AssistantServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/AssistantServiceImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -26,6 +27,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : AssistantService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -43,6 +49,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -72,6 +79,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -100,6 +108,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -130,6 +139,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -159,6 +169,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/ThreadServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/ThreadServiceImpl.kt index 8b3b370a4..e84e00620 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/ThreadServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/ThreadServiceImpl.kt @@ -10,6 +10,7 @@ import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.mapJson import com.openai.core.handlers.sseHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -36,6 +37,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : ThreadService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val runs: RunService by lazy { RunServiceImpl(clientOptions) } @@ -58,6 +64,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -87,6 +94,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -112,6 +120,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -141,6 +150,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() @@ -170,6 +180,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -201,6 +212,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body( json( diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/VectorStoreServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/VectorStoreServiceImpl.kt index 5a6e8268f..e95c288b0 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/VectorStoreServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/VectorStoreServiceImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -30,6 +31,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : VectorStoreService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val files: FileService by lazy { FileServiceImpl(clientOptions) } @@ -55,6 +61,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -84,6 +91,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -112,6 +120,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -142,6 +151,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -171,6 +181,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/MessageServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/MessageServiceImpl.kt index 55f3378e3..a51a07750 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/MessageServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/MessageServiceImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -26,6 +27,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : MessageService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -43,6 +49,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -77,6 +84,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -110,6 +118,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -140,6 +149,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -174,6 +184,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/RunServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/RunServiceImpl.kt index 19d1b7002..53b0e9f1b 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/RunServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/RunServiceImpl.kt @@ -10,6 +10,7 @@ import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.mapJson import com.openai.core.handlers.sseHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -34,6 +35,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : RunService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val steps: StepService by lazy { StepServiceImpl(clientOptions) } @@ -52,6 +58,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -83,6 +90,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body( json( @@ -123,6 +131,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -148,6 +157,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -178,6 +188,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -210,6 +221,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() @@ -249,6 +261,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -290,6 +303,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body( json( diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/runs/StepServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/runs/StepServiceImpl.kt index f62f6b5de..e009428d8 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/runs/StepServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/threads/runs/StepServiceImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -21,6 +22,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : StepService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val retrieveHandler: Handler = @@ -45,6 +51,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -80,6 +87,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileBatchServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileBatchServiceImpl.kt index 717f3de87..a5bc685c6 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileBatchServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileBatchServiceImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -24,6 +25,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : FileBatchService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -41,6 +47,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -75,6 +82,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -112,6 +120,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build() @@ -148,6 +157,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> diff --git a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileServiceImpl.kt b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileServiceImpl.kt index 0f3f334f1..fd30db4f9 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileServiceImpl.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/blocking/beta/vectorStores/FileServiceImpl.kt @@ -7,6 +7,7 @@ import com.openai.core.RequestOptions import com.openai.core.handlers.errorHandler import com.openai.core.handlers.jsonHandler import com.openai.core.handlers.withErrorHandler +import com.openai.core.http.Headers import com.openai.core.http.HttpMethod import com.openai.core.http.HttpRequest import com.openai.core.http.HttpResponse.Handler @@ -25,6 +26,11 @@ internal constructor( private val clientOptions: ClientOptions, ) : FileService { + companion object { + + private val DEFAULT_HEADERS = Headers.builder().put("OpenAI-Beta", "assistants=v2").build() + } + private val errorHandler: Handler = errorHandler(clientOptions.jsonMapper) private val createHandler: Handler = @@ -46,6 +52,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .body(json(clientOptions.jsonMapper, params.getBody())) .build() @@ -80,6 +87,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -109,6 +117,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .build() return clientOptions.httpClient.execute(request, requestOptions).let { response -> @@ -147,6 +156,7 @@ internal constructor( .putAllQueryParams(clientOptions.queryParams) .replaceAllQueryParams(params.getQueryParams()) .putAllHeaders(clientOptions.headers) + .replaceAllHeaders(DEFAULT_HEADERS) .replaceAllHeaders(params.getHeaders()) .apply { params.getBody().ifPresent { body(json(clientOptions.jsonMapper, it)) } } .build()