@scenario-labs/sdk 0.3.0 → 1.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (232) hide show
  1. package/CHANGELOG.md +30 -0
  2. package/README.md +40 -8
  3. package/client.d.mts +36 -16
  4. package/client.d.mts.map +1 -1
  5. package/client.d.ts +36 -16
  6. package/client.d.ts.map +1 -1
  7. package/client.js +10 -0
  8. package/client.js.map +1 -1
  9. package/client.mjs +10 -0
  10. package/client.mjs.map +1 -1
  11. package/core/pagination.d.mts +153 -0
  12. package/core/pagination.d.mts.map +1 -0
  13. package/core/pagination.d.ts +153 -0
  14. package/core/pagination.d.ts.map +1 -0
  15. package/core/pagination.js +276 -0
  16. package/core/pagination.js.map +1 -0
  17. package/core/pagination.mjs +263 -0
  18. package/core/pagination.mjs.map +1 -0
  19. package/index.d.mts +5 -1
  20. package/index.d.mts.map +1 -1
  21. package/index.d.ts +5 -1
  22. package/index.d.ts.map +1 -1
  23. package/index.js +14 -1
  24. package/index.js.map +1 -1
  25. package/index.mjs +5 -1
  26. package/index.mjs.map +1 -1
  27. package/lib/asset.d.mts +55 -0
  28. package/lib/asset.d.mts.map +1 -0
  29. package/lib/asset.d.ts +55 -0
  30. package/lib/asset.d.ts.map +1 -0
  31. package/lib/asset.js +60 -0
  32. package/lib/asset.js.map +1 -0
  33. package/lib/asset.mjs +54 -0
  34. package/lib/asset.mjs.map +1 -0
  35. package/lib/job.d.mts +13 -1
  36. package/lib/job.d.mts.map +1 -1
  37. package/lib/job.d.ts +13 -1
  38. package/lib/job.d.ts.map +1 -1
  39. package/lib/job.js +18 -1
  40. package/lib/job.js.map +1 -1
  41. package/lib/job.mjs +16 -0
  42. package/lib/job.mjs.map +1 -1
  43. package/lib/models.d.mts +34 -2
  44. package/lib/models.d.mts.map +1 -1
  45. package/lib/models.d.ts +34 -2
  46. package/lib/models.d.ts.map +1 -1
  47. package/lib/models.js +39 -2
  48. package/lib/models.js.map +1 -1
  49. package/lib/models.mjs +37 -1
  50. package/lib/models.mjs.map +1 -1
  51. package/lib/scenario.d.mts +14 -0
  52. package/lib/scenario.d.mts.map +1 -1
  53. package/lib/scenario.d.ts +14 -0
  54. package/lib/scenario.d.ts.map +1 -1
  55. package/lib/scenario.js +14 -0
  56. package/lib/scenario.js.map +1 -1
  57. package/lib/scenario.mjs +14 -0
  58. package/lib/scenario.mjs.map +1 -1
  59. package/lib/upload.d.mts +143 -0
  60. package/lib/upload.d.mts.map +1 -0
  61. package/lib/upload.d.ts +143 -0
  62. package/lib/upload.d.ts.map +1 -0
  63. package/lib/upload.js +242 -0
  64. package/lib/upload.js.map +1 -0
  65. package/lib/upload.mjs +203 -0
  66. package/lib/upload.mjs.map +1 -0
  67. package/lib/workflow.d.mts +13 -2
  68. package/lib/workflow.d.mts.map +1 -1
  69. package/lib/workflow.d.ts +13 -2
  70. package/lib/workflow.d.ts.map +1 -1
  71. package/lib/workflow.js +17 -4
  72. package/lib/workflow.js.map +1 -1
  73. package/lib/workflow.mjs +17 -4
  74. package/lib/workflow.mjs.map +1 -1
  75. package/lib/workflow_import_validator.d.mts +40 -0
  76. package/lib/workflow_import_validator.d.mts.map +1 -0
  77. package/lib/workflow_import_validator.d.ts +40 -0
  78. package/lib/workflow_import_validator.d.ts.map +1 -0
  79. package/lib/workflow_import_validator.js +69 -0
  80. package/lib/workflow_import_validator.js.map +1 -0
  81. package/lib/workflow_import_validator.mjs +64 -0
  82. package/lib/workflow_import_validator.mjs.map +1 -0
  83. package/package.json +11 -1
  84. package/pagination.d.mts +2 -0
  85. package/pagination.d.mts.map +1 -0
  86. package/pagination.d.ts +2 -0
  87. package/pagination.d.ts.map +1 -0
  88. package/pagination.js +6 -0
  89. package/pagination.js.map +1 -0
  90. package/pagination.mjs +2 -0
  91. package/pagination.mjs.map +1 -0
  92. package/resources/assets/assets.d.mts +646 -669
  93. package/resources/assets/assets.d.mts.map +1 -1
  94. package/resources/assets/assets.d.ts +646 -669
  95. package/resources/assets/assets.d.ts.map +1 -1
  96. package/resources/assets/assets.js +3 -2
  97. package/resources/assets/assets.js.map +1 -1
  98. package/resources/assets/assets.mjs +3 -2
  99. package/resources/assets/assets.mjs.map +1 -1
  100. package/resources/assets/index.d.mts +1 -1
  101. package/resources/assets/index.d.mts.map +1 -1
  102. package/resources/assets/index.d.ts +1 -1
  103. package/resources/assets/index.d.ts.map +1 -1
  104. package/resources/assets/index.js.map +1 -1
  105. package/resources/assets/index.mjs.map +1 -1
  106. package/resources/assets/public.d.mts +12 -12
  107. package/resources/assets/public.d.mts.map +1 -1
  108. package/resources/assets/public.d.ts +12 -12
  109. package/resources/assets/public.d.ts.map +1 -1
  110. package/resources/collections/collections.d.mts +38 -49
  111. package/resources/collections/collections.d.mts.map +1 -1
  112. package/resources/collections/collections.d.ts +38 -49
  113. package/resources/collections/collections.d.ts.map +1 -1
  114. package/resources/collections/collections.js +5 -1
  115. package/resources/collections/collections.js.map +1 -1
  116. package/resources/collections/collections.mjs +5 -1
  117. package/resources/collections/collections.mjs.map +1 -1
  118. package/resources/collections/index.d.mts +1 -1
  119. package/resources/collections/index.d.mts.map +1 -1
  120. package/resources/collections/index.d.ts +1 -1
  121. package/resources/collections/index.d.ts.map +1 -1
  122. package/resources/collections/index.js.map +1 -1
  123. package/resources/collections/index.mjs.map +1 -1
  124. package/resources/generate.d.mts +1027 -242
  125. package/resources/generate.d.mts.map +1 -1
  126. package/resources/generate.d.ts +1027 -242
  127. package/resources/generate.d.ts.map +1 -1
  128. package/resources/generate.js +7 -0
  129. package/resources/generate.js.map +1 -1
  130. package/resources/generate.mjs +7 -0
  131. package/resources/generate.mjs.map +1 -1
  132. package/resources/index.d.mts +8 -8
  133. package/resources/index.d.mts.map +1 -1
  134. package/resources/index.d.ts +8 -8
  135. package/resources/index.d.ts.map +1 -1
  136. package/resources/index.js.map +1 -1
  137. package/resources/index.mjs.map +1 -1
  138. package/resources/jobs.d.mts +369 -380
  139. package/resources/jobs.d.mts.map +1 -1
  140. package/resources/jobs.d.ts +369 -380
  141. package/resources/jobs.d.ts.map +1 -1
  142. package/resources/jobs.js +2 -1
  143. package/resources/jobs.js.map +1 -1
  144. package/resources/jobs.mjs +2 -1
  145. package/resources/jobs.mjs.map +1 -1
  146. package/resources/models/description.d.mts +2 -2
  147. package/resources/models/description.d.mts.map +1 -1
  148. package/resources/models/description.d.ts +2 -2
  149. package/resources/models/description.d.ts.map +1 -1
  150. package/resources/models/examples.d.mts +4 -4
  151. package/resources/models/examples.d.mts.map +1 -1
  152. package/resources/models/examples.d.ts +4 -4
  153. package/resources/models/examples.d.ts.map +1 -1
  154. package/resources/models/index.d.mts +1 -1
  155. package/resources/models/index.d.mts.map +1 -1
  156. package/resources/models/index.d.ts +1 -1
  157. package/resources/models/index.d.ts.map +1 -1
  158. package/resources/models/index.js.map +1 -1
  159. package/resources/models/index.mjs.map +1 -1
  160. package/resources/models/models.d.mts +845 -856
  161. package/resources/models/models.d.mts.map +1 -1
  162. package/resources/models/models.d.ts +845 -856
  163. package/resources/models/models.d.ts.map +1 -1
  164. package/resources/models/models.js +2 -1
  165. package/resources/models/models.js.map +1 -1
  166. package/resources/models/models.mjs +2 -1
  167. package/resources/models/models.mjs.map +1 -1
  168. package/resources/models/train.d.mts +2 -2
  169. package/resources/models/train.d.mts.map +1 -1
  170. package/resources/models/train.d.ts +2 -2
  171. package/resources/models/train.d.ts.map +1 -1
  172. package/resources/search.d.mts +215 -295
  173. package/resources/search.d.mts.map +1 -1
  174. package/resources/search.d.ts +215 -295
  175. package/resources/search.d.ts.map +1 -1
  176. package/resources/search.js +9 -2
  177. package/resources/search.js.map +1 -1
  178. package/resources/search.mjs +9 -2
  179. package/resources/search.mjs.map +1 -1
  180. package/resources/tags.d.mts +23 -35
  181. package/resources/tags.d.mts.map +1 -1
  182. package/resources/tags.d.ts +23 -35
  183. package/resources/tags.d.ts.map +1 -1
  184. package/resources/tags.js +2 -1
  185. package/resources/tags.js.map +1 -1
  186. package/resources/tags.mjs +2 -1
  187. package/resources/tags.mjs.map +1 -1
  188. package/resources/usages.d.mts +3 -3
  189. package/resources/usages.d.mts.map +1 -1
  190. package/resources/usages.d.ts +3 -3
  191. package/resources/usages.d.ts.map +1 -1
  192. package/resources/workflows.d.mts +688 -704
  193. package/resources/workflows.d.mts.map +1 -1
  194. package/resources/workflows.d.ts +688 -704
  195. package/resources/workflows.d.ts.map +1 -1
  196. package/resources/workflows.js +5 -1
  197. package/resources/workflows.js.map +1 -1
  198. package/resources/workflows.mjs +5 -1
  199. package/resources/workflows.mjs.map +1 -1
  200. package/src/client.ts +107 -2
  201. package/src/core/pagination.ts +497 -0
  202. package/src/index.ts +11 -1
  203. package/src/lib/asset.ts +85 -0
  204. package/src/lib/job.ts +28 -1
  205. package/src/lib/models.ts +62 -2
  206. package/src/lib/scenario.ts +14 -0
  207. package/src/lib/upload.ts +344 -0
  208. package/src/lib/workflow.ts +29 -4
  209. package/src/lib/workflow_import_validator.ts +104 -0
  210. package/src/pagination.ts +2 -0
  211. package/src/resources/assets/assets.ts +930 -909
  212. package/src/resources/assets/index.ts +2 -0
  213. package/src/resources/assets/public.ts +17 -7
  214. package/src/resources/collections/collections.ts +45 -54
  215. package/src/resources/collections/index.ts +1 -0
  216. package/src/resources/generate.ts +1227 -136
  217. package/src/resources/index.ts +11 -1
  218. package/src/resources/jobs.ts +613 -622
  219. package/src/resources/models/description.ts +4 -0
  220. package/src/resources/models/examples.ts +8 -0
  221. package/src/resources/models/index.ts +1 -0
  222. package/src/resources/models/models.ts +1066 -1064
  223. package/src/resources/models/train.ts +4 -0
  224. package/src/resources/search.ts +239 -327
  225. package/src/resources/tags.ts +32 -39
  226. package/src/resources/usages.ts +5 -0
  227. package/src/resources/workflows.ts +850 -864
  228. package/src/version.ts +1 -1
  229. package/version.d.mts +1 -1
  230. package/version.d.ts +1 -1
  231. package/version.js +1 -1
  232. package/version.mjs +1 -1
