Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view

Large diffs are not rendered by default.

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
#nullable enable

namespace Ideogram
{
public partial interface IGenerateClient
{
/// <summary>
/// Edit with Ideogram V2<br/>
/// Edit one or more images using a text prompt. Provide images via file upload<br/>
/// or Ideogram image URLs, and describe the desired edit in your prompt.<br/>
/// Unlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the<br/>
/// prompt to determine what to change.<br/>
/// Supported image formats include JPEG, PNG, and WebP.<br/>
/// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
/// </summary>
/// <param name="request"></param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::Ideogram.ApiException"></exception>
global::System.Threading.Tasks.Task<global::Ideogram.EditImageGenerationResponseV3> PostEditImageV2V3Async(

global::Ideogram.EditImageV2RequestV3 request,
global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Edit with Ideogram V2<br/>
/// Edit one or more images using a text prompt. Provide images via file upload<br/>
/// or Ideogram image URLs, and describe the desired edit in your prompt.<br/>
/// Unlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the<br/>
/// prompt to determine what to change.<br/>
/// Supported image formats include JPEG, PNG, and WebP.<br/>
/// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
/// </summary>
/// <param name="prompt">
/// The prompt describing the desired edit.<br/>
/// Example: Change the background to a beach sunset.
/// </param>
/// <param name="images">
/// Images to edit (max 10 images, max size 10MB each); JPEG, WebP and PNG formats are supported.
/// </param>
/// <param name="imageUrls">
/// URLs to Ideogram images to use as references (max 10). Supports URLs from generation responses and image uploads. Alternative to uploading via the images field.
/// </param>
/// <param name="numImages">
/// The number of images to generate.<br/>
/// Default Value: 1
/// </param>
/// <param name="seed">
/// Random seed. Set for reproducible generation.<br/>
/// Example: 12345
/// </param>
/// <param name="magicPrompt">
/// Determine if MagicPrompt should be used in generating the request or not.<br/>
/// Example: ON
/// </param>
/// <param name="resolution">
/// The resolutions supported for Ideogram 3.0.<br/>
/// Example: 1280x800
/// </param>
/// <param name="aspectRatio">
/// The aspect ratio to use for image generation, which determines the image's resolution. Cannot be used in conjunction with resolution. Defaults to 1x1.
/// </param>
/// <param name="transparentBackground">
/// Whether the output should have a transparent background. Default false.<br/>
/// Default Value: false
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::System.InvalidOperationException"></exception>
global::System.Threading.Tasks.Task<global::Ideogram.EditImageGenerationResponseV3> PostEditImageV2V3Async(
string prompt,
global::System.Collections.Generic.IList<byte[]>? images = default,
global::System.Collections.Generic.IList<string>? imageUrls = default,
int? numImages = default,
int? seed = default,
global::Ideogram.MagicPromptOption? magicPrompt = default,
global::Ideogram.ResolutionV3? resolution = default,
global::Ideogram.AspectRatioV3? aspectRatio = default,
bool? transparentBackground = default,
global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,116 @@
#nullable enable

namespace Ideogram
{
public partial interface IGenerateClient
{
/// <summary>
/// Inpaint with Ideogram 3.0<br/>
/// Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image<br/>
/// should be edited, while the prompt and chosen style can further guide the edit.<br/>
/// Supported image formats include JPEG, PNG, and WebP.<br/>
/// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
/// </summary>
/// <param name="request"></param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::Ideogram.ApiException"></exception>
global::System.Threading.Tasks.Task<global::Ideogram.ImageGenerationResponseV3> PostInpaintImageV3Async(

global::Ideogram.EditImageRequestV3 request,
global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
/// <summary>
/// Inpaint with Ideogram 3.0<br/>
/// Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image<br/>
/// should be edited, while the prompt and chosen style can further guide the edit.<br/>
/// Supported image formats include JPEG, PNG, and WebP.<br/>
/// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
/// </summary>
/// <param name="image">
/// The image being edited (max size 10MB); only JPEG, WebP and PNG formats are supported at this time.
/// </param>
/// <param name="imagename">
/// The image being edited (max size 10MB); only JPEG, WebP and PNG formats are supported at this time.
/// </param>
/// <param name="mask">
/// A black and white image of the same size as the image being edited (max size 10MB). Black regions in the mask should match up with the regions of the image that you would like to edit; only JPEG, WebP and PNG formats are supported at this time.
/// </param>
/// <param name="maskname">
/// A black and white image of the same size as the image being edited (max size 10MB). Black regions in the mask should match up with the regions of the image that you would like to edit; only JPEG, WebP and PNG formats are supported at this time.
/// </param>
/// <param name="prompt">
/// The prompt used to describe the edited result.<br/>
/// Example: A photo of a cat.
/// </param>
/// <param name="magicPrompt">
/// Determine if MagicPrompt should be used in generating the request or not.<br/>
/// Example: ON
/// </param>
/// <param name="numImages">
/// The number of images to generate.<br/>
/// Default Value: 1
/// </param>
/// <param name="seed">
/// Random seed. Set for reproducible generation.<br/>
/// Example: 12345
/// </param>
/// <param name="renderingSpeed">
/// The rendering speed to use.<br/>
/// Default Value: DEFAULT
/// </param>
/// <param name="styleType">
/// The style type to generate with.<br/>
/// Default Value: GENERAL<br/>
/// Example: GENERAL
/// </param>
/// <param name="stylePreset">
/// A predefined style preset that applies a specific artistic style to the generated image.<br/>
/// Example: BRIGHT_ART
/// </param>
/// <param name="customModelUri">
/// A custom model URI in the format model/&lt;model_name&gt;/version/&lt;version_name&gt;. <br/>
/// When provided, the model version and style will be resolved from this URI, and style_type is not required.<br/>
/// Example: model/my-custom-model/version/1
/// </param>
/// <param name="colorPalette">
/// A color palette for generation, must EITHER be specified via one of the presets (name) or explicitly via hexadecimal representations of the color with optional weights (members). Not supported by V_1, V_1_TURBO, V_2A and V_2A_TURBO models.
/// </param>
/// <param name="styleCodes">
/// A list of 8 character hexadecimal codes representing the style of the image. Cannot be used in conjunction with style_reference_images or style_type.<br/>
/// Example: [AAFF5733, 0133FF57, DE3357FF]
/// </param>
/// <param name="styleReferenceImages">
/// A set of images to use as style references (maximum total size 10MB across all style references). The images should be in JPEG, PNG or WebP format.
/// </param>
/// <param name="characterReferenceImages">
/// Generations with character reference are subject to the character reference pricing. A set of images to use as character references (maximum total size 10MB across all character references), currently only supports 1 character reference image. The images should be in JPEG, PNG or WebP format.
/// </param>
/// <param name="characterReferenceImagesMask">
/// Optional masks for character reference images. When provided, must match the number of character_reference_images. Each mask should be a grayscale image of the same dimensions as the corresponding character reference image. The images should be in JPEG, PNG or WebP format.
/// </param>
/// <param name="requestOptions">Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.</param>
/// <param name="cancellationToken">The token to cancel the operation with</param>
/// <exception cref="global::System.InvalidOperationException"></exception>
global::System.Threading.Tasks.Task<global::Ideogram.ImageGenerationResponseV3> PostInpaintImageV3Async(
byte[] image,
string imagename,
byte[] mask,
string maskname,
string prompt,
global::Ideogram.MagicPromptOption? magicPrompt = default,
int? numImages = default,
int? seed = default,
global::Ideogram.RenderingSpeed? renderingSpeed = default,
global::Ideogram.StyleTypeV3? styleType = default,
global::Ideogram.StylePresetV3? stylePreset = default,
string? customModelUri = default,
global::Ideogram.ColorPaletteWithPresetNameOrMembers? colorPalette = default,
global::System.Collections.Generic.IList<string>? styleCodes = default,
global::System.Collections.Generic.IList<byte[]>? styleReferenceImages = default,
global::System.Collections.Generic.IList<byte[]>? characterReferenceImages = default,
global::System.Collections.Generic.IList<byte[]>? characterReferenceImagesMask = default,
global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
global::System.Threading.CancellationToken cancellationToken = default);
}
}
Original file line number Diff line number Diff line change
Expand Up @@ -209,6 +209,8 @@ namespace Ideogram
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.UpscaleFactor), TypeInfoPropertyName = "UpscaleFactor2")]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.RemixImageRequestV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.EditImageRequestV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.EditImageV2RequestV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.TryOnRequestV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ReframeImageRequestV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ReplaceBackgroundRequestV3))]
Expand All @@ -232,7 +234,9 @@ namespace Ideogram
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ImageGenerationResponseV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList<global::Ideogram.ImageGenerationObjectV3>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ImageGenerationObjectV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(bool))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.EditImageGenerationResponseV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList<global::Ideogram.EditImageGenerationObjectV3>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.EditImageGenerationObjectV3))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ImageGenerationResponseV4))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.IList<global::Ideogram.ImageGenerationObjectV4>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ImageGenerationObjectV4))]
Expand Down Expand Up @@ -384,6 +388,7 @@ namespace Ideogram
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.InternalTestingNestedObject>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.ImageObject>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.ImageGenerationObjectV3>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.EditImageGenerationObjectV3>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.ImageGenerationObjectV4>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.TextContainerV3>))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List<global::Ideogram.ImageLayerV3>))]
Expand Down
Loading