Skip to content

Commit cd2b64e

Browse files
feat(api): manual updates
1 parent 181fbe5 commit cd2b64e

File tree

12 files changed

+5754
-9665
lines changed

12 files changed

+5754
-9665
lines changed

.stats.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
11
configured_endpoints: 42
2-
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-5ce78cb448cc4520f5fbcc753452e0237b50a4bf64902e0548a8ad24bbdc82cf.yml
3-
openapi_spec_hash: fd8ac4c2cdddc3d3a0b0c81be6a9edfe
2+
openapi_spec_url: https://storage.googleapis.com/stainless-sdk-openapi-specs/imagekit-inc%2Fimagekit-667f7f4988b44bc587d6eb9960ff5c8326e9f7e9b072f3f724f9f54166eff8b1.yml
3+
openapi_spec_hash: f2081864a4abee0480e5ff991b4c936a
44
config_hash: 70f9408b8d1dfbcf262a20d6eed50e1c

README.md

Lines changed: 59 additions & 34 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,17 @@ import com.imagekit.api.client.ImageKitClient;
5050
import com.imagekit.api.client.okhttp.ImageKitOkHttpClient;
5151
import com.imagekit.api.models.files.FileUploadParams;
5252
import com.imagekit.api.models.files.FileUploadResponse;
53+
import java.io.ByteArrayInputStream;
5354

5455
// Configures using the `imagekit.imagekitPrivateApiKey`, `imagekit.optionalImagekitIgnoresThis`, `imagekit.imagekitWebhookSecret` and `imagekit.baseUrl` system properties
5556
// Or configures using the `IMAGEKIT_PRIVATE_API_KEY`, `OPTIONAL_IMAGEKIT_IGNORES_THIS`, `IMAGEKIT_WEBHOOK_SECRET` and `IMAGE_KIT_BASE_URL` environment variables
5657
ImageKitClient client = ImageKitOkHttpClient.fromEnv();
5758

58-
FileUploadResponse response = client.files().upload();
59+
FileUploadParams params = FileUploadParams.builder()
60+
.file(ByteArrayInputStream("https://www.example.com/public-url.jpg".getBytes()))
61+
.fileName("file-name.jpg")
62+
.build();
63+
FileUploadResponse response = client.files().upload(params);
5964
```
6065

6166
## Client configuration
@@ -150,13 +155,18 @@ import com.imagekit.api.client.ImageKitClient;
150155
import com.imagekit.api.client.okhttp.ImageKitOkHttpClient;
151156
import com.imagekit.api.models.files.FileUploadParams;
152157
import com.imagekit.api.models.files.FileUploadResponse;
158+
import java.io.ByteArrayInputStream;
153159
import java.util.concurrent.CompletableFuture;
154160

155161
// Configures using the `imagekit.imagekitPrivateApiKey`, `imagekit.optionalImagekitIgnoresThis`, `imagekit.imagekitWebhookSecret` and `imagekit.baseUrl` system properties
156162
// Or configures using the `IMAGEKIT_PRIVATE_API_KEY`, `OPTIONAL_IMAGEKIT_IGNORES_THIS`, `IMAGEKIT_WEBHOOK_SECRET` and `IMAGE_KIT_BASE_URL` environment variables
157163
ImageKitClient client = ImageKitOkHttpClient.fromEnv();
158164

159-
CompletableFuture<FileUploadResponse> response = client.async().files().upload();
165+
FileUploadParams params = FileUploadParams.builder()
166+
.file(ByteArrayInputStream("https://www.example.com/public-url.jpg".getBytes()))
167+
.fileName("file-name.jpg")
168+
.build();
169+
CompletableFuture<FileUploadResponse> response = client.async().files().upload(params);
160170
```
161171

162172
Or create an asynchronous client from the beginning:
@@ -166,13 +176,18 @@ import com.imagekit.api.client.ImageKitClientAsync;
166176
import com.imagekit.api.client.okhttp.ImageKitOkHttpClientAsync;
167177
import com.imagekit.api.models.files.FileUploadParams;
168178
import com.imagekit.api.models.files.FileUploadResponse;
179+
import java.io.ByteArrayInputStream;
169180
import java.util.concurrent.CompletableFuture;
170181

171182
// Configures using the `imagekit.imagekitPrivateApiKey`, `imagekit.optionalImagekitIgnoresThis`, `imagekit.imagekitWebhookSecret` and `imagekit.baseUrl` system properties
172183
// Or configures using the `IMAGEKIT_PRIVATE_API_KEY`, `OPTIONAL_IMAGEKIT_IGNORES_THIS`, `IMAGEKIT_WEBHOOK_SECRET` and `IMAGE_KIT_BASE_URL` environment variables
173184
ImageKitClientAsync client = ImageKitOkHttpClientAsync.fromEnv();
174185

