diff --git a/.github/workflows/create-releases.yml b/.github/workflows/create-releases.yml index 471d34466..31b64faec 100644 --- a/.github/workflows/create-releases.yml +++ b/.github/workflows/create-releases.yml @@ -40,7 +40,7 @@ jobs: run: | ./gradlew :openai-java-core:compileJava :openai-java-core:compileTestJava -x test - - name: Run the Prism server + - name: Run the mock server run: | ./scripts/mock --daemon diff --git a/.github/workflows/publish-sonatype.yml b/.github/workflows/publish-sonatype.yml index 4f3bc29d6..23eccddc0 100644 --- a/.github/workflows/publish-sonatype.yml +++ b/.github/workflows/publish-sonatype.yml @@ -28,7 +28,7 @@ jobs: run: | ./gradlew :openai-java-core:compileJava :openai-java-core:compileTestJava -x test - - name: Run the Prism server + - name: Run the mock server run: | ./scripts/mock --daemon diff --git a/.release-please-manifest.json b/.release-please-manifest.json index b9e06599f..c032d3110 100644 --- a/.release-please-manifest.json +++ b/.release-please-manifest.json @@ -1,3 +1,3 @@ { - ".": "4.21.0" + ".": "4.22.0" } \ No newline at end of file diff --git a/.stats.yml b/.stats.yml index 2eb104c35..fe36e289f 100644 --- a/.stats.yml +++ b/.stats.yml @@ -1,4 +1,4 @@ configured_endpoints: 147 -openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-0db5326a0fb6a30ffad9242c72872c3388ef927e8a4549ddd20aec3420541209.yml -openapi_spec_hash: 9523fe30739802e15c88f4e7aac44e7f +openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/openai%2Fopenai-a6dd5f8d7318fb1c5370d5ccb7148bacdfb3f3a665c4b85b7666e6188d9bd909.yml +openapi_spec_hash: c4824e385a81b9021428304ccc96538f config_hash: 948733484caf41e71093c6582dbc319c diff --git a/CHANGELOG.md b/CHANGELOG.md index 6af0d9c9d..7f0c2344d 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -1,5 +1,26 @@ # Changelog +## 4.22.0 (2026-02-19) + +Full Changelog: [v4.21.0...v4.22.0](https://github.com/openai/openai-java/compare/v4.21.0...v4.22.0) + +### Features + +* **client:** add connection pooling option ([6b5fd77](https://github.com/openai/openai-java/commit/6b5fd77b364bd494b5630805f0cd62d5a381eceb)) + + +### Chores + +* **internal:** make `OkHttp` constructor internal ([a1e3ca6](https://github.com/openai/openai-java/commit/a1e3ca67621046ae0e2abe41e4a3f17c573c7ac1)) +* **internal:** remove unnecessary base URL ([360edde](https://github.com/openai/openai-java/commit/360edde0e5ea5d0ee30c926905a950db3e14b6fa)) +* **internal:** update `TestServerExtension` comment ([41182d1](https://github.com/openai/openai-java/commit/41182d164e3739af338ad8f6d17955792c3a48a5)) +* **internal:** update CI step name ([eeb51c6](https://github.com/openai/openai-java/commit/eeb51c61925e9e49ce1b2994f069d89068028e00)) + + +### Documentation + +* **api:** update docstrings across audio, chatkit, skills, videos, and other endpoints ([f5018f5](https://github.com/openai/openai-java/commit/f5018f5bfc839b22397d184c18fc5a359fabd430)) + ## 4.21.0 (2026-02-13) Full Changelog: [v4.20.0...v4.21.0](https://github.com/openai/openai-java/compare/v4.20.0...v4.21.0) diff --git a/README.md b/README.md index 8782bd66f..9ac179bea 100644 --- a/README.md +++ b/README.md @@ -2,8 +2,8 @@ -[![Maven Central](https://img.shields.io/maven-central/v/com.openai/openai-java)](https://central.sonatype.com/artifact/com.openai/openai-java/4.21.0) -[![javadoc](https://javadoc.io/badge2/com.openai/openai-java/4.21.0/javadoc.svg)](https://javadoc.io/doc/com.openai/openai-java/4.21.0) +[![Maven Central](https://img.shields.io/maven-central/v/com.openai/openai-java)](https://central.sonatype.com/artifact/com.openai/openai-java/4.22.0) +[![javadoc](https://javadoc.io/badge2/com.openai/openai-java/4.22.0/javadoc.svg)](https://javadoc.io/doc/com.openai/openai-java/4.22.0) @@ -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.21.0). +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.22.0). @@ -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.21.0") +implementation("com.openai:openai-java:4.22.0") ``` ### Maven @@ -33,7 +33,7 @@ implementation("com.openai:openai-java:4.21.0") com.openai openai-java - 4.21.0 + 4.22.0 ``` @@ -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.21.0") +implementation("com.openai:openai-java-spring-boot-starter:4.22.0") ``` #### Maven @@ -1351,7 +1351,7 @@ implementation("com.openai:openai-java-spring-boot-starter:4.21.0") com.openai openai-java-spring-boot-starter - 4.21.0 + 4.22.0 ``` @@ -1516,6 +1516,25 @@ OpenAIClient client = OpenAIOkHttpClient.builder() .build(); ``` +### Connection pooling + +To customize the underlying OkHttp connection pool, configure the client using the `maxIdleConnections` and `keepAliveDuration` methods: + +```java +import com.openai.client.OpenAIClient; +import com.openai.client.okhttp.OpenAIOkHttpClient; +import java.time.Duration; + +OpenAIClient client = OpenAIOkHttpClient.builder() + .fromEnv() + // If `maxIdleConnections` is set, then `keepAliveDuration` must be set, and vice versa. + .maxIdleConnections(10) + .keepAliveDuration(Duration.ofMinutes(2)) + .build(); +``` + +If both options are unset, OkHttp's default connection pool settings are used. + ### HTTPS > [!NOTE] diff --git a/build.gradle.kts b/build.gradle.kts index a025fa594..2918ba8ac 100644 --- a/build.gradle.kts +++ b/build.gradle.kts @@ -8,7 +8,7 @@ repositories { allprojects { group = "com.openai" - version = "4.21.0" // x-release-please-version + version = "4.22.0" // 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 bd23593f9..51c32b0c2 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 @@ -16,11 +16,13 @@ import java.time.Duration import java.util.concurrent.CancellationException import java.util.concurrent.CompletableFuture import java.util.concurrent.ExecutorService +import java.util.concurrent.TimeUnit import javax.net.ssl.HostnameVerifier import javax.net.ssl.SSLSocketFactory import javax.net.ssl.X509TrustManager import okhttp3.Call import okhttp3.Callback +import okhttp3.ConnectionPool import okhttp3.Dispatcher import okhttp3.HttpUrl.Companion.toHttpUrl import okhttp3.MediaType @@ -33,7 +35,7 @@ import okhttp3.logging.HttpLoggingInterceptor import okio.BufferedSink class OkHttpClient -private constructor(@JvmSynthetic internal val okHttpClient: okhttp3.OkHttpClient) : HttpClient { +internal constructor(@JvmSynthetic internal val okHttpClient: okhttp3.OkHttpClient) : HttpClient { override fun execute(request: HttpRequest, requestOptions: RequestOptions): HttpResponse { val call = newCall(request, requestOptions) @@ -200,6 +202,8 @@ private constructor(@JvmSynthetic internal val okHttpClient: okhttp3.OkHttpClien private var timeout: Timeout = Timeout.default() private var proxy: Proxy? = null + private var maxIdleConnections: Int? = null + private var keepAliveDuration: Duration? = null private var dispatcherExecutorService: ExecutorService? = null private var sslSocketFactory: SSLSocketFactory? = null private var trustManager: X509TrustManager? = null @@ -211,6 +215,28 @@ private constructor(@JvmSynthetic internal val okHttpClient: okhttp3.OkHttpClien fun proxy(proxy: Proxy?) = apply { this.proxy = proxy } + /** + * Sets the maximum number of idle connections kept by the underlying [ConnectionPool]. + * + * If this is set, then [keepAliveDuration] must also be set. + * + * If unset, then OkHttp's default is used. + */ + fun maxIdleConnections(maxIdleConnections: Int?) = apply { + this.maxIdleConnections = maxIdleConnections + } + + /** + * Sets the keep-alive duration for idle connections in the underlying [ConnectionPool]. + * + * If this is set, then [maxIdleConnections] must also be set. + * + * If unset, then OkHttp's default is used. + */ + fun keepAliveDuration(keepAliveDuration: Duration?) = apply { + this.keepAliveDuration = keepAliveDuration + } + fun dispatcherExecutorService(dispatcherExecutorService: ExecutorService?) = apply { this.dispatcherExecutorService = dispatcherExecutorService } @@ -240,6 +266,22 @@ private constructor(@JvmSynthetic internal val okHttpClient: okhttp3.OkHttpClien .apply { dispatcherExecutorService?.let { dispatcher(Dispatcher(it)) } + val maxIdleConnections = maxIdleConnections + val keepAliveDuration = keepAliveDuration + if (maxIdleConnections != null && keepAliveDuration != null) { + connectionPool( + ConnectionPool( + maxIdleConnections, + keepAliveDuration.toNanos(), + TimeUnit.NANOSECONDS, + ) + ) + } else { + check((maxIdleConnections != null) == (keepAliveDuration != null)) { + "Both or none of `maxIdleConnections` and `keepAliveDuration` must be set, but only one was set" + } + } + val sslSocketFactory = sslSocketFactory val trustManager = trustManager if (sslSocketFactory != null && trustManager != null) { diff --git a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClient.kt b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClient.kt index 717fa06ab..49f635d05 100644 --- a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClient.kt +++ b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClient.kt @@ -51,6 +51,8 @@ class OpenAIOkHttpClient private constructor() { private var clientOptions: ClientOptions.Builder = ClientOptions.builder() private var dispatcherExecutorService: ExecutorService? = null private var proxy: Proxy? = null + private var maxIdleConnections: Int? = null + private var keepAliveDuration: Duration? = null private var sslSocketFactory: SSLSocketFactory? = null private var trustManager: X509TrustManager? = null private var hostnameVerifier: HostnameVerifier? = null @@ -79,6 +81,46 @@ class OpenAIOkHttpClient private constructor() { /** Alias for calling [Builder.proxy] with `proxy.orElse(null)`. */ fun proxy(proxy: Optional) = proxy(proxy.getOrNull()) + /** + * The maximum number of idle connections kept by the underlying OkHttp connection pool. + * + * If this is set, then [keepAliveDuration] must also be set. + * + * If unset, then OkHttp's default is used. + */ + fun maxIdleConnections(maxIdleConnections: Int?) = apply { + this.maxIdleConnections = maxIdleConnections + } + + /** + * Alias for [Builder.maxIdleConnections]. + * + * This unboxed primitive overload exists for backwards compatibility. + */ + fun maxIdleConnections(maxIdleConnections: Int) = + maxIdleConnections(maxIdleConnections as Int?) + + /** + * Alias for calling [Builder.maxIdleConnections] with `maxIdleConnections.orElse(null)`. + */ + fun maxIdleConnections(maxIdleConnections: Optional) = + maxIdleConnections(maxIdleConnections.getOrNull()) + + /** + * The keep-alive duration for idle connections in the underlying OkHttp connection pool. + * + * If this is set, then [maxIdleConnections] must also be set. + * + * If unset, then OkHttp's default is used. + */ + fun keepAliveDuration(keepAliveDuration: Duration?) = apply { + this.keepAliveDuration = keepAliveDuration + } + + /** Alias for calling [Builder.keepAliveDuration] with `keepAliveDuration.orElse(null)`. */ + fun keepAliveDuration(keepAliveDuration: Optional) = + keepAliveDuration(keepAliveDuration.getOrNull()) + /** * The socket factory used to secure HTTPS connections. * @@ -360,6 +402,8 @@ class OpenAIOkHttpClient private constructor() { OkHttpClient.builder() .timeout(clientOptions.timeout()) .proxy(proxy) + .maxIdleConnections(maxIdleConnections) + .keepAliveDuration(keepAliveDuration) .dispatcherExecutorService(dispatcherExecutorService) .sslSocketFactory(sslSocketFactory) .trustManager(trustManager) diff --git a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClientAsync.kt b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClientAsync.kt index 5ece67a8a..bbb1080f5 100644 --- a/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClientAsync.kt +++ b/openai-java-client-okhttp/src/main/kotlin/com/openai/client/okhttp/OpenAIOkHttpClientAsync.kt @@ -51,6 +51,8 @@ class OpenAIOkHttpClientAsync private constructor() { private var clientOptions: ClientOptions.Builder = ClientOptions.builder() private var dispatcherExecutorService: ExecutorService? = null private var proxy: Proxy? = null + private var maxIdleConnections: Int? = null + private var keepAliveDuration: Duration? = null private var sslSocketFactory: SSLSocketFactory? = null private var trustManager: X509TrustManager? = null private var hostnameVerifier: HostnameVerifier? = null @@ -79,6 +81,46 @@ class OpenAIOkHttpClientAsync private constructor() { /** Alias for calling [Builder.proxy] with `proxy.orElse(null)`. */ fun proxy(proxy: Optional) = proxy(proxy.getOrNull()) + /** + * The maximum number of idle connections kept by the underlying OkHttp connection pool. + * + * If this is set, then [keepAliveDuration] must also be set. + * + * If unset, then OkHttp's default is used. + */ + fun maxIdleConnections(maxIdleConnections: Int?) = apply { + this.maxIdleConnections = maxIdleConnections + } + + /** + * Alias for [Builder.maxIdleConnections]. + * + * This unboxed primitive overload exists for backwards compatibility. + */ + fun maxIdleConnections(maxIdleConnections: Int) = + maxIdleConnections(maxIdleConnections as Int?) + + /** + * Alias for calling [Builder.maxIdleConnections] with `maxIdleConnections.orElse(null)`. + */ + fun maxIdleConnections(maxIdleConnections: Optional) = + maxIdleConnections(maxIdleConnections.getOrNull()) + + /** + * The keep-alive duration for idle connections in the underlying OkHttp connection pool. + * + * If this is set, then [maxIdleConnections] must also be set. + * + * If unset, then OkHttp's default is used. + */ + fun keepAliveDuration(keepAliveDuration: Duration?) = apply { + this.keepAliveDuration = keepAliveDuration + } + + /** Alias for calling [Builder.keepAliveDuration] with `keepAliveDuration.orElse(null)`. */ + fun keepAliveDuration(keepAliveDuration: Optional) = + keepAliveDuration(keepAliveDuration.getOrNull()) + /** * The socket factory used to secure HTTPS connections. * @@ -360,6 +402,8 @@ class OpenAIOkHttpClientAsync private constructor() { OkHttpClient.builder() .timeout(clientOptions.timeout()) .proxy(proxy) + .maxIdleConnections(maxIdleConnections) + .keepAliveDuration(keepAliveDuration) .dispatcherExecutorService(dispatcherExecutorService) .sslSocketFactory(sslSocketFactory) .trustManager(trustManager) diff --git a/openai-java-core/src/main/kotlin/com/openai/models/audio/speech/SpeechCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/audio/speech/SpeechCreateParams.kt index f3be773de..0983dc9a0 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/audio/speech/SpeechCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/audio/speech/SpeechCreateParams.kt @@ -21,7 +21,11 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Generates audio from the input text. */ +/** + * Generates audio from the input text. + * + * Returns the audio file content, or a stream of audio events. + */ class SpeechCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/audio/transcriptions/TranscriptionCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/audio/transcriptions/TranscriptionCreateParams.kt index ebccd5c09..2efe394d5 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/audio/transcriptions/TranscriptionCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/audio/transcriptions/TranscriptionCreateParams.kt @@ -34,7 +34,12 @@ import kotlin.io.path.inputStream import kotlin.io.path.name import kotlin.jvm.optionals.getOrNull -/** Transcribes audio into the input language. */ +/** + * Transcribes audio into the input language. + * + * Returns a transcription object in `json`, `diarized_json`, or `verbose_json` format, or a stream + * of transcript events. + */ class TranscriptionCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCancelParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCancelParams.kt index d5cadea11..7cf8abee7 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCancelParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCancelParams.kt @@ -11,7 +11,11 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Cancel a ChatKit session */ +/** + * Cancel an active ChatKit session and return its most recent metadata. + * + * Cancelling prevents new requests from using the issued client secret. + */ class SessionCancelParams private constructor( private val sessionId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCreateParams.kt index c2a9a4b16..f5880fdae 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/sessions/SessionCreateParams.kt @@ -24,7 +24,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Create a ChatKit session */ +/** Create a ChatKit session. */ class SessionCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadDeleteParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadDeleteParams.kt index 44976cad5..fdf90a7c6 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadDeleteParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadDeleteParams.kt @@ -11,7 +11,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Delete a ChatKit thread */ +/** Delete a ChatKit thread along with its items and stored attachments. */ class ThreadDeleteParams private constructor( private val threadId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListItemsParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListItemsParams.kt index 96c164986..ebbeef984 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListItemsParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListItemsParams.kt @@ -13,7 +13,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** List ChatKit thread items */ +/** List items that belong to a ChatKit thread. */ class ThreadListItemsParams private constructor( private val threadId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListParams.kt index 3c0d94f50..d4f277f59 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadListParams.kt @@ -13,7 +13,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** List ChatKit threads */ +/** List ChatKit threads with optional pagination and user filters. */ class ThreadListParams private constructor( private val after: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadRetrieveParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadRetrieveParams.kt index fe70c6cf0..e7d28fa0d 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadRetrieveParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/beta/chatkit/threads/ThreadRetrieveParams.kt @@ -9,7 +9,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Retrieve a ChatKit thread */ +/** Retrieve a ChatKit thread by its identifier. */ class ThreadRetrieveParams private constructor( private val threadId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt index 3a4d33af7..4e66cb423 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/chat/completions/ChatCompletionCreateParams.kt @@ -60,6 +60,9 @@ import kotlin.jvm.optionals.getOrNull * for newer reasoning models. Parameters that are only supported for reasoning models are noted * below. For the current state of unsupported parameters in reasoning models, * [refer to the reasoning guide](https://platform.openai.com/docs/guides/reasoning). + * + * Returns a chat completion object, or a streamed sequence of chat completion chunk objects if the + * request is streamed. */ class ChatCompletionCreateParams private constructor( diff --git a/openai-java-core/src/main/kotlin/com/openai/models/completions/CompletionCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/completions/CompletionCreateParams.kt index bfcd2d128..3bac4ec72 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/completions/CompletionCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/completions/CompletionCreateParams.kt @@ -34,7 +34,11 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Creates a completion for the provided prompt and parameters. */ +/** + * Creates a completion for the provided prompt and parameters. + * + * Returns a completion object, or a sequence of completion objects if the request is streamed. + */ class CompletionCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/realtime/clientsecrets/ClientSecretCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/realtime/clientsecrets/ClientSecretCreateParams.kt index e892b2fc6..531bb4f32 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/realtime/clientsecrets/ClientSecretCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/realtime/clientsecrets/ClientSecretCreateParams.kt @@ -32,7 +32,23 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Create a Realtime client secret with an associated session configuration. */ +/** + * Create a Realtime client secret with an associated session configuration. + * + * Client secrets are short-lived tokens that can be passed to a client app, such as a web frontend + * or mobile client, which grants access to the Realtime API without leaking your main API key. You + * can configure a custom TTL for each client secret. + * + * You can also attach session configuration options to the client secret, which will be applied to + * any sessions created using that client secret, but these can also be overridden by the client + * connection. + * + * [Learn more about authentication with client secrets over + * WebRTC](https://platform.openai.com/docs/guides/realtime-webrtc). + * + * Returns the created client secret and the effective session object. The client secret is a string + * that looks like `ek_1234`. + */ class ClientSecretCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt index 88c43f69c..c8738e56a 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/responses/ResponseCompactParams.kt @@ -33,7 +33,14 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Compact conversation */ +/** + * Compact a conversation. Returns a compacted response object. + * + * Learn when and how to compact long-running conversations in the + * [conversation state guide](https://platform.openai.com/docs/guides/conversation-state#managing-the-context-window). + * For ZDR-compatible compaction details, see + * [Compaction (advanced)](https://platform.openai.com/docs/guides/conversation-state#compaction-advanced). + */ class ResponseCompactParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/responses/inputtokens/InputTokenCountParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/responses/inputtokens/InputTokenCountParams.kt index ddf647e9c..882460fd3 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/responses/inputtokens/InputTokenCountParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/responses/inputtokens/InputTokenCountParams.kt @@ -57,7 +57,11 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Get input token counts */ +/** + * Returns input token counts of the request. + * + * Returns an object with `object` set to `response.input_tokens` and an `input_tokens` count. + */ class InputTokenCountParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillCreateParams.kt index 841227b48..ee8e0b548 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillCreateParams.kt @@ -26,7 +26,7 @@ import java.util.Optional import kotlin.io.path.inputStream import kotlin.io.path.name -/** Create Skill */ +/** Create a new skill. */ class SkillCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillDeleteParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillDeleteParams.kt index ab90810a3..8fb1915e4 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillDeleteParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillDeleteParams.kt @@ -11,7 +11,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Delete Skill */ +/** Delete a skill by its ID. */ class SkillDeleteParams private constructor( private val skillId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillListParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillListParams.kt index ae9fde01b..ca18da014 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillListParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillListParams.kt @@ -13,7 +13,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** List Skills */ +/** List all skills for the current project. */ class SkillListParams private constructor( private val after: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillRetrieveParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillRetrieveParams.kt index e4ea93ec5..52e504241 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillRetrieveParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillRetrieveParams.kt @@ -9,7 +9,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Get Skill */ +/** Get a skill by its ID. */ class SkillRetrieveParams private constructor( private val skillId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillUpdateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillUpdateParams.kt index 3e97254ee..bd11b640f 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillUpdateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/SkillUpdateParams.kt @@ -20,7 +20,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Update Skill Default Version */ +/** Update the default version pointer for a skill. */ class SkillUpdateParams private constructor( private val skillId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/content/ContentRetrieveParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/content/ContentRetrieveParams.kt index 99930a5ec..856b2735f 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/content/ContentRetrieveParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/content/ContentRetrieveParams.kt @@ -9,7 +9,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Get Skill Content */ +/** Download a skill zip bundle by its ID. */ class ContentRetrieveParams private constructor( private val skillId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionCreateParams.kt index 469e6afd3..5db99b56e 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionCreateParams.kt @@ -27,7 +27,7 @@ import kotlin.io.path.inputStream import kotlin.io.path.name import kotlin.jvm.optionals.getOrNull -/** Create Skill Version */ +/** Create a new immutable skill version. */ class VersionCreateParams private constructor( private val skillId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionDeleteParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionDeleteParams.kt index dc2430313..2f6f26f1b 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionDeleteParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionDeleteParams.kt @@ -12,7 +12,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Delete Skill Version */ +/** Delete a skill version. */ class VersionDeleteParams private constructor( private val skillId: String, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionListParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionListParams.kt index 6aeab426f..6930518f4 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionListParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionListParams.kt @@ -13,7 +13,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** List Skill Versions */ +/** List skill versions for a skill. */ class VersionListParams private constructor( private val skillId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionRetrieveParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionRetrieveParams.kt index ca57e71a9..d5088e16e 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionRetrieveParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/VersionRetrieveParams.kt @@ -10,7 +10,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Get Skill Version */ +/** Get a specific skill version. */ class VersionRetrieveParams private constructor( private val skillId: String, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/content/ContentRetrieveParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/content/ContentRetrieveParams.kt index c4bce5803..5adfa611d 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/content/ContentRetrieveParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/skills/versions/content/ContentRetrieveParams.kt @@ -10,7 +10,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Get Skill Version Content */ +/** Download a skill version zip bundle. */ class ContentRetrieveParams private constructor( private val skillId: String, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCancelParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCancelParams.kt index 7d81b03cf..4bdd76b54 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCancelParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCancelParams.kt @@ -11,7 +11,11 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Cancels the Upload. No Parts may be added after an Upload is cancelled. */ +/** + * Cancels the Upload. No Parts may be added after an Upload is cancelled. + * + * Returns the Upload object with status `cancelled`. + */ class UploadCancelParams private constructor( private val uploadId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCompleteParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCompleteParams.kt index 107468399..e85fb05b9 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCompleteParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCompleteParams.kt @@ -32,7 +32,9 @@ import kotlin.jvm.optionals.getOrNull * You can specify the order of the Parts by passing in an ordered list of the Part IDs. * * The number of bytes uploaded upon completion must match the number of bytes initially specified - * when creating the Upload object. No Parts may be added after an Upload is completed. + * when creating the Upload object. No Parts may be added after an Upload is completed. Returns the + * Upload object with status `completed`, including an additional `file` property containing the + * created usable File object. */ class UploadCompleteParams private constructor( diff --git a/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCreateParams.kt index cba2807b7..c4498d9b4 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/uploads/UploadCreateParams.kt @@ -37,6 +37,8 @@ import kotlin.jvm.optionals.getOrNull * * For guidance on the proper filename extensions for each purpose, please follow the documentation * on [creating a File](https://platform.openai.com/docs/api-reference/files/create). + * + * Returns the Upload object with status `pending`. */ class UploadCreateParams private constructor( diff --git a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoCreateParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoCreateParams.kt index a2de32d45..74eb3b4fe 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoCreateParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoCreateParams.kt @@ -22,7 +22,7 @@ import java.util.Optional import kotlin.io.path.inputStream import kotlin.io.path.name -/** Create a video */ +/** Create a new video generation job from a prompt and optional reference assets. */ class VideoCreateParams private constructor( private val body: Body, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDeleteParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDeleteParams.kt index a1c5e19b2..f9c53fa53 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDeleteParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDeleteParams.kt @@ -11,7 +11,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Delete a video */ +/** Permanently delete a completed or failed video and its stored assets. */ class VideoDeleteParams private constructor( private val videoId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDownloadContentParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDownloadContentParams.kt index 9749eeb94..2fbfba863 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDownloadContentParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoDownloadContentParams.kt @@ -13,7 +13,11 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Download video content */ +/** + * Download the generated video bytes or a derived preview asset. + * + * Streams the rendered video content for the specified video job. + */ class VideoDownloadContentParams private constructor( private val videoId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoListParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoListParams.kt index 21ac909e5..2c70c01ed 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoListParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoListParams.kt @@ -13,7 +13,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** List videos */ +/** List recently generated videos for the current project. */ class VideoListParams private constructor( private val after: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRemixParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRemixParams.kt index 7588d5d13..cf085ec9b 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRemixParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRemixParams.kt @@ -19,7 +19,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Create a video remix */ +/** Create a remix of a completed video using a refreshed prompt. */ class VideoRemixParams private constructor( private val videoId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRetrieveParams.kt b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRetrieveParams.kt index 364d1a868..cc40e8f0a 100644 --- a/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRetrieveParams.kt +++ b/openai-java-core/src/main/kotlin/com/openai/models/videos/VideoRetrieveParams.kt @@ -9,7 +9,7 @@ import java.util.Objects import java.util.Optional import kotlin.jvm.optionals.getOrNull -/** Retrieve a video */ +/** Fetch the latest metadata for a generated video. */ class VideoRetrieveParams private constructor( private val videoId: String?, diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/CompletionServiceAsync.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/CompletionServiceAsync.kt index 96dcdb47d..c0e8f7158 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/CompletionServiceAsync.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/CompletionServiceAsync.kt @@ -27,7 +27,11 @@ interface CompletionServiceAsync { */ fun withOptions(modifier: Consumer): CompletionServiceAsync - /** Creates a completion for the provided prompt and parameters. */ + /** + * Creates a completion for the provided prompt and parameters. + * + * Returns a completion object, or a sequence of completion objects if the request is streamed. + */ fun create(params: CompletionCreateParams): CompletableFuture = create(params, RequestOptions.none()) @@ -37,7 +41,11 @@ interface CompletionServiceAsync { requestOptions: RequestOptions = RequestOptions.none(), ): CompletableFuture - /** Creates a completion for the provided prompt and parameters. */ + /** + * Creates a completion for the provided prompt and parameters. + * + * Returns a completion object, or a sequence of completion objects if the request is streamed. + */ fun createStreaming(params: CompletionCreateParams): AsyncStreamResponse = createStreaming(params, RequestOptions.none()) diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/ResponseServiceAsync.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/ResponseServiceAsync.kt index edcb64591..9e07ba1fa 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/ResponseServiceAsync.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/ResponseServiceAsync.kt @@ -280,7 +280,14 @@ interface ResponseServiceAsync { fun cancel(responseId: String, requestOptions: RequestOptions): CompletableFuture = cancel(responseId, ResponseCancelParams.none(), requestOptions) - /** Compact conversation */ + /** + * Compact a conversation. Returns a compacted response object. + * + * Learn when and how to compact long-running conversations in the + * [conversation state guide](https://platform.openai.com/docs/guides/conversation-state#managing-the-context-window). + * For ZDR-compatible compaction details, see + * [Compaction (advanced)](https://platform.openai.com/docs/guides/conversation-state#compaction-advanced). + */ fun compact(params: ResponseCompactParams): CompletableFuture = compact(params, RequestOptions.none()) diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/SkillServiceAsync.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/SkillServiceAsync.kt index 33508ee23..7659e1d31 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/SkillServiceAsync.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/SkillServiceAsync.kt @@ -36,7 +36,7 @@ interface SkillServiceAsync { fun versions(): VersionServiceAsync - /** Create Skill */ + /** Create a new skill. */ fun create(): CompletableFuture = create(SkillCreateParams.none()) /** @see create */ @@ -53,7 +53,7 @@ interface SkillServiceAsync { fun create(requestOptions: RequestOptions): CompletableFuture = create(SkillCreateParams.none(), requestOptions) - /** Get Skill */ + /** Get a skill by its ID. */ fun retrieve(skillId: String): CompletableFuture = retrieve(skillId, SkillRetrieveParams.none()) @@ -85,7 +85,7 @@ interface SkillServiceAsync { fun retrieve(skillId: String, requestOptions: RequestOptions): CompletableFuture = retrieve(skillId, SkillRetrieveParams.none(), requestOptions) - /** Update Skill Default Version */ + /** Update the default version pointer for a skill. */ fun update(skillId: String, params: SkillUpdateParams): CompletableFuture = update(skillId, params, RequestOptions.none()) @@ -107,7 +107,7 @@ interface SkillServiceAsync { requestOptions: RequestOptions = RequestOptions.none(), ): CompletableFuture - /** List Skills */ + /** List all skills for the current project. */ fun list(): CompletableFuture = list(SkillListParams.none()) /** @see list */ @@ -125,7 +125,7 @@ interface SkillServiceAsync { fun list(requestOptions: RequestOptions): CompletableFuture = list(SkillListParams.none(), requestOptions) - /** Delete Skill */ + /** Delete a skill by its ID. */ fun delete(skillId: String): CompletableFuture = delete(skillId, SkillDeleteParams.none()) diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/UploadServiceAsync.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/UploadServiceAsync.kt index bc3b7290c..69f99bccb 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/UploadServiceAsync.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/UploadServiceAsync.kt @@ -48,6 +48,8 @@ interface UploadServiceAsync { * For guidance on the proper filename extensions for each purpose, please follow the * documentation on * [creating a File](https://platform.openai.com/docs/api-reference/files/create). + * + * Returns the Upload object with status `pending`. */ fun create(params: UploadCreateParams): CompletableFuture = create(params, RequestOptions.none()) @@ -58,7 +60,11 @@ interface UploadServiceAsync { requestOptions: RequestOptions = RequestOptions.none(), ): CompletableFuture - /** Cancels the Upload. No Parts may be added after an Upload is cancelled. */ + /** + * Cancels the Upload. No Parts may be added after an Upload is cancelled. + * + * Returns the Upload object with status `cancelled`. + */ fun cancel(uploadId: String): CompletableFuture = cancel(uploadId, UploadCancelParams.none()) @@ -101,7 +107,8 @@ interface UploadServiceAsync { * * The number of bytes uploaded upon completion must match the number of bytes initially * specified when creating the Upload object. No Parts may be added after an Upload is - * completed. + * completed. Returns the Upload object with status `completed`, including an additional `file` + * property containing the created usable File object. */ fun complete(uploadId: String, params: UploadCompleteParams): CompletableFuture = complete(uploadId, params, RequestOptions.none()) diff --git a/openai-java-core/src/main/kotlin/com/openai/services/async/VideoServiceAsync.kt b/openai-java-core/src/main/kotlin/com/openai/services/async/VideoServiceAsync.kt index a375c48fd..0f6ee6fe0 100644 --- a/openai-java-core/src/main/kotlin/com/openai/services/async/VideoServiceAsync.kt +++ b/openai-java-core/src/main/kotlin/com/openai/services/async/VideoServiceAsync.kt @@ -32,7 +32,7 @@ interface VideoServiceAsync { */ fun withOptions(modifier: Consumer): VideoServiceAsync - /** Create a video */ + /** Create a new video generation job from a prompt and optional reference assets. */ fun create(params: VideoCreateParams): CompletableFuture