diff --git a/.release-please-manifest.json b/.release-please-manifest.json
index f1a48d37..1f3b9543 100644
--- a/.release-please-manifest.json
+++ b/.release-please-manifest.json
@@ -1,3 +1,3 @@
{
- ".": "4.7.1"
+ ".": "4.7.2"
}
\ No newline at end of file
diff --git a/.stats.yml b/.stats.yml
index d697cee1..512f74cf 100644
--- a/.stats.yml
+++ b/.stats.yml
@@ -1,4 +1,4 @@
configured_endpoints: 135
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-eeba8addf3a5f412e5ce8d22031e60c61650cee3f5d9e587a2533f6818a249ea.yml
openapi_spec_hash: 0a4d8ad2469823ce24a3fd94f23f1c2b
-config_hash: 0bb1941a78ece0b610a2fbba7d74a84c
+config_hash: 630eea84bb3067d25640419af058ed56
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 679d90a5..9758c1a4 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -1,5 +1,13 @@
# Changelog
+## 4.7.2 (2025-11-13)
+
+Full Changelog: [v4.7.1...v4.7.2](https://github.com/openai/openai-java/compare/v4.7.1...v4.7.2)
+
+### Bug Fixes
+
+* **client:** multi-value header serialization ([4a198b2](https://github.com/openai/openai-java/commit/4a198b2f0e2531295bb1bf9d4ca2fdbd74af64e5))
+
## 4.7.1 (2025-11-04)
Full Changelog: [v4.7.0...v4.7.1](https://github.com/openai/openai-java/compare/v4.7.0...v4.7.1)
diff --git a/README.md b/README.md
index 00fba3ac..fda616ef 100644
--- a/README.md
+++ b/README.md
@@ -2,8 +2,8 @@
-[](https://central.sonatype.com/artifact/com.openai/openai-java/4.7.1)
-[](https://javadoc.io/doc/com.openai/openai-java/4.7.1)
+[](https://central.sonatype.com/artifact/com.openai/openai-java/4.7.2)
+[](https://javadoc.io/doc/com.openai/openai-java/4.7.2)
@@ -11,7 +11,7 @@ The OpenAI Java SDK provides convenient access to the [OpenAI REST API](https://
-The REST API documentation can be found on [platform.openai.com](https://platform.openai.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.openai/openai-java/4.7.1).
+The REST API documentation can be found on [platform.openai.com](https://platform.openai.com/docs). Javadocs are available on [javadoc.io](https://javadoc.io/doc/com.openai/openai-java/4.7.2).
@@ -24,7 +24,7 @@ The REST API documentation can be found on [platform.openai.com](https://platfor
### Gradle
```kotlin
-implementation("com.openai:openai-java:4.7.1")
+implementation("com.openai:openai-java:4.7.2")
```
### Maven
@@ -33,7 +33,7 @@ implementation("com.openai:openai-java:4.7.1")
com.openai
openai-java
- 4.7.1
+ 4.7.2
```
@@ -1342,7 +1342,7 @@ If you're using Spring Boot, then you can use the SDK's [Spring Boot starter](ht
#### Gradle
```kotlin
-implementation("com.openai:openai-java-spring-boot-starter:4.7.1")
+implementation("com.openai:openai-java-spring-boot-starter:4.7.2")
```
#### Maven
@@ -1351,7 +1351,7 @@ implementation("com.openai:openai-java-spring-boot-starter:4.7.1")
com.openai
openai-java-spring-boot-starter
- 4.7.1
+ 4.7.2
```
diff --git a/build.gradle.kts b/build.gradle.kts
index db96019e..3060ee82 100644
--- a/build.gradle.kts
+++ b/build.gradle.kts
@@ -8,7 +8,7 @@ repositories {
allprojects {
group = "com.openai"
- version = "4.7.1" // x-release-please-version
+ version = "4.7.2" // x-release-please-version
}
subprojects {
diff --git a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt
index e4f63c28..d99c47cb 100644
--- a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt
+++ b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OkHttpClient.kt
@@ -109,19 +109,19 @@ class OkHttpClient private constructor(private val okHttpClient: okhttp3.OkHttpC
val builder = Request.Builder().url(toUrl()).method(method.name, body)
headers.names().forEach { name ->
- headers.values(name).forEach { builder.header(name, it) }
+ headers.values(name).forEach { builder.addHeader(name, it) }
}
if (
!headers.names().contains("X-Stainless-Read-Timeout") && client.readTimeoutMillis != 0
) {
- builder.header(
+ builder.addHeader(
"X-Stainless-Read-Timeout",
Duration.ofMillis(client.readTimeoutMillis.toLong()).seconds.toString(),
)
}
if (!headers.names().contains("X-Stainless-Timeout") && client.callTimeoutMillis != 0) {
- builder.header(
+ builder.addHeader(
"X-Stainless-Timeout",
Duration.ofMillis(client.callTimeoutMillis.toLong()).seconds.toString(),
)