175-
CompletableFuture<FileUploadResponse> response = client.files().upload();
186+
FileUploadParams params = FileUploadParams.builder()
187+
.file(ByteArrayInputStream("https://www.example.com/public-url.jpg".getBytes()))
188+
.fileName("file-name.jpg")
189+
.build();
190+
CompletableFuture<FileUploadResponse> response = client.files().upload(params);
176191
```
177192

178193
The asynchronous client supports the same options as the synchronous one, except most methods return `CompletableFuture`s.
@@ -184,50 +199,50 @@ The SDK defines methods that accept files.
184199
To upload a file, pass a [`Path`](https://docs.oracle.com/javase/8/docs/api/java/nio/file/Path.html):
185200

186201
```java
187-
import com.imagekit.api.models.beta.v2.files.FileUploadParams;
188-
import com.imagekit.api.models.beta.v2.files.FileUploadResponse;
202+
import com.imagekit.api.models.files.FileUploadParams;
203+
import com.imagekit.api.models.files.FileUploadResponse;
189204
import java.nio.file.Paths;
190205

191206
FileUploadParams params = FileUploadParams.builder()
192207
.fileName("fileName")
193208
.file(Paths.get("/path/to/file"))
194209
.build();
195-
FileUploadResponse response = client.beta().v2().files().upload(params);
210+
FileUploadResponse response = client.files().upload(params);
196211
```
197212

198213
Or an arbitrary [`InputStream`](https://docs.oracle.com/javase/8/docs/api/java/io/InputStream.html):
199214

200215
```java
201-
import com.imagekit.api.models.beta.v2.files.FileUploadParams;
202-
import com.imagekit.api.models.beta.v2.files.FileUploadResponse;
216+
import com.imagekit.api.models.files.FileUploadParams;
217+
import com.imagekit.api.models.files.FileUploadResponse;
203218
import java.net.URL;
204219

205220
FileUploadParams params = FileUploadParams.builder()
206221
.fileName("fileName")
207222
.file(new URL("https://example.com//path/to/file").openStream())
208223
.build();
209-
FileUploadResponse response = client.beta().v2().files().upload(params);
224+
FileUploadResponse response = client.files().upload(params);
210225
```
211226

212227
Or a `byte[]` array:
213228

214229
```java
215-
import com.imagekit.api.models.beta.v2.files.FileUploadParams;
216-
import com.imagekit.api.models.beta.v2.files.FileUploadResponse;
230+
import com.imagekit.api.models.files.FileUploadParams;
231+
import com.imagekit.api.models.files.FileUploadResponse;
217232

218233
FileUploadParams params = FileUploadParams.builder()
219234
.fileName("fileName")
220235
.file("content".getBytes())
221236
.build();
222-
FileUploadResponse response = client.beta().v2().files().upload(params);
237+
FileUploadResponse response = client.files().upload(params);
223238
```
224239

225240
Note that when passing a non-`Path` its filename is unknown so it will not be included in the request. To manually set a filename, pass a [`MultipartField`](image-kit-java-core/src/main/kotlin/com/imagekit/api/core/Values.kt):
226241

227242
```java
228243
import com.imagekit.api.core.MultipartField;
229-
import com.imagekit.api.models.beta.v2.files.FileUploadParams;
230-
import com.imagekit.api.models.beta.v2.files.FileUploadResponse;
244+
import com.imagekit.api.models.files.FileUploadParams;
245+
import com.imagekit.api.models.files.FileUploadResponse;
231246
import java.io.InputStream;
232247
import java.net.URL;
233248

@@ -238,7 +253,7 @@ FileUploadParams params = FileUploadParams.builder()
238253
.filename("/path/to/file")
239254
.build())
240255
.build();
241-
FileUploadResponse response = client.beta().v2().files().upload(params);
256+
FileUploadResponse response = client.files().upload(params);
242257
```
243258

244259
## Raw responses
@@ -252,8 +267,13 @@ import com.imagekit.api.core.http.Headers;
252267
import com.imagekit.api.core.http.HttpResponseFor;
253268
import com.imagekit.api.models.files.FileUploadParams;
254269
import com.imagekit.api.models.files.FileUploadResponse;
270+
import java.io.ByteArrayInputStream;
255271

256-
HttpResponseFor<FileUploadResponse> response = client.files().withRawResponse().upload();
272+
FileUploadParams params = FileUploadParams.builder()
273+
.file(ByteArrayInputStream("https://www.example.com/public-url.jpg".getBytes()))
274+
.fileName("file-name.jpg")
275+
.build();
276+
HttpResponseFor<FileUploadResponse> response = client.files().withRawResponse().upload(params);
257277

258278
int statusCode = response.statusCode();
259279
Headers headers = response.headers();
@@ -362,7 +382,9 @@ To set a custom timeout, configure the method call using the `timeout` method:
362382
```java
363383
import com.imagekit.api.models.files.FileUploadResponse;
364384

