Skip to main content

CreateImageEditRequest

Struct CreateImageEditRequest 

Source
pub struct CreateImageEditRequest {
Show 17 fields pub image: ImageEditInput, pub prompt: String, pub mask: Option<ImageInput>, pub background: Option<ImageBackground>, pub model: ImageModel, pub n: Option<u8>, pub size: Option<ImageSize>, pub response_format: Option<ImageResponseFormat>, pub output_format: Option<ImageOutputFormat>, pub output_compression: Option<u8>, pub user: Option<String>, pub input_fidelity: Option<InputFidelity>, pub stream: Option<bool>, pub partial_images: Option<u8>, pub quality: Option<ImageQuality>, pub safety_identifier: Option<String>, pub markup: Option<ImageInput>,
}
Available on crate feature image-types only.

Fields§

§image: ImageEditInput

The image(s) to edit. Must be a supported image file or an array of images.

For the GPT image models (gpt-image-1-mini, gpt-image-1.5, gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, and gpt-image-2.5-flare-2026-09-08), each image should be a png, webp, or jpg file less than 50MB. You can provide up to 16 images. chatgpt-image-latest follows the same input constraints as GPT image models.

§prompt: String

A text description of the desired image(s). The maximum length is 32000 characters for the GPT image models.

§mask: Option<ImageInput>

An additional image whose fully transparent areas (e.g. where alpha is zero) indicate where image should be edited. If there are multiple images provided, the mask will be applied on the first image. Must be a valid PNG file, less than 4MB, and have the same dimensions as image.

§background: Option<ImageBackground>

Set the background of the generated image(s). This parameter is only supported for the GPT image models. Must be one of transparent, opaque, or auto (default value). When auto is used, the model will automatically determine the best background for the image.

Transparent backgrounds are available for supported GPT Image models. For gpt-image-2 and gpt-image-2-2026-04-21, this support is in preview. When using transparent, set the output format to png or webp.

§model: ImageModel

The GPT image model to use for image editing (gpt-image-1-mini, gpt-image-1.5, gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, gpt-image-2.5-flare-2026-09-08, or chatgpt-image-latest).

gpt-image-1 was shut down on October 23, 2026. Use gpt-image-2.5-sunburst or gpt-image-2.5-flare instead.

§n: Option<u8>

The number of images to generate. Must be between 1 and 10.

§size: Option<ImageSize>

The size of the generated images. Defaults to auto. For gpt-image-2, gpt-image-2-2026-04-21, gpt-image-2.5-sunburst, gpt-image-2.5-sunburst-2026-09-08, gpt-image-2.5-flare, and gpt-image-2.5-flare-2026-09-08, arbitrary resolutions are supported as WIDTHxHEIGHT strings, for example 1536x864. Width and height must both be divisible by 16 and the requested aspect ratio must be between 1:3 and 3:1. Resolutions above 2560x1440 are experimental, and the maximum supported resolution is 3840x2160. The requested size must also satisfy the model’s current pixel and edge limits. The standard sizes 1024x1024, 1536x1024, and 1024x1536 are supported by the GPT image models; auto is supported for models that allow automatic sizing.

§response_format: Option<ImageResponseFormat>
👎Deprecated:

Legacy response format parameter for retired image models. Unsupported for GPT image models, which always return base64-encoded images.

Legacy response format parameter for retired image models. Unsupported for GPT image models, which always return base64-encoded images.

§output_format: Option<ImageOutputFormat>

The format in which the generated images are returned. This parameter is only supported for the GPT image models. Must be one of png, jpeg, or webp. The default value is png.

§output_compression: Option<u8>

The compression level (0-100%) for the generated images. This parameter is only supported for the GPT image models with the webp or jpeg output formats, and defaults to 100.

§user: Option<String>
👎Deprecated:

Deprecated: use safety_identifier instead.

Deprecated: use safety_identifier instead. This parameter remains accepted for backward compatibility and is used when safety_identifier is omitted, null, or empty. Learn more.

§input_fidelity: Option<InputFidelity>

Control how much effort the model will exert to match the style and features, especially facial features, of input images. This parameter is only supported for the GPT image models. Unsupported for gpt-image-1-mini. Supports high and low. Defaults to low.

§stream: Option<bool>

Edit the image in streaming mode. Defaults to false. See the Image generation guide for more information.

§partial_images: Option<u8>

The number of partial images to generate. This parameter is used for streaming responses that return partial images. Value must be between 0 and 3. When set to 0, the response will be a single image sent in one streaming event. Note that the final image may be sent before the full number of partial images are generated if the full image is generated more quickly.

§quality: Option<ImageQuality>

The quality of the image that will be generated. GPT image models support quality levels through max; dall-e-2 supports standard. Defaults to auto.

§safety_identifier: Option<String>

A stable identifier for an end user in your organization, used for safety monitoring and abuse detection. Hash a username or email address to avoid sending identifying information. A non-empty value takes precedence over the deprecated user parameter. If omitted, null, or empty, the API uses user when available. Learn more.

