diff --git a/lib/openai/resources/batches.rb b/lib/openai/resources/batches.rb index 62883c2e..143a05ee 100644 --- a/lib/openai/resources/batches.rb +++ b/lib/openai/resources/batches.rb @@ -58,7 +58,7 @@ def create(params) def retrieve(batch_id, params = {}) @client.request( method: :get, - path: ["batches/%0s", batch_id], + path: ["batches/%1$s", batch_id], model: OpenAI::Models::Batch, options: params[:request_options] ) @@ -105,7 +105,7 @@ def list(params = {}) def cancel(batch_id, params = {}) @client.request( method: :post, - path: ["batches/%0s/cancel", batch_id], + path: ["batches/%1$s/cancel", batch_id], model: OpenAI::Models::Batch, options: params[:request_options] ) diff --git a/lib/openai/resources/beta/assistants.rb b/lib/openai/resources/beta/assistants.rb index 8fbb01b9..1557a813 100644 --- a/lib/openai/resources/beta/assistants.rb +++ b/lib/openai/resources/beta/assistants.rb @@ -101,7 +101,7 @@ def create(params) def retrieve(assistant_id, params = {}) @client.request( method: :get, - path: ["assistants/%0s", assistant_id], + path: ["assistants/%1$s", assistant_id], model: OpenAI::Models::Beta::Assistant, options: params[:request_options] ) @@ -187,7 +187,7 @@ def update(assistant_id, params = {}) parsed, options = OpenAI::Models::Beta::AssistantUpdateParams.dump_request(params) @client.request( method: :post, - path: ["assistants/%0s", assistant_id], + path: ["assistants/%1$s", assistant_id], body: parsed, model: OpenAI::Models::Beta::Assistant, options: options @@ -241,7 +241,7 @@ def list(params = {}) def delete(assistant_id, params = {}) @client.request( method: :delete, - path: ["assistants/%0s", assistant_id], + path: ["assistants/%1$s", assistant_id], model: OpenAI::Models::Beta::AssistantDeleted, options: params[:request_options] ) diff --git a/lib/openai/resources/beta/threads.rb b/lib/openai/resources/beta/threads.rb index 27b67c15..767bd13c 100644 --- a/lib/openai/resources/beta/threads.rb +++ b/lib/openai/resources/beta/threads.rb @@ -55,7 +55,7 @@ def create(params = {}) def retrieve(thread_id, params = {}) @client.request( method: :get, - path: ["threads/%0s", thread_id], + path: ["threads/%1$s", thread_id], model: OpenAI::Models::Beta::Thread, options: params[:request_options] ) @@ -86,7 +86,7 @@ def update(thread_id, params = {}) parsed, options = OpenAI::Models::Beta::ThreadUpdateParams.dump_request(params) @client.request( method: :post, - path: ["threads/%0s", thread_id], + path: ["threads/%1$s", thread_id], body: parsed, model: OpenAI::Models::Beta::Thread, options: options @@ -105,7 +105,7 @@ def update(thread_id, params = {}) def delete(thread_id, params = {}) @client.request( method: :delete, - path: ["threads/%0s", thread_id], + path: ["threads/%1$s", thread_id], model: OpenAI::Models::Beta::ThreadDeleted, options: params[:request_options] ) diff --git a/lib/openai/resources/beta/threads/messages.rb b/lib/openai/resources/beta/threads/messages.rb index 5b87f5f5..fdcef361 100644 --- a/lib/openai/resources/beta/threads/messages.rb +++ b/lib/openai/resources/beta/threads/messages.rb @@ -37,7 +37,7 @@ def create(thread_id, params) parsed, options = OpenAI::Models::Beta::Threads::MessageCreateParams.dump_request(params) @client.request( method: :post, - path: ["threads/%0s/messages", thread_id], + path: ["threads/%1$s/messages", thread_id], body: parsed, model: OpenAI::Models::Beta::Threads::Message, options: options @@ -64,7 +64,7 @@ def retrieve(message_id, params) end @client.request( method: :get, - path: ["threads/%0s/messages/%1s", thread_id, message_id], + path: ["threads/%1$s/messages/%2$s", thread_id, message_id], model: OpenAI::Models::Beta::Threads::Message, options: options ) @@ -96,7 +96,7 @@ def update(message_id, params) end @client.request( method: :post, - path: ["threads/%0s/messages/%1s", thread_id, message_id], + path: ["threads/%1$s/messages/%2$s", thread_id, message_id], body: parsed, model: OpenAI::Models::Beta::Threads::Message, options: options @@ -135,7 +135,7 @@ def list(thread_id, params = {}) parsed, options = OpenAI::Models::Beta::Threads::MessageListParams.dump_request(params) @client.request( method: :get, - path: ["threads/%0s/messages", thread_id], + path: ["threads/%1$s/messages", thread_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::Beta::Threads::Message, @@ -162,7 +162,7 @@ def delete(message_id, params) end @client.request( method: :delete, - path: ["threads/%0s/messages/%1s", thread_id, message_id], + path: ["threads/%1$s/messages/%2$s", thread_id, message_id], model: OpenAI::Models::Beta::Threads::MessageDeleted, options: options ) diff --git a/lib/openai/resources/beta/threads/runs.rb b/lib/openai/resources/beta/threads/runs.rb index fa61373d..d67d31ee 100644 --- a/lib/openai/resources/beta/threads/runs.rb +++ b/lib/openai/resources/beta/threads/runs.rb @@ -132,7 +132,7 @@ def create(thread_id, params) query_params = [:include] @client.request( method: :post, - path: ["threads/%0s/runs", thread_id], + path: ["threads/%1$s/runs", thread_id], query: parsed.slice(*query_params), body: parsed.except(*query_params), model: OpenAI::Models::Beta::Threads::Run, @@ -265,7 +265,7 @@ def create_streaming(thread_id, params) query_params = [:include] @client.request( method: :post, - path: ["threads/%0s/runs", thread_id], + path: ["threads/%1$s/runs", thread_id], query: parsed.slice(*query_params), headers: {"accept" => "text/event-stream"}, body: parsed.except(*query_params), @@ -295,7 +295,7 @@ def retrieve(run_id, params) end @client.request( method: :get, - path: ["threads/%0s/runs/%1s", thread_id, run_id], + path: ["threads/%1$s/runs/%2$s", thread_id, run_id], model: OpenAI::Models::Beta::Threads::Run, options: options ) @@ -328,7 +328,7 @@ def update(run_id, params) end @client.request( method: :post, - path: ["threads/%0s/runs/%1s", thread_id, run_id], + path: ["threads/%1$s/runs/%2$s", thread_id, run_id], body: parsed, model: OpenAI::Models::Beta::Threads::Run, options: options @@ -364,7 +364,7 @@ def list(thread_id, params = {}) parsed, options = OpenAI::Models::Beta::Threads::RunListParams.dump_request(params) @client.request( method: :get, - path: ["threads/%0s/runs", thread_id], + path: ["threads/%1$s/runs", thread_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::Beta::Threads::Run, @@ -391,7 +391,7 @@ def cancel(run_id, params) end @client.request( method: :post, - path: ["threads/%0s/runs/%1s/cancel", thread_id, run_id], + path: ["threads/%1$s/runs/%2$s/cancel", thread_id, run_id], model: OpenAI::Models::Beta::Threads::Run, options: options ) @@ -427,7 +427,7 @@ def submit_tool_outputs(run_id, params) end @client.request( method: :post, - path: ["threads/%0s/runs/%1s/submit_tool_outputs", thread_id, run_id], + path: ["threads/%1$s/runs/%2$s/submit_tool_outputs", thread_id, run_id], body: parsed, model: OpenAI::Models::Beta::Threads::Run, options: options @@ -465,7 +465,7 @@ def submit_tool_outputs_streaming(run_id, params) end @client.request( method: :post, - path: ["threads/%0s/runs/%1s/submit_tool_outputs", thread_id, run_id], + path: ["threads/%1$s/runs/%2$s/submit_tool_outputs", thread_id, run_id], headers: {"accept" => "text/event-stream"}, body: parsed, stream: OpenAI::Stream, diff --git a/lib/openai/resources/beta/threads/runs/steps.rb b/lib/openai/resources/beta/threads/runs/steps.rb index 0dc70121..9d087222 100644 --- a/lib/openai/resources/beta/threads/runs/steps.rb +++ b/lib/openai/resources/beta/threads/runs/steps.rb @@ -40,7 +40,7 @@ def retrieve(step_id, params) end @client.request( method: :get, - path: ["threads/%0s/runs/%1s/steps/%2s", thread_id, run_id, step_id], + path: ["threads/%1$s/runs/%2$s/steps/%3$s", thread_id, run_id, step_id], query: parsed, model: OpenAI::Models::Beta::Threads::Runs::RunStep, options: options @@ -91,7 +91,7 @@ def list(run_id, params) end @client.request( method: :get, - path: ["threads/%0s/runs/%1s/steps", thread_id, run_id], + path: ["threads/%1$s/runs/%2$s/steps", thread_id, run_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::Beta::Threads::Runs::RunStep, diff --git a/lib/openai/resources/chat/completions.rb b/lib/openai/resources/chat/completions.rb index 52e05866..86c7172c 100644 --- a/lib/openai/resources/chat/completions.rb +++ b/lib/openai/resources/chat/completions.rb @@ -465,7 +465,7 @@ def create_streaming(params) def retrieve(completion_id, params = {}) @client.request( method: :get, - path: ["chat/completions/%0s", completion_id], + path: ["chat/completions/%1$s", completion_id], model: OpenAI::Models::Chat::ChatCompletion, options: params[:request_options] ) @@ -493,7 +493,7 @@ def update(completion_id, params) parsed, options = OpenAI::Models::Chat::CompletionUpdateParams.dump_request(params) @client.request( method: :post, - path: ["chat/completions/%0s", completion_id], + path: ["chat/completions/%1$s", completion_id], body: parsed, model: OpenAI::Models::Chat::ChatCompletion, options: options @@ -546,7 +546,7 @@ def list(params = {}) def delete(completion_id, params = {}) @client.request( method: :delete, - path: ["chat/completions/%0s", completion_id], + path: ["chat/completions/%1$s", completion_id], model: OpenAI::Models::Chat::ChatCompletionDeleted, options: params[:request_options] ) diff --git a/lib/openai/resources/chat/completions/messages.rb b/lib/openai/resources/chat/completions/messages.rb index decc122d..e40262ce 100644 --- a/lib/openai/resources/chat/completions/messages.rb +++ b/lib/openai/resources/chat/completions/messages.rb @@ -26,7 +26,7 @@ def list(completion_id, params = {}) parsed, options = OpenAI::Models::Chat::Completions::MessageListParams.dump_request(params) @client.request( method: :get, - path: ["chat/completions/%0s/messages", completion_id], + path: ["chat/completions/%1$s/messages", completion_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::Chat::ChatCompletionStoreMessage, diff --git a/lib/openai/resources/files.rb b/lib/openai/resources/files.rb index 63a4f893..d0253a42 100644 --- a/lib/openai/resources/files.rb +++ b/lib/openai/resources/files.rb @@ -61,7 +61,7 @@ def create(params) def retrieve(file_id, params = {}) @client.request( method: :get, - path: ["files/%0s", file_id], + path: ["files/%1$s", file_id], model: OpenAI::Models::FileObject, options: params[:request_options] ) @@ -111,7 +111,7 @@ def list(params = {}) def delete(file_id, params = {}) @client.request( method: :delete, - path: ["files/%0s", file_id], + path: ["files/%1$s", file_id], model: OpenAI::Models::FileDeleted, options: params[:request_options] ) @@ -129,7 +129,7 @@ def delete(file_id, params = {}) def content(file_id, params = {}) @client.request( method: :get, - path: ["files/%0s/content", file_id], + path: ["files/%1$s/content", file_id], headers: {"accept" => "application/binary"}, model: StringIO, options: params[:request_options] diff --git a/lib/openai/resources/fine_tuning/jobs.rb b/lib/openai/resources/fine_tuning/jobs.rb index 9d00777f..baf7a2cc 100644 --- a/lib/openai/resources/fine_tuning/jobs.rb +++ b/lib/openai/resources/fine_tuning/jobs.rb @@ -103,7 +103,7 @@ def create(params) def retrieve(fine_tuning_job_id, params = {}) @client.request( method: :get, - path: ["fine_tuning/jobs/%0s", fine_tuning_job_id], + path: ["fine_tuning/jobs/%1$s", fine_tuning_job_id], model: OpenAI::Models::FineTuning::FineTuningJob, options: params[:request_options] ) @@ -147,7 +147,7 @@ def list(params = {}) def cancel(fine_tuning_job_id, params = {}) @client.request( method: :post, - path: ["fine_tuning/jobs/%0s/cancel", fine_tuning_job_id], + path: ["fine_tuning/jobs/%1$s/cancel", fine_tuning_job_id], model: OpenAI::Models::FineTuning::FineTuningJob, options: params[:request_options] ) @@ -170,7 +170,7 @@ def list_events(fine_tuning_job_id, params = {}) parsed, options = OpenAI::Models::FineTuning::JobListEventsParams.dump_request(params) @client.request( method: :get, - path: ["fine_tuning/jobs/%0s/events", fine_tuning_job_id], + path: ["fine_tuning/jobs/%1$s/events", fine_tuning_job_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::FineTuning::FineTuningJobEvent, diff --git a/lib/openai/resources/fine_tuning/jobs/checkpoints.rb b/lib/openai/resources/fine_tuning/jobs/checkpoints.rb index cb4b3c18..ced20ee9 100644 --- a/lib/openai/resources/fine_tuning/jobs/checkpoints.rb +++ b/lib/openai/resources/fine_tuning/jobs/checkpoints.rb @@ -22,7 +22,7 @@ def list(fine_tuning_job_id, params = {}) parsed, options = OpenAI::Models::FineTuning::Jobs::CheckpointListParams.dump_request(params) @client.request( method: :get, - path: ["fine_tuning/jobs/%0s/checkpoints", fine_tuning_job_id], + path: ["fine_tuning/jobs/%1$s/checkpoints", fine_tuning_job_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::FineTuning::Jobs::FineTuningJobCheckpoint, diff --git a/lib/openai/resources/models.rb b/lib/openai/resources/models.rb index cff4bf06..937381d2 100644 --- a/lib/openai/resources/models.rb +++ b/lib/openai/resources/models.rb @@ -16,7 +16,7 @@ class Models def retrieve(model, params = {}) @client.request( method: :get, - path: ["models/%0s", model], + path: ["models/%1$s", model], model: OpenAI::Models::Model, options: params[:request_options] ) @@ -53,7 +53,7 @@ def list(params = {}) def delete(model, params = {}) @client.request( method: :delete, - path: ["models/%0s", model], + path: ["models/%1$s", model], model: OpenAI::Models::ModelDeleted, options: params[:request_options] ) diff --git a/lib/openai/resources/responses.rb b/lib/openai/resources/responses.rb index e0a7bc26..99f01ccb 100644 --- a/lib/openai/resources/responses.rb +++ b/lib/openai/resources/responses.rb @@ -297,7 +297,7 @@ def retrieve(response_id, params = {}) parsed, options = OpenAI::Models::Responses::ResponseRetrieveParams.dump_request(params) @client.request( method: :get, - path: ["responses/%0s", response_id], + path: ["responses/%1$s", response_id], query: parsed, model: OpenAI::Models::Responses::Response, options: options @@ -316,7 +316,7 @@ def retrieve(response_id, params = {}) def delete(response_id, params = {}) @client.request( method: :delete, - path: ["responses/%0s", response_id], + path: ["responses/%1$s", response_id], model: NilClass, options: params[:request_options] ) diff --git a/lib/openai/resources/responses/input_items.rb b/lib/openai/resources/responses/input_items.rb index ece1f2a1..30f343fd 100644 --- a/lib/openai/resources/responses/input_items.rb +++ b/lib/openai/resources/responses/input_items.rb @@ -32,7 +32,7 @@ def list(response_id, params = {}) parsed, options = OpenAI::Models::Responses::InputItemListParams.dump_request(params) @client.request( method: :get, - path: ["responses/%0s/input_items", response_id], + path: ["responses/%1$s/input_items", response_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::Responses::ResponseItem, diff --git a/lib/openai/resources/uploads.rb b/lib/openai/resources/uploads.rb index f72e4255..f50e95ed 100644 --- a/lib/openai/resources/uploads.rb +++ b/lib/openai/resources/uploads.rb @@ -68,7 +68,7 @@ def create(params) def cancel(upload_id, params = {}) @client.request( method: :post, - path: ["uploads/%0s/cancel", upload_id], + path: ["uploads/%1$s/cancel", upload_id], model: OpenAI::Models::Upload, options: params[:request_options] ) @@ -104,7 +104,7 @@ def complete(upload_id, params) parsed, options = OpenAI::Models::UploadCompleteParams.dump_request(params) @client.request( method: :post, - path: ["uploads/%0s/complete", upload_id], + path: ["uploads/%1$s/complete", upload_id], body: parsed, model: OpenAI::Models::Upload, options: options diff --git a/lib/openai/resources/uploads/parts.rb b/lib/openai/resources/uploads/parts.rb index b90eef15..ea9e8a5f 100644 --- a/lib/openai/resources/uploads/parts.rb +++ b/lib/openai/resources/uploads/parts.rb @@ -29,7 +29,7 @@ def create(upload_id, params) parsed, options = OpenAI::Models::Uploads::PartCreateParams.dump_request(params) @client.request( method: :post, - path: ["uploads/%0s/parts", upload_id], + path: ["uploads/%1$s/parts", upload_id], headers: {"content-type" => "multipart/form-data"}, body: parsed, model: OpenAI::Models::Uploads::UploadPart, diff --git a/lib/openai/resources/vector_stores.rb b/lib/openai/resources/vector_stores.rb index e60a1592..5d0fe33d 100644 --- a/lib/openai/resources/vector_stores.rb +++ b/lib/openai/resources/vector_stores.rb @@ -57,7 +57,7 @@ def create(params = {}) def retrieve(vector_store_id, params = {}) @client.request( method: :get, - path: ["vector_stores/%0s", vector_store_id], + path: ["vector_stores/%1$s", vector_store_id], model: OpenAI::Models::VectorStore, options: params[:request_options] ) @@ -87,7 +87,7 @@ def update(vector_store_id, params = {}) parsed, options = OpenAI::Models::VectorStoreUpdateParams.dump_request(params) @client.request( method: :post, - path: ["vector_stores/%0s", vector_store_id], + path: ["vector_stores/%1$s", vector_store_id], body: parsed, model: OpenAI::Models::VectorStore, options: options @@ -141,7 +141,7 @@ def list(params = {}) def delete(vector_store_id, params = {}) @client.request( method: :delete, - path: ["vector_stores/%0s", vector_store_id], + path: ["vector_stores/%1$s", vector_store_id], model: OpenAI::Models::VectorStoreDeleted, options: params[:request_options] ) @@ -172,7 +172,7 @@ def search(vector_store_id, params) parsed, options = OpenAI::Models::VectorStoreSearchParams.dump_request(params) @client.request( method: :post, - path: ["vector_stores/%0s/search", vector_store_id], + path: ["vector_stores/%1$s/search", vector_store_id], body: parsed, page: OpenAI::Page, model: OpenAI::Models::VectorStoreSearchResponse, diff --git a/lib/openai/resources/vector_stores/file_batches.rb b/lib/openai/resources/vector_stores/file_batches.rb index b3523d38..1a9d1dae 100644 --- a/lib/openai/resources/vector_stores/file_batches.rb +++ b/lib/openai/resources/vector_stores/file_batches.rb @@ -30,7 +30,7 @@ def create(vector_store_id, params) parsed, options = OpenAI::Models::VectorStores::FileBatchCreateParams.dump_request(params) @client.request( method: :post, - path: ["vector_stores/%0s/file_batches", vector_store_id], + path: ["vector_stores/%1$s/file_batches", vector_store_id], body: parsed, model: OpenAI::Models::VectorStores::VectorStoreFileBatch, options: options @@ -56,7 +56,7 @@ def retrieve(batch_id, params) end @client.request( method: :get, - path: ["vector_stores/%0s/file_batches/%1s", vector_store_id, batch_id], + path: ["vector_stores/%1$s/file_batches/%2$s", vector_store_id, batch_id], model: OpenAI::Models::VectorStores::VectorStoreFileBatch, options: options ) @@ -82,7 +82,7 @@ def cancel(batch_id, params) end @client.request( method: :post, - path: ["vector_stores/%0s/file_batches/%1s/cancel", vector_store_id, batch_id], + path: ["vector_stores/%1$s/file_batches/%2$s/cancel", vector_store_id, batch_id], model: OpenAI::Models::VectorStores::VectorStoreFileBatch, options: options ) @@ -126,7 +126,7 @@ def list_files(batch_id, params) end @client.request( method: :get, - path: ["vector_stores/%0s/file_batches/%1s/files", vector_store_id, batch_id], + path: ["vector_stores/%1$s/file_batches/%2$s/files", vector_store_id, batch_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::VectorStores::VectorStoreFile, diff --git a/lib/openai/resources/vector_stores/files.rb b/lib/openai/resources/vector_stores/files.rb index 54b806c0..57e9af60 100644 --- a/lib/openai/resources/vector_stores/files.rb +++ b/lib/openai/resources/vector_stores/files.rb @@ -32,7 +32,7 @@ def create(vector_store_id, params) parsed, options = OpenAI::Models::VectorStores::FileCreateParams.dump_request(params) @client.request( method: :post, - path: ["vector_stores/%0s/files", vector_store_id], + path: ["vector_stores/%1$s/files", vector_store_id], body: parsed, model: OpenAI::Models::VectorStores::VectorStoreFile, options: options @@ -58,7 +58,7 @@ def retrieve(file_id, params) end @client.request( method: :get, - path: ["vector_stores/%0s/files/%1s", vector_store_id, file_id], + path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], model: OpenAI::Models::VectorStores::VectorStoreFile, options: options ) @@ -89,7 +89,7 @@ def update(file_id, params) end @client.request( method: :post, - path: ["vector_stores/%0s/files/%1s", vector_store_id, file_id], + path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], body: parsed, model: OpenAI::Models::VectorStores::VectorStoreFile, options: options @@ -127,7 +127,7 @@ def list(vector_store_id, params = {}) parsed, options = OpenAI::Models::VectorStores::FileListParams.dump_request(params) @client.request( method: :get, - path: ["vector_stores/%0s/files", vector_store_id], + path: ["vector_stores/%1$s/files", vector_store_id], query: parsed, page: OpenAI::CursorPage, model: OpenAI::Models::VectorStores::VectorStoreFile, @@ -157,7 +157,7 @@ def delete(file_id, params) end @client.request( method: :delete, - path: ["vector_stores/%0s/files/%1s", vector_store_id, file_id], + path: ["vector_stores/%1$s/files/%2$s", vector_store_id, file_id], model: OpenAI::Models::VectorStores::VectorStoreFileDeleted, options: options ) @@ -182,7 +182,7 @@ def content(file_id, params) end @client.request( method: :get, - path: ["vector_stores/%0s/files/%1s/content", vector_store_id, file_id], + path: ["vector_stores/%1$s/files/%2$s/content", vector_store_id, file_id], page: OpenAI::Page, model: OpenAI::Models::VectorStores::FileContentResponse, options: options diff --git a/lib/openai/util.rb b/lib/openai/util.rb index f19004c2..8a4b693f 100644 --- a/lib/openai/util.rb +++ b/lib/openai/util.rb @@ -253,9 +253,9 @@ def interpolate_path(path) path in [] "" - in [String, *interpolations] + in [String => p, *interpolations] encoded = interpolations.map { ERB::Util.url_encode(_1) } - path.first % encoded + format(p, *encoded) end end end