@@ -13,6 +13,13 @@ import {
13
13
  import * as PublicAPI from './public';
14
14
  import { Public, PublicListParams, PublicListResponse, PublicRetrieveResponse } from './public';
15
15
  import { APIPromise } from '../../core/api-promise';
16
+ import {
17
+ AssetsCursor,
18
+ type AssetsCursorParams,
19
+ PagePromise,
20
+ SnapshotsCursor,
21
+ type SnapshotsCursorParams,
22
+ } from '../../core/pagination';
16
23
  import { RequestOptions } from '../../internal/request-options';
17
24
  import { path } from '../../internal/utils/path';
18
25
 
@@ -53,8 +60,8 @@ export class Assets extends APIResource {
53
60
  list(
54
61
  query: AssetListParams | null | undefined = {},
55
62
  options?: RequestOptions,
56
- ): APIPromise<AssetListResponse> {
57
- return this._client.get('/assets', { query, ...options });
63
+ ): PagePromise<AssetListResponsesAssetsCursor, AssetListResponse> {
64
+ return this._client.getAPIList('/assets', AssetsCursor<AssetListResponse>, { query, ...options });
58
65
  }
59
66
 
60
67
  /**
@@ -91,8 +98,12 @@ export class Assets extends APIResource {
91
98
  assetID: string,
92
99
  query: AssetListSnapshotsParams | null | undefined = {},
93
100
  options?: RequestOptions,
94
- ): APIPromise<AssetListSnapshotsResponse> {
95
- return this._client.get(path`/assets/${assetID}/snapshots`, { query, ...options });
101
+ ): PagePromise<AssetListSnapshotsResponsesSnapshotsCursor, AssetListSnapshotsResponse> {
102
+ return this._client.getAPIList(
103
+ path`/assets/${assetID}/snapshots`,
104
+ SnapshotsCursor<AssetListSnapshotsResponse>,
105
+ { query, ...options },
106
+ );
96
107
  }
97
108
 
98
109
  /**
@@ -135,6 +146,10 @@ export class Assets extends APIResource {
135
146
  }
136
147
  }
137
148
 
149
+ export type AssetListResponsesAssetsCursor = AssetsCursor<AssetListResponse>;
150
+
151
+ export type AssetListSnapshotsResponsesSnapshotsCursor = SnapshotsCursor<AssetListSnapshotsResponse>;
152
+
138
153
  export interface AssetRetrieveResponse {
139
154
  asset: AssetRetrieveResponse.Asset;
140
155
  }
@@ -222,6 +237,7 @@ export namespace AssetRetrieveResponse {
222
237
  | '3d:texture:normal'
223
238
  | '3d:texture:roughness'
224
239
  | 'audio2audio'
240
+ | 'audio2video'
225
241
  | 'background-removal'
226
242
  | 'canvas'
227
243
  | 'canvas-drawing'
@@ -283,6 +299,7 @@ export namespace AssetRetrieveResponse {
283
299
  | 'upscale-video'
284
300
  | 'vectorization'
285
301
  | 'video23d'
302
+ | 'video2audio'
286
303
  | 'video2img'
287
304
  | 'video2video'
288
305
  | 'voice-clone';
@@ -405,6 +422,7 @@ export namespace AssetRetrieveResponse {
405
422
  | '3d23d'
406
423
  | '3d23d-texture'
407
424
  | 'audio2audio'
425
+ | 'audio2video'
408
426
  | 'background-removal'
409
427
  | 'canvas'
410
428
  | 'canvas-drawing'
@@ -466,6 +484,7 @@ export namespace AssetRetrieveResponse {
466
484
  | 'upscale-video'
467
485
  | 'vectorization'
468
486
  | 'video23d'
487
+ | 'video2audio'
469
488
  | 'video2img'
470
489
  | 'video2video'
471
490
  | 'voice-clone';
@@ -1334,6 +1353,7 @@ export namespace AssetUpdateResponse {
1334
1353
  | '3d:texture:normal'
1335
1354
  | '3d:texture:roughness'
1336
1355
  | 'audio2audio'
1356
+ | 'audio2video'
1337
1357
  | 'background-removal'
1338
1358
  | 'canvas'
1339
1359
  | 'canvas-drawing'
@@ -1395,6 +1415,7 @@ export namespace AssetUpdateResponse {
1395
1415
  | 'upscale-video'
1396
1416
  | 'vectorization'
1397
1417
  | 'video23d'
1418
+ | 'video2audio'
1398
1419
  | 'video2img'
1399
1420
  | 'video2video'
1400
1421
  | 'voice-clone';
@@ -1517,6 +1538,7 @@ export namespace AssetUpdateResponse {
1517
1538
  | '3d23d'
1518
1539
  | '3d23d-texture'
1519
1540
  | 'audio2audio'
1541
+ | 'audio2video'
1520
1542
  | 'background-removal'
1521
1543
  | 'canvas'
1522
1544
  | 'canvas-drawing'
@@ -1578,6 +1600,7 @@ export namespace AssetUpdateResponse {
1578
1600
  | 'upscale-video'
1579
1601
  | 'vectorization'
1580
1602
  | 'video23d'
1603
+ | 'video2audio'
1581
1604
  | 'video2img'
1582
1605
  | 'video2video'
1583
1606
  | 'voice-clone';
@@ -2360,97 +2383,273 @@ export namespace AssetUpdateResponse {
2360
2383
  }
2361
2384
 
2362
2385
  export interface AssetListResponse {
2363
- assets: Array<AssetListResponse.Asset>;
2386
+ /**
2387
+ * The asset ID (example: "asset_GTrL3mq4SXWyMxkOHRxlpw")
2388
+ */
2389
+ id: string;
2364
2390
 
2365
2391
  /**
2366
- * A token to query the next page of assets
2392
+ * The author user ID (example: "dcf121faaa1a0a0bbbd9ca1b73d62aea")
2367
2393
  */
2368
- nextPaginationToken?: string;
2369
- }
2394
+ authorId: string;
2370
2395
 
2371
- export namespace AssetListResponse {
2372
- export interface Asset {
2373
- /**
2374
- * The asset ID (example: "asset_GTrL3mq4SXWyMxkOHRxlpw")
2375
- */
2376
- id: string;
2396
+ /**
2397
+ * A list of CollectionId this asset belongs to
2398
+ */
2399
+ collectionIds: Array<string>;
2377
2400
 
2378
- /**
2379
- * The author user ID (example: "dcf121faaa1a0a0bbbd9ca1b73d62aea")
2380
- */
2381
- authorId: string;
2401
+ /**
2402
+ * The asset creation date as an ISO string (example: "2023-02-03T11:19:41.579Z")
2403
+ */
2404
+ createdAt: string;
2382
2405
 
2383
- /**
2384
- * A list of CollectionId this asset belongs to
2385
- */
2386
- collectionIds: Array<string>;
2406
+ /**
2407
+ * List of edit capabilities
2408
+ */
2409
+ editCapabilities: Array<
2410
+ | 'DETECTION'
2411
+ | 'GENERATIVE_FILL'
2412
+ | 'PIXELATE'
2413
+ | 'PROMPT_EDITING'
2414
+ | 'REFINE'
2415
+ | 'REFRAME'
2416
+ | 'REMOVE_BACKGROUND'
2417
+ | 'SEGMENTATION'
2418
+ | 'UPSCALE'
2419
+ | 'UPSCALE_360'
2420
+ | 'VECTORIZATION'
2421
+ >;
2387
2422
 
2388
- /**
2389
- * The asset creation date as an ISO string (example: "2023-02-03T11:19:41.579Z")
2390
- */
2391
- createdAt: string;
2423
+ /**
2424
+ * The kind of asset
2425
+ */
2426
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2392
2427
 
2393
- /**
2394
- * List of edit capabilities
2395
- */
2396
- editCapabilities: Array<
2397
- | 'DETECTION'
2398
- | 'GENERATIVE_FILL'
2399
- | 'PIXELATE'
2400
- | 'PROMPT_EDITING'
2401
- | 'REFINE'
2402
- | 'REFRAME'
2403
- | 'REMOVE_BACKGROUND'
2404
- | 'SEGMENTATION'
2405
- | 'UPSCALE'
2406
- | 'UPSCALE_360'
2407
- | 'VECTORIZATION'
2408
- >;
2428
+ /**
2429
+ * Metadata of the asset with some additional information
2430
+ */
2431
+ metadata: AssetListResponse.Metadata;
2409
2432
 
2410
- /**
2411
- * The kind of asset
2412
- */
2413
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2433
+ /**
2434
+ * The mime type of the asset (example: "image/png")
2435
+ */
2436
+ mimeType: string;
2414
2437
 
2415
- /**
2416
- * Metadata of the asset with some additional information
2417
- */
2418
- metadata: Asset.Metadata;
2438
+ /**
2439
+ * The owner (project) ID (example: "proj_23tlk332lkht3kl2" or
2440
+ * "team_dlkhgs23tlk3hlkth32lkht3kl2" for old teams)
2441
+ */
2442
+ ownerId: string;
2419
2443
 
2420
- /**
2421
- * The mime type of the asset (example: "image/png")
2422
- */
2423
- mimeType: string;
2444
+ /**
2445
+ * The privacy of the asset
2446
+ */
2447
+ privacy: 'private' | 'public' | 'unlisted';
2424
2448
 
2425
- /**
2426
- * The owner (project) ID (example: "proj_23tlk332lkht3kl2" or
2427
- * "team_dlkhgs23tlk3hlkth32lkht3kl2" for old teams)
2428
- */
2429
- ownerId: string;
2449
+ /**
2450
+ * The properties of the asset, content may depend on the kind of asset returned
2451
+ */
2452
+ properties: AssetListResponse.Properties;
2430
2453
 
2431
- /**
2432
- * The privacy of the asset
2433
- */
2434
- privacy: 'private' | 'public' | 'unlisted';
2454
+ /**
2455
+ * source of the asset
2456
+ */
2457
+ source:
2458
+ | '3d23d'
2459
+ | '3d23d:texture'
2460
+ | '3d:texture'
2461
+ | '3d:texture:albedo'
2462
+ | '3d:texture:metallic'
2463
+ | '3d:texture:mtl'
2464
+ | '3d:texture:normal'
2465
+ | '3d:texture:roughness'
2466
+ | 'audio2audio'
2467
+ | 'audio2video'
2468
+ | 'background-removal'
2469
+ | 'canvas'
2470
+ | 'canvas-drawing'
2471
+ | 'canvas-export'
2472
+ | 'detection'
2473
+ | 'generative-fill'
2474
+ | 'image-prompt-editing'
2475
+ | 'img23d'
2476
+ | 'img2img'
2477
+ | 'img2video'
2478
+ | 'inference-control-net'
2479
+ | 'inference-control-net-img'
2480
+ | 'inference-control-net-inpainting'
2481
+ | 'inference-control-net-inpainting-ip-adapter'
2482
+ | 'inference-control-net-ip-adapter'
2483
+ | 'inference-control-net-reference'
2484
+ | 'inference-control-net-texture'
2485
+ | 'inference-img'
2486
+ | 'inference-img-ip-adapter'
2487
+ | 'inference-img-texture'
2488
+ | 'inference-in-paint'
2489
+ | 'inference-in-paint-ip-adapter'
2490
+ | 'inference-reference'
2491
+ | 'inference-reference-texture'
2492
+ | 'inference-txt'
2493
+ | 'inference-txt-ip-adapter'
2494
+ | 'inference-txt-texture'
2495
+ | 'patch'
2496
+ | 'pixelization'
2497
+ | 'reframe'
2498
+ | 'restyle'
2499
+ | 'segment'
2500
+ | 'segmentation-image'
2501
+ | 'segmentation-mask'
2502
+ | 'skybox-3d'
2503
+ | 'skybox-base-360'
2504
+ | 'skybox-hdri'
2505
+ | 'texture'
2506
+ | 'texture:albedo'
2507
+ | 'texture:ao'
2508
+ | 'texture:edge'
2509
+ | 'texture:height'
2510
+ | 'texture:metallic'
2511
+ | 'texture:normal'
2512
+ | 'texture:smoothness'
2513
+ | 'txt23d'
2514
+ | 'txt2audio'
2515
+ | 'txt2img'
2516
+ | 'txt2video'
2517
+ | 'unknown'
2518
+ | 'uploaded'
2519
+ | 'uploaded-3d'
2520
+ | 'uploaded-audio'
2521
+ | 'uploaded-avatar'
2522
+ | 'uploaded-video'
2523
+ | 'upscale'
2524
+ | 'upscale-skybox'
2525
+ | 'upscale-texture'
2526
+ | 'upscale-video'
2527
+ | 'vectorization'
2528
+ | 'video23d'
2529
+ | 'video2audio'
2530
+ | 'video2img'
2531
+ | 'video2video'
2532
+ | 'voice-clone';
2435
2533
 
2436
- /**
2437
- * The properties of the asset, content may depend on the kind of asset returned
2438
- */
2439
- properties: Asset.Properties;
2534
+ /**
2535
+ * The actual status
2536
+ */
2537
+ status: 'error' | 'pending' | 'success';
2538
+
2539
+ /**
2540
+ * The associated tags (example: ["sci-fi", "landscape"])
2541
+ */
2542
+ tags: Array<string>;
2543
+
2544
+ /**
2545
+ * The asset last update date as an ISO string (example:
2546
+ * "2023-02-03T11:19:41.579Z")
2547
+ */
2548
+ updatedAt: string;
2549
+
2550
+ /**
2551
+ * Signed URL to get the asset content
2552
+ */
2553
+ url: string;
2554
+
2555
+ /**
2556
+ * Automatic captioning of the asset
2557
+ */
2558
+ automaticCaptioning?: string;
2559
+
2560
+ /**
2561
+ * The description, it will contain in priority:
2562
+ *
2563
+ * - the manual description
2564
+ * - the advanced captioning when the asset is used in training flow
2565
+ * - the automatic captioning
2566
+ */
2567
+ description?: string;
2568
+
2569
+ /**
2570
+ * The embedding of the asset when requested.
2571
+ *
2572
+ * Only available when an asset can be embedded (ie: not Detection maps)
2573
+ */
2574
+ embedding?: Array<number>;
2575
+
2576
+ /**
2577
+ * The video asset's first frame.
2578
+ *
2579
+ * Contains the assetId and the url of the first frame.
2580
+ */
2581
+ firstFrame?: AssetListResponse.FirstFrame;
2582
+
2583
+ /**
2584
+ * Whether the asset is hidden.
2585
+ */
2586
+ isHidden?: boolean;
2587
+
2588
+ /**
2589
+ * The video asset's last frame.
2590
+ *
2591
+ * Contains the assetId and the url of the last frame.
2592
+ */
2593
+ lastFrame?: AssetListResponse.LastFrame;
2594
+
2595
+ /**
2596
+ * The NSFW labels
2597
+ */
2598
+ nsfw?: Array<string>;
2599
+
2600
+ /**
2601
+ * The original file url.
2602
+ *
2603
+ * Contains the url of the original file. without any conversion. Only available
2604
+ * for some specific video, audio and threeD assets. Is only specified if the given
2605
+ * asset data has been replaced with a new file during the creation of the asset.
2606
+ */
2607
+ originalFileUrl?: string;
2608
+
2609
+ /**
2610
+ * The output index of the asset within a job This index is an positive integer
2611
+ * that starts at 0 It is used to differentiate between multiple outputs of the
2612
+ * same job If the job has only one output, this index is 0
2613
+ */
2614
+ outputIndex?: number;
2615
+
2616
+ /**
2617
+ * The asset's preview.
2618
+ *
2619
+ * Contains the assetId and the url of the preview.
2620
+ */
2621
+ preview?: AssetListResponse.Preview;
2622
+
2623
+ /**
2624
+ * The asset's thumbnail.
2625
+ *
2626
+ * Contains the assetId and the url of the thumbnail.
2627
+ */
2628
+ thumbnail?: AssetListResponse.Thumbnail;
2629
+ }
2630
+
2631
+ export namespace AssetListResponse {
2632
+ /**
2633
+ * Metadata of the asset with some additional information
2634
+ */
2635
+ export interface Metadata {
2636
+ kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2440
2637
 
2441
2638
  /**
2442
- * source of the asset
2639
+ * The type of the asset. Ex: 'inference-txt2img' will represent an asset generated
2640
+ * from a text to image model
2443
2641
  */
2444
- source:
2642
+ type:
2643
+ | '3d-texture'
2644
+ | '3d-texture-albedo'
2645
+ | '3d-texture-metallic'
2646
+ | '3d-texture-mtl'
2647
+ | '3d-texture-normal'
2648
+ | '3d-texture-roughness'
2445
2649
  | '3d23d'
2446
- | '3d23d:texture'
2447
- | '3d:texture'
2448
- | '3d:texture:albedo'
2449
- | '3d:texture:metallic'
2450
- | '3d:texture:mtl'
2451
- | '3d:texture:normal'
2452
- | '3d:texture:roughness'
2650
+ | '3d23d-texture'
2453
2651
  | 'audio2audio'
2652
+ | 'audio2video'
2454
2653
  | 'background-removal'
2455
2654
  | 'canvas'
2456
2655
  | 'canvas-drawing'
@@ -2461,23 +2660,23 @@ export namespace AssetListResponse {
2461
2660
  | 'img23d'
2462
2661
  | 'img2img'
2463
2662
  | 'img2video'
2464
- | 'inference-control-net'
2465
- | 'inference-control-net-img'
2466
- | 'inference-control-net-inpainting'
2467
- | 'inference-control-net-inpainting-ip-adapter'
2468
- | 'inference-control-net-ip-adapter'
2469
- | 'inference-control-net-reference'
2470
- | 'inference-control-net-texture'
2471
- | 'inference-img'
2472
- | 'inference-img-ip-adapter'
2473
- | 'inference-img-texture'
2474
- | 'inference-in-paint'
2475
- | 'inference-in-paint-ip-adapter'
2663
+ | 'inference-controlnet'
2664
+ | 'inference-controlnet-img2img'
2665
+ | 'inference-controlnet-inpaint'
2666
+ | 'inference-controlnet-inpaint-ip-adapter'
2667
+ | 'inference-controlnet-ip-adapter'
2668
+ | 'inference-controlnet-reference'
2669
+ | 'inference-controlnet-texture'
2670
+ | 'inference-img2img'
2671
+ | 'inference-img2img-ip-adapter'
2672
+ | 'inference-img2img-texture'
2673
+ | 'inference-inpaint'
2674
+ | 'inference-inpaint-ip-adapter'
2476
2675
  | 'inference-reference'
2477
2676
  | 'inference-reference-texture'
2478
- | 'inference-txt'
2479
- | 'inference-txt-ip-adapter'
2480
- | 'inference-txt-texture'
2677
+ | 'inference-txt2img'
2678
+ | 'inference-txt2img-ip-adapter'
2679
+ | 'inference-txt2img-texture'
2481
2680
  | 'patch'
2482
2681
  | 'pixelization'
2483
2682
  | 'reframe'
@@ -2489,13 +2688,13 @@ export namespace AssetListResponse {
2489
2688
  | 'skybox-base-360'
2490
2689
  | 'skybox-hdri'
2491
2690
  | 'texture'
2492
- | 'texture:albedo'
2493
- | 'texture:ao'
2494
- | 'texture:edge'
2495
- | 'texture:height'
2496
- | 'texture:metallic'
2497
- | 'texture:normal'
2498
- | 'texture:smoothness'
2691
+ | 'texture-albedo'
2692
+ | 'texture-ao'
2693
+ | 'texture-edge'
2694
+ | 'texture-height'
2695
+ | 'texture-metallic'
2696
+ | 'texture-normal'
2697
+ | 'texture-smoothness'
2499
2698
  | 'txt23d'
2500
2699
  | 'txt2audio'
2501
2700
  | 'txt2img'
@@ -2512,968 +2711,785 @@ export namespace AssetListResponse {
2512
2711
  | 'upscale-video'
2513
2712
  | 'vectorization'
2514
2713
  | 'video23d'
2714
+ | 'video2audio'
2515
2715
  | 'video2img'
2516
2716
  | 'video2video'
2517
2717
  | 'voice-clone';
2518
2718
 
2519
2719
  /**
2520
- * The actual status
2720
+ * How angular is the surface? 0 is like a sphere, 1 is like a mechanical object
2521
2721
  */
2522
- status: 'error' | 'pending' | 'success';
2722
+ angular?: number;
2523
2723
 
2524
2724
  /**
2525
- * The associated tags (example: ["sci-fi", "landscape"])
2725
+ * The optional aspect ratio given for the generation, only applicable for some
2726
+ * models
2526
2727
  */
2527
- tags: Array<string>;
2728
+ aspectRatio?: string;
2528
2729
 
2529
2730
  /**
2530
- * The asset last update date as an ISO string (example:
2531
- * "2023-02-03T11:19:41.579Z")
2731
+ * Int to set between 0 and 255 for the opacity of the background in the result
2732
+ * images.
2532
2733
  */
2533
- updatedAt: string;
2734
+ backgroundOpacity?: number;
2534
2735
 
2535
2736
  /**
2536
- * Signed URL to get the asset content
2737
+ * The baseModelId that maybe changed at inference time
2537
2738
  */
2538
- url: string;
2739
+ baseModelId?: string;
2539
2740
 
2540
2741
  /**
2541
- * Automatic captioning of the asset
2742
+ * A bounding box around the object of interest, in the format [x1, y1, x2, y2].
2542
2743
  */
2543
- automaticCaptioning?: string;
2744
+ bbox?: Array<number>;
2544
2745
 
2545
2746
  /**
2546
- * The description, it will contain in priority:
2547
- *
2548
- * - the manual description
2549
- * - the advanced captioning when the asset is used in training flow
2550
- * - the automatic captioning
2747
+ * Remove small dark spots (i.e. “pepper”) and connect small bright cracks.
2551
2748
  */
2552
- description?: string;
2749
+ betterQuality?: boolean;
2553
2750
 
2554
2751
  /**
2555
- * The embedding of the asset when requested.
2556
- *
2557
- * Only available when an asset can be embedded (ie: not Detection maps)
2752
+ * The control image already processed by canny detector. Must reference an
2753
+ * existing AssetId.
2558
2754
  */
2559
- embedding?: Array<number>;
2755
+ cannyStructureImage?: string;
2560
2756
 
2561
2757
  /**
2562
- * The video asset's first frame.
2563
- *
2564
- * Contains the assetId and the url of the first frame.
2758
+ * Activate clustering.
2565
2759
  */
2566
- firstFrame?: Asset.FirstFrame;
2760
+ clustering?: boolean;
2567
2761
 
2568
2762
  /**
2569
- * Whether the asset is hidden.
2763
+ * Ensure upscaled tile have the same color histogram as original tile.
2570
2764
  */
2571
- isHidden?: boolean;
2765
+ colorCorrection?: boolean;
2766
+
2767
+ colorMode?: string;
2768
+
2769
+ colorPrecision?: number;
2572
2770
 
2573
2771
  /**
2574
- * The video asset's last frame.
2575
- *
2576
- * Contains the assetId and the url of the last frame.
2772
+ * Flux Kontext LoRA to style the image. For Flux Kontext Prompt Editing.
2577
2773
  */
2578
- lastFrame?: Asset.LastFrame;
2774
+ concepts?: Array<Metadata.Concept>;
2775
+
2776
+ contours?: Array<Array<Array<Array<number>>>>;
2579
2777
 
2580
2778
  /**
2581
- * The NSFW labels
2779
+ * End step for control.
2582
2780
  */
2583
- nsfw?: Array<string>;
2781
+ controlEnd?: number;
2584
2782
 
2585
2783
  /**
2586
- * The original file url.
2587
- *
2588
- * Contains the url of the original file. without any conversion. Only available
2589
- * for some specific video, audio and threeD assets. Is only specified if the given
2590
- * asset data has been replaced with a new file during the creation of the asset.
2784
+ * The date when the asset was copied to a project
2591
2785
  */
2592
- originalFileUrl?: string;
2786
+ copiedAt?: string;
2787
+
2788
+ cornerThreshold?: number;
2593
2789
 
2594
2790
  /**
2595
- * The output index of the asset within a job This index is an positive integer
2596
- * that starts at 0 It is used to differentiate between multiple outputs of the
2597
- * same job If the job has only one output, this index is 0
2791
+ * Allow the generation of "hallucinations" during the upscale process, which adds
2792
+ * additional details and deviates from the original image. Default: optimized for
2793
+ * your preset and style.
2598
2794
  */
2599
- outputIndex?: number;
2795
+ creativity?: number;
2600
2796
 
2601
2797
  /**
2602
- * The asset's preview.
2603
- *
2604
- * Contains the assetId and the url of the preview.
2798
+ * Amount of decay in creativity over the upscale process. The lowest the value,
2799
+ * the less the creativity will be preserved over the upscale process.
2605
2800
  */
2606
- preview?: Asset.Preview;
2801
+ creativityDecay?: number;
2607
2802
 
2608
2803
  /**
2609
- * The asset's thumbnail.
2610
- *
2611
- * Contains the assetId and the url of the thumbnail.
2804
+ * If true, use the default parameters
2612
2805
  */
2613
- thumbnail?: Asset.Thumbnail;
2614
- }
2806
+ defaultParameters?: boolean;
2615
2807
 
2616
- export namespace Asset {
2617
2808
  /**
2618
- * Metadata of the asset with some additional information
2809
+ * The depth fidelity if a depth image provided
2619
2810
  */
2620
- export interface Metadata {
2621
- kind: '3d' | 'audio' | 'document' | 'image' | 'image-hdr' | 'json' | 'video';
2811
+ depthFidelity?: number;
2622
2812
 
2623
- /**
2624
- * The type of the asset. Ex: 'inference-txt2img' will represent an asset generated
2625
- * from a text to image model
2626
- */
2627
- type:
2628
- | '3d-texture'
2629
- | '3d-texture-albedo'
2630
- | '3d-texture-metallic'
2631
- | '3d-texture-mtl'
2632
- | '3d-texture-normal'
2633
- | '3d-texture-roughness'
2634
- | '3d23d'
2635
- | '3d23d-texture'
2636
- | 'audio2audio'
2637
- | 'background-removal'
2638
- | 'canvas'
2639
- | 'canvas-drawing'
2640
- | 'canvas-export'
2641
- | 'detection'
2642
- | 'generative-fill'
2643
- | 'image-prompt-editing'
2644
- | 'img23d'
2645
- | 'img2img'
2646
- | 'img2video'
2647
- | 'inference-controlnet'
2648
- | 'inference-controlnet-img2img'
2649
- | 'inference-controlnet-inpaint'
2650
- | 'inference-controlnet-inpaint-ip-adapter'
2651
- | 'inference-controlnet-ip-adapter'
2652
- | 'inference-controlnet-reference'
2653
- | 'inference-controlnet-texture'
2654
- | 'inference-img2img'
2655
- | 'inference-img2img-ip-adapter'
2656
- | 'inference-img2img-texture'
2657
- | 'inference-inpaint'
2658
- | 'inference-inpaint-ip-adapter'
2659
- | 'inference-reference'
2660
- | 'inference-reference-texture'
2661
- | 'inference-txt2img'
2662
- | 'inference-txt2img-ip-adapter'
2663
- | 'inference-txt2img-texture'
2664
- | 'patch'
2665
- | 'pixelization'
2666
- | 'reframe'
2667
- | 'restyle'
2668
- | 'segment'
2669
- | 'segmentation-image'
2670
- | 'segmentation-mask'
2671
- | 'skybox-3d'
2672
- | 'skybox-base-360'
2673
- | 'skybox-hdri'
2674
- | 'texture'
2675
- | 'texture-albedo'
2676
- | 'texture-ao'
2677
- | 'texture-edge'
2678
- | 'texture-height'
2679
- | 'texture-metallic'
2680
- | 'texture-normal'
2681
- | 'texture-smoothness'
2682
- | 'txt23d'
2683
- | 'txt2audio'
2684
- | 'txt2img'
2685
- | 'txt2video'
2686
- | 'unknown'
2687
- | 'uploaded'
2688
- | 'uploaded-3d'
2689
- | 'uploaded-audio'
2690
- | 'uploaded-avatar'
2691
- | 'uploaded-video'
2692
- | 'upscale'
2693
- | 'upscale-skybox'
2694
- | 'upscale-texture'
2695
- | 'upscale-video'
2696
- | 'vectorization'
2697
- | 'video23d'
2698
- | 'video2img'
2699
- | 'video2video'
2700
- | 'voice-clone';
2701
-
2702
- /**
2703
- * How angular is the surface? 0 is like a sphere, 1 is like a mechanical object
2704
- */
2705
- angular?: number;
2706
-
2707
- /**
2708
- * The optional aspect ratio given for the generation, only applicable for some
2709
- * models
2710
- */
2711
- aspectRatio?: string;
2712
-
2713
- /**
2714
- * Int to set between 0 and 255 for the opacity of the background in the result
2715
- * images.
2716
- */
2717
- backgroundOpacity?: number;
2718
-
2719
- /**
2720
- * The baseModelId that maybe changed at inference time
2721
- */
2722
- baseModelId?: string;
2723
-
2724
- /**
2725
- * A bounding box around the object of interest, in the format [x1, y1, x2, y2].
2726
- */
2727
- bbox?: Array<number>;
2728
-
2729
- /**
2730
- * Remove small dark spots (i.e. “pepper”) and connect small bright cracks.
2731
- */
2732
- betterQuality?: boolean;
2733
-
2734
- /**
2735
- * The control image already processed by canny detector. Must reference an
2736
- * existing AssetId.
2737
- */
2738
- cannyStructureImage?: string;
2739
-
2740
- /**
2741
- * Activate clustering.
2742
- */
2743
- clustering?: boolean;
2744
-
2745
- /**
2746
- * Ensure upscaled tile have the same color histogram as original tile.
2747
- */
2748
- colorCorrection?: boolean;
2749
-
2750
- colorMode?: string;
2751
-
2752
- colorPrecision?: number;
2753
-
2754
- /**
2755
- * Flux Kontext LoRA to style the image. For Flux Kontext Prompt Editing.
2756
- */
2757
- concepts?: Array<Metadata.Concept>;
2758
-
2759
- contours?: Array<Array<Array<Array<number>>>>;
2760
-
2761
- /**
2762
- * End step for control.
2763
- */
2764
- controlEnd?: number;
2765
-
2766
- /**
2767
- * The date when the asset was copied to a project
2768
- */
2769
- copiedAt?: string;
2770
-
2771
- cornerThreshold?: number;
2772
-
2773
- /**
2774
- * Allow the generation of "hallucinations" during the upscale process, which adds
2775
- * additional details and deviates from the original image. Default: optimized for
2776
- * your preset and style.
2777
- */
2778
- creativity?: number;
2779
-
2780
- /**
2781
- * Amount of decay in creativity over the upscale process. The lowest the value,
2782
- * the less the creativity will be preserved over the upscale process.
2783
- */
2784
- creativityDecay?: number;
2785
-
2786
- /**
2787
- * If true, use the default parameters
2788
- */
2789
- defaultParameters?: boolean;
2790
-
2791
- /**
2792
- * The depth fidelity if a depth image provided
2793
- */
2794
- depthFidelity?: number;
2795
-
2796
- /**
2797
- * The control image processed by depth estimator. Must reference an existing
2798
- * AssetId.
2799
- */
2800
- depthImage?: string;
2801
-
2802
- /**
2803
- * Amount of details to remove or add
2804
- */
2805
- detailsLevel?: number;
2806
-
2807
- /**
2808
- * The number of pixels to dilate the result masks.
2809
- */
2810
- dilate?: number;
2811
-
2812
- /**
2813
- * Contrast factor for Grayscale detector
2814
- */
2815
- factor?: number;
2816
-
2817
- filterSpeckle?: number;
2818
-
2819
- /**
2820
- * Determine the scale at which the upscale process works.
2821
- *
2822
- * - With a small value, the upscale works at the largest scale, resulting in fewer
2823
- * added details and more coherent images. Ideal for portraits, for example.
2824
- * - With a large value, the upscale works at the smallest scale, resulting in more
2825
- * added details and more hallucinations. Ideal for landscapes, for example.
2826
- *
2827
- * (info): A small value is slower and more expensive to run.
2828
- */
2829
- fractality?: number;
2830
-
2831
- /**
2832
- * Apply extra control to the Skybox 360 geometry. The higher the value, the more
2833
- * the 360 geometry will influence the generated skybox image.
2834
- *
2835
- * Use with caution. Default is adapted to the other parameters.
2836
- */
2837
- geometryEnforcement?: number;
2838
-
2839
- /**
2840
- * The guidance used to generate this asset
2841
- */
2842
- guidance?: number;
2843
-
2844
- halfMode?: boolean;
2845
-
2846
- hdr?: number;
2847
-
2848
- height?: number;
2849
-
2850
- /**
2851
- * High threshold for Canny detector
2852
- */
2853
- highThreshold?: number;
2854
-
2855
- /**
2856
- * (deprecated) Horizontal expansion ratio.
2857
- */
2858
- horizontalExpansionRatio?: number;
2813
+ /**
2814
+ * The control image processed by depth estimator. Must reference an existing
2815
+ * AssetId.
2816
+ */
2817
+ depthImage?: string;
2859
2818
 
2860
- /**
2861
- * The input image to process. Must reference an existing AssetId or be a data URL.
2862
- */
2863
- image?: string;
2819
+ /**
2820
+ * Amount of details to remove or add
2821
+ */
2822
+ detailsLevel?: number;
2864
2823
 
2865
- /**
2866
- * Strengthen the similarity to the original image during the upscale. Default:
2867
- * optimized for your preset and style.
2868
- */
2869
- imageFidelity?: number;
2824
+ /**
2825
+ * The number of pixels to dilate the result masks.
2826
+ */
2827
+ dilate?: number;
2870
2828
 
2871
- /**
2872
- * Preserve the seamless properties of skybox or texture images. Input has to be of
2873
- * same type (seamless).
2874
- */
2875
- imageType?: 'seamfull' | 'skybox' | 'texture';
2829
+ /**
2830
+ * Contrast factor for Grayscale detector
2831
+ */
2832
+ factor?: number;
2876
2833
 
2877
- /**
2878
- * The id of the Inference describing how this image was generated
2879
- */
2880
- inferenceId?: string;
2834
+ filterSpeckle?: number;
2881
2835
 
2882
- /**
2883
- * When set to `high`, allows to better preserve details from the input images in
2884
- * the output. This is especially useful when using images that contain elements
2885
- * like faces or logos that require accurate preservation in the generated image.
2886
- *
2887
- * You can provide multiple input images that will all be preserved with high
2888
- * fidelity, but keep in mind that the first image will be preserved with richer
2889
- * textures and finer details, so if you include elements such as faces, consider
2890
- * placing them in the first image.
2891
- *
2892
- * Only available for the `gpt-image-1` model.
2893
- */
2894
- inputFidelity?: 'high' | 'low';
2836
+ /**
2837
+ * Determine the scale at which the upscale process works.
2838
+ *
2839
+ * - With a small value, the upscale works at the largest scale, resulting in fewer
2840
+ * added details and more coherent images. Ideal for portraits, for example.
2841
+ * - With a large value, the upscale works at the smallest scale, resulting in more
2842
+ * added details and more hallucinations. Ideal for landscapes, for example.
2843
+ *
2844
+ * (info): A small value is slower and more expensive to run.
2845
+ */
2846
+ fractality?: number;
2895
2847
 
2896
- /**
2897
- * Location of the input image in the output.
2898
- */
2899
- inputLocation?: 'bottom' | 'left' | 'middle' | 'right' | 'top';
2848
+ /**
2849
+ * Apply extra control to the Skybox 360 geometry. The higher the value, the more
2850
+ * the 360 geometry will influence the generated skybox image.
2851
+ *
2852
+ * Use with caution. Default is adapted to the other parameters.
2853
+ */
2854
+ geometryEnforcement?: number;
2900
2855
 
2901
- /**
2902
- * To invert the relief
2903
- */
2904
- invert?: boolean;
2856
+ /**
2857
+ * The guidance used to generate this asset
2858
+ */
2859
+ guidance?: number;
2905
2860
 
2906
- /**
2907
- * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
2908
- */
2909
- keypointThreshold?: number;
2861
+ halfMode?: boolean;
2910
2862
 
2911
- layerDifference?: number;
2863
+ hdr?: number;
2912
2864
 
2913
- lengthThreshold?: number;
2865
+ height?: number;
2914
2866
 
2915
- /**
2916
- * The ISO timestamp when the lock on the canvas will expire
2917
- */
2918
- lockExpiresAt?: string;
2867
+ /**
2868
+ * High threshold for Canny detector
2869
+ */
2870
+ highThreshold?: number;
2919
2871
 
2920
- /**
2921
- * Low threshold for Canny detector
2922
- */
2923
- lowThreshold?: number;
2872
+ /**
2873
+ * (deprecated) Horizontal expansion ratio.
2874
+ */
2875
+ horizontalExpansionRatio?: number;
2924
2876
 
2925
- /**
2926
- * The mask used for the asset generation or editing
2927
- */
2928
- mask?: string;
2877
+ /**
2878
+ * The input image to process. Must reference an existing AssetId or be a data URL.
2879
+ */
2880
+ image?: string;
2929
2881
 
2930
- maxIterations?: number;
2882
+ /**
2883
+ * Strengthen the similarity to the original image during the upscale. Default:
2884
+ * optimized for your preset and style.
2885
+ */
2886
+ imageFidelity?: number;
2931
2887
 
2932
- /**
2933
- * Maximum threshold for Grayscale conversion
2934
- */
2935
- maxThreshold?: number;
2888
+ /**
2889
+ * Preserve the seamless properties of skybox or texture images. Input has to be of
2890
+ * same type (seamless).
2891
+ */
2892
+ imageType?: 'seamfull' | 'skybox' | 'texture';
2936
2893
 
2937
- /**
2938
- * Minimum threshold for Grayscale conversion
2939
- */
2940
- minThreshold?: number;
2894
+ /**
2895
+ * The id of the Inference describing how this image was generated
2896
+ */
2897
+ inferenceId?: string;
2941
2898
 
2942
- /**
2943
- * Modality to detect
2944
- */
2945
- modality?:
2946
- | 'canny'
2947
- | 'depth'
2948
- | 'grayscale'
2949
- | 'lineart_anime'
2950
- | 'mlsd'
2951
- | 'normal'
2952
- | 'pose'
2953
- | 'scribble'
2954
- | 'segmentation'
2955
- | 'sketch';
2899
+ /**
2900
+ * When set to `high`, allows to better preserve details from the input images in
2901
+ * the output. This is especially useful when using images that contain elements
2902
+ * like faces or logos that require accurate preservation in the generated image.
2903
+ *
2904
+ * You can provide multiple input images that will all be preserved with high
2905
+ * fidelity, but keep in mind that the first image will be preserved with richer
2906
+ * textures and finer details, so if you include elements such as faces, consider
2907
+ * placing them in the first image.
2908
+ *
2909
+ * Only available for the `gpt-image-1` model.
2910
+ */
2911
+ inputFidelity?: 'high' | 'low';
2956
2912
 
2957
- mode?: string;
2913
+ /**
2914
+ * Location of the input image in the output.
2915
+ */
2916
+ inputLocation?: 'bottom' | 'left' | 'middle' | 'right' | 'top';
2958
2917
 
2959
- /**
2960
- * The modelId used to generate this asset
2961
- */
2962
- modelId?: string;
2918
+ /**
2919
+ * To invert the relief
2920
+ */
2921
+ invert?: boolean;
2963
2922
 
2964
- /**
2965
- * The type of the generator used
2966
- */
2967
- modelType?:
2968
- | 'custom'
2969
- | 'elevenlabs-voice'
2970
- | 'flux.1'
2971
- | 'flux.1-composition'
2972
- | 'flux.1-kontext-dev'
2973
- | 'flux.1-kontext-lora'
2974
- | 'flux.1-krea-dev'
2975
- | 'flux.1-krea-lora'
2976
- | 'flux.1-lora'
2977
- | 'flux.1-pro'
2978
- | 'flux.1.1-pro-ultra'
2979
- | 'flux.2-dev-edit-lora'
2980
- | 'flux.2-dev-lora'
2981
- | 'flux.2-klein-4b-edit-lora'
2982
- | 'flux.2-klein-4b-lora'
2983
- | 'flux.2-klein-9b-edit-lora'
2984
- | 'flux.2-klein-9b-lora'
2985
- | 'flux.2-klein-base-4b-edit-lora'
2986
- | 'flux.2-klein-base-4b-lora'
2987
- | 'flux.2-klein-base-9b-edit-lora'
2988
- | 'flux.2-klein-base-9b-lora'
2989
- | 'flux1.1-pro'
2990
- | 'gpt-image-1'
2991
- | 'qwen-image-2512-lora'
2992
- | 'qwen-image-edit-2509-lora'
2993
- | 'qwen-image-edit-2511-lora'
2994
- | 'qwen-image-edit-lora'
2995
- | 'qwen-image-lora'
2996
- | 'sd-1_5'
2997
- | 'sd-1_5-composition'
2998
- | 'sd-1_5-lora'
2999
- | 'sd-xl'
3000
- | 'sd-xl-composition'
3001
- | 'sd-xl-lora'
3002
- | 'zimage-de-turbo-lora'
3003
- | 'zimage-lora'
3004
- | 'zimage-turbo-lora';
2923
+ /**
2924
+ * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
2925
+ */
2926
+ keypointThreshold?: number;
3005
2927
 
3006
- name?: string;
2928
+ layerDifference?: number;
3007
2929
 
3008
- nbMasks?: number;
2930
+ lengthThreshold?: number;
3009
2931
 
3010
- /**
3011
- * The negative prompt used to generate this asset
3012
- */
3013
- negativePrompt?: string;
2932
+ /**
2933
+ * The ISO timestamp when the lock on the canvas will expire
2934
+ */
2935
+ lockExpiresAt?: string;
3014
2936
 
3015
- /**
3016
- * Controls the influence of the negative prompt. Default 0 means the negative
3017
- * prompt has no effect. Higher values increase negative prompt influence. Must
3018
- * be > 0 if negativePrompt is provided.
3019
- */
3020
- negativePromptStrength?: number;
2937
+ /**
2938
+ * Low threshold for Canny detector
2939
+ */
2940
+ lowThreshold?: number;
3021
2941
 
3022
- /**
3023
- * The number of denoising steps for each image generation.
3024
- */
3025
- numInferenceSteps?: number;
2942
+ /**
2943
+ * The mask used for the asset generation or editing
2944
+ */
2945
+ mask?: string;
3026
2946
 
3027
- /**
3028
- * The number of outputs to generate.
3029
- */
3030
- numOutputs?: number;
2947
+ maxIterations?: number;
3031
2948
 
3032
- originalAssetId?: string;
2949
+ /**
2950
+ * Maximum threshold for Grayscale conversion
2951
+ */
2952
+ maxThreshold?: number;
3033
2953
 
3034
- outputIndex?: number;
2954
+ /**
2955
+ * Minimum threshold for Grayscale conversion
2956
+ */
2957
+ minThreshold?: number;
3035
2958
 
3036
- /**
3037
- * Overlap percentage for the output image.
3038
- */
3039
- overlapPercentage?: number;
2959
+ /**
2960
+ * Modality to detect
2961
+ */
2962
+ modality?:
2963
+ | 'canny'
2964
+ | 'depth'
2965
+ | 'grayscale'
2966
+ | 'lineart_anime'
2967
+ | 'mlsd'
2968
+ | 'normal'
2969
+ | 'pose'
2970
+ | 'scribble'
2971
+ | 'segmentation'
2972
+ | 'sketch';
3040
2973
 
3041
- /**
3042
- * Override the embeddings of the model. Only your prompt and negativePrompt will
3043
- * be used. Use with caution.
3044
- */
3045
- overrideEmbeddings?: boolean;
2974
+ mode?: string;
3046
2975
 
3047
- parentId?: string;
2976
+ /**
2977
+ * The modelId used to generate this asset
2978
+ */
2979
+ modelId?: string;
3048
2980
 
3049
- parentJobId?: string;
2981
+ /**
2982
+ * The type of the generator used
2983
+ */
2984
+ modelType?:
2985
+ | 'custom'
2986
+ | 'elevenlabs-voice'
2987
+ | 'flux.1'
2988
+ | 'flux.1-composition'
2989
+ | 'flux.1-kontext-dev'
2990
+ | 'flux.1-kontext-lora'
2991
+ | 'flux.1-krea-dev'
2992
+ | 'flux.1-krea-lora'
2993
+ | 'flux.1-lora'
2994
+ | 'flux.1-pro'
2995
+ | 'flux.1.1-pro-ultra'
2996
+ | 'flux.2-dev-edit-lora'
2997
+ | 'flux.2-dev-lora'
2998
+ | 'flux.2-klein-4b-edit-lora'
2999
+ | 'flux.2-klein-4b-lora'
3000
+ | 'flux.2-klein-9b-edit-lora'
3001
+ | 'flux.2-klein-9b-lora'
3002
+ | 'flux.2-klein-base-4b-edit-lora'
3003
+ | 'flux.2-klein-base-4b-lora'
3004
+ | 'flux.2-klein-base-9b-edit-lora'
3005
+ | 'flux.2-klein-base-9b-lora'
3006
+ | 'flux1.1-pro'
3007
+ | 'gpt-image-1'
3008
+ | 'qwen-image-2512-lora'
3009
+ | 'qwen-image-edit-2509-lora'
3010
+ | 'qwen-image-edit-2511-lora'
3011
+ | 'qwen-image-edit-lora'
3012
+ | 'qwen-image-lora'
3013
+ | 'sd-1_5'
3014
+ | 'sd-1_5-composition'
3015
+ | 'sd-1_5-lora'
3016
+ | 'sd-xl'
3017
+ | 'sd-xl-composition'
3018
+ | 'sd-xl-lora'
3019
+ | 'zimage-de-turbo-lora'
3020
+ | 'zimage-lora'
3021
+ | 'zimage-turbo-lora';
3050
3022
 
3051
- pathPrecision?: number;
3023
+ name?: string;
3052
3024
 
3053
- /**
3054
- * List of points (label, x, y) in the image where label = 0 for background and 1
3055
- * for object.
3056
- */
3057
- points?: Array<Array<number>>;
3025
+ nbMasks?: number;
3058
3026
 
3059
- /**
3060
- * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
3061
- */
3062
- polished?: number;
3027
+ /**
3028
+ * The negative prompt used to generate this asset
3029
+ */
3030
+ negativePrompt?: string;
3063
3031
 
3064
- preset?: string;
3032
+ /**
3033
+ * Controls the influence of the negative prompt. Default 0 means the negative
3034
+ * prompt has no effect. Higher values increase negative prompt influence. Must
3035
+ * be > 0 if negativePrompt is provided.
3036
+ */
3037
+ negativePromptStrength?: number;
3065
3038
 
3066
- progressPercent?: number;
3039
+ /**
3040
+ * The number of denoising steps for each image generation.
3041
+ */
3042
+ numInferenceSteps?: number;
3067
3043
 
3068
- /**
3069
- * The prompt that guided the asset generation or editing
3070
- */
3071
- prompt?: string;
3044
+ /**
3045
+ * The number of outputs to generate.
3046
+ */
3047
+ numOutputs?: number;
3072
3048
 
3073
- /**
3074
- * Increase the fidelity to the prompt during upscale. Default: optimized for your
3075
- * preset and style.
3076
- */
3077
- promptFidelity?: number;
3049
+ originalAssetId?: string;
3078
3050
 
3079
- /**
3080
- * How raised is the surface? 0 is flat like water, 1 is like a very rough rock
3081
- */
3082
- raised?: number;
3051
+ outputIndex?: number;
3083
3052
 
3084
- /**
3085
- * The reference images used for the asset generation or editing
3086
- */
3087
- referenceImages?: Array<string>;
3053
+ /**
3054
+ * Overlap percentage for the output image.
3055
+ */
3056
+ overlapPercentage?: number;
3088
3057
 
3089
- /**
3090
- * Additional refinement steps before scaling.
3091
- *
3092
- * If scalingFactor == 1, the refinement process will be applied (1 +
3093
- * refinementSteps) times. If scalingFactor > 1, the refinement process will be
3094
- * applied refinementSteps times.
3095
- */
3096
- refinementSteps?: number;
3058
+ /**
3059
+ * Override the embeddings of the model. Only your prompt and negativePrompt will
3060
+ * be used. Use with caution.
3061
+ */
3062
+ overrideEmbeddings?: boolean;
3097
3063
 
3098
- /**
3099
- * Remove background for Grayscale detector
3100
- */
3101
- removeBackground?: boolean;
3064
+ parentId?: string;
3102
3065
 
3103
- /**
3104
- * Size proportion of the input image in the output.
3105
- */
3106
- resizeOption?: number;
3066
+ parentJobId?: string;
3107
3067
 
3108
- /**
3109
- * Boolean to output the contours.
3110
- */
3111
- resultContours?: boolean;
3068
+ pathPrecision?: number;
3112
3069
 
3113
- /**
3114
- * Boolean to able output the cut out object.
3115
- */
3116
- resultImage?: boolean;
3070
+ /**
3071
+ * List of points (label, x, y) in the image where label = 0 for background and 1
3072
+ * for object.
3073
+ */
3074
+ points?: Array<Array<number>>;
3117
3075
 
3118
- /**
3119
- * Boolean to able return the masks (binary image) in the response.
3120
- */
3121
- resultMask?: boolean;
3076
+ /**
3077
+ * How polished is the surface? 0 is like a rough surface, 1 is like a mirror
3078
+ */
3079
+ polished?: number;
3122
3080
 
3123
- rootParentId?: string;
3081
+ preset?: string;
3124
3082
 
3125
- /**
3126
- * Save a flipbook of the texture. Deactivated when the input texture is larger
3127
- * than 2048x2048px
3128
- */
3129
- saveFlipbook?: boolean;
3083
+ progressPercent?: number;
3130
3084
 
3131
- /**
3132
- * Scaling factor (when `targetWidth` not specified)
3133
- */
3134
- scalingFactor?: number;
3085
+ /**
3086
+ * The prompt that guided the asset generation or editing
3087
+ */
3088
+ prompt?: string;
3135
3089
 
3136
- /**
3137
- * The scheduler used to generate this asset
3138
- */
3139
- scheduler?: string;
3090
+ /**
3091
+ * Increase the fidelity to the prompt during upscale. Default: optimized for your
3092
+ * preset and style.
3093
+ */
3094
+ promptFidelity?: number;
3140
3095
 
3141
- /**
3142
- * The seed used to generate this asset. <!> Can be a string or a number in some
3143
- * cases <!>.
3144
- */
3145
- seed?: string;
3096
+ /**
3097
+ * How raised is the surface? 0 is flat like water, 1 is like a very rough rock
3098
+ */
3099
+ raised?: number;
3146
3100
 
3147
- /**
3148
- * Sharpen tiles.
3149
- */
3150
- sharpen?: boolean;
3101
+ /**
3102
+ * The reference images used for the asset generation or editing
3103
+ */
3104
+ referenceImages?: Array<string>;
3151
3105
 
3152
- /**
3153
- * How shiny is the surface? 0 is like a matte surface, 1 is like a diamond
3154
- */
3155
- shiny?: number;
3106
+ /**
3107
+ * Additional refinement steps before scaling.
3108
+ *
3109
+ * If scalingFactor == 1, the refinement process will be applied (1 +
3110
+ * refinementSteps) times. If scalingFactor > 1, the refinement process will be
3111
+ * applied refinementSteps times.
3112
+ */
3113
+ refinementSteps?: number;
3156
3114
 
3157
- size?: number;
3115
+ /**
3116
+ * Remove background for Grayscale detector
3117
+ */
3118
+ removeBackground?: boolean;
3158
3119
 
3159
- /**
3160
- * Activate sketch detection instead of canny.
3161
- */
3162
- sketch?: boolean;
3120
+ /**
3121
+ * Size proportion of the input image in the output.
3122
+ */
3123
+ resizeOption?: number;
3163
3124
 
3164
- sourceProjectId?: string;
3125
+ /**
3126
+ * Boolean to output the contours.
3127
+ */
3128
+ resultContours?: boolean;
3165
3129
 
3166
- spliceThreshold?: number;
3130
+ /**
3131
+ * Boolean to able output the cut out object.
3132
+ */
3133
+ resultImage?: boolean;
3167
3134
 
3168
- /**
3169
- * The strength
3170
- *
3171
- * Only available for the `flux-kontext` LoRA model.
3172
- */
3173
- strength?: number;
3135
+ /**
3136
+ * Boolean to able return the masks (binary image) in the response.
3137
+ */
3138
+ resultMask?: boolean;
3174
3139
 
3175
- /**
3176
- * Strength for the input image structure preservation
3177
- */
3178
- structureFidelity?: number;
3140
+ rootParentId?: string;
3179
3141
 
3180
- /**
3181
- * The control image for structure. A canny detector will be applied to this image.
3182
- * Must reference an existing AssetId.
3183
- */
3184
- structureImage?: string;
3142
+ /**
3143
+ * Save a flipbook of the texture. Deactivated when the input texture is larger
3144
+ * than 2048x2048px
3145
+ */
3146
+ saveFlipbook?: boolean;
3185
3147
 
3186
- style?:
3187
- | '3d-cartoon'
3188
- | '3d-rendered'
3189
- | 'anime'
3190
- | 'cartoon'
3191
- | 'cinematic'
3192
- | 'claymation'
3193
- | 'cloud-skydome'
3194
- | 'comic'
3195
- | 'cyberpunk'
3196
- | 'enchanted'
3197
- | 'fantasy'
3198
- | 'ink'
3199
- | 'manga'
3200
- | 'manga-color'
3201
- | 'minimalist'
3202
- | 'neon-tron'
3203
- | 'oil-painting'
3204
- | 'pastel'
3205
- | 'photo'
3206
- | 'photography'
3207
- | 'psychedelic'
3208
- | 'retro-fantasy'
3209
- | 'scifi-concept-art'
3210
- | 'space'
3211
- | 'standard'
3212
- | 'whimsical';
3148
+ /**
3149
+ * Scaling factor (when `targetWidth` not specified)
3150
+ */
3151
+ scalingFactor?: number;
3213
3152
 
3214
- /**
3215
- * The higher the value the more it will look like the style image(s)
3216
- */
3217
- styleFidelity?: number;
3153
+ /**
3154
+ * The scheduler used to generate this asset
3155
+ */
3156
+ scheduler?: string;
3218
3157
 
3219
- /**
3220
- * List of style images. Most of the time, only one image is enough. It must be
3221
- * existing AssetIds.
3222
- */
3223
- styleImages?: Array<string>;
3158
+ /**
3159
+ * The seed used to generate this asset. <!> Can be a string or a number in some
3160
+ * cases <!>.
3161
+ */
3162
+ seed?: string;
3224
3163
 
3225
- /**
3226
- * Condition the influence of the style image(s). The higher the value, the more
3227
- * the style images will influence the upscaled image.
3228
- */
3229
- styleImagesFidelity?: number;
3164
+ /**
3165
+ * Sharpen tiles.
3166
+ */
3167
+ sharpen?: boolean;
3230
3168
 
3231
- /**
3232
- * The target height of the output image.
3233
- */
3234
- targetHeight?: number;
3169
+ /**
3170
+ * How shiny is the surface? 0 is like a matte surface, 1 is like a diamond
3171
+ */
3172
+ shiny?: number;
3235
3173
 
3236
- /**
3237
- * Target width for the upscaled image, take priority over scaling factor
3238
- */
3239
- targetWidth?: number;
3174
+ size?: number;
3240
3175
 
3241
- /**
3242
- * A textual description / keywords describing the object of interest.
3243
- */
3244
- text?: string;
3176
+ /**
3177
+ * Activate sketch detection instead of canny.
3178
+ */
3179
+ sketch?: boolean;
3245
3180
 
3246
- /**
3247
- * The asset to convert in texture maps. Must reference an existing AssetId.
3248
- */
3249
- texture?: string;
3181
+ sourceProjectId?: string;
3250
3182
 
3251
- /**
3252
- * The thumbnail of the canvas
3253
- */
3254
- thumbnail?: Metadata.Thumbnail;
3183
+ spliceThreshold?: number;
3255
3184
 
3256
- /**
3257
- * If set to true, during the upscaling process, the model will match tiles of the
3258
- * source image with tiles of the style image(s). This will result in a more
3259
- * coherent restyle. Works best with style images that have a similar composition.
3260
- */
3261
- tileStyle?: boolean;
3185
+ /**
3186
+ * The strength
3187
+ *
3188
+ * Only available for the `flux-kontext` LoRA model.
3189
+ */
3190
+ strength?: number;
3262
3191
 
3263
- trainingImage?: boolean;
3192
+ /**
3193
+ * Strength for the input image structure preservation
3194
+ */
3195
+ structureFidelity?: number;
3264
3196
 
3265
- /**
3266
- * (deprecated) Vertical expansion ratio.
3267
- */
3268
- verticalExpansionRatio?: number;
3197
+ /**
3198
+ * The control image for structure. A canny detector will be applied to this image.
3199
+ * Must reference an existing AssetId.
3200
+ */
3201
+ structureImage?: string;
3269
3202
 
3270
- /**
3271
- * The width of the rendered image.
3272
- */
3273
- width?: number;
3274
- }
3203
+ style?:
3204
+ | '3d-cartoon'
3205
+ | '3d-rendered'
3206
+ | 'anime'
3207
+ | 'cartoon'
3208
+ | 'cinematic'
3209
+ | 'claymation'
3210
+ | 'cloud-skydome'
3211
+ | 'comic'
3212
+ | 'cyberpunk'
3213
+ | 'enchanted'
3214
+ | 'fantasy'
3215
+ | 'ink'
3216
+ | 'manga'
3217
+ | 'manga-color'
3218
+ | 'minimalist'
3219
+ | 'neon-tron'
3220
+ | 'oil-painting'
3221
+ | 'pastel'
3222
+ | 'photo'
3223
+ | 'photography'
3224
+ | 'psychedelic'
3225
+ | 'retro-fantasy'
3226
+ | 'scifi-concept-art'
3227
+ | 'space'
3228
+ | 'standard'
3229
+ | 'whimsical';
3275
3230
 
3276
- export namespace Metadata {
3277
- export interface Concept {
3278
- /**
3279
- * The model ID (example: "model_eyVcnFJcR92BxBkz7N6g5w")
3280
- */
3281
- modelId: string;
3231
+ /**
3232
+ * The higher the value the more it will look like the style image(s)
3233
+ */
3234
+ styleFidelity?: number;
3282
3235
 
3283
- /**
3284
- * The scale of the model (example: 1.0) For Flux Kontext Prompt Editing, the scale
3285
- * is between 0 and 2.
3286
- */
3287
- scale: number;
3236
+ /**
3237
+ * List of style images. Most of the time, only one image is enough. It must be
3238
+ * existing AssetIds.
3239
+ */
3240
+ styleImages?: Array<string>;
3288
3241
 
3289
- /**
3290
- * The epoch of the model (example: "000001") Only available for Flux Lora Trained
3291
- * models
3292
- */
3293
- modelEpoch?: string;
3294
- }
3242
+ /**
3243
+ * Condition the influence of the style image(s). The higher the value, the more
3244
+ * the style images will influence the upscaled image.
3245
+ */
3246
+ styleImagesFidelity?: number;
3295
3247
 
3296
- /**
3297
- * The thumbnail of the canvas
3298
- */
3299
- export interface Thumbnail {
3300
- /**
3301
- * The AssetId of the image used as a thumbnail for the canvas (example:
3302
- * "asset_GTrL3mq4SXWyMxkOHRxlpw")
3303
- */
3304
- assetId: string;
3248
+ /**
3249
+ * The target height of the output image.
3250
+ */
3251
+ targetHeight?: number;
3305
3252
 
3306
- /**
3307
- * The url of the image used as a thumbnail for the canvas
3308
- */
3309
- url: string;
3310
- }
3311
- }
3253
+ /**
3254
+ * Target width for the upscaled image, take priority over scaling factor
3255
+ */
3256
+ targetWidth?: number;
3312
3257
 
3313
3258
  /**
3314
- * The properties of the asset, content may depend on the kind of asset returned
3259
+ * A textual description / keywords describing the object of interest.
3315
3260
  */
3316
- export interface Properties {
3317
- size: number;
3261
+ text?: string;
3318
3262
 
3319
- /**
3320
- * Number of animation frames if animations exist
3321
- */
3322
- animationFrameCount?: number;
3263
+ /**
3264
+ * The asset to convert in texture maps. Must reference an existing AssetId.
3265
+ */
3266
+ texture?: string;
3323
3267
 
3324
- /**
3325
- * Bitrate of the media in bits per second
3326
- */
3327
- bitrate?: number;
3268
+ /**
3269
+ * The thumbnail of the canvas
3270
+ */
3271
+ thumbnail?: Metadata.Thumbnail;
3328
3272
 
3329
- /**
3330
- * Number of bones if skeleton exists
3331
- */
3332
- boneCount?: number;
3273
+ /**
3274
+ * If set to true, during the upscaling process, the model will match tiles of the
3275
+ * source image with tiles of the style image(s). This will result in a more
3276
+ * coherent restyle. Works best with style images that have a similar composition.
3277
+ */
3278
+ tileStyle?: boolean;
3333
3279
 
3334
- /**
3335
- * Number of channels of the audio
3336
- */
3337
- channels?: number;
3280
+ trainingImage?: boolean;
3338
3281
 
3339
- /**
3340
- * Classification of the audio
3341
- */
3342
- classification?: 'effect' | 'interview' | 'music' | 'other' | 'sound' | 'speech' | 'text' | 'unknown';
3282
+ /**
3283
+ * (deprecated) Vertical expansion ratio.
3284
+ */
3285
+ verticalExpansionRatio?: number;
3343
3286
 
3344
- /**
3345
- * Codec name of the media
3346
- */
3347
- codecName?: string;
3287
+ /**
3288
+ * The width of the rendered image.
3289
+ */
3290
+ width?: number;
3291
+ }
3348
3292
 
3293
+ export namespace Metadata {
3294
+ export interface Concept {
3349
3295
  /**
3350
- * Description of the audio
3296
+ * The model ID (example: "model_eyVcnFJcR92BxBkz7N6g5w")
3351
3297
  */
3352
- description?: string;
3298
+ modelId: string;
3353
3299
 
3354
3300
  /**
3355
- * Bounding box dimensions [width, height, depth]
3301
+ * The scale of the model (example: 1.0) For Flux Kontext Prompt Editing, the scale
3302
+ * is between 0 and 2.
3356
3303
  */
3357
- dimensions?: Array<number>;
3304
+ scale: number;
3358
3305
 
3359
3306
  /**
3360
- * Duration of the media in seconds
3307
+ * The epoch of the model (example: "000001") Only available for Flux Lora Trained
3308
+ * models
3361
3309
  */
3362
- duration?: number;
3310
+ modelEpoch?: string;
3311
+ }
3363
3312
 
3313
+ /**
3314
+ * The thumbnail of the canvas
3315
+ */
3316
+ export interface Thumbnail {
3364
3317
  /**
3365
- * Number of faces/triangles in the mesh
3318
+ * The AssetId of the image used as a thumbnail for the canvas (example:
3319
+ * "asset_GTrL3mq4SXWyMxkOHRxlpw")
3366
3320
  */
3367
- faceCount?: number;
3321
+ assetId: string;
3368
3322
 
3369
3323
  /**
3370
- * Format of the mesh file (e.g. 'glb', etc.)
3324
+ * The url of the image used as a thumbnail for the canvas
3371
3325
  */
3372
- format?: string;
3326
+ url: string;
3327
+ }
3328
+ }
3373
3329
 
3374
- /**
3375
- * Frame rate of the video in frames per second
3376
- */
3377
- frameRate?: number;
3330
+ /**
3331
+ * The properties of the asset, content may depend on the kind of asset returned
3332
+ */
3333
+ export interface Properties {
3334
+ size: number;
3378
3335
 
3379
- /**
3380
- * Whether the mesh has animations
3381
- */
3382
- hasAnimations?: boolean;
3336
+ /**
3337
+ * Number of animation frames if animations exist
3338
+ */
3339
+ animationFrameCount?: number;
3383
3340
 
3384
- /**
3385
- * Whether the mesh has normal vectors
3386
- */
3387
- hasNormals?: boolean;
3341
+ /**
3342
+ * Bitrate of the media in bits per second
3343
+ */
3344
+ bitrate?: number;
3388
3345
 
3389
- /**
3390
- * Whether the mesh has bones/skeleton
3391
- */
3392
- hasSkeleton?: boolean;
3346
+ /**
3347
+ * Number of bones if skeleton exists
3348
+ */
3349
+ boneCount?: number;
3393
3350
 
3394
- /**
3395
- * Whether the mesh has UV coordinates
3396
- */
3397
- hasUVs?: boolean;
3351
+ /**
3352
+ * Number of channels of the audio
3353
+ */
3354
+ channels?: number;
3398
3355
 
3399
- height?: number;
3356
+ /**
3357
+ * Classification of the audio
3358
+ */
3359
+ classification?: 'effect' | 'interview' | 'music' | 'other' | 'sound' | 'speech' | 'text' | 'unknown';
3400
3360
 
3401
- /**
3402
- * Number of frames in the video
3403
- */
3404
- nbFrames?: number;
3361
+ /**
3362
+ * Codec name of the media
3363
+ */
3364
+ codecName?: string;
3405
3365
 
3406
- /**
3407
- * Sample rate of the media in Hz
3408
- */
3409
- sampleRate?: number;
3366
+ /**
3367
+ * Description of the audio
3368
+ */
3369
+ description?: string;
3410
3370
 
3411
- /**
3412
- * Transcription of the audio
3413
- */
3414
- transcription?: Properties.Transcription;
3371
+ /**
3372
+ * Bounding box dimensions [width, height, depth]
3373
+ */
3374
+ dimensions?: Array<number>;
3415
3375
 
3416
- /**
3417
- * Number of vertices in the mesh
3418
- */
3419
- vertexCount?: number;
3376
+ /**
3377
+ * Duration of the media in seconds
3378
+ */
3379
+ duration?: number;
3420
3380
 
3421
- width?: number;
3422
- }
3381
+ /**
3382
+ * Number of faces/triangles in the mesh
3383
+ */
3384
+ faceCount?: number;
3423
3385
 
3424
- export namespace Properties {
3425
- /**
3426
- * Transcription of the audio
3427
- */
3428
- export interface Transcription {
3429
- text: string;
3430
- }
3431
- }
3386
+ /**
3387
+ * Format of the mesh file (e.g. 'glb', etc.)
3388
+ */
3389
+ format?: string;
3432
3390
 
3433
3391
  /**
3434
- * The video asset's first frame.
3435
- *
3436
- * Contains the assetId and the url of the first frame.
3392
+ * Frame rate of the video in frames per second
3437
3393
  */
3438
- export interface FirstFrame {
3439
- assetId: string;
3394
+ frameRate?: number;
3440
3395
 
3441
- url: string;
3442
- }
3396
+ /**
3397
+ * Whether the mesh has animations
3398
+ */
3399
+ hasAnimations?: boolean;
3443
3400
 
3444
3401
  /**
3445
- * The video asset's last frame.
3446
- *
3447
- * Contains the assetId and the url of the last frame.
3402
+ * Whether the mesh has normal vectors
3448
3403
  */
3449
- export interface LastFrame {
3450
- assetId: string;
3404
+ hasNormals?: boolean;
3451
3405
 
3452
- url: string;
3453
- }
3406
+ /**
3407
+ * Whether the mesh has bones/skeleton
3408
+ */
3409
+ hasSkeleton?: boolean;
3454
3410
 
3455
3411
  /**
3456
- * The asset's preview.
3457
- *
3458
- * Contains the assetId and the url of the preview.
3412
+ * Whether the mesh has UV coordinates
3459
3413
  */
3460
- export interface Preview {
3461
- assetId: string;
3414
+ hasUVs?: boolean;
3462
3415
 
3463
- url: string;
3464
- }
3416
+ height?: number;
3465
3417
 
3466
3418
  /**
3467
- * The asset's thumbnail.
3468
- *
3469
- * Contains the assetId and the url of the thumbnail.
3419
+ * Number of frames in the video
3470
3420
  */
3471
- export interface Thumbnail {
3472
- assetId: string;
3421
+ nbFrames?: number;
3473
3422
 
3474
- url: string;
3423
+ /**
3424
+ * Sample rate of the media in Hz
3425
+ */
3426
+ sampleRate?: number;
3427
+
3428
+ /**
3429
+ * Transcription of the audio
3430
+ */
3431
+ transcription?: Properties.Transcription;
3432
+
3433
+ /**
3434
+ * Number of vertices in the mesh
3435
+ */
3436
+ vertexCount?: number;
3437
+
3438
+ width?: number;
3439
+ }
3440
+
3441
+ export namespace Properties {
3442
+ /**
3443
+ * Transcription of the audio
3444
+ */
3445
+ export interface Transcription {
3446
+ text: string;
3475
3447
  }
3476
3448
  }
3449
+
3450
+ /**
3451
+ * The video asset's first frame.
3452
+ *
3453
+ * Contains the assetId and the url of the first frame.
3454
+ */
3455
+ export interface FirstFrame {
3456
+ assetId: string;
3457
+
3458
+ url: string;
3459
+ }
3460
+
3461
+ /**
3462
+ * The video asset's last frame.
3463
+ *
3464
+ * Contains the assetId and the url of the last frame.
3465
+ */
3466
+ export interface LastFrame {
3467
+ assetId: string;
3468
+
3469
+ url: string;
3470
+ }
3471
+
3472
+ /**
3473
+ * The asset's preview.
3474
+ *
3475
+ * Contains the assetId and the url of the preview.
3476
+ */
3477
+ export interface Preview {
3478
+ assetId: string;
3479
+
3480
+ url: string;
3481
+ }
3482
+
3483
+ /**
3484
+ * The asset's thumbnail.
3485
+ *
3486
+ * Contains the assetId and the url of the thumbnail.
3487
+ */
3488
+ export interface Thumbnail {
3489
+ assetId: string;
3490
+
3491
+ url: string;
3492
+ }
3477
3493
  }
3478
3494
 
3479
3495
  export type AssetDeleteMultipleResponse = unknown;
@@ -3565,6 +3581,7 @@ export namespace AssetDuplicateResponse {
3565
3581
  | '3d:texture:normal'
3566
3582
  | '3d:texture:roughness'
3567
3583
  | 'audio2audio'
3584
+ | 'audio2video'
3568
3585
  | 'background-removal'
3569
3586
  | 'canvas'
3570
3587
  | 'canvas-drawing'
@@ -3626,6 +3643,7 @@ export namespace AssetDuplicateResponse {
3626
3643
  | 'upscale-video'
3627
3644
  | 'vectorization'
3628
3645
  | 'video23d'
3646
+ | 'video2audio'
3629
3647
  | 'video2img'
3630
3648
  | 'video2video'
3631
3649
  | 'voice-clone';
@@ -3748,6 +3766,7 @@ export namespace AssetDuplicateResponse {
3748
3766
  | '3d23d'
3749
3767
  | '3d23d-texture'
3750
3768
  | 'audio2audio'
3769
+ | 'audio2video'
3751
3770
  | 'background-removal'
3752
3771
  | 'canvas'
3753
3772
  | 'canvas-drawing'
@@ -3809,6 +3828,7 @@ export namespace AssetDuplicateResponse {
3809
3828
  | 'upscale-video'
3810
3829
  | 'vectorization'
3811
3830
  | 'video23d'
3831
+ | 'video2audio'
3812
3832
  | 'video2img'
3813
3833
  | 'video2video'
3814
3834
  | 'voice-clone';
@@ -4677,6 +4697,7 @@ export namespace AssetGetBulkResponse {
4677
4697
  | '3d:texture:normal'
4678
4698
  | '3d:texture:roughness'
4679
4699
  | 'audio2audio'
4700
+ | 'audio2video'
4680
4701
  | 'background-removal'
4681
4702
  | 'canvas'
4682
4703
  | 'canvas-drawing'
@@ -4738,6 +4759,7 @@ export namespace AssetGetBulkResponse {
4738
4759
  | 'upscale-video'
4739
4760
  | 'vectorization'
4740
4761
  | 'video23d'
4762
+ | 'video2audio'
4741
4763
  | 'video2img'
4742
4764
  | 'video2video'
4743
4765
  | 'voice-clone';
@@ -4860,6 +4882,7 @@ export namespace AssetGetBulkResponse {
4860
4882
  | '3d23d'
4861
4883
  | '3d23d-texture'
4862
4884
  | 'audio2audio'
4885
+ | 'audio2video'
4863
4886
  | 'background-removal'
4864
4887
  | 'canvas'
4865
4888
  | 'canvas-drawing'
@@ -4921,6 +4944,7 @@ export namespace AssetGetBulkResponse {
4921
4944
  | 'upscale-video'
4922
4945
  | 'vectorization'
4923
4946
  | 'video23d'
4947
+ | 'video2audio'
4924
4948
  | 'video2img'
4925
4949
  | 'video2video'
4926
4950
  | 'voice-clone';
@@ -5703,24 +5727,13 @@ export namespace AssetGetBulkResponse {
5703
5727
  }
5704
5728
 
5705
5729
  export interface AssetListSnapshotsResponse {
5706
- snapshots: Array<AssetListSnapshotsResponse.Snapshot>;
5707
-
5708
- /**
5709
- * A token to query the next page of snapshots
5710
- */
5711
- nextPaginationToken?: string;
5712
- }
5713
-
5714
- export namespace AssetListSnapshotsResponse {
5715
- export interface Snapshot {
5716
- authorId: string;
5730
+ authorId: string;
5717
5731
 
5718
- hash: string;
5732
+ hash: string;
5719
5733
 
5720
- rawData: string;
5734
+ rawData: string;
5721
5735
 
5722
- takenAt: number;
5723
- }
5736
+ takenAt: number;
5724
5737
  }
5725
5738
 
5726
5739
  export interface AssetLockResponse {
@@ -5815,6 +5828,7 @@ export namespace AssetLockResponse {
5815
5828
  | '3d:texture:normal'
5816
5829
  | '3d:texture:roughness'
5817
5830
  | 'audio2audio'
5831
+ | 'audio2video'
5818
5832
  | 'background-removal'
5819
5833
  | 'canvas'
5820
5834
  | 'canvas-drawing'
@@ -5876,6 +5890,7 @@ export namespace AssetLockResponse {
5876
5890
  | 'upscale-video'
5877
5891
  | 'vectorization'
5878
5892
  | 'video23d'
5893
+ | 'video2audio'
5879
5894
  | 'video2img'
5880
5895
  | 'video2video'
5881
5896
  | 'voice-clone';
@@ -5998,6 +6013,7 @@ export namespace AssetLockResponse {
5998
6013
  | '3d23d'
5999
6014
  | '3d23d-texture'
6000
6015
  | 'audio2audio'
6016
+ | 'audio2video'
6001
6017
  | 'background-removal'
6002
6018
  | 'canvas'
6003
6019
  | 'canvas-drawing'
@@ -6059,6 +6075,7 @@ export namespace AssetLockResponse {
6059
6075
  | 'upscale-video'
6060
6076
  | 'vectorization'
6061
6077
  | 'video23d'
6078
+ | 'video2audio'
6062
6079
  | 'video2img'
6063
6080
  | 'video2video'
6064
6081
  | 'voice-clone';
@@ -6927,6 +6944,7 @@ export namespace AssetUnlockResponse {
6927
6944
  | '3d:texture:normal'
6928
6945
  | '3d:texture:roughness'
6929
6946
  | 'audio2audio'
6947
+ | 'audio2video'
6930
6948
  | 'background-removal'
6931
6949
  | 'canvas'
6932
6950
  | 'canvas-drawing'
@@ -6988,6 +7006,7 @@ export namespace AssetUnlockResponse {
6988
7006
  | 'upscale-video'
6989
7007
  | 'vectorization'
6990
7008
  | 'video23d'
7009
+ | 'video2audio'
6991
7010
  | 'video2img'
6992
7011
  | 'video2video'
6993
7012
  | 'voice-clone';
@@ -7110,6 +7129,7 @@ export namespace AssetUnlockResponse {
7110
7129
  | '3d23d'
7111
7130
  | '3d23d-texture'
7112
7131
  | 'audio2audio'
7132
+ | 'audio2video'
7113
7133
  | 'background-removal'
7114
7134
  | 'canvas'
7115
7135
  | 'canvas-drawing'
@@ -7171,6 +7191,7 @@ export namespace AssetUnlockResponse {
7171
7191
  | 'upscale-video'
7172
7192
  | 'vectorization'
7173
7193
  | 'video23d'
7194
+ | 'video2audio'
7174
7195
  | 'video2img'
7175
7196
  | 'video2video'
7176
7197
  | 'voice-clone';
@@ -8053,6 +8074,7 @@ export namespace AssetUploadResponse {
8053
8074
  | '3d:texture:normal'
8054
8075
  | '3d:texture:roughness'
8055
8076
  | 'audio2audio'
8077
+ | 'audio2video'
8056
8078
  | 'background-removal'
8057
8079
  | 'canvas'
8058
8080
  | 'canvas-drawing'
@@ -8114,6 +8136,7 @@ export namespace AssetUploadResponse {
8114
8136
  | 'upscale-video'
8115
8137
  | 'vectorization'
8116
8138
  | 'video23d'
8139
+ | 'video2audio'
8117
8140
  | 'video2img'
8118
8141
  | 'video2video'
8119
8142
  | 'voice-clone';
@@ -8236,6 +8259,7 @@ export namespace AssetUploadResponse {
8236
8259
  | '3d23d'
8237
8260
  | '3d23d-texture'
8238
8261
  | 'audio2audio'
8262
+ | 'audio2video'
8239
8263
  | 'background-removal'
8240
8264
  | 'canvas'
8241
8265
  | 'canvas-drawing'
@@ -8297,6 +8321,7 @@ export namespace AssetUploadResponse {
8297
8321
  | 'upscale-video'
8298
8322
  | 'vectorization'
8299
8323
  | 'video23d'
8324
+ | 'video2audio'
8300
8325
  | 'video2img'
8301
8326
  | 'video2video'
8302
8327
  | 'voice-clone';
@@ -10078,7 +10103,7 @@ export interface AssetUpdateParams {
10078
10103
  thumbnail?: string;
10079
10104
  }
10080
10105
 
10081
- export interface AssetListParams {
10106
+ export interface AssetListParams extends AssetsCursorParams {
10082
10107
  /**
10083
10108
  * List assets generated by a specific author (the user that created the asset)
10084
10109
  */
@@ -10120,11 +10145,6 @@ export interface AssetListParams {
10120
10145
  */
10121
10146
  pageSize?: number;
10122
10147
 
10123
- /**
10124
- * A token you received in a previous request to query the next page of items
10125
- */
10126
- paginationToken?: string;
10127
-
10128
10148
  /**
10129
10149
  * List all the children assets that were generated from a specific parent asset
10130
10150
  */
@@ -10173,10 +10193,10 @@ export interface AssetListParams {
10173
10193
  * texture-edge, texture-ao, texture-albedo, image-prompt-editing, unknown, img23d,
10174
10194
  * txt23d, video23d, 3d23d, 3d23d-texture, 3d-texture, 3d-texture-mtl,
10175
10195
  * 3d-texture-albedo, 3d-texture-normal, 3d-texture-roughness, 3d-texture-metallic,
10176
- * img2video, txt2audio, audio2audio, voice-clone, video2video, video2img, txt2img,
10177
- * img2img, txt2video, uploaded, uploaded-video, uploaded-audio, uploaded-3d,
10178
- * uploaded-avatar, upscale-video, assets with a type starting with "inference-"
10179
- * will be returned
10196
+ * img2video, txt2audio, audio2audio, audio2video, video2audio, voice-clone,
10197
+ * video2video, video2img, txt2img, img2img, txt2video, uploaded, uploaded-video,
10198
+ * uploaded-audio, uploaded-3d, uploaded-avatar, upscale-video, assets with a type
10199
+ * starting with "inference-" will be returned
10180
10200
  */
10181
10201
  type?:
10182
10202
  | 'inference-txt2img'
@@ -10240,6 +10260,8 @@ export interface AssetListParams {
10240
10260
  | 'img2video'
10241
10261
  | 'txt2audio'
10242
10262
  | 'audio2audio'
10263
+ | 'audio2video'
10264
+ | 'video2audio'
10243
10265
  | 'voice-clone'
10244
10266
  | 'video2video'
10245
10267
  | 'video2img'
@@ -10270,9 +10292,9 @@ export interface AssetListParams {
10270
10292
  * texture-edge, texture-ao, texture-albedo, image-prompt-editing, unknown, img23d,
10271
10293
  * txt23d, video23d, 3d23d, 3d23d-texture, 3d-texture, 3d-texture-mtl,
10272
10294
  * 3d-texture-albedo, 3d-texture-normal, 3d-texture-roughness, 3d-texture-metallic,
10273
- * img2video, txt2audio, audio2audio, voice-clone, video2video, video2img, txt2img,
10274
- * img2img, txt2video, uploaded, uploaded-video, uploaded-audio, uploaded-3d,
10275
- * uploaded-avatar, upscale-video
10295
+ * img2video, txt2audio, audio2audio, audio2video, video2audio, voice-clone,
10296
+ * video2video, video2img, txt2img, img2img, txt2video, uploaded, uploaded-video,
10297
+ * uploaded-audio, uploaded-3d, uploaded-avatar, upscale-video
10276
10298
  */
10277
10299
  types?:
10278
10300
  | 'inference-txt2img'
@@ -10336,6 +10358,8 @@ export interface AssetListParams {
10336
10358
  | 'img2video'
10337
10359
  | 'txt2audio'
10338
10360
  | 'audio2audio'
10361
+ | 'audio2video'
10362
+ | 'video2audio'
10339
10363
  | 'voice-clone'
10340
10364
  | 'video2video'
10341
10365
  | 'video2img'
@@ -10395,17 +10419,12 @@ export interface AssetGetBulkParams {
10395
10419
  assetIds?: Array<string>;
10396
10420
  }
10397
10421
 
10398
- export interface AssetListSnapshotsParams {
10422
+ export interface AssetListSnapshotsParams extends SnapshotsCursorParams {
10399
10423
  /**
10400
10424
  * The number of items to return in the response. The default value is 10, maximum
10401
10425
  * value is 100, minimum value is 10
10402
10426
  */
10403
10427
  pageSize?: number;
10404
-
10405
- /**
10406
- * A token you received in a previous request to query the next page of items
10407
- */
10408
- paginationToken?: string;
10409
10428
  }
10410
10429
 
10411
10430
  export interface AssetLockParams {
@@ -10519,6 +10538,8 @@ export declare namespace Assets {
10519
10538
  type AssetUnlockResponse as AssetUnlockResponse,
10520
10539
  type AssetUpdateTagsResponse as AssetUpdateTagsResponse,
10521
10540
  type AssetUploadResponse as AssetUploadResponse,
10541
+ type AssetListResponsesAssetsCursor as AssetListResponsesAssetsCursor,
10542
+ type AssetListSnapshotsResponsesSnapshotsCursor as AssetListSnapshotsResponsesSnapshotsCursor,
10522
10543
  type AssetRetrieveParams as AssetRetrieveParams,
10523
10544
  type AssetUpdateParams as AssetUpdateParams,
10524
10545
  type AssetListParams as AssetListParams,