§markup: Option<ImageInput>

A transparent PNG overlaid on the first image to guide the edit. Must match that image’s dimensions after orientation and contain transparent pixels. Supports GPT Image 2.5. Cannot be combined with mask.

Trait Implementations§

Source§

impl AsyncTryFrom<CreateImageEditRequest> for Form

Available on crate feature _api only.
Source§

type Error = OpenAIError

The type returned in the event of a conversion error.
Source§

async fn try_from(request: CreateImageEditRequest) -> Result<Self, Self::Error>

Performs the conversion.
Source§

impl Clone for CreateImageEditRequest

Source§

fn clone(&self) -> Self

Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§

fn clone_from(&mut self, source: &Self)

Performs copy-assignment from source. Read more
Source§

impl Debug for CreateImageEditRequest

Source§

fn fmt(&self, f: &mut Formatter<'_>) -> Result

Formats the value using the given formatter. Read more
Source§

impl Default for CreateImageEditRequest

Source§

fn default() -> Self

Returns the “default value” for a type. Read more
Source§

impl PartialEq for CreateImageEditRequest

Source§

fn eq(&self, other: &Self) -> bool

Equality operator ==. Read more
1.0.0 (const: unstable) · Source§

fn ne(&self, other: &Rhs) -> bool

Inequality operator !=. Read more
Source§

impl StructuralPartialEq for CreateImageEditRequest

Auto Trait Implementations§

Blanket Implementations§

Source§

impl<T> Any for T
where T: 'static + ?Sized,

Source§

fn type_id(&self) -> TypeId

Gets the TypeId of self. Read more
Source§

impl<T> Borrow<T> for T
where T: ?Sized,

Source§

fn borrow(&self) -> &T

Immutably borrows from an owned value. Read more
Source§

impl<T> BorrowMut<T> for T
where T: ?Sized,

Source§

fn borrow_mut(&mut self) -> &mut T

Mutably borrows from an owned value. Read more
Source§

impl<T> CloneToUninit for T
where T: Clone,

Source§

unsafe fn clone_to_uninit(&self, dest: *mut u8)

🔬This is a nightly-only experimental API. (clone_to_uninit)
Performs copy-assignment from self to dest. Read more
Source§

impl<T> From<T> for T

Source§

fn from(t: T) -> T

Returns the argument unchanged.

Source§

impl<T> Instrument for T

Source§

fn instrument(self, span: Span) -> Instrumented<Self> ⓘ

Instruments this type with the provided Span, returning an Instrumented wrapper. Read more
Source§

fn in_current_span(self) -> Instrumented<Self> ⓘ

Instruments this type with the current Span, returning an Instrumented wrapper. Read more
Source§

impl<T, U> Into<U> for T
where U: From<T>,

Source§

fn into(self) -> U

Calls U::from(self).

That is, this conversion is whatever the implementation of From<T> for U chooses to do.

Source§

impl<T> MaybeSend for T
where T: Send,

Source§

impl<T> PolicyExt for T
where T: ?Sized,

Source§

fn and<P, B, E>(self, other: P) -> And<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow only if self and other return Action::Follow. Read more
Source§

fn or<P, B, E>(self, other: P) -> Or<T, P>
where T: Sized + Policy<B, E>, P: Policy<B, E>,

Create a new Policy that returns Action::Follow if either self or other returns Action::Follow. Read more
Source§

impl<T> Same for T

Source§

type Output = T

Should always be Self
Source§

impl<T> ToOwned for T
where T: Clone,

Source§

type Owned = T

The resulting type after obtaining ownership.
Source§

fn to_owned(&self) -> T

Creates owned data from borrowed data, usually by cloning. Read more
Source§

fn clone_into(&self, target: &mut T)

Uses borrowed data to replace owned data, usually by cloning. Read more
Source§

impl<T, U> TryFrom<U> for T
where U: Into<T>,

Source§

type Error = !

The type returned in the event of a conversion error.
Source§

fn try_from(value: U) -> Result<T, !>

Performs the conversion.
Source§

impl<T, U> TryInto<U> for T
where U: TryFrom<T>,

Source§

type Error = <U as TryFrom<T>>::Error

The type returned in the event of a conversion error.
Source§

fn try_into(self) -> Result<U, <U as TryFrom<T>>::Error>

Performs the conversion.
Source§

impl<V, T> VZip<V> for T
where V: MultiLane<T>,

Source§

fn vzip(self) -> V

Source§

impl<T> WithSubscriber for T

Source§

fn with_subscriber<S>(self, subscriber: S) -> WithDispatch<Self> ⓘ
where S: Into<Dispatch>,

Attaches the provided Subscriber to this type, returning a WithDispatch wrapper. Read more
Source§

fn with_current_subscriber(self) -> WithDispatch<Self> ⓘ

Attaches the current default Subscriber to this type, returning a WithDispatch wrapper. Read more