365-
FileUploadResponse response = client.files().upload(RequestOptions.builder().timeout(Duration.ofSeconds(30)).build());
385+
FileUploadResponse response = client.files().upload(
386+
params, RequestOptions.builder().timeout(Duration.ofSeconds(30)).build()
387+
);
366388
```
367389

368390
Or configure the default for all method calls at the client level:
@@ -480,10 +502,10 @@ To set undocumented parameters on _nested_ headers, query params, or body classe
480502

481503
```java
482504
import com.imagekit.api.core.JsonValue;
483-
import com.imagekit.api.models.custommetadatafields.CustomMetadataFieldCreateParams;
505+
import com.imagekit.api.models.files.FileUploadParams;
484506

485-
CustomMetadataFieldCreateParams params = CustomMetadataFieldCreateParams.builder()
486-
.schema(CustomMetadataFieldCreateParams.Schema.builder()
507+
FileUploadParams params = FileUploadParams.builder()
508+
.transformation(FileUploadParams.Transformation.builder()
487509
.putAdditionalProperty("secretProperty", JsonValue.from("42"))
488510
.build())
489511
.build();
@@ -494,9 +516,13 @@ These properties can be accessed on the nested built object later using the `_ad
494516
To set a documented parameter or property to an undocumented or not yet supported _value_, pass a [`JsonValue`](image-kit-java-core/src/main/kotlin/com/imagekit/api/core/Values.kt) object to its setter:
495517

496518
```java
519+
import com.imagekit.api.core.JsonValue;
497520
import com.imagekit.api.models.files.FileUploadParams;
498521

499-
FileUploadParams params = FileUploadParams.builder().build();
522+
FileUploadParams params = FileUploadParams.builder()
523+
.file(JsonValue.from(42))
524+
.fileName("file-name.jpg")
525+
.build();
500526
```
501527

502528
The most straightforward way to create a [`JsonValue`](image-kit-java-core/src/main/kotlin/com/imagekit/api/core/Values.kt) is using its `from(...)` method:
@@ -544,15 +570,11 @@ To forcibly omit a required parameter or property, pass [`JsonMissing`](image-ki
544570

545571
```java
546572
import com.imagekit.api.core.JsonMissing;
547-
import com.imagekit.api.models.custommetadatafields.CustomMetadataFieldCreateParams;
548573
import com.imagekit.api.models.files.FileUploadParams;
549574

550-
FileUploadParams params = CustomMetadataFieldCreateParams.builder()
551-
.name("price")
552-
.schema(CustomMetadataFieldCreateParams.Schema.builder()
553-
.type(CustomMetadataFieldCreateParams.Schema.Type.NUMBER)
554-
.build())
555-
.label(JsonMissing.of())
575+
FileUploadParams params = FileUploadParams.builder()
576+
.fileName("fileName")
577+
.file(JsonMissing.of())
556578
.build();
557579
```
558580

@@ -592,21 +614,22 @@ To access a property's raw JSON value, which may be undocumented, call its `_` p
592614

593615
```java
594616
import com.imagekit.api.core.JsonField;
617+
import java.io.InputStream;
595618
import java.util.Optional;
596619

597-
JsonField<Object> field = client.files().upload(params)._field();
620+
JsonField<InputStream> file = client.files().upload(params)._file();
598621

599-
if (field.isMissing()) {
622+
if (file.isMissing()) {
600623
// The property is absent from the JSON response
601-
} else if (field.isNull()) {
624+
} else if (file.isNull()) {
602625
// The property was set to literal null
603626
} else {
604627
// Check if value was provided as a string
605628
// Other methods include `asNumber()`, `asBoolean()`, etc.
606-
Optional<String> jsonString = field.asString();
629+
Optional<String> jsonString = file.asString();
607630

608631
// Try to deserialize into a custom type
609-
MyClass myObject = field.asUnknown().orElseThrow().convert(MyClass.class);
632+
MyClass myObject = file.asUnknown().orElseThrow().convert(MyClass.class);
610633
}
611634
```
612635

@@ -629,7 +652,9 @@ Or configure the method call to validate the response using the `responseValidat
629652
```java
630653
import com.imagekit.api.models.files.FileUploadResponse;
631654

632-
FileUploadResponse response = client.files().upload(RequestOptions.builder().responseValidation(true).build());
655+
FileUploadResponse response = client.files().upload(
656+
params, RequestOptions.builder().responseValidation(true).build()
657+
);
633658
```
634659

635660
Or configure the default for all method calls at the client level:

0 commit comments

Comments
 (0)