Models
List
Create
Get Bulk
Retrieve
Update
Delete
Copy
Download
Delete Images
Update Tags
Transfer
ModelsExpand Collapse
ModelListResponse { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelCreateResponse { model }
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelGetBulkResponse { models }
models: Array<Model>
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
capabilities?: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelRetrieveResponse { model }
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelUpdateResponse { model }
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelCopyResponse { model }
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelTransferResponse { model }
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
ModelsDescription
Retrieve
Update
ModelsExpand Collapse
DescriptionRetrieveResponse { description }
description: Description { assets, models, value }
assets: Array<Asset>The list of assets referenced by the Markdown {asset} tag in the description.
The list of assets referenced by the Markdown {asset} tag in the description.
The owner (project) ID (example: “proj_23tlk332lkht3kl2” or “team_dlkhgs23tlk3hlkth32lkht3kl2” for old teams)
properties: Properties { size, animationFrameCount, bitrate, 20 more } The properties of the asset, content may depend on the kind of asset returned
The properties of the asset, content may depend on the kind of asset returned
The original file url.
Contains the url of the original file. without any conversion. Only available for some specific video, audio and threeD assets. Is only specified if the given asset data has been replaced with a new file during the creation of the asset.
DescriptionUpdateResponse { description }
description: Description { assets, models, value }
assets: Array<Asset>The list of assets referenced by the Markdown {asset} tag in the description.
The list of assets referenced by the Markdown {asset} tag in the description.
The owner (project) ID (example: “proj_23tlk332lkht3kl2” or “team_dlkhgs23tlk3hlkth32lkht3kl2” for old teams)
properties: Properties { size, animationFrameCount, bitrate, 20 more } The properties of the asset, content may depend on the kind of asset returned
The properties of the asset, content may depend on the kind of asset returned
The original file url.
Contains the url of the original file. without any conversion. Only available for some specific video, audio and threeD assets. Is only specified if the given asset data has been replaced with a new file during the creation of the asset.
ModelsExamples
List
Update
ModelsExpand Collapse
ExampleListResponse { examples }
examples: Array<Example>
asset: Asset { id, authorId, collectionIds, 24 more } Asset generated by the inference
Asset generated by the inference
editCapabilities: Array<"DETECTION" | "GENERATIVE_FILL" | "PIXELATE" | 8 more>List of edit capabilities
List of edit capabilities
metadata: Metadata { kind, type, angular, 106 more } Metadata of the asset with some additional information
Metadata of the asset with some additional information
type: "3d-texture" | "3d-texture-albedo" | "3d-texture-metallic" | 72 moreThe type of the asset. Ex: ‘inference-txt2img’ will represent an asset generated from a text to image model
The type of the asset. Ex: ‘inference-txt2img’ will represent an asset generated from a text to image model
How angular is the surface? 0 is like a sphere, 1 is like a mechanical object
The optional aspect ratio given for the generation, only applicable for some models
Int to set between 0 and 255 for the opacity of the background in the result images.
The control image already processed by canny detector. Must reference an existing AssetId.
concepts?: Array<Concept>Flux Kontext LoRA to style the image.
For Flux Kontext Prompt Editing.
Flux Kontext LoRA to style the image. For Flux Kontext Prompt Editing.
Allow the generation of “hallucinations” during the upscale process, which adds additional details and deviates from the original image. Default: optimized for your preset and style.
Amount of decay in creativity over the upscale process. The lowest the value, the less the creativity will be preserved over the upscale process.
The control image processed by depth estimator. Must reference an existing AssetId.
Determine the scale at which the upscale process works.
- With a small value, the upscale works at the largest scale, resulting in fewer added details and more coherent images. Ideal for portraits, for example.
- With a large value, the upscale works at the smallest scale, resulting in more added details and more hallucinations. Ideal for landscapes, for example.
(info): A small value is slower and more expensive to run.
Apply extra control to the Skybox 360 geometry. The higher the value, the more the 360 geometry will influence the generated skybox image.
Use with caution. Default is adapted to the other parameters.
Strengthen the similarity to the original image during the upscale. Default: optimized for your preset and style.
imageType?: "seamfull" | "skybox" | "texture"Preserve the seamless properties of skybox or texture images. Input has to be of same type (seamless).
Preserve the seamless properties of skybox or texture images. Input has to be of same type (seamless).
inputFidelity?: "high" | "low"When set to high, allows to better preserve details from the input images in the output.
This is especially useful when using images that contain elements like faces or logos that
require accurate preservation in the generated image.
You can provide multiple input images that will all be preserved with high fidelity, but keep
in mind that the first image will be preserved with richer textures and finer details, so if
you include elements such as faces, consider placing them in the first image.
Only available for the gpt-image-1 model.
When set to high, allows to better preserve details from the input images in the output.
This is especially useful when using images that contain elements like faces or logos that
require accurate preservation in the generated image.
You can provide multiple input images that will all be preserved with high fidelity, but keep in mind that the first image will be preserved with richer textures and finer details, so if you include elements such as faces, consider placing them in the first image.
Only available for the gpt-image-1 model.
How polished is the surface? 0 is like a rough surface, 1 is like a mirror
modelType?: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe type of the generator used
The type of the generator used
Controls the influence of the negative prompt. Default 0 means the negative prompt has no effect. Higher values increase negative prompt influence. Must be > 0 if negativePrompt is provided.
Override the embeddings of the model. Only your prompt and negativePrompt will be used. Use with caution.
List of points (label, x, y) in the image where label = 0 for background and 1 for object.
How polished is the surface? 0 is like a rough surface, 1 is like a mirror
Increase the fidelity to the prompt during upscale. Default: optimized for your preset and style.
How raised is the surface? 0 is flat like water, 1 is like a very rough rock
Additional refinement steps before scaling.
If scalingFactor == 1, the refinement process will be applied (1 + refinementSteps) times. If scalingFactor > 1, the refinement process will be applied refinementSteps times.
Save a flipbook of the texture. Deactivated when the input texture is larger than 2048x2048px
The seed used to generate this asset. <!> Can be a string or a number in some cases <!>.
How shiny is the surface? 0 is like a matte surface, 1 is like a diamond
The control image for structure. A canny detector will be applied to this image. Must reference an existing AssetId.
The higher the value the more it will look like the style image(s)
List of style images. Most of the time, only one image is enough. It must be existing AssetIds.
Condition the influence of the style image(s). The higher the value, the more the style images will influence the upscaled image.
Target width for the upscaled image, take priority over scaling factor
The owner (project) ID (example: “proj_23tlk332lkht3kl2” or “team_dlkhgs23tlk3hlkth32lkht3kl2” for old teams)
properties: Properties { size, animationFrameCount, bitrate, 20 more } The properties of the asset, content may depend on the kind of asset returned
The properties of the asset, content may depend on the kind of asset returned
The description, it will contain in priority:
- the manual description
- the advanced captioning when the asset is used in training flow
- the automatic captioning
The embedding of the asset when requested.
Only available when an asset can be embedded (ie: not Detection maps)
firstFrame?: FirstFrame { assetId, url } The video asset’s first frame.
Contains the assetId and the url of the first frame.
The video asset’s first frame.
Contains the assetId and the url of the first frame.
lastFrame?: LastFrame { assetId, url } The video asset’s last frame.
Contains the assetId and the url of the last frame.
The video asset’s last frame.
Contains the assetId and the url of the last frame.
The original file url.
Contains the url of the original file. without any conversion. Only available for some specific video, audio and threeD assets. Is only specified if the given asset data has been replaced with a new file during the creation of the asset.
The output index of the asset within a job This index is an positive integer that starts at 0 It is used to differentiate between multiple outputs of the same job If the job has only one output, this index is 0
inferenceParameters?: InferenceParameters { prompt, type, aspectRatio, 36 more } The inference parameters used to generate the asset
The inference parameters used to generate the asset
Full text prompt including the model placeholder. (example: “an illustration of phoenix in a fantasy world, flying over a mountain, 8k, bokeh effect”)
type: "controlnet" | "controlnet_img2img" | "controlnet_inpaint" | 15 moreThe type of inference to use. Example: txt2img, img2img, etc.
Selecting the right type will condition the expected parameters.
Note: if model.type is sd-xl* or sd-1_5*, when using the "inpaint" inference type, Scenario determines the best available baseModel for a given modelId: one of `[“stable-diffusion-inpainting”, “stable-diffusion-xl-1.0-inpainting-0.1”] will be used.
The type of inference to use. Example: txt2img, img2img, etc.
Selecting the right type will condition the expected parameters.
Note: if model.type is sd-xl* or sd-1_5*, when using the "inpaint" inference type, Scenario determines the best available baseModel for a given modelId: one of `[“stable-diffusion-inpainting”, “stable-diffusion-xl-1.0-inpainting-0.1”] will be used.
aspectRatio?: "16:9" | "1:1" | "21:9" | 8 moreThe aspect ratio of the generated images. Only used for the model flux.1.1-pro-ultra.
The aspect ratio is a string formatted as “width:height” (example: “16:9”).
The aspect ratio of the generated images. Only used for the model flux.1.1-pro-ultra. The aspect ratio is a string formatted as “width:height” (example: “16:9”).
The base model to use for the inference. Only Flux LoRA models can use this parameter.
Allowed values are available in the model’s attribute: compliantModelIds
concepts?: Array<Concept>
Specifies how long the ControlNet guidance should be applied during the inference process.
Only available for Flux.1-dev based models.
The value represents the percentage of total inference steps where the ControlNet guidance is active. For example:
- 1.0: ControlNet guidance is applied during all inference steps
- 0.5: ControlNet guidance is only applied during the first half of inference steps
Default values:
- 0.5 for Canny modality
- 0.6 for all other modalities
Specifies the starting point of the ControlNet guidance during the inference process.
Only available for Flux.1-dev based models.
The value represents the percentage of total inference steps where the ControlNet guidance starts. For example:
- 0.0: ControlNet guidance starts at the beginning of the inference steps
- 0.5: ControlNet guidance starts at the middle of the inference steps
If set to true, the entire input image will likely change during inpainting. This results in faster inferences, but the output image will be harder to integrate if the input is just a small part of a larger image.
If false, the process uses the given image to detect the modality. If true (default), the process will not try to detect the modality of the given image.
For example:
with pose modality and false value, the process will detect the pose of people in the given image
with depth modality and false value, the process will detect the depth of the given image
with scribble modality and truevalue, the process will use the given image as a scribble
⚠️ For models of the FLUX schnell or dev families, this parameter is ignored. The modality detection is always disabled. ⚠️
Controls how closely the generated image follows the prompt. Higher values result in stronger adherence to the prompt. Default and allowed values depend on the model type:
- For Flux dev models, the default is 3.5 and allowed values are within [0, 10]
- For Flux pro models, the default is 3 and allowed values are within [2, 5]
- For SDXL models, the default is 6 and allowed values are within [0, 20]
- For SD1.5 models, the default is 7.5 and allowed values are within [0, 20]
The height of the generated images, must be a 8 multiple (within [64, 2048], default: 512)
If model.type is sd-xl, sd-xl-lora, sd-xl-composition the height must be within [512, 2048]
If model.type is sd-1_5, the height must be within [64, 1024]
If model.type is flux.1.1-pro-ultra, you can use the aspectRatio parameter instead
If set, generated assets will be hidden and not returned in the list of images of the inference or when listing assets (default: false)
IpAdapter scale factors (within [0.0, 1.0], default: 0.9).
ipAdapterType?: "character" | "style"The type of IP Adapter model to use. Must be one of [style, character], default to `style“
The type of IP Adapter model to use. Must be one of [style, character], default to `style“
The modality associated with the control image used for the generation: it can either be an object with a combination of maximum
For models of SD1.5 family:
- up to 3 modalities from
canny,pose,depth,lines,seg,scribble,lineart,normal-map,illusion - or one of the following presets:
character,landscape,city,interior.
For models of the SDXL family:
- up to 3 modalities from
canny,pose,depth,seg,illusion,scribble - or one of the following presets:
character,landscape.
For models of the FLUX schnell or dev families:
- one modality from:
canny,tile,depth,blur,pose,gray,low-quality
Optionally, you can associate a value to these modalities or presets. The value must be within ]0.0, 1.0].
Examples:
cannydepth:0.5,pose:1.0canny:0.5,depth:0.5,lines:0.3landscapecharacter:0.5illusion:1
Note: if you use a value that is not supported by the model family, this will result in an error.
The epoch of the model to use for the inference. Only available for Flux Lora Trained models.
The prompt not to guide the image generation, ignored when guidance < 1 (example: “((ugly face))”) For Flux based model (not Fast-Flux): requires negativePromptStrength > 0 and active only for inference types txt2img / img2img / controlnet.
Only applicable for flux-dev based models for txt2img, img2img, and controlnet inference types.
Controls the influence of the negative prompt. Default 0 means the negative prompt has no effect. Higher values increase negative prompt influence. Must be > 0 if negativePrompt is provided.
The number of denoising steps for each image generation (within [1, 150], default: 30)
Whether to use reference query for self attention’s context Only for “reference” inference type
scheduler?: "DDIMScheduler" | "DDPMScheduler" | "DEISMultistepScheduler" | 12 moreThe scheduler to use to override the default configured for the model. See detailed documentation for more details.
The scheduler to use to override the default configured for the model. See detailed documentation for more details.
Used to reproduce previous results. Default: randomly generated number.
Controls the noise intensity introduced to the input image, where a value of 1.0 completely erases the original image’s details. Available for img2img and inpainting. (within [0.01, 1.0], default: 0.75)
If style_fidelity=1.0, control more important, else if style_fidelity=0.0, prompt more important, else balanced Only for “reference” inference type
The width of the generated images, must be a 8 multiple (within [64, 2048], default: 512)
If model.type is sd-xl, sd-xl-lora, sd-xl-composition the width must be within [512, 2048]
If model.type is sd-1_5, the width must be within [64, 1024]
If model.type is flux.1.1-pro-ultra, you can use the aspectRatio parameter instead
job?: Job { createdAt, jobId, jobType, 8 more } The job associated with the asset
The job associated with the asset
jobType: "assets-download" | "canvas-export" | "caption" | 36 moreThe type of job
The type of job
metadata: Metadata { assetIds, error, flow, 6 more } Metadata of the job with some additional information
Metadata of the job with some additional information
flow?: Array<Flow>The flow of the job. Only available for workflow jobs.
The flow of the job. Only available for workflow jobs.
status: "failure" | "pending" | "processing" | 2 moreThe status of the node. Only available for WorkflowJob nodes.
The status of the node. Only available for WorkflowJob nodes.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs?: Array<Input>The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items?: Array<Array<Item>>The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref?: Ref { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref?: Ref { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
If the flow is part of a WorkflowJob, this is the jobId for the node. jobId is only available for nodes started. A node “Pending” for a running workflow job is not started.
logic?: Logic { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
ExampleUpdateResponse { examples }
examples: Array<Example>
asset: Asset { id, authorId, collectionIds, 24 more } Asset generated by the inference
Asset generated by the inference
editCapabilities: Array<"DETECTION" | "GENERATIVE_FILL" | "PIXELATE" | 8 more>List of edit capabilities
List of edit capabilities
metadata: Metadata { kind, type, angular, 106 more } Metadata of the asset with some additional information
Metadata of the asset with some additional information
type: "3d-texture" | "3d-texture-albedo" | "3d-texture-metallic" | 72 moreThe type of the asset. Ex: ‘inference-txt2img’ will represent an asset generated from a text to image model
The type of the asset. Ex: ‘inference-txt2img’ will represent an asset generated from a text to image model
How angular is the surface? 0 is like a sphere, 1 is like a mechanical object
The optional aspect ratio given for the generation, only applicable for some models
Int to set between 0 and 255 for the opacity of the background in the result images.
The control image already processed by canny detector. Must reference an existing AssetId.
concepts?: Array<Concept>Flux Kontext LoRA to style the image.
For Flux Kontext Prompt Editing.
Flux Kontext LoRA to style the image. For Flux Kontext Prompt Editing.
Allow the generation of “hallucinations” during the upscale process, which adds additional details and deviates from the original image. Default: optimized for your preset and style.
Amount of decay in creativity over the upscale process. The lowest the value, the less the creativity will be preserved over the upscale process.
The control image processed by depth estimator. Must reference an existing AssetId.
Determine the scale at which the upscale process works.
- With a small value, the upscale works at the largest scale, resulting in fewer added details and more coherent images. Ideal for portraits, for example.
- With a large value, the upscale works at the smallest scale, resulting in more added details and more hallucinations. Ideal for landscapes, for example.
(info): A small value is slower and more expensive to run.
Apply extra control to the Skybox 360 geometry. The higher the value, the more the 360 geometry will influence the generated skybox image.
Use with caution. Default is adapted to the other parameters.
Strengthen the similarity to the original image during the upscale. Default: optimized for your preset and style.
imageType?: "seamfull" | "skybox" | "texture"Preserve the seamless properties of skybox or texture images. Input has to be of same type (seamless).
Preserve the seamless properties of skybox or texture images. Input has to be of same type (seamless).
inputFidelity?: "high" | "low"When set to high, allows to better preserve details from the input images in the output.
This is especially useful when using images that contain elements like faces or logos that
require accurate preservation in the generated image.
You can provide multiple input images that will all be preserved with high fidelity, but keep
in mind that the first image will be preserved with richer textures and finer details, so if
you include elements such as faces, consider placing them in the first image.
Only available for the gpt-image-1 model.
When set to high, allows to better preserve details from the input images in the output.
This is especially useful when using images that contain elements like faces or logos that
require accurate preservation in the generated image.
You can provide multiple input images that will all be preserved with high fidelity, but keep in mind that the first image will be preserved with richer textures and finer details, so if you include elements such as faces, consider placing them in the first image.
Only available for the gpt-image-1 model.
How polished is the surface? 0 is like a rough surface, 1 is like a mirror
modelType?: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe type of the generator used
The type of the generator used
Controls the influence of the negative prompt. Default 0 means the negative prompt has no effect. Higher values increase negative prompt influence. Must be > 0 if negativePrompt is provided.
Override the embeddings of the model. Only your prompt and negativePrompt will be used. Use with caution.
List of points (label, x, y) in the image where label = 0 for background and 1 for object.
How polished is the surface? 0 is like a rough surface, 1 is like a mirror
Increase the fidelity to the prompt during upscale. Default: optimized for your preset and style.
How raised is the surface? 0 is flat like water, 1 is like a very rough rock
Additional refinement steps before scaling.
If scalingFactor == 1, the refinement process will be applied (1 + refinementSteps) times. If scalingFactor > 1, the refinement process will be applied refinementSteps times.
Save a flipbook of the texture. Deactivated when the input texture is larger than 2048x2048px
The seed used to generate this asset. <!> Can be a string or a number in some cases <!>.
How shiny is the surface? 0 is like a matte surface, 1 is like a diamond
The control image for structure. A canny detector will be applied to this image. Must reference an existing AssetId.
The higher the value the more it will look like the style image(s)
List of style images. Most of the time, only one image is enough. It must be existing AssetIds.
Condition the influence of the style image(s). The higher the value, the more the style images will influence the upscaled image.
Target width for the upscaled image, take priority over scaling factor
The owner (project) ID (example: “proj_23tlk332lkht3kl2” or “team_dlkhgs23tlk3hlkth32lkht3kl2” for old teams)
properties: Properties { size, animationFrameCount, bitrate, 20 more } The properties of the asset, content may depend on the kind of asset returned
The properties of the asset, content may depend on the kind of asset returned
The description, it will contain in priority:
- the manual description
- the advanced captioning when the asset is used in training flow
- the automatic captioning
The embedding of the asset when requested.
Only available when an asset can be embedded (ie: not Detection maps)
firstFrame?: FirstFrame { assetId, url } The video asset’s first frame.
Contains the assetId and the url of the first frame.
The video asset’s first frame.
Contains the assetId and the url of the first frame.
lastFrame?: LastFrame { assetId, url } The video asset’s last frame.
Contains the assetId and the url of the last frame.
The video asset’s last frame.
Contains the assetId and the url of the last frame.
The original file url.
Contains the url of the original file. without any conversion. Only available for some specific video, audio and threeD assets. Is only specified if the given asset data has been replaced with a new file during the creation of the asset.
The output index of the asset within a job This index is an positive integer that starts at 0 It is used to differentiate between multiple outputs of the same job If the job has only one output, this index is 0
inferenceParameters?: InferenceParameters { prompt, type, aspectRatio, 36 more } The inference parameters used to generate the asset
The inference parameters used to generate the asset
Full text prompt including the model placeholder. (example: “an illustration of phoenix in a fantasy world, flying over a mountain, 8k, bokeh effect”)
type: "controlnet" | "controlnet_img2img" | "controlnet_inpaint" | 15 moreThe type of inference to use. Example: txt2img, img2img, etc.
Selecting the right type will condition the expected parameters.
Note: if model.type is sd-xl* or sd-1_5*, when using the "inpaint" inference type, Scenario determines the best available baseModel for a given modelId: one of `[“stable-diffusion-inpainting”, “stable-diffusion-xl-1.0-inpainting-0.1”] will be used.
The type of inference to use. Example: txt2img, img2img, etc.
Selecting the right type will condition the expected parameters.
Note: if model.type is sd-xl* or sd-1_5*, when using the "inpaint" inference type, Scenario determines the best available baseModel for a given modelId: one of `[“stable-diffusion-inpainting”, “stable-diffusion-xl-1.0-inpainting-0.1”] will be used.
aspectRatio?: "16:9" | "1:1" | "21:9" | 8 moreThe aspect ratio of the generated images. Only used for the model flux.1.1-pro-ultra.
The aspect ratio is a string formatted as “width:height” (example: “16:9”).
The aspect ratio of the generated images. Only used for the model flux.1.1-pro-ultra. The aspect ratio is a string formatted as “width:height” (example: “16:9”).
The base model to use for the inference. Only Flux LoRA models can use this parameter.
Allowed values are available in the model’s attribute: compliantModelIds
concepts?: Array<Concept>
Specifies how long the ControlNet guidance should be applied during the inference process.
Only available for Flux.1-dev based models.
The value represents the percentage of total inference steps where the ControlNet guidance is active. For example:
- 1.0: ControlNet guidance is applied during all inference steps
- 0.5: ControlNet guidance is only applied during the first half of inference steps
Default values:
- 0.5 for Canny modality
- 0.6 for all other modalities
Specifies the starting point of the ControlNet guidance during the inference process.
Only available for Flux.1-dev based models.
The value represents the percentage of total inference steps where the ControlNet guidance starts. For example:
- 0.0: ControlNet guidance starts at the beginning of the inference steps
- 0.5: ControlNet guidance starts at the middle of the inference steps
If set to true, the entire input image will likely change during inpainting. This results in faster inferences, but the output image will be harder to integrate if the input is just a small part of a larger image.
If false, the process uses the given image to detect the modality. If true (default), the process will not try to detect the modality of the given image.
For example:
with pose modality and false value, the process will detect the pose of people in the given image
with depth modality and false value, the process will detect the depth of the given image
with scribble modality and truevalue, the process will use the given image as a scribble
⚠️ For models of the FLUX schnell or dev families, this parameter is ignored. The modality detection is always disabled. ⚠️
Controls how closely the generated image follows the prompt. Higher values result in stronger adherence to the prompt. Default and allowed values depend on the model type:
- For Flux dev models, the default is 3.5 and allowed values are within [0, 10]
- For Flux pro models, the default is 3 and allowed values are within [2, 5]
- For SDXL models, the default is 6 and allowed values are within [0, 20]
- For SD1.5 models, the default is 7.5 and allowed values are within [0, 20]
The height of the generated images, must be a 8 multiple (within [64, 2048], default: 512)
If model.type is sd-xl, sd-xl-lora, sd-xl-composition the height must be within [512, 2048]
If model.type is sd-1_5, the height must be within [64, 1024]
If model.type is flux.1.1-pro-ultra, you can use the aspectRatio parameter instead
If set, generated assets will be hidden and not returned in the list of images of the inference or when listing assets (default: false)
IpAdapter scale factors (within [0.0, 1.0], default: 0.9).
ipAdapterType?: "character" | "style"The type of IP Adapter model to use. Must be one of [style, character], default to `style“
The type of IP Adapter model to use. Must be one of [style, character], default to `style“
The modality associated with the control image used for the generation: it can either be an object with a combination of maximum
For models of SD1.5 family:
- up to 3 modalities from
canny,pose,depth,lines,seg,scribble,lineart,normal-map,illusion - or one of the following presets:
character,landscape,city,interior.
For models of the SDXL family:
- up to 3 modalities from
canny,pose,depth,seg,illusion,scribble - or one of the following presets:
character,landscape.
For models of the FLUX schnell or dev families:
- one modality from:
canny,tile,depth,blur,pose,gray,low-quality
Optionally, you can associate a value to these modalities or presets. The value must be within ]0.0, 1.0].
Examples:
cannydepth:0.5,pose:1.0canny:0.5,depth:0.5,lines:0.3landscapecharacter:0.5illusion:1
Note: if you use a value that is not supported by the model family, this will result in an error.
The epoch of the model to use for the inference. Only available for Flux Lora Trained models.
The prompt not to guide the image generation, ignored when guidance < 1 (example: “((ugly face))”) For Flux based model (not Fast-Flux): requires negativePromptStrength > 0 and active only for inference types txt2img / img2img / controlnet.
Only applicable for flux-dev based models for txt2img, img2img, and controlnet inference types.
Controls the influence of the negative prompt. Default 0 means the negative prompt has no effect. Higher values increase negative prompt influence. Must be > 0 if negativePrompt is provided.
The number of denoising steps for each image generation (within [1, 150], default: 30)
Whether to use reference query for self attention’s context Only for “reference” inference type
scheduler?: "DDIMScheduler" | "DDPMScheduler" | "DEISMultistepScheduler" | 12 moreThe scheduler to use to override the default configured for the model. See detailed documentation for more details.
The scheduler to use to override the default configured for the model. See detailed documentation for more details.
Used to reproduce previous results. Default: randomly generated number.
Controls the noise intensity introduced to the input image, where a value of 1.0 completely erases the original image’s details. Available for img2img and inpainting. (within [0.01, 1.0], default: 0.75)
If style_fidelity=1.0, control more important, else if style_fidelity=0.0, prompt more important, else balanced Only for “reference” inference type
The width of the generated images, must be a 8 multiple (within [64, 2048], default: 512)
If model.type is sd-xl, sd-xl-lora, sd-xl-composition the width must be within [512, 2048]
If model.type is sd-1_5, the width must be within [64, 1024]
If model.type is flux.1.1-pro-ultra, you can use the aspectRatio parameter instead
job?: Job { createdAt, jobId, jobType, 8 more } The job associated with the asset
The job associated with the asset
jobType: "assets-download" | "canvas-export" | "caption" | 36 moreThe type of job
The type of job
metadata: Metadata { assetIds, error, flow, 6 more } Metadata of the job with some additional information
Metadata of the job with some additional information
flow?: Array<Flow>The flow of the job. Only available for workflow jobs.
The flow of the job. Only available for workflow jobs.
status: "failure" | "pending" | "processing" | 2 moreThe status of the node. Only available for WorkflowJob nodes.
The status of the node. Only available for WorkflowJob nodes.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs?: Array<Input>The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items?: Array<Array<Item>>The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref?: Ref { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref?: Ref { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
If the flow is part of a WorkflowJob, this is the jobId for the node. jobId is only available for nodes started. A node “Pending” for a running workflow job is not started.
logic?: Logic { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
ModelsTrain
Trigger
Action
ModelsExpand Collapse
TrainTriggerResponse { job, model, creativeUnitsCost, creativeUnitsDiscount }
job: Job { createdAt, jobId, jobType, 8 more }
jobType: "assets-download" | "canvas-export" | "caption" | 36 moreThe type of job
The type of job
metadata: Metadata { assetIds, error, flow, 6 more } Metadata of the job with some additional information
Metadata of the job with some additional information
flow?: Array<Flow>The flow of the job. Only available for workflow jobs.
The flow of the job. Only available for workflow jobs.
status: "failure" | "pending" | "processing" | 2 moreThe status of the node. Only available for WorkflowJob nodes.
The status of the node. Only available for WorkflowJob nodes.
Fixed number of iterations for a ForEach node.
When set, the loop runs exactly count times regardless of array input.
When not set, the loop iterates over the resolved array input.
Only available for ForEach nodes.
The nodes that this node depends on. Only available for nodes that have dependencies. Mainly used for user approval nodes.
If true, the outputs of this node will be included in the workflow job’s final output.
Only applicable to producing nodes (custom-model, inference, etc.).
By default, only last nodes (nodes not referenced by other nodes) contribute to outputs.
Set this to true to also include intermediate nodes in the final output.
Note: This should only be set to true or left undefined.
inputs?: Array<Input>The inputs of the node.
The inputs of the node.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
items?: Array<Array<Item>>The configured items for inputs_array type inputs.
Each item is an array of SubNodeInput that need ref/value resolution.
Only available for inputs_array type.
The configured items for inputs_array type inputs. Each item is an array of SubNodeInput that need ref/value resolution. Only available for inputs_array type.
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref?: Ref { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
ref?: Ref { conditional, equal, name, node } The reference to another input or output of the same workflow.
Must have at least one of node or conditional.
The reference to another input or output of the same workflow. Must have at least one of node or conditional.
The conditional nodes to reference. If the conditional nodes are successful, the node will be successful. If the conditional nodes are skipped, the node will be skipped. Contains an array of node ids used to check the status of the nodes.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
Statically-configured items for a List node. The node outputs this array as-is when executed. Only available for List nodes. The values can be strings, numbers, or asset IDs.
Zero-based index of the iteration this node copy belongs to. Set on dynamically-created copies of loop body nodes.
If the flow is part of a WorkflowJob, this is the jobId for the node. jobId is only available for nodes started. A node “Pending” for a running workflow job is not started.
logic?: Logic { cases, default, transform } The logic of the node.
Only available for logic nodes.
The logic of the node. Only available for logic nodes.
IDs of the body template nodes that belong to this ForEach loop. At runtime these templates are cloned once per iteration and marked Skipped. Only available for ForEach nodes.
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component
TrainActionResponse { model }
model: Model { id, capabilities, collectionIds, 35 more }
capabilities: Array<"3d23d" | "audio2audio" | "audio2video" | 29 more>List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
List of model capabilities (example: [“txt2img”, “img2img”, “txt2img_ip_adapter”, …])
Whether the model is a custom model and can be used only with POST /generate/custom/{modelId} endpoint
type: "custom" | "elevenlabs-voice" | "flux.1" | 34 moreThe model type (example: “flux.1-lora”)
The model type (example: “flux.1-lora”)
accessRestrictions?: 0 | 100 | 25 | 2 moreThe access restrictions of the model
0: Free plan
25: Creator plan
50: Pro plan
75: Team plan
100: Enterprise plan
The access restrictions of the model 0: Free plan 25: Creator plan 50: Pro plan 75: Team plan 100: Enterprise plan
class?: Class { category, conceptPrompt, modelId, 5 more } The class of the model
The class of the model
List of base model IDs compliant with the model (example: [“flux.1-dev”, “flux.1-schnell”]) This attribute is mainly used for Flux LoRA models
concepts?: Array<Concept>The concepts is required for the type model: composition
The concepts is required for the type model: composition
The epoch of the model. Only available for Flux Lora Trained models. If not set, uses the final model epoch (latest)
inputs?: Array<Input>The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The inputs of the model. Only used for custom models. To retrieve this list, get it by modelId with GET /models/{modelId}
The allowed values for the input. For `string` or `number` types, creates a single-select dropdown. For `string_array` type, creates a multi-select dropdown.
backgroundBehavior?: "opaque" | "transparent"Specifies the background behavior for the input. Only available for `file` and `file_array`
input types with kind `image`.
Specifies the background behavior for the input. Only available for `file` and `file_array` input types with kind `image`.
Used to visually group inputs together in the UI. Inputs with the same group value appear consecutively in the UI.
The list of inputs which form an object within a container array. All inputs are the same as the current object. This is only available for type inputs_array inputs.
kind?: "3d" | "audio" | "document" | 4 moreThe asset kind of the input. Only taken into account for `file` and `file_array` input types.
If model provides multiple kinds,
the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The asset kind of the input. Only taken into account for `file` and `file_array` input types. If model provides multiple kinds, the input will be not able to create the asset on the flight on API side with dataurl without data:kind, prefix
The maximum allowed length for `string` inputs. Also applies to each item in `string_array`.
The maximum allowed file size in bytes. Only applies to `file` and `file_array` input types. Validated against `asset.properties.size` at job creation time.
The minimum allowed length for string inputs. Also applies to each item in `string_array`.
modelTypes?: Array<"custom" | "elevenlabs-voice" | "flux.1" | 34 more>The allowed model types for this input. Example: `[“flux.1-lora”]`.
Only available for `model_array` input type.
The allowed model types for this input. Example: `[“flux.1-lora”]`. Only available for `model_array` input type.
Whether this input represents a parent asset to assign to the produced assets. Only available for `file` and `file_array` input types.
For `file_array`, the parent asset is the first item in the array.
Whether the input is a prompt. When true, displays as a text area with prompt spark feature. Only available for `string` input type.
Whether the input is used with prompt spark. Only available for `string` input type.
required?: Required { always, conditionalValues, ifDefined, ifNotDefined } Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Set of rules that describes when this input is required:
- `always`: Input is always required
- `ifNotDefined`: Input is required when another specified input is not defined
- `ifDefined`: Input is required when another specified input is defined
- `conditionalValues`: Input is required when another input has a specific value
By default, the input is not required.
Makes this input required when another input has a specific value:
- Key: name of the input to check
- Value: operation and allowed values that trigger the requirement
The model keyword, this is a legacy parameter, please use conceptPrompt in parameters
parameters?: Parameters { age, batchSize, classPrompt, 29 more } The parameters of the model
The parameters of the model
Age group of the voice (for professional cloning)
Only available for ElevenLabs voice training
The batch size Less steps, and will increase the learning rate
Only available for Flux LoRA training
The prompt to specify images in the same class as provided instance images
Only available for SD15 training
Type of voice cloning: “instant” (fast) or “professional” (higher quality, requires captcha)
Only available for ElevenLabs voice training
The prompt with identifier specifying the instance (or subject) of the class (example: “a daiton dog”)
Default value varies depending on the model type:
- For SD1.5: “daiton” if no class is associated with the model
- For SDXL: “daiton”
- For Flux: ""
Gender of the voice (for professional cloning)
Only available for ElevenLabs voice training
Language of the audio samples (ISO 639-1 code)
Only available for ElevenLabs voice training
Initial learning rate (after the potential warmup period)
Default value varies depending on the model type:
- For SD1.5 and SDXL: 0.000005
- For Flux: 0.0001
Initial learning rate (after the potential warmup period) for the text encoder
Maximum [Flux LoRA: 0.001] Default [SDXL: 0.00005 | Flux LoRA: 0.00001] Minimum [SDXL: 0 | Flux LoRA: 0.000001]
Initial learning rate (after the potential warmup period) for the UNet
Only available for SDXL LoRA training
lrScheduler?: "constant" | "constant-with-warmup" | "cosine" | 3 moreThe scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
The scheduler type to use (default: “constant”)
Only available for SD15 and SDXL LoRA training
Maximum number of training steps to execute (default: varies depending on the model type)
For SDXL LoRA training, please use numTextTrainSteps and numUNetTrainSteps instead
Default value varies depending on the model type:
- For SD1.5: round((number of training images * 225) / 3)
- For SDXL: number of training images * 175
- For Flux: number of training images * 100
Maximum value varies depending on the model type:
- For SD1.5 and SDXL: [0, 40000]
- For Flux: [0, 10000]
The number of epochs to train for
Only available for Flux LoRA training
The number of times to repeat the training
Only available for Flux LoRA training
The number of training steps for the text encoder
Only available for SDXL LoRA training
The number of training steps for the UNet
Only available for SDXL LoRA training
Optimize the model training task for a specific type of input images. The available values are:
- “likeness”: optimize training for likeness or portrait (targets specific transformer blocks)
- “all”: train all transformer blocks
- “none”: train no specific transformer blocks
This parameter controls which double and single transformer blocks are trained during the LoRA training process.
Only available for Flux LoRA training
The weight of prior preservation loss
Only available for SD15 and SDXL LoRA training
Whether to random crop or center crop images before resizing to the working resolution
Only available for SD15 and SDXL LoRA training
Ratio of random crops
Only available for SD15 and SDXL LoRA training
Scale of random crops
Only available for SD15 and SDXL LoRA training
The dimension of the LoRA update matrices
Only available for SDXL (deprecated), Flux LoRA and Musubi training
Default value varies depending on the model type:
- For SDXL (deprecated): 64
- For Flux: 16
- For Musubi: 64
Each trainer enforces its own tighter limit (Flux LoRA: [2; 64], Musubi: [2; 128])
Whether to remove background noise from audio samples before cloning. When enabled, each sample must be at least 5 seconds long.
Only available for ElevenLabs voice training
The prompts to use for each epoch Only available for Flux LoRA training
The sample prompt images (AssetIds) paired with samplePrompts Only available for Flux LoRA training Must be the same length as samplePrompts
Whether to scale the learning rate
Note: Legacy parameter, will be ignored
Only available for SD15 and SDXL LoRA training
Used to reproduce previous results. Default: randomly generated number.
Only available for SD15 and SDXL LoRA training
Whether to train the text encoder or not
Example: For 100 steps and a value of 0.2, it means that the text encoder will be trained for 20 steps and then the UNet for 80 steps
Note: Legacy parameter, please use numTextTrainSteps and numUNetTrainSteps
Only available for SD15 and SDXL LoRA training
Validation frequency. Cannot be greater than maxTrainSteps value
Only available for SD15 and SDXL LoRA training
performanceStats?: PerformanceStats { variants, default } Aggregated performance stats
Aggregated performance stats
The model short description (example: “This model generates highly detailed cinematic scenes.”)
trainingImages?: Array<TrainingImage>The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
The URLs of the first 3 training images of the model. To retrieve the full set of images, get it by modelId
trainingProgress?: TrainingProgress { stage, updatedAt, position, 3 more } Additional information about the training progress of the model
Additional information about the training progress of the model
trainingStats?: TrainingStats { endedAt, queueDuration, startedAt, trainDuration } Additional information about the model’s training
Additional information about the model’s training
uiConfig?: UiConfig { inputProperties, lorasComponent, presets, 3 more } The UI configuration for the model
The UI configuration for the model
lorasComponent?: LorasComponent { label, modelInput, scaleInput, modelIdInput } Configuration for the loras component
Configuration for the loras component
resolutionComponent?: ResolutionComponent { heightInput, label, presets, widthInput } Configuration for the resolution component
Configuration for the resolution component