diff --git a/src/libs/Ideogram/Generated/Ideogram.GenerateClient.PostEditImageV2V3.g.cs b/src/libs/Ideogram/Generated/Ideogram.GenerateClient.PostEditImageV2V3.g.cs
new file mode 100644
index 0000000..6031d7b
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.GenerateClient.PostEditImageV2V3.g.cs
@@ -0,0 +1,739 @@
+
+#nullable enable
+
+namespace Ideogram
+{
+ public partial class GenerateClient
+ {
+
+
+ private static readonly global::Ideogram.EndPointSecurityRequirement s_PostEditImageV2V3SecurityRequirement0 =
+ new global::Ideogram.EndPointSecurityRequirement
+ {
+ Authorizations = new global::Ideogram.EndPointAuthorizationRequirement[]
+ { new global::Ideogram.EndPointAuthorizationRequirement
+ {
+ Type = "Http",
+ SchemeId = "HttpBearer",
+ Location = "Header",
+ Name = "Bearer",
+ FriendlyName = "Bearer",
+ },
+ },
+ };
+ private static readonly global::Ideogram.EndPointSecurityRequirement[] s_PostEditImageV2V3SecurityRequirements =
+ new global::Ideogram.EndPointSecurityRequirement[]
+ { s_PostEditImageV2V3SecurityRequirement0,
+ };
+ partial void PreparePostEditImageV2V3Arguments(
+ global::System.Net.Http.HttpClient httpClient,
+ global::Ideogram.EditImageV2RequestV3 request);
+ partial void PreparePostEditImageV2V3Request(
+ global::System.Net.Http.HttpClient httpClient,
+ global::System.Net.Http.HttpRequestMessage httpRequestMessage,
+ global::Ideogram.EditImageV2RequestV3 request);
+ partial void ProcessPostEditImageV2V3Response(
+ global::System.Net.Http.HttpClient httpClient,
+ global::System.Net.Http.HttpResponseMessage httpResponseMessage);
+
+ partial void ProcessPostEditImageV2V3ResponseContent(
+ global::System.Net.Http.HttpClient httpClient,
+ global::System.Net.Http.HttpResponseMessage httpResponseMessage,
+ ref string content);
+
+ ///
+ /// Edit with Ideogram V2
+ /// Edit one or more images using a text prompt. Provide images via file upload
+ /// or Ideogram image URLs, and describe the desired edit in your prompt.
+ /// Unlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the
+ /// prompt to determine what to change.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ public async global::System.Threading.Tasks.Task PostEditImageV2V3Async(
+
+ global::Ideogram.EditImageV2RequestV3 request,
+ global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
+ global::System.Threading.CancellationToken cancellationToken = default)
+ {
+ request = request ?? throw new global::System.ArgumentNullException(nameof(request));
+
+ PrepareArguments(
+ client: HttpClient);
+ PreparePostEditImageV2V3Arguments(
+ httpClient: HttpClient,
+ request: request);
+
+
+ var __authorizations = global::Ideogram.EndPointSecurityResolver.ResolveAuthorizations(
+ availableAuthorizations: Authorizations,
+ securityRequirements: s_PostEditImageV2V3SecurityRequirements,
+ operationName: "PostEditImageV2V3Async");
+
+ using var __timeoutCancellationTokenSource = global::Ideogram.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ cancellationToken: cancellationToken);
+ var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken;
+ var __effectiveReadResponseAsString = global::Ideogram.AutoSDKRequestOptionsSupport.GetReadResponseAsString(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ fallbackValue: ReadResponseAsString);
+ var __maxAttempts = global::Ideogram.AutoSDKRequestOptionsSupport.GetMaxAttempts(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ supportsRetry: true);
+
+ global::System.Net.Http.HttpRequestMessage __CreateHttpRequest()
+ {
+ var __pathBuilder = new global::Ideogram.PathBuilder(
+ path: "/v1/ideogram-v3/instructional-edit",
+ baseUri: HttpClient.BaseAddress);
+ var __path = __pathBuilder.ToString();
+ __path = global::Ideogram.AutoSDKRequestOptionsSupport.AppendQueryParameters(
+ path: __path,
+ clientParameters: Options.QueryParameters,
+ requestParameters: requestOptions?.QueryParameters);
+ var __httpRequest = new global::System.Net.Http.HttpRequestMessage(
+ method: global::System.Net.Http.HttpMethod.Post,
+ requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute));
+#if NET6_0_OR_GREATER
+ __httpRequest.Version = global::System.Net.HttpVersion.Version11;
+ __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher;
+#endif
+
+ foreach (var __authorization in __authorizations)
+ {
+ if (__authorization.Type == "Http" ||
+ __authorization.Type == "OAuth2" ||
+ __authorization.Type == "OpenIdConnect")
+ {
+ __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue(
+ scheme: __authorization.Name,
+ parameter: __authorization.Value);
+ }
+ else if (__authorization.Type == "ApiKey" &&
+ __authorization.Location == "Header")
+ {
+ __httpRequest.Headers.Add(__authorization.Name, __authorization.Value);
+ }
+ }
+ var __httpRequestContent = new global::System.Net.Http.MultipartFormDataContent();
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.Prompt}"),
+ name: "\"prompt\"");
+ if (request.Images != default)
+ {
+
+ for (var __iImages = 0; __iImages < request.Images.Count; __iImages++)
+ {
+ var __contentImages = new global::System.Net.Http.ByteArrayContent(request.Images[__iImages]);
+ __httpRequestContent.Add(
+ content: __contentImages,
+ name: "\"images\"",
+ fileName: $"\"file{__iImages}.bin\"");
+ if (__contentImages.Headers.ContentDisposition != null)
+ {
+ __contentImages.Headers.ContentDisposition.FileNameStar = null;
+ }
+ }
+ }
+ if (request.ImageUrls != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"[{string.Join(",", global::System.Linq.Enumerable.Select(request.ImageUrls, x => x))}]"),
+ name: "\"image_urls\"");
+ }
+ if (request.NumImages != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.NumImages}"),
+ name: "\"num_images\"");
+ }
+ if (request.Seed != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.Seed}"),
+ name: "\"seed\"");
+ }
+ if (request.MagicPrompt != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.MagicPrompt?.ToValueString()}"),
+ name: "\"magic_prompt\"");
+ }
+ if (request.Resolution != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.Resolution?.ToValueString()}"),
+ name: "\"resolution\"");
+ }
+ if (request.AspectRatio != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.AspectRatio?.ToValueString()}"),
+ name: "\"aspect_ratio\"");
+ }
+ if (request.TransparentBackground != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.TransparentBackground}"),
+ name: "\"transparent_background\"");
+ }
+ __httpRequest.Content = __httpRequestContent;
+ global::Ideogram.AutoSDKRequestOptionsSupport.ApplyHeaders(
+ request: __httpRequest,
+ clientHeaders: Options.Headers,
+ requestHeaders: requestOptions?.Headers);
+
+ PrepareRequest(
+ client: HttpClient,
+ request: __httpRequest);
+ PreparePostEditImageV2V3Request(
+ httpClient: HttpClient,
+ httpRequestMessage: __httpRequest,
+ request: request);
+
+ return __httpRequest;
+ }
+
+ global::System.Net.Http.HttpRequestMessage? __httpRequest = null;
+ global::System.Net.Http.HttpResponseMessage? __response = null;
+ var __attemptNumber = 0;
+ try
+ {
+ for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++)
+ {
+ __attemptNumber = __attempt;
+ __httpRequest = __CreateHttpRequest();
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostEditImageV2V3",
+ methodName: "PostEditImageV2V3Async",
+ pathTemplate: "\"/v1/ideogram-v3/instructional-edit\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: null,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attempt,
+ maxAttempts: __maxAttempts,
+ willRetry: false,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ try
+ {
+ __response = await HttpClient.SendAsync(
+ request: __httpRequest,
+ completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead,
+ cancellationToken: __effectiveCancellationToken).ConfigureAwait(false);
+ }
+ catch (global::System.Net.Http.HttpRequestException __exception)
+ {
+ var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested;
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterErrorAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostEditImageV2V3",
+ methodName: "PostEditImageV2V3Async",
+ pathTemplate: "\"/v1/ideogram-v3/instructional-edit\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: null,
+ exception: __exception,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attempt,
+ maxAttempts: __maxAttempts,
+ willRetry: __willRetry,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ if (!__willRetry)
+ {
+ throw;
+ }
+
+ __httpRequest.Dispose();
+ __httpRequest = null;
+ await global::Ideogram.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ cancellationToken: __effectiveCancellationToken).ConfigureAwait(false);
+ continue;
+ }
+
+ if (__response != null &&
+ __attempt < __maxAttempts &&
+ global::Ideogram.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode))
+ {
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterErrorAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostEditImageV2V3",
+ methodName: "PostEditImageV2V3Async",
+ pathTemplate: "\"/v1/ideogram-v3/instructional-edit\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: __response,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attempt,
+ maxAttempts: __maxAttempts,
+ willRetry: true,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ __response.Dispose();
+ __response = null;
+ __httpRequest.Dispose();
+ __httpRequest = null;
+ await global::Ideogram.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ cancellationToken: __effectiveCancellationToken).ConfigureAwait(false);
+ continue;
+ }
+
+ break;
+ }
+
+ if (__response == null)
+ {
+ throw new global::System.InvalidOperationException("No response received.");
+ }
+
+ using (__response)
+ {
+
+ ProcessResponse(
+ client: HttpClient,
+ response: __response);
+ ProcessPostEditImageV2V3Response(
+ httpClient: HttpClient,
+ httpResponseMessage: __response);
+ if (__response.IsSuccessStatusCode)
+ {
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostEditImageV2V3",
+ methodName: "PostEditImageV2V3Async",
+ pathTemplate: "\"/v1/ideogram-v3/instructional-edit\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: __response,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attemptNumber,
+ maxAttempts: __maxAttempts,
+ willRetry: false,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ }
+ else
+ {
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterErrorAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostEditImageV2V3",
+ methodName: "PostEditImageV2V3Async",
+ pathTemplate: "\"/v1/ideogram-v3/instructional-edit\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: __response,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attemptNumber,
+ maxAttempts: __maxAttempts,
+ willRetry: false,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ }
+ //
+ if ((int)__response.StatusCode == 400)
+ {
+ string? __content_400 = null;
+ global::System.Exception? __exception_400 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_400 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_400 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_400,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_400,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ //
+ if ((int)__response.StatusCode == 401)
+ {
+ string? __content_401 = null;
+ global::System.Exception? __exception_401 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_401 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_401 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_401,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_401,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ //
+ if ((int)__response.StatusCode == 402)
+ {
+ string? __content_402 = null;
+ global::System.Exception? __exception_402 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_402 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_402 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_402 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_402 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_402,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_402,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ // Prompt or provided image failed safety checks.
+ if ((int)__response.StatusCode == 422)
+ {
+ string? __content_422 = null;
+ global::System.Exception? __exception_422 = null;
+ global::Ideogram.GenerateImageSafetyError? __value_422 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ __value_422 = global::Ideogram.GenerateImageSafetyError.FromJson(__content_422, JsonSerializerContext);
+ }
+ else
+ {
+ __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+
+ __value_422 = global::Ideogram.GenerateImageSafetyError.FromJson(__content_422, JsonSerializerContext);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_422 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_422 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_422,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_422,
+ ResponseObject = __value_422,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ //
+ if ((int)__response.StatusCode == 429)
+ {
+ string? __content_429 = null;
+ global::System.Exception? __exception_429 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_429 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_429 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_429 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_429 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_429,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_429,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ //
+ if ((int)__response.StatusCode == 503)
+ {
+ string? __content_503 = null;
+ global::System.Exception? __exception_503 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_503 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_503 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_503 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_503 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_503,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_503,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+
+ if (__effectiveReadResponseAsString)
+ {
+ var __content = await __response.Content.ReadAsStringAsync(
+ #if NET5_0_OR_GREATER
+ __effectiveCancellationToken
+ #endif
+ ).ConfigureAwait(false);
+
+ ProcessResponseContent(
+ client: HttpClient,
+ response: __response,
+ content: ref __content);
+ ProcessPostEditImageV2V3ResponseContent(
+ httpClient: HttpClient,
+ httpResponseMessage: __response,
+ content: ref __content);
+
+ try
+ {
+ __response.EnsureSuccessStatusCode();
+
+ return
+ global::Ideogram.EditImageGenerationResponseV3.FromJson(__content, JsonSerializerContext) ??
+ throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" ");
+ }
+ catch (global::System.Exception __ex)
+ {
+ throw new global::Ideogram.ApiException(
+ message: __content ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __ex,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ }
+ else
+ {
+ try
+ {
+ __response.EnsureSuccessStatusCode();
+ using var __content = await __response.Content.ReadAsStreamAsync(
+ #if NET5_0_OR_GREATER
+ __effectiveCancellationToken
+ #endif
+ ).ConfigureAwait(false);
+
+ return
+ await global::Ideogram.EditImageGenerationResponseV3.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ??
+ throw new global::System.InvalidOperationException("Response deserialization failed.");
+ }
+ catch (global::System.Exception __ex)
+ {
+ string? __content = null;
+ try
+ {
+ __content = await __response.Content.ReadAsStringAsync(
+ #if NET5_0_OR_GREATER
+ __effectiveCancellationToken
+ #endif
+ ).ConfigureAwait(false);
+ }
+ catch (global::System.Exception)
+ {
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __ex,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ }
+
+ }
+ }
+ finally
+ {
+ __httpRequest?.Dispose();
+ }
+ }
+ ///
+ /// Edit with Ideogram V2
+ /// Edit one or more images using a text prompt. Provide images via file upload
+ /// or Ideogram image URLs, and describe the desired edit in your prompt.
+ /// Unlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the
+ /// prompt to determine what to change.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// The prompt describing the desired edit.
+ /// Example: Change the background to a beach sunset.
+ ///
+ ///
+ /// Images to edit (max 10 images, max size 10MB each); JPEG, WebP and PNG formats are supported.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// The number of images to generate.
+ /// Default Value: 1
+ ///
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ ///
+ /// Determine if MagicPrompt should be used in generating the request or not.
+ /// Example: ON
+ ///
+ ///
+ /// The resolutions supported for Ideogram 3.0.
+ /// Example: 1280x800
+ ///
+ ///
+ /// The aspect ratio to use for image generation, which determines the image's resolution. Cannot be used in conjunction with resolution. Defaults to 1x1.
+ ///
+ ///
+ /// Whether the output should have a transparent background. Default false.
+ /// Default Value: false
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ public async global::System.Threading.Tasks.Task PostEditImageV2V3Async(
+ string prompt,
+ global::System.Collections.Generic.IList? images = default,
+ global::System.Collections.Generic.IList? 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)
+ {
+ var __request = new global::Ideogram.EditImageV2RequestV3
+ {
+ Prompt = prompt,
+ Images = images,
+ ImageUrls = imageUrls,
+ NumImages = numImages,
+ Seed = seed,
+ MagicPrompt = magicPrompt,
+ Resolution = resolution,
+ AspectRatio = aspectRatio,
+ TransparentBackground = transparentBackground,
+ };
+
+ return await PostEditImageV2V3Async(
+ request: __request,
+ requestOptions: requestOptions,
+ cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.GenerateClient.PostInpaintImageV3.g.cs b/src/libs/Ideogram/Generated/Ideogram.GenerateClient.PostInpaintImageV3.g.cs
new file mode 100644
index 0000000..11a386f
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.GenerateClient.PostInpaintImageV3.g.cs
@@ -0,0 +1,778 @@
+
+#nullable enable
+
+namespace Ideogram
+{
+ public partial class GenerateClient
+ {
+
+
+ private static readonly global::Ideogram.EndPointSecurityRequirement s_PostInpaintImageV3SecurityRequirement0 =
+ new global::Ideogram.EndPointSecurityRequirement
+ {
+ Authorizations = new global::Ideogram.EndPointAuthorizationRequirement[]
+ { new global::Ideogram.EndPointAuthorizationRequirement
+ {
+ Type = "Http",
+ SchemeId = "HttpBearer",
+ Location = "Header",
+ Name = "Bearer",
+ FriendlyName = "Bearer",
+ },
+ },
+ };
+ private static readonly global::Ideogram.EndPointSecurityRequirement[] s_PostInpaintImageV3SecurityRequirements =
+ new global::Ideogram.EndPointSecurityRequirement[]
+ { s_PostInpaintImageV3SecurityRequirement0,
+ };
+ partial void PreparePostInpaintImageV3Arguments(
+ global::System.Net.Http.HttpClient httpClient,
+ global::Ideogram.EditImageRequestV3 request);
+ partial void PreparePostInpaintImageV3Request(
+ global::System.Net.Http.HttpClient httpClient,
+ global::System.Net.Http.HttpRequestMessage httpRequestMessage,
+ global::Ideogram.EditImageRequestV3 request);
+ partial void ProcessPostInpaintImageV3Response(
+ global::System.Net.Http.HttpClient httpClient,
+ global::System.Net.Http.HttpResponseMessage httpResponseMessage);
+
+ partial void ProcessPostInpaintImageV3ResponseContent(
+ global::System.Net.Http.HttpClient httpClient,
+ global::System.Net.Http.HttpResponseMessage httpResponseMessage,
+ ref string content);
+
+ ///
+ /// Inpaint with Ideogram 3.0
+ /// Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image
+ /// should be edited, while the prompt and chosen style can further guide the edit.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ public async global::System.Threading.Tasks.Task PostInpaintImageV3Async(
+
+ global::Ideogram.EditImageRequestV3 request,
+ global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
+ global::System.Threading.CancellationToken cancellationToken = default)
+ {
+ request = request ?? throw new global::System.ArgumentNullException(nameof(request));
+
+ PrepareArguments(
+ client: HttpClient);
+ PreparePostInpaintImageV3Arguments(
+ httpClient: HttpClient,
+ request: request);
+
+
+ var __authorizations = global::Ideogram.EndPointSecurityResolver.ResolveAuthorizations(
+ availableAuthorizations: Authorizations,
+ securityRequirements: s_PostInpaintImageV3SecurityRequirements,
+ operationName: "PostInpaintImageV3Async");
+
+ using var __timeoutCancellationTokenSource = global::Ideogram.AutoSDKRequestOptionsSupport.CreateTimeoutCancellationTokenSource(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ cancellationToken: cancellationToken);
+ var __effectiveCancellationToken = __timeoutCancellationTokenSource?.Token ?? cancellationToken;
+ var __effectiveReadResponseAsString = global::Ideogram.AutoSDKRequestOptionsSupport.GetReadResponseAsString(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ fallbackValue: ReadResponseAsString);
+ var __maxAttempts = global::Ideogram.AutoSDKRequestOptionsSupport.GetMaxAttempts(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ supportsRetry: true);
+
+ global::System.Net.Http.HttpRequestMessage __CreateHttpRequest()
+ {
+ var __pathBuilder = new global::Ideogram.PathBuilder(
+ path: "/v1/ideogram-v3/inpaint",
+ baseUri: HttpClient.BaseAddress);
+ var __path = __pathBuilder.ToString();
+ __path = global::Ideogram.AutoSDKRequestOptionsSupport.AppendQueryParameters(
+ path: __path,
+ clientParameters: Options.QueryParameters,
+ requestParameters: requestOptions?.QueryParameters);
+ var __httpRequest = new global::System.Net.Http.HttpRequestMessage(
+ method: global::System.Net.Http.HttpMethod.Post,
+ requestUri: new global::System.Uri(__path, global::System.UriKind.RelativeOrAbsolute));
+#if NET6_0_OR_GREATER
+ __httpRequest.Version = global::System.Net.HttpVersion.Version11;
+ __httpRequest.VersionPolicy = global::System.Net.Http.HttpVersionPolicy.RequestVersionOrHigher;
+#endif
+
+ foreach (var __authorization in __authorizations)
+ {
+ if (__authorization.Type == "Http" ||
+ __authorization.Type == "OAuth2" ||
+ __authorization.Type == "OpenIdConnect")
+ {
+ __httpRequest.Headers.Authorization = new global::System.Net.Http.Headers.AuthenticationHeaderValue(
+ scheme: __authorization.Name,
+ parameter: __authorization.Value);
+ }
+ else if (__authorization.Type == "ApiKey" &&
+ __authorization.Location == "Header")
+ {
+ __httpRequest.Headers.Add(__authorization.Name, __authorization.Value);
+ }
+ }
+ var __httpRequestContent = new global::System.Net.Http.MultipartFormDataContent();
+ var __contentImage = new global::System.Net.Http.ByteArrayContent(request.Image ?? global::System.Array.Empty());
+ __httpRequestContent.Add(
+ content: __contentImage,
+ name: "\"image\"",
+ fileName: request.Imagename != null ? $"\"{request.Imagename}\"" : string.Empty);
+ if (__contentImage.Headers.ContentDisposition != null)
+ {
+ __contentImage.Headers.ContentDisposition.FileNameStar = null;
+ }
+ var __contentMask = new global::System.Net.Http.ByteArrayContent(request.Mask ?? global::System.Array.Empty());
+ __httpRequestContent.Add(
+ content: __contentMask,
+ name: "\"mask\"",
+ fileName: request.Maskname != null ? $"\"{request.Maskname}\"" : string.Empty);
+ if (__contentMask.Headers.ContentDisposition != null)
+ {
+ __contentMask.Headers.ContentDisposition.FileNameStar = null;
+ }
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.Prompt}"),
+ name: "\"prompt\"");
+ if (request.MagicPrompt != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.MagicPrompt?.ToValueString()}"),
+ name: "\"magic_prompt\"");
+ }
+ if (request.NumImages != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.NumImages}"),
+ name: "\"num_images\"");
+ }
+ if (request.Seed != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.Seed}"),
+ name: "\"seed\"");
+ }
+ if (request.RenderingSpeed != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.RenderingSpeed?.ToValueString()}"),
+ name: "\"rendering_speed\"");
+ }
+ if (request.StyleType != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.StyleType?.ToValueString()}"),
+ name: "\"style_type\"");
+ }
+ if (request.StylePreset != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.StylePreset?.ToValueString()}"),
+ name: "\"style_preset\"");
+ }
+ if (request.CustomModelUri != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"{request.CustomModelUri}"),
+ name: "\"custom_model_uri\"");
+ }
+ if (request.ColorPalette != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent(request.ColorPalette?.ToString() ?? string.Empty),
+ name: "\"color_palette\"");
+ }
+ if (request.StyleCodes != default)
+ {
+
+ __httpRequestContent.Add(
+ content: new global::System.Net.Http.StringContent($"[{string.Join(",", global::System.Linq.Enumerable.Select(request.StyleCodes, x => x))}]"),
+ name: "\"style_codes\"");
+ }
+ if (request.StyleReferenceImages != default)
+ {
+
+ for (var __iStyleReferenceImages = 0; __iStyleReferenceImages < request.StyleReferenceImages.Count; __iStyleReferenceImages++)
+ {
+ var __contentStyleReferenceImages = new global::System.Net.Http.ByteArrayContent(request.StyleReferenceImages[__iStyleReferenceImages]);
+ __httpRequestContent.Add(
+ content: __contentStyleReferenceImages,
+ name: "\"style_reference_images\"",
+ fileName: $"\"file{__iStyleReferenceImages}.bin\"");
+ if (__contentStyleReferenceImages.Headers.ContentDisposition != null)
+ {
+ __contentStyleReferenceImages.Headers.ContentDisposition.FileNameStar = null;
+ }
+ }
+ }
+ if (request.CharacterReferenceImages != default)
+ {
+
+ for (var __iCharacterReferenceImages = 0; __iCharacterReferenceImages < request.CharacterReferenceImages.Count; __iCharacterReferenceImages++)
+ {
+ var __contentCharacterReferenceImages = new global::System.Net.Http.ByteArrayContent(request.CharacterReferenceImages[__iCharacterReferenceImages]);
+ __httpRequestContent.Add(
+ content: __contentCharacterReferenceImages,
+ name: "\"character_reference_images\"",
+ fileName: $"\"file{__iCharacterReferenceImages}.bin\"");
+ if (__contentCharacterReferenceImages.Headers.ContentDisposition != null)
+ {
+ __contentCharacterReferenceImages.Headers.ContentDisposition.FileNameStar = null;
+ }
+ }
+ }
+ if (request.CharacterReferenceImagesMask != default)
+ {
+
+ for (var __iCharacterReferenceImagesMask = 0; __iCharacterReferenceImagesMask < request.CharacterReferenceImagesMask.Count; __iCharacterReferenceImagesMask++)
+ {
+ var __contentCharacterReferenceImagesMask = new global::System.Net.Http.ByteArrayContent(request.CharacterReferenceImagesMask[__iCharacterReferenceImagesMask]);
+ __httpRequestContent.Add(
+ content: __contentCharacterReferenceImagesMask,
+ name: "\"character_reference_images_mask\"",
+ fileName: $"\"file{__iCharacterReferenceImagesMask}.bin\"");
+ if (__contentCharacterReferenceImagesMask.Headers.ContentDisposition != null)
+ {
+ __contentCharacterReferenceImagesMask.Headers.ContentDisposition.FileNameStar = null;
+ }
+ }
+ }
+ __httpRequest.Content = __httpRequestContent;
+ global::Ideogram.AutoSDKRequestOptionsSupport.ApplyHeaders(
+ request: __httpRequest,
+ clientHeaders: Options.Headers,
+ requestHeaders: requestOptions?.Headers);
+
+ PrepareRequest(
+ client: HttpClient,
+ request: __httpRequest);
+ PreparePostInpaintImageV3Request(
+ httpClient: HttpClient,
+ httpRequestMessage: __httpRequest,
+ request: request);
+
+ return __httpRequest;
+ }
+
+ global::System.Net.Http.HttpRequestMessage? __httpRequest = null;
+ global::System.Net.Http.HttpResponseMessage? __response = null;
+ var __attemptNumber = 0;
+ try
+ {
+ for (var __attempt = 1; __attempt <= __maxAttempts; __attempt++)
+ {
+ __attemptNumber = __attempt;
+ __httpRequest = __CreateHttpRequest();
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnBeforeRequestAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostInpaintImageV3",
+ methodName: "PostInpaintImageV3Async",
+ pathTemplate: "\"/v1/ideogram-v3/inpaint\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: null,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attempt,
+ maxAttempts: __maxAttempts,
+ willRetry: false,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ try
+ {
+ __response = await HttpClient.SendAsync(
+ request: __httpRequest,
+ completionOption: global::System.Net.Http.HttpCompletionOption.ResponseContentRead,
+ cancellationToken: __effectiveCancellationToken).ConfigureAwait(false);
+ }
+ catch (global::System.Net.Http.HttpRequestException __exception)
+ {
+ var __willRetry = __attempt < __maxAttempts && !__effectiveCancellationToken.IsCancellationRequested;
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterErrorAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostInpaintImageV3",
+ methodName: "PostInpaintImageV3Async",
+ pathTemplate: "\"/v1/ideogram-v3/inpaint\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: null,
+ exception: __exception,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attempt,
+ maxAttempts: __maxAttempts,
+ willRetry: __willRetry,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ if (!__willRetry)
+ {
+ throw;
+ }
+
+ __httpRequest.Dispose();
+ __httpRequest = null;
+ await global::Ideogram.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ cancellationToken: __effectiveCancellationToken).ConfigureAwait(false);
+ continue;
+ }
+
+ if (__response != null &&
+ __attempt < __maxAttempts &&
+ global::Ideogram.AutoSDKRequestOptionsSupport.ShouldRetryStatusCode(__response.StatusCode))
+ {
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterErrorAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostInpaintImageV3",
+ methodName: "PostInpaintImageV3Async",
+ pathTemplate: "\"/v1/ideogram-v3/inpaint\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: __response,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attempt,
+ maxAttempts: __maxAttempts,
+ willRetry: true,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ __response.Dispose();
+ __response = null;
+ __httpRequest.Dispose();
+ __httpRequest = null;
+ await global::Ideogram.AutoSDKRequestOptionsSupport.DelayBeforeRetryAsync(
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ cancellationToken: __effectiveCancellationToken).ConfigureAwait(false);
+ continue;
+ }
+
+ break;
+ }
+
+ if (__response == null)
+ {
+ throw new global::System.InvalidOperationException("No response received.");
+ }
+
+ using (__response)
+ {
+
+ ProcessResponse(
+ client: HttpClient,
+ response: __response);
+ ProcessPostInpaintImageV3Response(
+ httpClient: HttpClient,
+ httpResponseMessage: __response);
+ if (__response.IsSuccessStatusCode)
+ {
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterSuccessAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostInpaintImageV3",
+ methodName: "PostInpaintImageV3Async",
+ pathTemplate: "\"/v1/ideogram-v3/inpaint\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: __response,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attemptNumber,
+ maxAttempts: __maxAttempts,
+ willRetry: false,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ }
+ else
+ {
+ await global::Ideogram.AutoSDKRequestOptionsSupport.OnAfterErrorAsync(
+ clientOptions: Options,
+ context: global::Ideogram.AutoSDKRequestOptionsSupport.CreateHookContext(
+ operationId: "PostInpaintImageV3",
+ methodName: "PostInpaintImageV3Async",
+ pathTemplate: "\"/v1/ideogram-v3/inpaint\"",
+ httpMethod: "POST",
+ baseUri: BaseUri,
+ request: __httpRequest!,
+ response: __response,
+ exception: null,
+ clientOptions: Options,
+ requestOptions: requestOptions,
+ attempt: __attemptNumber,
+ maxAttempts: __maxAttempts,
+ willRetry: false,
+ cancellationToken: __effectiveCancellationToken)).ConfigureAwait(false);
+ }
+ //
+ if ((int)__response.StatusCode == 400)
+ {
+ string? __content_400 = null;
+ global::System.Exception? __exception_400 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_400 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_400 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_400 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_400,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_400,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ //
+ if ((int)__response.StatusCode == 401)
+ {
+ string? __content_401 = null;
+ global::System.Exception? __exception_401 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_401 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_401 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_401 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_401,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_401,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ // Prompt or Initial Image failed the safety checks.
+ if ((int)__response.StatusCode == 422)
+ {
+ string? __content_422 = null;
+ global::System.Exception? __exception_422 = null;
+ global::Ideogram.GenerateImageSafetyError? __value_422 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ __value_422 = global::Ideogram.GenerateImageSafetyError.FromJson(__content_422, JsonSerializerContext);
+ }
+ else
+ {
+ __content_422 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+
+ __value_422 = global::Ideogram.GenerateImageSafetyError.FromJson(__content_422, JsonSerializerContext);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_422 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_422 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_422,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_422,
+ ResponseObject = __value_422,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ //
+ if ((int)__response.StatusCode == 429)
+ {
+ string? __content_429 = null;
+ global::System.Exception? __exception_429 = null;
+ try
+ {
+ if (__effectiveReadResponseAsString)
+ {
+ __content_429 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ else
+ {
+ __content_429 = await __response.Content.ReadAsStringAsync(__effectiveCancellationToken).ConfigureAwait(false);
+ }
+ }
+ catch (global::System.Exception __ex)
+ {
+ __exception_429 = __ex;
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content_429 ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __exception_429,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content_429,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+
+ if (__effectiveReadResponseAsString)
+ {
+ var __content = await __response.Content.ReadAsStringAsync(
+ #if NET5_0_OR_GREATER
+ __effectiveCancellationToken
+ #endif
+ ).ConfigureAwait(false);
+
+ ProcessResponseContent(
+ client: HttpClient,
+ response: __response,
+ content: ref __content);
+ ProcessPostInpaintImageV3ResponseContent(
+ httpClient: HttpClient,
+ httpResponseMessage: __response,
+ content: ref __content);
+
+ try
+ {
+ __response.EnsureSuccessStatusCode();
+
+ return
+ global::Ideogram.ImageGenerationResponseV3.FromJson(__content, JsonSerializerContext) ??
+ throw new global::System.InvalidOperationException($"Response deserialization failed for \"{__content}\" ");
+ }
+ catch (global::System.Exception __ex)
+ {
+ throw new global::Ideogram.ApiException(
+ message: __content ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __ex,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ }
+ else
+ {
+ try
+ {
+ __response.EnsureSuccessStatusCode();
+ using var __content = await __response.Content.ReadAsStreamAsync(
+ #if NET5_0_OR_GREATER
+ __effectiveCancellationToken
+ #endif
+ ).ConfigureAwait(false);
+
+ return
+ await global::Ideogram.ImageGenerationResponseV3.FromJsonStreamAsync(__content, JsonSerializerContext).ConfigureAwait(false) ??
+ throw new global::System.InvalidOperationException("Response deserialization failed.");
+ }
+ catch (global::System.Exception __ex)
+ {
+ string? __content = null;
+ try
+ {
+ __content = await __response.Content.ReadAsStringAsync(
+ #if NET5_0_OR_GREATER
+ __effectiveCancellationToken
+ #endif
+ ).ConfigureAwait(false);
+ }
+ catch (global::System.Exception)
+ {
+ }
+
+ throw new global::Ideogram.ApiException(
+ message: __content ?? __response.ReasonPhrase ?? string.Empty,
+ innerException: __ex,
+ statusCode: __response.StatusCode)
+ {
+ ResponseBody = __content,
+ ResponseHeaders = global::System.Linq.Enumerable.ToDictionary(
+ __response.Headers,
+ h => h.Key,
+ h => h.Value),
+ };
+ }
+ }
+
+ }
+ }
+ finally
+ {
+ __httpRequest?.Dispose();
+ }
+ }
+ ///
+ /// Inpaint with Ideogram 3.0
+ /// Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image
+ /// should be edited, while the prompt and chosen style can further guide the edit.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// The image being edited (max size 10MB); only JPEG, WebP and PNG formats are supported at this time.
+ ///
+ ///
+ /// The image being edited (max size 10MB); only JPEG, WebP and PNG formats are supported at this time.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// The prompt used to describe the edited result.
+ /// Example: A photo of a cat.
+ ///
+ ///
+ /// Determine if MagicPrompt should be used in generating the request or not.
+ /// Example: ON
+ ///
+ ///
+ /// The number of images to generate.
+ /// Default Value: 1
+ ///
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ ///
+ /// The rendering speed to use.
+ /// Default Value: DEFAULT
+ ///
+ ///
+ /// The style type to generate with.
+ /// Default Value: GENERAL
+ /// Example: GENERAL
+ ///
+ ///
+ /// A predefined style preset that applies a specific artistic style to the generated image.
+ /// Example: BRIGHT_ART
+ ///
+ ///
+ /// A custom model URI in the format model/<model_name>/version/<version_name>.
+ /// When provided, the model version and style will be resolved from this URI, and style_type is not required.
+ /// Example: model/my-custom-model/version/1
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ /// Example: [AAFF5733, 0133FF57, DE3357FF]
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ public async global::System.Threading.Tasks.Task 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? styleCodes = default,
+ global::System.Collections.Generic.IList? styleReferenceImages = default,
+ global::System.Collections.Generic.IList? characterReferenceImages = default,
+ global::System.Collections.Generic.IList? characterReferenceImagesMask = default,
+ global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
+ global::System.Threading.CancellationToken cancellationToken = default)
+ {
+ var __request = new global::Ideogram.EditImageRequestV3
+ {
+ Image = image,
+ Imagename = imagename,
+ Mask = mask,
+ Maskname = maskname,
+ Prompt = prompt,
+ MagicPrompt = magicPrompt,
+ NumImages = numImages,
+ Seed = seed,
+ RenderingSpeed = renderingSpeed,
+ StyleType = styleType,
+ StylePreset = stylePreset,
+ CustomModelUri = customModelUri,
+ ColorPalette = colorPalette,
+ StyleCodes = styleCodes,
+ StyleReferenceImages = styleReferenceImages,
+ CharacterReferenceImages = characterReferenceImages,
+ CharacterReferenceImagesMask = characterReferenceImagesMask,
+ };
+
+ return await PostInpaintImageV3Async(
+ request: __request,
+ requestOptions: requestOptions,
+ cancellationToken: cancellationToken).ConfigureAwait(false);
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.IGenerateClient.PostEditImageV2V3.g.cs b/src/libs/Ideogram/Generated/Ideogram.IGenerateClient.PostEditImageV2V3.g.cs
new file mode 100644
index 0000000..f0e74dc
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.IGenerateClient.PostEditImageV2V3.g.cs
@@ -0,0 +1,83 @@
+#nullable enable
+
+namespace Ideogram
+{
+ public partial interface IGenerateClient
+ {
+ ///
+ /// Edit with Ideogram V2
+ /// Edit one or more images using a text prompt. Provide images via file upload
+ /// or Ideogram image URLs, and describe the desired edit in your prompt.
+ /// Unlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the
+ /// prompt to determine what to change.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ global::System.Threading.Tasks.Task PostEditImageV2V3Async(
+
+ global::Ideogram.EditImageV2RequestV3 request,
+ global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
+ global::System.Threading.CancellationToken cancellationToken = default);
+ ///
+ /// Edit with Ideogram V2
+ /// Edit one or more images using a text prompt. Provide images via file upload
+ /// or Ideogram image URLs, and describe the desired edit in your prompt.
+ /// Unlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the
+ /// prompt to determine what to change.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// The prompt describing the desired edit.
+ /// Example: Change the background to a beach sunset.
+ ///
+ ///
+ /// Images to edit (max 10 images, max size 10MB each); JPEG, WebP and PNG formats are supported.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// The number of images to generate.
+ /// Default Value: 1
+ ///
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ ///
+ /// Determine if MagicPrompt should be used in generating the request or not.
+ /// Example: ON
+ ///
+ ///
+ /// The resolutions supported for Ideogram 3.0.
+ /// Example: 1280x800
+ ///
+ ///
+ /// The aspect ratio to use for image generation, which determines the image's resolution. Cannot be used in conjunction with resolution. Defaults to 1x1.
+ ///
+ ///
+ /// Whether the output should have a transparent background. Default false.
+ /// Default Value: false
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ global::System.Threading.Tasks.Task PostEditImageV2V3Async(
+ string prompt,
+ global::System.Collections.Generic.IList? images = default,
+ global::System.Collections.Generic.IList? 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);
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.IGenerateClient.PostInpaintImageV3.g.cs b/src/libs/Ideogram/Generated/Ideogram.IGenerateClient.PostInpaintImageV3.g.cs
new file mode 100644
index 0000000..a916b00
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.IGenerateClient.PostInpaintImageV3.g.cs
@@ -0,0 +1,116 @@
+#nullable enable
+
+namespace Ideogram
+{
+ public partial interface IGenerateClient
+ {
+ ///
+ /// Inpaint with Ideogram 3.0
+ /// Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image
+ /// should be edited, while the prompt and chosen style can further guide the edit.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ global::System.Threading.Tasks.Task PostInpaintImageV3Async(
+
+ global::Ideogram.EditImageRequestV3 request,
+ global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
+ global::System.Threading.CancellationToken cancellationToken = default);
+ ///
+ /// Inpaint with Ideogram 3.0
+ /// Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image
+ /// should be edited, while the prompt and chosen style can further guide the edit.
+ /// Supported image formats include JPEG, PNG, and WebP.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ ///
+ ///
+ /// The image being edited (max size 10MB); only JPEG, WebP and PNG formats are supported at this time.
+ ///
+ ///
+ /// The image being edited (max size 10MB); only JPEG, WebP and PNG formats are supported at this time.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// The prompt used to describe the edited result.
+ /// Example: A photo of a cat.
+ ///
+ ///
+ /// Determine if MagicPrompt should be used in generating the request or not.
+ /// Example: ON
+ ///
+ ///
+ /// The number of images to generate.
+ /// Default Value: 1
+ ///
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ ///
+ /// The rendering speed to use.
+ /// Default Value: DEFAULT
+ ///
+ ///
+ /// The style type to generate with.
+ /// Default Value: GENERAL
+ /// Example: GENERAL
+ ///
+ ///
+ /// A predefined style preset that applies a specific artistic style to the generated image.
+ /// Example: BRIGHT_ART
+ ///
+ ///
+ /// A custom model URI in the format model/<model_name>/version/<version_name>.
+ /// When provided, the model version and style will be resolved from this URI, and style_type is not required.
+ /// Example: model/my-custom-model/version/1
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ /// Example: [AAFF5733, 0133FF57, DE3357FF]
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// 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.
+ ///
+ /// Per-request overrides such as headers, query parameters, timeout, retries, and response buffering.
+ /// The token to cancel the operation with
+ ///
+ global::System.Threading.Tasks.Task 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? styleCodes = default,
+ global::System.Collections.Generic.IList? styleReferenceImages = default,
+ global::System.Collections.Generic.IList? characterReferenceImages = default,
+ global::System.Collections.Generic.IList? characterReferenceImagesMask = default,
+ global::Ideogram.AutoSDKRequestOptions? requestOptions = default,
+ global::System.Threading.CancellationToken cancellationToken = default);
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContext.g.cs b/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContext.g.cs
index 938c3b2..21c0d4f 100644
--- a/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContext.g.cs
+++ b/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContext.g.cs
@@ -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))]
@@ -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::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::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::System.Text.Json.Serialization.JsonSerializable(typeof(global::Ideogram.ImageGenerationObjectV4))]
@@ -384,6 +388,7 @@ namespace Ideogram
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
+ [global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
[global::System.Text.Json.Serialization.JsonSerializable(typeof(global::System.Collections.Generic.List))]
diff --git a/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContextTypes.g.cs b/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContextTypes.g.cs
index 9bae435..5513f1c 100644
--- a/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContextTypes.g.cs
+++ b/src/libs/Ideogram/Generated/Ideogram.JsonSerializerContextTypes.g.cs
@@ -152,679 +152,695 @@ public sealed partial class JsonSerializerContextTypes
///
///
///
- public global::Ideogram.TryOnRequestV3? Type31 { get; set; }
+ public global::Ideogram.EditImageV2RequestV3? Type31 { get; set; }
///
///
///
- public global::Ideogram.ReframeImageRequestV3? Type32 { get; set; }
+ public bool? Type32 { get; set; }
///
///
///
- public global::Ideogram.ReplaceBackgroundRequestV3? Type33 { get; set; }
+ public global::Ideogram.TryOnRequestV3? Type33 { get; set; }
///
///
///
- public global::Ideogram.InternalTestingRequest? Type34 { get; set; }
+ public global::Ideogram.ReframeImageRequestV3? Type34 { get; set; }
///
///
///
- public global::Ideogram.InternalTestingNestedObject? Type35 { get; set; }
+ public global::Ideogram.ReplaceBackgroundRequestV3? Type35 { get; set; }
///
///
///
- public global::Ideogram.InternalTestingNestedObjectRequiredFields? Type36 { get; set; }
+ public global::Ideogram.InternalTestingRequest? Type36 { get; set; }
///
///
///
- public global::System.DateTime? Type37 { get; set; }
+ public global::Ideogram.InternalTestingNestedObject? Type37 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type38 { get; set; }
+ public global::Ideogram.InternalTestingNestedObjectRequiredFields? Type38 { get; set; }
///
///
///
- public global::Ideogram.InternalTestingEnumField? Type39 { get; set; }
+ public global::System.DateTime? Type39 { get; set; }
///
///
///
- public global::Ideogram.RemixImageRequest? Type40 { get; set; }
+ public global::System.Collections.Generic.IList? Type40 { get; set; }
///
///
///
- public global::Ideogram.InitialImageRequest? Type41 { get; set; }
+ public global::Ideogram.InternalTestingEnumField? Type41 { get; set; }
///
///
///
- public global::Ideogram.ReframeImageRequest? Type42 { get; set; }
+ public global::Ideogram.RemixImageRequest? Type42 { get; set; }
///
///
///
- public global::Ideogram.Resolution? Type43 { get; set; }
+ public global::Ideogram.InitialImageRequest? Type43 { get; set; }
///
///
///
- public global::Ideogram.UpscaleImageRequest? Type44 { get; set; }
+ public global::Ideogram.ReframeImageRequest? Type44 { get; set; }
///
///
///
- public global::Ideogram.UpscaleInitialImageRequest? Type45 { get; set; }
+ public global::Ideogram.Resolution? Type45 { get; set; }
///
///
///
- public global::Ideogram.AspectRatio? Type46 { get; set; }
+ public global::Ideogram.UpscaleImageRequest? Type46 { get; set; }
///
///
///
- public global::Ideogram.MagicPromptVersionEnum? Type47 { get; set; }
+ public global::Ideogram.UpscaleInitialImageRequest? Type47 { get; set; }
///
///
///
- public global::Ideogram.GenerateImageResponse? Type48 { get; set; }
+ public global::Ideogram.AspectRatio? Type48 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type49 { get; set; }
+ public global::Ideogram.MagicPromptVersionEnum? Type49 { get; set; }
///
///
///
- public global::Ideogram.ImageObject? Type50 { get; set; }
+ public global::Ideogram.GenerateImageResponse? Type50 { get; set; }
///
///
///
- public global::Ideogram.ImageGenerationResponseV3? Type51 { get; set; }
+ public global::System.Collections.Generic.IList? Type51 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type52 { get; set; }
+ public global::Ideogram.ImageObject? Type52 { get; set; }
///
///
///
- public global::Ideogram.ImageGenerationObjectV3? Type53 { get; set; }
+ public global::Ideogram.ImageGenerationResponseV3? Type53 { get; set; }
///
///
///
- public bool? Type54 { get; set; }
+ public global::System.Collections.Generic.IList? Type54 { get; set; }
///
///
///
- public global::Ideogram.ImageGenerationResponseV4? Type55 { get; set; }
+ public global::Ideogram.ImageGenerationObjectV3? Type55 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type56 { get; set; }
+ public global::Ideogram.EditImageGenerationResponseV3? Type56 { get; set; }
///
///
///
- public global::Ideogram.ImageGenerationObjectV4? Type57 { get; set; }
+ public global::System.Collections.Generic.IList? Type57 { get; set; }
///
///
///
- public global::Ideogram.ResolutionV4? Type58 { get; set; }
+ public global::Ideogram.EditImageGenerationObjectV3? Type58 { get; set; }
///
///
///
- public global::Ideogram.LayeredImageGenerationObjectV3? Type59 { get; set; }
+ public global::Ideogram.ImageGenerationResponseV4? Type59 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type60 { get; set; }
+ public global::System.Collections.Generic.IList? Type60 { get; set; }
///
///
///
- public global::Ideogram.TextContainerV3? Type61 { get; set; }
+ public global::Ideogram.ImageGenerationObjectV4? Type61 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type62 { get; set; }
+ public global::Ideogram.ResolutionV4? Type62 { get; set; }
///
///
///
- public global::Ideogram.ImageLayerV3? Type63 { get; set; }
+ public global::Ideogram.LayeredImageGenerationObjectV3? Type63 { get; set; }
///
///
///
- public global::Ideogram.LayeredImageGenerationResponseV3? Type64 { get; set; }
+ public global::System.Collections.Generic.IList? Type64 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type65 { get; set; }
+ public global::Ideogram.TextContainerV3? Type65 { get; set; }
///
///
///
- public global::Ideogram.GenerateImageSafetyError? Type66 { get; set; }
+ public global::System.Collections.Generic.IList? Type66 { get; set; }
///
///
///
- public global::Ideogram.MagicPromptRequest? Type67 { get; set; }
+ public global::Ideogram.ImageLayerV3? Type67 { get; set; }
///
///
///
- public global::Ideogram.MagicPromptResponse? Type68 { get; set; }
+ public global::Ideogram.LayeredImageGenerationResponseV3? Type68 { get; set; }
///
///
///
- public global::Ideogram.InternalBatchRequest? Type69 { get; set; }
+ public global::System.Collections.Generic.IList? Type69 { get; set; }
///
///
///
- public global::Ideogram.SamplingRequestParams? Type70 { get; set; }
+ public global::Ideogram.GenerateImageSafetyError? Type70 { get; set; }
///
///
///
- public global::Ideogram.InternalBatchResponse? Type71 { get; set; }
+ public global::Ideogram.MagicPromptRequest? Type71 { get; set; }
///
///
///
- public global::Ideogram.TextSpanV3? Type72 { get; set; }
+ public global::Ideogram.MagicPromptResponse? Type72 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type73 { get; set; }
+ public global::Ideogram.InternalBatchRequest? Type73 { get; set; }
///
///
///
- public global::Ideogram.TextSpanV3FontFxItem? Type74 { get; set; }
+ public global::Ideogram.SamplingRequestParams? Type74 { get; set; }
///
///
///
- public global::Ideogram.TextItemV3? Type75 { get; set; }
+ public global::Ideogram.InternalBatchResponse? Type75 { get; set; }
///
///
///
- public global::Ideogram.TextItemV3Alignment? Type76 { get; set; }
+ public global::Ideogram.TextSpanV3? Type76 { get; set; }
///
///
///
- public float? Type77 { get; set; }
+ public global::System.Collections.Generic.IList? Type77 { get; set; }
///
///
///
- public global::Ideogram.TextItemV3StyleClass? Type78 { get; set; }
+ public global::Ideogram.TextSpanV3FontFxItem? Type78 { get; set; }
///
///
///
- public global::Ideogram.TextItemV3GlyphType? Type79 { get; set; }
+ public global::Ideogram.TextItemV3? Type79 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type80 { get; set; }
+ public global::Ideogram.TextItemV3Alignment? Type80 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type81 { get; set; }
+ public float? Type81 { get; set; }
///
///
///
- public global::Ideogram.LayerizeTextRequest? Type82 { get; set; }
+ public global::Ideogram.TextItemV3StyleClass? Type82 { get; set; }
///
///
///
- public global::Ideogram.LayerizeTextResponse? Type83 { get; set; }
+ public global::Ideogram.TextItemV3GlyphType? Type83 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type84 { get; set; }
+ public global::System.Collections.Generic.IList? Type84 { get; set; }
///
///
///
- public global::Ideogram.DetectedTextBlock? Type85 { get; set; }
+ public global::System.Collections.Generic.IList? Type85 { get; set; }
///
///
///
- public global::Ideogram.DetectedTextBlockAlignment? Type86 { get; set; }
+ public global::Ideogram.LayerizeTextRequest? Type86 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type87 { get; set; }
+ public global::Ideogram.LayerizeTextResponse? Type87 { get; set; }
///
///
///
- public global::Ideogram.DetectedTextBlockFormattingItem? Type88 { get; set; }
+ public global::System.Collections.Generic.IList? Type88 { get; set; }
///
///
///
- public global::Ideogram.DetectedTextBlockRole? Type89 { get; set; }
+ public global::Ideogram.DetectedTextBlock? Type89 { get; set; }
///
///
///
- public global::Ideogram.InternalBatchResultsResponse? Type90 { get; set; }
+ public global::Ideogram.DetectedTextBlockAlignment? Type90 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type91 { get; set; }
+ public global::System.Collections.Generic.IList? Type91 { get; set; }
///
///
///
- public global::Ideogram.InternalBatchResultsResponseResultsInner? Type92 { get; set; }
+ public global::Ideogram.DetectedTextBlockFormattingItem? Type92 { get; set; }
///
///
///
- public global::Ideogram.ImageSafetyError? Type93 { get; set; }
+ public global::Ideogram.DetectedTextBlockRole? Type93 { get; set; }
///
///
///
- public global::Ideogram.ManageApiSubscriptionResponse? Type94 { get; set; }
+ public global::Ideogram.InternalBatchResultsResponse? Type94 { get; set; }
///
///
///
- public global::Ideogram.MetronomeLinks? Type95 { get; set; }
+ public global::System.Collections.Generic.IList? Type95 { get; set; }
///
///
///
- public global::Ideogram.RechargeSettingsResponse? Type96 { get; set; }
+ public global::Ideogram.InternalBatchResultsResponseResultsInner? Type96 { get; set; }
///
///
///
- public global::Ideogram.Price? Type97 { get; set; }
+ public global::Ideogram.ImageSafetyError? Type97 { get; set; }
///
///
///
- public global::Ideogram.RechargeSettings? Type98 { get; set; }
+ public global::Ideogram.ManageApiSubscriptionResponse? Type98 { get; set; }
///
///
///
- public global::Ideogram.PostApiSubscriptionResponse? Type99 { get; set; }
+ public global::Ideogram.MetronomeLinks? Type99 { get; set; }
///
///
///
- public global::Ideogram.PostApiSubscriptionError? Type100 { get; set; }
+ public global::Ideogram.RechargeSettingsResponse? Type100 { get; set; }
///
///
///
- public global::Ideogram.PostApiSubscriptionRequest? Type101 { get; set; }
+ public global::Ideogram.Price? Type101 { get; set; }
///
///
///
- public global::Ideogram.PostApiReactivateResponse? Type102 { get; set; }
+ public global::Ideogram.RechargeSettings? Type102 { get; set; }
///
///
///
- public global::Ideogram.GetApiKeysResponse? Type103 { get; set; }
+ public global::Ideogram.PostApiSubscriptionResponse? Type103 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type104 { get; set; }
+ public global::Ideogram.PostApiSubscriptionError? Type104 { get; set; }
///
///
///
- public global::Ideogram.RedactedApiKey? Type105 { get; set; }
+ public global::Ideogram.PostApiSubscriptionRequest? Type105 { get; set; }
///
///
///
- public global::Ideogram.PostApiKeyResponse? Type106 { get; set; }
+ public global::Ideogram.PostApiReactivateResponse? Type106 { get; set; }
///
///
///
- public global::Ideogram.ManageApiStripeSubscriptionResponse? Type107 { get; set; }
+ public global::Ideogram.GetApiKeysResponse? Type107 { get; set; }
///
///
///
- public global::Ideogram.GetApiTermsResponse? Type108 { get; set; }
+ public global::System.Collections.Generic.IList? Type108 { get; set; }
///
///
///
- public global::Ideogram.ApiTerms? Type109 { get; set; }
+ public global::Ideogram.RedactedApiKey? Type109 { get; set; }
///
///
///
- public global::Ideogram.PostApiTermsRequest? Type110 { get; set; }
+ public global::Ideogram.PostApiKeyResponse? Type110 { get; set; }
///
///
///
- public global::Ideogram.PostAddCreditsResponse? Type111 { get; set; }
+ public global::Ideogram.ManageApiStripeSubscriptionResponse? Type111 { get; set; }
///
///
///
- public global::Ideogram.PostAddCreditsError? Type112 { get; set; }
+ public global::Ideogram.GetApiTermsResponse? Type112 { get; set; }
///
///
///
- public global::Ideogram.PostAddCreditsRequest? Type113 { get; set; }
+ public global::Ideogram.ApiTerms? Type113 { get; set; }
///
///
///
- public global::Ideogram.GetUserCreditsResponse? Type114 { get; set; }
+ public global::Ideogram.PostApiTermsRequest? Type114 { get; set; }
///
///
///
- public global::Ideogram.SpendCommitInfoResponse? Type115 { get; set; }
+ public global::Ideogram.PostAddCreditsResponse? Type115 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type116 { get; set; }
+ public global::Ideogram.PostAddCreditsError? Type116 { get; set; }
///
///
///
- public global::Ideogram.SpendCommitInfo? Type117 { get; set; }
+ public global::Ideogram.PostAddCreditsRequest? Type117 { get; set; }
///
///
///
- public global::Ideogram.GetUsageInfoResponse? Type118 { get; set; }
+ public global::Ideogram.GetUserCreditsResponse? Type118 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type119 { get; set; }
+ public global::Ideogram.SpendCommitInfoResponse? Type119 { get; set; }
///
///
///
- public global::Ideogram.UsageSegment? Type120 { get; set; }
+ public global::System.Collections.Generic.IList? Type120 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type121 { get; set; }
+ public global::Ideogram.SpendCommitInfo? Type121 { get; set; }
///
///
///
- public global::Ideogram.ToolUsage? Type122 { get; set; }
+ public global::Ideogram.GetUsageInfoResponse? Type122 { get; set; }
///
///
///
- public global::Ideogram.ToolType? Type123 { get; set; }
+ public global::System.Collections.Generic.IList? Type123 { get; set; }
///
///
///
- public global::Ideogram.ModelVersion? Type124 { get; set; }
+ public global::Ideogram.UsageSegment? Type124 { get; set; }
///
///
///
- public global::Ideogram.SegmentBy? Type125 { get; set; }
+ public global::System.Collections.Generic.IList? Type125 { get; set; }
///
///
///
- public global::Ideogram.UsageSource? Type126 { get; set; }
+ public global::Ideogram.ToolUsage? Type126 { get; set; }
///
///
///
- public global::Ideogram.GetApiProfilesResponse? Type127 { get; set; }
+ public global::Ideogram.ToolType? Type127 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type128 { get; set; }
+ public global::Ideogram.ModelVersion? Type128 { get; set; }
///
///
///
- public global::Ideogram.ApiProfile? Type129 { get; set; }
+ public global::Ideogram.SegmentBy? Type129 { get; set; }
///
///
///
- public global::Ideogram.ApiProfileType? Type130 { get; set; }
+ public global::Ideogram.UsageSource? Type130 { get; set; }
///
///
///
- public global::Ideogram.ApiProfileRole? Type131 { get; set; }
+ public global::Ideogram.GetApiProfilesResponse? Type131 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type132 { get; set; }
+ public global::System.Collections.Generic.IList? Type132 { get; set; }
///
///
///
- public global::Ideogram.ApiProfileApiKey? Type133 { get; set; }
+ public global::Ideogram.ApiProfile? Type133 { get; set; }
///
///
///
- public global::Ideogram.ApiKeyStatus? Type134 { get; set; }
+ public global::Ideogram.ApiProfileType? Type134 { get; set; }
///
///
///
- public global::Ideogram.GetApiOrganizationUserSuggestionsResponse? Type135 { get; set; }
+ public global::Ideogram.ApiProfileRole? Type135 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type136 { get; set; }
+ public global::System.Collections.Generic.IList? Type136 { get; set; }
///
///
///
- public global::Ideogram.ApiOrganizationUserSuggestion? Type137 { get; set; }
+ public global::Ideogram.ApiProfileApiKey? Type137 { get; set; }
///
///
///
- public global::Ideogram.GetOrganizationMembersResponse? Type138 { get; set; }
+ public global::Ideogram.ApiKeyStatus? Type138 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type139 { get; set; }
+ public global::Ideogram.GetApiOrganizationUserSuggestionsResponse? Type139 { get; set; }
///
///
///
- public global::Ideogram.OrganizationMember? Type140 { get; set; }
+ public global::System.Collections.Generic.IList? Type140 { get; set; }
///
///
///
- public global::Ideogram.CreateApiKeyResponse? Type141 { get; set; }
+ public global::Ideogram.ApiOrganizationUserSuggestion? Type141 { get; set; }
///
///
///
- public global::Ideogram.GetApiKeysV2Response? Type142 { get; set; }
+ public global::Ideogram.GetOrganizationMembersResponse? Type142 { get; set; }
///
///
///
- public global::Ideogram.OrganizationMemberOperationResponse? Type143 { get; set; }
+ public global::System.Collections.Generic.IList? Type143 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type144 { get; set; }
+ public global::Ideogram.OrganizationMember? Type144 { get; set; }
///
///
///
- public global::Ideogram.OrganizationMemberOperationResult? Type145 { get; set; }
+ public global::Ideogram.CreateApiKeyResponse? Type145 { get; set; }
///
///
///
- public global::Ideogram.AddOrganizationMembersRequest? Type146 { get; set; }
+ public global::Ideogram.GetApiKeysV2Response? Type146 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type147 { get; set; }
+ public global::Ideogram.OrganizationMemberOperationResponse? Type147 { get; set; }
///
///
///
- public global::Ideogram.LiteOrganizationMember? Type148 { get; set; }
+ public global::System.Collections.Generic.IList? Type148 { get; set; }
///
///
///
- public global::Ideogram.RemoveOrganizationMembersRequest? Type149 { get; set; }
+ public global::Ideogram.OrganizationMemberOperationResult? Type149 { get; set; }
///
///
///
- public global::Ideogram.PromoteOrganizationMembersRequest? Type150 { get; set; }
+ public global::Ideogram.AddOrganizationMembersRequest? Type150 { get; set; }
///
///
///
- public global::Ideogram.ListOrganizationInvoicesResponse? Type151 { get; set; }
+ public global::System.Collections.Generic.IList? Type151 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type152 { get; set; }
+ public global::Ideogram.LiteOrganizationMember? Type152 { get; set; }
///
///
///
- public global::Ideogram.Invoice? Type153 { get; set; }
+ public global::Ideogram.RemoveOrganizationMembersRequest? Type153 { get; set; }
///
///
///
- public global::Ideogram.InvoiceStatus? Type154 { get; set; }
+ public global::Ideogram.PromoteOrganizationMembersRequest? Type154 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type155 { get; set; }
+ public global::Ideogram.ListOrganizationInvoicesResponse? Type155 { get; set; }
///
///
///
- public global::Ideogram.InvoiceLineItem? Type156 { get; set; }
+ public global::System.Collections.Generic.IList? Type156 { get; set; }
///
///
///
- public global::Ideogram.ListDatasetsResponse? Type157 { get; set; }
+ public global::Ideogram.Invoice? Type157 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type158 { get; set; }
+ public global::Ideogram.InvoiceStatus? Type158 { get; set; }
///
///
///
- public global::Ideogram.Dataset? Type159 { get; set; }
+ public global::System.Collections.Generic.IList? Type159 { get; set; }
///
///
///
- public global::Ideogram.AssetIdentifier? Type160 { get; set; }
+ public global::Ideogram.InvoiceLineItem? Type160 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type161 { get; set; }
+ public global::Ideogram.ListDatasetsResponse? Type161 { get; set; }
///
///
///
- public global::Ideogram.SharingInfo? Type162 { get; set; }
+ public global::System.Collections.Generic.IList? Type162 { get; set; }
///
///
///
- public global::Ideogram.CreateDatasetRequest? Type163 { get; set; }
+ public global::Ideogram.Dataset? Type163 { get; set; }
///
///
///
- public global::Ideogram.UploadDatasetAssetsResponse? Type164 { get; set; }
+ public global::Ideogram.AssetIdentifier? Type164 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type165 { get; set; }
+ public global::System.Collections.Generic.IList? Type165 { get; set; }
///
///
///
- public global::Ideogram.DatasetUploadSucceededAsset? Type166 { get; set; }
+ public global::Ideogram.SharingInfo? Type166 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type167 { get; set; }
+ public global::Ideogram.CreateDatasetRequest? Type167 { get; set; }
///
///
///
- public global::Ideogram.DatasetUploadFailedAsset? Type168 { get; set; }
+ public global::Ideogram.UploadDatasetAssetsResponse? Type168 { get; set; }
///
///
///
- public global::Ideogram.DatasetAssetFailureReason? Type169 { get; set; }
+ public global::System.Collections.Generic.IList? Type169 { get; set; }
///
///
///
- public global::Ideogram.UploadDatasetAssetsRequest? Type170 { get; set; }
+ public global::Ideogram.DatasetUploadSucceededAsset? Type170 { get; set; }
///
///
///
- public global::Ideogram.TrainDatasetModelResponse? Type171 { get; set; }
+ public global::System.Collections.Generic.IList? Type171 { get; set; }
///
///
///
- public global::Ideogram.TrainDatasetModelRequest? Type172 { get; set; }
+ public global::Ideogram.DatasetUploadFailedAsset? Type172 { get; set; }
///
///
///
- public global::Ideogram.TrainDatasetModelRequestBaseModelVersion? Type173 { get; set; }
+ public global::Ideogram.DatasetAssetFailureReason? Type173 { get; set; }
///
///
///
- public double? Type174 { get; set; }
+ public global::Ideogram.UploadDatasetAssetsRequest? Type174 { get; set; }
///
///
///
- public global::Ideogram.ListModelsResponse? Type175 { get; set; }
+ public global::Ideogram.TrainDatasetModelResponse? Type175 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type176 { get; set; }
+ public global::Ideogram.TrainDatasetModelRequest? Type176 { get; set; }
///
///
///
- public global::Ideogram.CustomModel? Type177 { get; set; }
+ public global::Ideogram.TrainDatasetModelRequestBaseModelVersion? Type177 { get; set; }
///
///
///
- public global::Ideogram.ModelStatus? Type178 { get; set; }
+ public double? Type178 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type179 { get; set; }
+ public global::Ideogram.ListModelsResponse? Type179 { get; set; }
///
///
///
- public global::Ideogram.TrainingRun? Type180 { get; set; }
+ public global::System.Collections.Generic.IList? Type180 { get; set; }
///
///
///
- public global::Ideogram.TrainingRunStatus? Type181 { get; set; }
+ public global::Ideogram.CustomModel? Type181 { get; set; }
///
///
///
- public global::Ideogram.GetModelResponse? Type182 { get; set; }
+ public global::Ideogram.ModelStatus? Type182 { get; set; }
///
///
///
- public global::Ideogram.ColorPaletteWithPresetName? Type183 { get; set; }
+ public global::System.Collections.Generic.IList? Type183 { get; set; }
///
///
///
- public global::Ideogram.ColorPaletteWithMembers? Type184 { get; set; }
+ public global::Ideogram.TrainingRun? Type184 { get; set; }
///
///
///
- public global::Ideogram.ColorPalettePresetName? Type185 { get; set; }
+ public global::Ideogram.TrainingRunStatus? Type185 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type186 { get; set; }
+ public global::Ideogram.GetModelResponse? Type186 { get; set; }
///
///
///
- public global::Ideogram.ColorPaletteMember? Type187 { get; set; }
+ public global::Ideogram.ColorPaletteWithPresetName? Type187 { get; set; }
///
///
///
- public global::Ideogram.AssetType? Type188 { get; set; }
+ public global::Ideogram.ColorPaletteWithMembers? Type188 { get; set; }
///
///
///
- public global::Ideogram.SharingPermission? Type189 { get; set; }
+ public global::Ideogram.ColorPalettePresetName? Type189 { get; set; }
///
///
///
- public global::Ideogram.OrganizationObject? Type190 { get; set; }
+ public global::System.Collections.Generic.IList? Type190 { get; set; }
///
///
///
- public global::Ideogram.User? Type191 { get; set; }
+ public global::Ideogram.ColorPaletteMember? Type191 { get; set; }
///
///
///
- public global::Ideogram.OrganizationType? Type192 { get; set; }
+ public global::Ideogram.AssetType? Type192 { get; set; }
///
///
///
- public global::Ideogram.OrganizationRoleEnum? Type193 { get; set; }
+ public global::Ideogram.SharingPermission? Type193 { get; set; }
///
///
///
- public global::Ideogram.OrganizationAvatarObject? Type194 { get; set; }
+ public global::Ideogram.OrganizationObject? Type194 { get; set; }
///
///
///
- public global::Ideogram.PostInternalTesting200Response? Type195 { get; set; }
+ public global::Ideogram.User? Type195 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type196 { get; set; }
+ public global::Ideogram.OrganizationType? Type196 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type197 { get; set; }
+ public global::Ideogram.OrganizationRoleEnum? Type197 { get; set; }
///
///
///
- public global::Ideogram.ListCustomModelsScope? Type198 { get; set; }
+ public global::Ideogram.OrganizationAvatarObject? Type198 { get; set; }
///
///
///
- public global::System.Collections.Generic.IList? Type199 { get; set; }
+ public global::Ideogram.PostInternalTesting200Response? Type199 { get; set; }
+ ///
+ ///
+ ///
+ public global::System.Collections.Generic.IList? Type200 { get; set; }
+ ///
+ ///
+ ///
+ public global::System.Collections.Generic.IList? Type201 { get; set; }
+ ///
+ ///
+ ///
+ public global::Ideogram.ListCustomModelsScope? Type202 { get; set; }
+ ///
+ ///
+ ///
+ public global::System.Collections.Generic.IList? Type203 { get; set; }
///
///
@@ -853,130 +869,134 @@ public sealed partial class JsonSerializerContextTypes
///
///
///
- public global::System.Collections.Generic.List? ListType6 { get; set; }
+ public global::System.Collections.Generic.List? ListType6 { get; set; }
+ ///
+ ///
+ ///
+ public global::System.Collections.Generic.List? ListType7 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType7 { get; set; }
+ public global::System.Collections.Generic.List? ListType8 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType8 { get; set; }
+ public global::System.Collections.Generic.List? ListType9 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType9 { get; set; }
+ public global::System.Collections.Generic.List? ListType10 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType10 { get; set; }
+ public global::System.Collections.Generic.List? ListType11 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType11 { get; set; }
+ public global::System.Collections.Generic.List? ListType12 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType12 { get; set; }
+ public global::System.Collections.Generic.List? ListType13 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType13 { get; set; }
+ public global::System.Collections.Generic.List? ListType14 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType14 { get; set; }
+ public global::System.Collections.Generic.List? ListType15 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType15 { get; set; }
+ public global::System.Collections.Generic.List? ListType16 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType16 { get; set; }
+ public global::System.Collections.Generic.List? ListType17 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType17 { get; set; }
+ public global::System.Collections.Generic.List? ListType18 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType18 { get; set; }
+ public global::System.Collections.Generic.List? ListType19 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType19 { get; set; }
+ public global::System.Collections.Generic.List? ListType20 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType20 { get; set; }
+ public global::System.Collections.Generic.List? ListType21 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType21 { get; set; }
+ public global::System.Collections.Generic.List? ListType22 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType22 { get; set; }
+ public global::System.Collections.Generic.List? ListType23 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType23 { get; set; }
+ public global::System.Collections.Generic.List? ListType24 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType24 { get; set; }
+ public global::System.Collections.Generic.List? ListType25 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType25 { get; set; }
+ public global::System.Collections.Generic.List? ListType26 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType26 { get; set; }
+ public global::System.Collections.Generic.List? ListType27 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType27 { get; set; }
+ public global::System.Collections.Generic.List? ListType28 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType28 { get; set; }
+ public global::System.Collections.Generic.List? ListType29 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType29 { get; set; }
+ public global::System.Collections.Generic.List? ListType30 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType30 { get; set; }
+ public global::System.Collections.Generic.List? ListType31 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType31 { get; set; }
+ public global::System.Collections.Generic.List? ListType32 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType32 { get; set; }
+ public global::System.Collections.Generic.List? ListType33 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType33 { get; set; }
+ public global::System.Collections.Generic.List? ListType34 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType34 { get; set; }
+ public global::System.Collections.Generic.List? ListType35 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType35 { get; set; }
+ public global::System.Collections.Generic.List? ListType36 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType36 { get; set; }
+ public global::System.Collections.Generic.List? ListType37 { get; set; }
///
///
///
- public global::System.Collections.Generic.List? ListType37 { get; set; }
+ public global::System.Collections.Generic.List? ListType38 { get; set; }
}
}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationObjectV3.Json.g.cs b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationObjectV3.Json.g.cs
new file mode 100644
index 0000000..3aa4da4
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationObjectV3.Json.g.cs
@@ -0,0 +1,92 @@
+#nullable enable
+
+namespace Ideogram
+{
+ public sealed partial class EditImageGenerationObjectV3
+ {
+ ///
+ /// Serializes the current instance to a JSON string using the provided JsonSerializerContext.
+ ///
+ public string ToJson(
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return global::System.Text.Json.JsonSerializer.Serialize(
+ this,
+ this.GetType(),
+ jsonSerializerContext);
+ }
+
+ ///
+ /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public string ToJson(
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.Serialize(
+ this,
+ jsonSerializerOptions);
+ }
+
+ ///
+ /// Deserializes a JSON string using the provided JsonSerializerContext.
+ ///
+ public static global::Ideogram.EditImageGenerationObjectV3? FromJson(
+ string json,
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return global::System.Text.Json.JsonSerializer.Deserialize(
+ json,
+ typeof(global::Ideogram.EditImageGenerationObjectV3),
+ jsonSerializerContext) as global::Ideogram.EditImageGenerationObjectV3;
+ }
+
+ ///
+ /// Deserializes a JSON string using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public static global::Ideogram.EditImageGenerationObjectV3? FromJson(
+ string json,
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.Deserialize(
+ json,
+ jsonSerializerOptions);
+ }
+
+ ///
+ /// Deserializes a JSON stream using the provided JsonSerializerContext.
+ ///
+ public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync(
+ global::System.IO.Stream jsonStream,
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return (await global::System.Text.Json.JsonSerializer.DeserializeAsync(
+ jsonStream,
+ typeof(global::Ideogram.EditImageGenerationObjectV3),
+ jsonSerializerContext).ConfigureAwait(false)) as global::Ideogram.EditImageGenerationObjectV3;
+ }
+
+ ///
+ /// Deserializes a JSON stream using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync(
+ global::System.IO.Stream jsonStream,
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.DeserializeAsync(
+ jsonStream,
+ jsonSerializerOptions);
+ }
+ }
+}
diff --git a/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationObjectV3.g.cs b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationObjectV3.g.cs
new file mode 100644
index 0000000..901453c
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationObjectV3.g.cs
@@ -0,0 +1,136 @@
+
+#nullable enable
+
+namespace Ideogram
+{
+ ///
+ /// Example: {"style_type":"GENERAL","seed":12345,"upscaled_resolution":"4096x4096","prompt":"A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there\u0027s an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.","resolution":"4096x4096","url":"https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804\u0026sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89","is_image_safe":true}
+ ///
+ public sealed partial class EditImageGenerationObjectV3
+ {
+ ///
+ /// The direct link to the image generated.
+ /// Example: https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89
+ ///
+ /// https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89
+ [global::System.Text.Json.Serialization.JsonPropertyName("url")]
+ public string? Url { get; set; }
+
+ ///
+ /// The prompt used for the generation. This may be different from the original prompt.
+ /// Example: A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.
+ ///
+ /// A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.
+ [global::System.Text.Json.Serialization.JsonPropertyName("prompt")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required string Prompt { get; set; }
+
+ ///
+ /// Output resolution, only used if operations alters image dimensions, such as upscale, crop etc.
+ /// Example: 4096x4096
+ ///
+ /// 4096x4096
+ [global::System.Text.Json.Serialization.JsonPropertyName("resolution")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required string Resolution { get; set; }
+
+ ///
+ /// Output resolution, only used if operations alters image dimensions, such as upscale, crop etc.
+ /// Example: 4096x4096
+ ///
+ /// 4096x4096
+ [global::System.Text.Json.Serialization.JsonPropertyName("upscaled_resolution")]
+ public string? UpscaledResolution { get; set; }
+
+ ///
+ /// Whether this request passes safety checks. If false, the url field will be empty.
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("is_image_safe")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required bool IsImageSafe { get; set; }
+
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ /// 12345
+ [global::System.Text.Json.Serialization.JsonPropertyName("seed")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required int Seed { get; set; }
+
+ ///
+ /// The style type to generate with.
+ /// Default Value: GENERAL
+ /// Example: GENERAL
+ ///
+ /// GENERAL
+ [global::System.Text.Json.Serialization.JsonPropertyName("style_type")]
+ [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Ideogram.JsonConverters.StyleTypeV3JsonConverter))]
+ public global::Ideogram.StyleTypeV3? StyleType { get; set; }
+
+ ///
+ /// Additional properties that are not explicitly defined in the schema
+ ///
+ [global::System.Text.Json.Serialization.JsonExtensionData]
+ public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary();
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ ///
+ /// The prompt used for the generation. This may be different from the original prompt.
+ /// Example: A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.
+ ///
+ ///
+ /// Output resolution, only used if operations alters image dimensions, such as upscale, crop etc.
+ /// Example: 4096x4096
+ ///
+ ///
+ /// Whether this request passes safety checks. If false, the url field will be empty.
+ ///
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ ///
+ /// The direct link to the image generated.
+ /// Example: https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89
+ ///
+ ///
+ /// Output resolution, only used if operations alters image dimensions, such as upscale, crop etc.
+ /// Example: 4096x4096
+ ///
+ ///
+ /// The style type to generate with.
+ /// Default Value: GENERAL
+ /// Example: GENERAL
+ ///
+#if NET7_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers]
+#endif
+ public EditImageGenerationObjectV3(
+ string prompt,
+ string resolution,
+ bool isImageSafe,
+ int seed,
+ string? url,
+ string? upscaledResolution,
+ global::Ideogram.StyleTypeV3? styleType)
+ {
+ this.Url = url;
+ this.Prompt = prompt ?? throw new global::System.ArgumentNullException(nameof(prompt));
+ this.Resolution = resolution ?? throw new global::System.ArgumentNullException(nameof(resolution));
+ this.UpscaledResolution = upscaledResolution;
+ this.IsImageSafe = isImageSafe;
+ this.Seed = seed;
+ this.StyleType = styleType;
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public EditImageGenerationObjectV3()
+ {
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationResponseV3.Json.g.cs b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationResponseV3.Json.g.cs
new file mode 100644
index 0000000..5d26595
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationResponseV3.Json.g.cs
@@ -0,0 +1,92 @@
+#nullable enable
+
+namespace Ideogram
+{
+ public sealed partial class EditImageGenerationResponseV3
+ {
+ ///
+ /// Serializes the current instance to a JSON string using the provided JsonSerializerContext.
+ ///
+ public string ToJson(
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return global::System.Text.Json.JsonSerializer.Serialize(
+ this,
+ this.GetType(),
+ jsonSerializerContext);
+ }
+
+ ///
+ /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public string ToJson(
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.Serialize(
+ this,
+ jsonSerializerOptions);
+ }
+
+ ///
+ /// Deserializes a JSON string using the provided JsonSerializerContext.
+ ///
+ public static global::Ideogram.EditImageGenerationResponseV3? FromJson(
+ string json,
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return global::System.Text.Json.JsonSerializer.Deserialize(
+ json,
+ typeof(global::Ideogram.EditImageGenerationResponseV3),
+ jsonSerializerContext) as global::Ideogram.EditImageGenerationResponseV3;
+ }
+
+ ///
+ /// Deserializes a JSON string using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public static global::Ideogram.EditImageGenerationResponseV3? FromJson(
+ string json,
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.Deserialize(
+ json,
+ jsonSerializerOptions);
+ }
+
+ ///
+ /// Deserializes a JSON stream using the provided JsonSerializerContext.
+ ///
+ public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync(
+ global::System.IO.Stream jsonStream,
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return (await global::System.Text.Json.JsonSerializer.DeserializeAsync(
+ jsonStream,
+ typeof(global::Ideogram.EditImageGenerationResponseV3),
+ jsonSerializerContext).ConfigureAwait(false)) as global::Ideogram.EditImageGenerationResponseV3;
+ }
+
+ ///
+ /// Deserializes a JSON stream using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync(
+ global::System.IO.Stream jsonStream,
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.DeserializeAsync(
+ jsonStream,
+ jsonSerializerOptions);
+ }
+ }
+}
diff --git a/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationResponseV3.g.cs b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationResponseV3.g.cs
new file mode 100644
index 0000000..c4cc232
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageGenerationResponseV3.g.cs
@@ -0,0 +1,60 @@
+
+#nullable enable
+
+namespace Ideogram
+{
+ ///
+ /// The response which contains information about the edited image, including the download link.
+ /// Images links are available for a limited period of time; if you would like to keep the image, you must download it.
+ /// Example: {"data":[{"style_type":"GENERAL","seed":12345,"upscaled_resolution":"4096x4096","prompt":"A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there\u0027s an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.","resolution":"4096x4096","url":"https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804\u0026sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89","is_image_safe":true},{"style_type":"GENERAL","seed":12345,"upscaled_resolution":"4096x4096","prompt":"A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there\u0027s an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.","resolution":"4096x4096","url":"https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804\u0026sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89","is_image_safe":true}],"created":"2000-01-23T04:56:07\u002B00:00"}
+ ///
+ public sealed partial class EditImageGenerationResponseV3
+ {
+ ///
+ /// The time the request was created.
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("created")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required global::System.DateTime Created { get; set; }
+
+ ///
+ /// A list of ImageObjects that contain the edited image(s).
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("data")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required global::System.Collections.Generic.IList Data { get; set; }
+
+ ///
+ /// Additional properties that are not explicitly defined in the schema
+ ///
+ [global::System.Text.Json.Serialization.JsonExtensionData]
+ public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary();
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ ///
+ /// The time the request was created.
+ ///
+ ///
+ /// A list of ImageObjects that contain the edited image(s).
+ ///
+#if NET7_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers]
+#endif
+ public EditImageGenerationResponseV3(
+ global::System.DateTime created,
+ global::System.Collections.Generic.IList data)
+ {
+ this.Created = created;
+ this.Data = data ?? throw new global::System.ArgumentNullException(nameof(data));
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public EditImageGenerationResponseV3()
+ {
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/Ideogram.Models.EditImageV2RequestV3.Json.g.cs b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageV2RequestV3.Json.g.cs
new file mode 100644
index 0000000..5ae36f3
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageV2RequestV3.Json.g.cs
@@ -0,0 +1,92 @@
+#nullable enable
+
+namespace Ideogram
+{
+ public sealed partial class EditImageV2RequestV3
+ {
+ ///
+ /// Serializes the current instance to a JSON string using the provided JsonSerializerContext.
+ ///
+ public string ToJson(
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return global::System.Text.Json.JsonSerializer.Serialize(
+ this,
+ this.GetType(),
+ jsonSerializerContext);
+ }
+
+ ///
+ /// Serializes the current instance to a JSON string using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public string ToJson(
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.Serialize(
+ this,
+ jsonSerializerOptions);
+ }
+
+ ///
+ /// Deserializes a JSON string using the provided JsonSerializerContext.
+ ///
+ public static global::Ideogram.EditImageV2RequestV3? FromJson(
+ string json,
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return global::System.Text.Json.JsonSerializer.Deserialize(
+ json,
+ typeof(global::Ideogram.EditImageV2RequestV3),
+ jsonSerializerContext) as global::Ideogram.EditImageV2RequestV3;
+ }
+
+ ///
+ /// Deserializes a JSON string using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public static global::Ideogram.EditImageV2RequestV3? FromJson(
+ string json,
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.Deserialize(
+ json,
+ jsonSerializerOptions);
+ }
+
+ ///
+ /// Deserializes a JSON stream using the provided JsonSerializerContext.
+ ///
+ public static async global::System.Threading.Tasks.ValueTask FromJsonStreamAsync(
+ global::System.IO.Stream jsonStream,
+ global::System.Text.Json.Serialization.JsonSerializerContext jsonSerializerContext)
+ {
+ return (await global::System.Text.Json.JsonSerializer.DeserializeAsync(
+ jsonStream,
+ typeof(global::Ideogram.EditImageV2RequestV3),
+ jsonSerializerContext).ConfigureAwait(false)) as global::Ideogram.EditImageV2RequestV3;
+ }
+
+ ///
+ /// Deserializes a JSON stream using the provided JsonSerializerOptions.
+ ///
+#if NET8_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.RequiresUnreferencedCode("JSON serialization and deserialization might require types that cannot be statically analyzed. Use the overload that takes a JsonTypeInfo or JsonSerializerContext, or make sure all of the required types are preserved.")]
+ [global::System.Diagnostics.CodeAnalysis.RequiresDynamicCode("JSON serialization and deserialization might require types that cannot be statically analyzed and might need runtime code generation. Use System.Text.Json source generation for native AOT applications.")]
+#endif
+ public static global::System.Threading.Tasks.ValueTask FromJsonStreamAsync(
+ global::System.IO.Stream jsonStream,
+ global::System.Text.Json.JsonSerializerOptions? jsonSerializerOptions = null)
+ {
+ return global::System.Text.Json.JsonSerializer.DeserializeAsync(
+ jsonStream,
+ jsonSerializerOptions);
+ }
+ }
+}
diff --git a/src/libs/Ideogram/Generated/Ideogram.Models.EditImageV2RequestV3.g.cs b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageV2RequestV3.g.cs
new file mode 100644
index 0000000..a1ef930
--- /dev/null
+++ b/src/libs/Ideogram/Generated/Ideogram.Models.EditImageV2RequestV3.g.cs
@@ -0,0 +1,153 @@
+
+#nullable enable
+
+namespace Ideogram
+{
+ ///
+ ///
+ ///
+ public sealed partial class EditImageV2RequestV3
+ {
+ ///
+ /// The prompt describing the desired edit.
+ /// Example: Change the background to a beach sunset.
+ ///
+ /// Change the background to a beach sunset.
+ [global::System.Text.Json.Serialization.JsonPropertyName("prompt")]
+ [global::System.Text.Json.Serialization.JsonRequired]
+ public required string Prompt { get; set; }
+
+ ///
+ /// Images to edit (max 10 images, max size 10MB each); JPEG, WebP and PNG formats are supported.
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("images")]
+ public global::System.Collections.Generic.IList? Images { get; set; }
+
+ ///
+ /// 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.
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("image_urls")]
+ public global::System.Collections.Generic.IList? ImageUrls { get; set; }
+
+ ///
+ /// The number of images to generate.
+ /// Default Value: 1
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("num_images")]
+ public int? NumImages { get; set; }
+
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ /// 12345
+ [global::System.Text.Json.Serialization.JsonPropertyName("seed")]
+ public int? Seed { get; set; }
+
+ ///
+ /// Determine if MagicPrompt should be used in generating the request or not.
+ /// Example: ON
+ ///
+ /// ON
+ [global::System.Text.Json.Serialization.JsonPropertyName("magic_prompt")]
+ [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Ideogram.JsonConverters.MagicPromptOptionJsonConverter))]
+ public global::Ideogram.MagicPromptOption? MagicPrompt { get; set; }
+
+ ///
+ /// The resolutions supported for Ideogram 3.0.
+ /// Example: 1280x800
+ ///
+ /// 1280x800
+ [global::System.Text.Json.Serialization.JsonPropertyName("resolution")]
+ [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Ideogram.JsonConverters.ResolutionV3JsonConverter))]
+ public global::Ideogram.ResolutionV3? Resolution { get; set; }
+
+ ///
+ /// The aspect ratio to use for image generation, which determines the image's resolution. Cannot be used in conjunction with resolution. Defaults to 1x1.
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("aspect_ratio")]
+ [global::System.Text.Json.Serialization.JsonConverter(typeof(global::Ideogram.JsonConverters.AspectRatioV3JsonConverter))]
+ public global::Ideogram.AspectRatioV3? AspectRatio { get; set; }
+
+ ///
+ /// Whether the output should have a transparent background. Default false.
+ /// Default Value: false
+ ///
+ [global::System.Text.Json.Serialization.JsonPropertyName("transparent_background")]
+ public bool? TransparentBackground { get; set; }
+
+ ///
+ /// Additional properties that are not explicitly defined in the schema
+ ///
+ [global::System.Text.Json.Serialization.JsonExtensionData]
+ public global::System.Collections.Generic.IDictionary AdditionalProperties { get; set; } = new global::System.Collections.Generic.Dictionary();
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ ///
+ /// The prompt describing the desired edit.
+ /// Example: Change the background to a beach sunset.
+ ///
+ ///
+ /// Images to edit (max 10 images, max size 10MB each); JPEG, WebP and PNG formats are supported.
+ ///
+ ///
+ /// 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.
+ ///
+ ///
+ /// The number of images to generate.
+ /// Default Value: 1
+ ///
+ ///
+ /// Random seed. Set for reproducible generation.
+ /// Example: 12345
+ ///
+ ///
+ /// Determine if MagicPrompt should be used in generating the request or not.
+ /// Example: ON
+ ///
+ ///
+ /// The resolutions supported for Ideogram 3.0.
+ /// Example: 1280x800
+ ///
+ ///
+ /// The aspect ratio to use for image generation, which determines the image's resolution. Cannot be used in conjunction with resolution. Defaults to 1x1.
+ ///
+ ///
+ /// Whether the output should have a transparent background. Default false.
+ /// Default Value: false
+ ///
+#if NET7_0_OR_GREATER
+ [global::System.Diagnostics.CodeAnalysis.SetsRequiredMembers]
+#endif
+ public EditImageV2RequestV3(
+ string prompt,
+ global::System.Collections.Generic.IList? images,
+ global::System.Collections.Generic.IList? imageUrls,
+ int? numImages,
+ int? seed,
+ global::Ideogram.MagicPromptOption? magicPrompt,
+ global::Ideogram.ResolutionV3? resolution,
+ global::Ideogram.AspectRatioV3? aspectRatio,
+ bool? transparentBackground)
+ {
+ this.Prompt = prompt ?? throw new global::System.ArgumentNullException(nameof(prompt));
+ this.Images = images;
+ this.ImageUrls = imageUrls;
+ this.NumImages = numImages;
+ this.Seed = seed;
+ this.MagicPrompt = magicPrompt;
+ this.Resolution = resolution;
+ this.AspectRatio = aspectRatio;
+ this.TransparentBackground = transparentBackground;
+ }
+
+ ///
+ /// Initializes a new instance of the class.
+ ///
+ public EditImageV2RequestV3()
+ {
+ }
+ }
+}
\ No newline at end of file
diff --git a/src/libs/Ideogram/Generated/autosdk.generated-examples.json b/src/libs/Ideogram/Generated/autosdk.generated-examples.json
index afb30ca..89c5d67 100644
--- a/src/libs/Ideogram/Generated/autosdk.generated-examples.json
+++ b/src/libs/Ideogram/Generated/autosdk.generated-examples.json
@@ -79,6 +79,17 @@
},
{
"Order": 8,
+ "Title": "Edit with Ideogram V2",
+ "Slug": "post-edit-image-v2-v3",
+ "Description": "Edit one or more images using a text prompt. Provide images via file upload\nor Ideogram image URLs, and describe the desired edit in your prompt.\n\nUnlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the\nprompt to determine what to change.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
+ "Language": "http",
+ "Code": "### Edit with Ideogram V2\n# @name post_edit_image_v2_v3\nPOST {{host}}/v1/ideogram-v3/instructional-edit\nAuthorization: Bearer {{token}}\nContent-Type: multipart/form-data\nAccept: application/json\n\n## Responses\n# 200\n# Description: Image edits generated successfully.\n# Content-Type: application/json\n# 400\n# Description: Invalid input provided.\n# 401\n# Description: Not authorized to generate an image.\n# 402\n# Description: Insufficient credits or quota.\n# 422\n# Description: Prompt or provided image failed safety checks.\n# Content-Type: application/json\n# 429\n# Description: Too many requests.\n# 503\n# Description: Image generation service temporarily unavailable.",
+ "Format": "http",
+ "OperationId": "post_edit_image_v2_v3",
+ "Setup": null
+ },
+ {
+ "Order": 9,
"Title": "Edit with Ideogram 3.0",
"Slug": "post-edit-image-v3",
"Description": "Edit a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image\nshould be edited, while the prompt and chosen style can further guide the edit.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -89,7 +100,7 @@
"Setup": null
},
{
- "Order": 9,
+ "Order": 10,
"Title": "Generate a design from a text prompt with text detection and correction",
"Slug": "post-generate-design-v3",
"Description": "Generates a design synchronously from a text prompt using the Ideogram 3.0 model, then detects and corrects text layers within the generated image.\n\nThe response includes the generated image URL along with detected text layers (with font, size, color, position) and image asset layers.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -100,7 +111,7 @@
"Setup": null
},
{
- "Order": 10,
+ "Order": 11,
"Title": "Generate (legacy)",
"Slug": "post-generate-image",
"Description": "Generates images synchronously based on a given prompt and optional parameters.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -111,7 +122,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 11,
+ "Order": 12,
"Title": "Generate with Ideogram 3.0",
"Slug": "post-generate-image-v3",
"Description": "Generates images synchronously based on a given prompt and optional parameters using the Ideogram 3.0 model.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -122,7 +133,7 @@
"Setup": null
},
{
- "Order": 12,
+ "Order": 13,
"Title": "Generate with Ideogram 3.0 (Transparent Background)",
"Slug": "post-generate-image-v3-transparent",
"Description": "Generates images with transparent background synchronously based on a given prompt and optional parameters using\nthe Ideogram 3.0 model. Images will be generated using maximum supported resolution at the specified aspect ratio\nto allow best results with upscaler. The selected resolution is written to the response, not the upscaled final\nresolution.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -133,7 +144,7 @@
"Setup": null
},
{
- "Order": 13,
+ "Order": 14,
"Title": "Generate with Ideogram 4.0",
"Slug": "post-generate-image-v4",
"Description": "Generates images synchronously using the Ideogram 4.0 model.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -144,7 +155,18 @@
"Setup": null
},
{
- "Order": 14,
+ "Order": 15,
+ "Title": "Inpaint with Ideogram 3.0",
+ "Slug": "post-inpaint-image-v3",
+ "Description": "Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image\nshould be edited, while the prompt and chosen style can further guide the edit.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
+ "Language": "http",
+ "Code": "### Inpaint with Ideogram 3.0\n# @name post_inpaint_image_v3\nPOST {{host}}/v1/ideogram-v3/inpaint\nAuthorization: Bearer {{token}}\nContent-Type: multipart/form-data\nAccept: application/json\n\n## Responses\n# 200\n# Description: Image edits generated successfully.\n# Content-Type: application/json\n# 400\n# Description: Invalid input provided.\n# 401\n# Description: Not authorized to generate an image.\n# 422\n# Description: Prompt or Initial Image failed the safety checks.\n# Content-Type: application/json\n# 429\n# Description: Too many requests.",
+ "Format": "http",
+ "OperationId": "post_inpaint_image_v3",
+ "Setup": null
+ },
+ {
+ "Order": 16,
"Title": "Layerize an existing flat graphic image with text detection and correction",
"Slug": "post-layerize-design-v3",
"Description": "Processes an existing flat graphic image to detect and correct text layers without generating a new image from scratch.\n\nThe uploaded image is analyzed for text content, which is then removed and returned as structured text layers with font matching, sizing, and color information.\n\nSupported image formats include JPEG, PNG, and WebP (max size 10MB).\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -155,7 +177,7 @@
"Setup": null
},
{
- "Order": 15,
+ "Order": 17,
"Title": "Layerize Text",
"Slug": "post-layerize-text-v3",
"Description": "Analyzes an image to detect text regions, then returns each detected text block with its position, content, font information, and styling.\n\nThe response includes a text-erased base image (background with all text removed) and a flat list of detected text blocks.\n\nSupported image formats include JPEG, PNG, and WebP (max size 10MB).\n\nImage links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -166,7 +188,7 @@
"Setup": null
},
{
- "Order": 16,
+ "Order": 18,
"Title": "Reframe (legacy)",
"Slug": "post-reframe-image",
"Description": "Reframe a square image to a chosen resolution. The supported image formats include JPEG, PNG, and WebP.\n\nImage links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -177,7 +199,7 @@
"Setup": null
},
{
- "Order": 17,
+ "Order": 19,
"Title": "Reframe with Ideogram 3.0",
"Slug": "post-reframe-image-v3",
"Description": "Reframe a square image to a chosen resolution with Ideogram 3.0. The supported image formats include JPEG, PNG, and WebP.\n\nImage links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -188,7 +210,7 @@
"Setup": null
},
{
- "Order": 18,
+ "Order": 20,
"Title": "Remix (legacy)",
"Slug": "post-remix-image",
"Description": "Remix provided images synchronously based on a given prompt and optional parameters.\n\nInput images are cropped to the chosen aspect ratio before being remixed.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -199,7 +221,7 @@
"Setup": null
},
{
- "Order": 19,
+ "Order": 21,
"Title": "Remix with Ideogram 3.0",
"Slug": "post-remix-image-v3",
"Description": "Remix provided images synchronously based on a given prompt and optional parameters with the Ideogram 3.0 model.\n\nInput images are cropped to the chosen aspect ratio before being remixed.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -210,7 +232,7 @@
"Setup": null
},
{
- "Order": 20,
+ "Order": 22,
"Title": "Replace Background with Ideogram 3.0",
"Slug": "post-replace-background-v3",
"Description": "Replace the background of a given image synchronously using a prompt with Ideogram 3.0. The foreground subject\nwill be identified and kept, while the background is replaced based on the prompt and chosen style.\nSupported image formats include JPEG, PNG, and WebP.\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -221,7 +243,7 @@
"Setup": null
},
{
- "Order": 21,
+ "Order": 23,
"Title": "Virtual Try-On with Ideogram 3.0",
"Slug": "post-try-on-v3",
"Description": "Performs virtual clothing try-on by automatically segmenting the clothing in the provided image\nand replacing it based on the prompt. The user provides an image and an optional prompt describing\nthe desired clothing change (e.g., \u0022change his shirt to a pink shirt\u0022).\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -232,7 +254,7 @@
"Setup": null
},
{
- "Order": 22,
+ "Order": 24,
"Title": "Upscale",
"Slug": "post-upscale-image",
"Description": "Upscale provided images synchronously with an optional prompt.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
@@ -243,7 +265,7 @@
"Setup": null
},
{
- "Order": 23,
+ "Order": 25,
"Title": "Testing",
"Slug": "post-internal-testing",
"Description": "Just a testing endpoint",
@@ -254,7 +276,7 @@
"Setup": null
},
{
- "Order": 24,
+ "Order": 26,
"Title": "Add members to a specific organization",
"Slug": "add-organization-members",
"Description": "Generated from OpenAPI examples.",
@@ -265,7 +287,7 @@
"Setup": null
},
{
- "Order": 25,
+ "Order": 27,
"Title": "Creates an API key.",
"Slug": "create-api-key",
"Description": "Generated from OpenAPI examples.",
@@ -276,7 +298,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 26,
+ "Order": 28,
"Title": "Create an API key for a specific organization",
"Slug": "create-api-key-v2",
"Description": "Generated from OpenAPI examples.",
@@ -287,7 +309,7 @@
"Setup": null
},
{
- "Order": 27,
+ "Order": 29,
"Title": "Delete an API key.",
"Slug": "delete-single-api-key",
"Description": "Generated from OpenAPI examples.",
@@ -298,7 +320,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 28,
+ "Order": 30,
"Title": "Retrieve current API keys and their respective data.",
"Slug": "get-api-keys",
"Description": "Generated from OpenAPI examples.",
@@ -309,7 +331,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 29,
+ "Order": 31,
"Title": "Retrieve API keys for a specific organization",
"Slug": "get-api-keys-v2",
"Description": "Generated from OpenAPI examples.",
@@ -320,7 +342,7 @@
"Setup": null
},
{
- "Order": 30,
+ "Order": 32,
"Title": "Get search results for user handles with suggestions for a particular organization.",
"Slug": "get-api-organization-user-suggestions",
"Description": "Generated from OpenAPI examples.",
@@ -331,7 +353,7 @@
"Setup": null
},
{
- "Order": 31,
+ "Order": 33,
"Title": "Retrieve the user\u0027s current API profiles",
"Slug": "get-api-profiles",
"Description": "Generated from OpenAPI examples.",
@@ -342,7 +364,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 32,
+ "Order": 34,
"Title": "Retrieve data relevant to connecting to Stripe.",
"Slug": "get-api-stripe-subscription",
"Description": "Generated from OpenAPI examples.",
@@ -353,7 +375,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 33,
+ "Order": 35,
"Title": "Retrieve data relevant to creating an API subscription.",
"Slug": "get-api-subscription",
"Description": "Generated from OpenAPI examples.",
@@ -364,7 +386,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 34,
+ "Order": 36,
"Title": "Retrieve the latest terms of service for API usage.",
"Slug": "get-api-terms",
"Description": "Generated from OpenAPI examples.",
@@ -375,7 +397,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 35,
+ "Order": 37,
"Title": "Retrieve members of a specific organization",
"Slug": "get-organization-members",
"Description": "Generated from OpenAPI examples.",
@@ -386,7 +408,7 @@
"Setup": null
},
{
- "Order": 36,
+ "Order": 38,
"Title": "Retrieve usage information segmented by time period with tool-specific breakdowns",
"Slug": "get-usage-info",
"Description": "Generated from OpenAPI examples.",
@@ -397,7 +419,7 @@
"Setup": null
},
{
- "Order": 37,
+ "Order": 39,
"Title": "Retrieve user credit information and spending metrics",
"Slug": "get-user-credits",
"Description": "Generated from OpenAPI examples.",
@@ -408,7 +430,7 @@
"Setup": null
},
{
- "Order": 38,
+ "Order": 40,
"Title": "Retrieve user spend commit information",
"Slug": "get-user-spend-commit-info",
"Description": "Generated from OpenAPI examples.",
@@ -419,7 +441,7 @@
"Setup": null
},
{
- "Order": 39,
+ "Order": 41,
"Title": "Retrieve invoices for a specific organization",
"Slug": "list-organization-invoices",
"Description": "Generated from OpenAPI examples.",
@@ -430,7 +452,7 @@
"Setup": null
},
{
- "Order": 40,
+ "Order": 42,
"Title": "Add credits to an API user\u0027s account.",
"Slug": "post-add-credits-for-api",
"Description": "Generated from OpenAPI examples.",
@@ -441,7 +463,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 41,
+ "Order": 43,
"Title": "Update API subscription settings",
"Slug": "post-api-subscription",
"Description": "Generated from OpenAPI examples.",
@@ -452,7 +474,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 42,
+ "Order": 44,
"Title": "Accept terms",
"Slug": "post-api-terms",
"Description": "Generated from OpenAPI examples.",
@@ -463,7 +485,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 43,
+ "Order": 45,
"Title": "Promote members to OWNER role in a specific organization",
"Slug": "promote-organization-members",
"Description": "Generated from OpenAPI examples.",
@@ -474,7 +496,7 @@
"Setup": null
},
{
- "Order": 44,
+ "Order": 46,
"Title": "Reactivates a subscription by attempting to re-enable Metronome billing.",
"Slug": "reactivate-subscription",
"Description": "Generated from OpenAPI examples.",
@@ -485,7 +507,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 45,
+ "Order": 47,
"Title": "Remove members from a specific organization",
"Slug": "remove-organization-members",
"Description": "Generated from OpenAPI examples.",
@@ -496,7 +518,7 @@
"Setup": null
},
{
- "Order": 46,
+ "Order": 48,
"Title": "Get model details",
"Slug": "get-custom-model",
"Description": "Get detailed information about a specific custom model, including training run history for owned models. The user must either own the model or the model must be shared with the user\u0027s organization via the model registry. Returns 404 if the model is not found or not accessible.",
@@ -507,7 +529,7 @@
"Setup": null
},
{
- "Order": 47,
+ "Order": 49,
"Title": "List models",
"Slug": "list-custom-models",
"Description": "Lists custom models for the authenticated user. Use the \u0060scope\u0060 parameter to control which models are returned. \u0060owned\u0060 (default) returns models created by the user. \u0060shared\u0060 returns models shared with the user\u0027s organization via the model registry, excluding the user\u0027s own models.",
@@ -518,7 +540,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 48,
+ "Order": 50,
"Title": "Generate Magic Prompt",
"Slug": "post-magic-prompt",
"Description": "Transforms basic prompts into a magic prompt. Internal use only (feature flagged). TODO: update description if enabled externally.",
@@ -529,7 +551,7 @@
"Setup": "This example assumes \u0060using Ideogram;\u0060 is in scope and \u0060apiKey\u0060 contains the required credential."
},
{
- "Order": 49,
+ "Order": 51,
"Title": "Describe",
"Slug": "post-describe",
"Description": "Describe an image.\n\nSupported image formats include JPEG, PNG, and WebP.",
diff --git a/src/libs/Ideogram/openapi.json b/src/libs/Ideogram/openapi.json
index a388f94..dedd5a8 100644
--- a/src/libs/Ideogram/openapi.json
+++ b/src/libs/Ideogram/openapi.json
@@ -2708,6 +2708,126 @@
"x-openapi-router-controller": "external_api.generated.openapi.controllers.generate_controller"
}
},
+ "/v1/ideogram-v3/inpaint": {
+ "post": {
+ "description": "Inpaint a given image synchronously using the provided mask with Ideogram 3.0. The mask indicates which part of the image\nshould be edited, while the prompt and chosen style can further guide the edit.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.\n",
+ "operationId": "post_inpaint_image_v3",
+ "requestBody": {
+ "content": {
+ "multipart/form-data": {
+ "encoding": {
+ "color_palette": {
+ "contentType": "application/json",
+ "style": "form"
+ }
+ },
+ "schema": {
+ "$ref": "#/components/schemas/EditImageRequestV3"
+ }
+ }
+ },
+ "description": "A request to inpaint an image with Ideogram 3.0.",
+ "required": true,
+ "x-body-name": "body"
+ },
+ "responses": {
+ "200": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/ImageGenerationResponseV3"
+ }
+ }
+ },
+ "description": "Image edits generated successfully."
+ },
+ "400": {
+ "description": "Invalid input provided."
+ },
+ "401": {
+ "description": "Not authorized to generate an image."
+ },
+ "422": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/GenerateImageSafetyError"
+ }
+ }
+ },
+ "description": "Prompt or Initial Image failed the safety checks."
+ },
+ "429": {
+ "description": "Too many requests."
+ }
+ },
+ "summary": "Inpaint with Ideogram 3.0",
+ "tags": [
+ "generate"
+ ],
+ "x-openapi-router-controller": "external_api.generated.openapi.controllers.generate_controller"
+ }
+ },
+ "/v1/ideogram-v3/instructional-edit": {
+ "post": {
+ "description": "Edit one or more images using a text prompt. Provide images via file upload\nor Ideogram image URLs, and describe the desired edit in your prompt.\n\nUnlike inpainting (/v1/ideogram-v3/inpaint), no mask is required. The model interprets the\nprompt to determine what to change.\n\nSupported image formats include JPEG, PNG, and WebP.\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.\n",
+ "operationId": "post_edit_image_v2_v3",
+ "requestBody": {
+ "content": {
+ "multipart/form-data": {
+ "schema": {
+ "$ref": "#/components/schemas/EditImageV2RequestV3"
+ }
+ }
+ },
+ "description": "A request to edit images.",
+ "required": true,
+ "x-body-name": "body"
+ },
+ "responses": {
+ "200": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/EditImageGenerationResponseV3"
+ }
+ }
+ },
+ "description": "Image edits generated successfully."
+ },
+ "400": {
+ "description": "Invalid input provided."
+ },
+ "401": {
+ "description": "Not authorized to generate an image."
+ },
+ "402": {
+ "description": "Insufficient credits or quota."
+ },
+ "422": {
+ "content": {
+ "application/json": {
+ "schema": {
+ "$ref": "#/components/schemas/GenerateImageSafetyError"
+ }
+ }
+ },
+ "description": "Prompt or provided image failed safety checks."
+ },
+ "429": {
+ "description": "Too many requests."
+ },
+ "503": {
+ "description": "Image generation service temporarily unavailable."
+ }
+ },
+ "summary": "Edit with Ideogram V2",
+ "tags": [
+ "generate"
+ ],
+ "x-openapi-router-controller": "external_api.generated.openapi.controllers.generate_controller"
+ }
+ },
"/v1/ideogram-v3/layerize-design": {
"post": {
"description": "Processes an existing flat graphic image to detect and correct text layers without generating a new image from scratch.\n\nThe uploaded image is analyzed for text content, which is then removed and returned as structured text layers with font matching, sizing, and color information.\n\nSupported image formats include JPEG, PNG, and WebP (max size 10MB).\n\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.\n",
@@ -3998,6 +4118,56 @@
],
"type": "object"
},
+ "EditImageV2RequestV3": {
+ "properties": {
+ "prompt": {
+ "description": "The prompt describing the desired edit.",
+ "example": "Change the background to a beach sunset.",
+ "type": "string"
+ },
+ "images": {
+ "description": "Images to edit (max 10 images, max size 10MB each); JPEG, WebP and PNG formats are supported.",
+ "items": {
+ "format": "binary",
+ "type": "string"
+ },
+ "maxItems": 10,
+ "type": "array"
+ },
+ "image_urls": {
+ "description": "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.",
+ "items": {
+ "type": "string"
+ },
+ "maxItems": 10,
+ "type": "array"
+ },
+ "num_images": {
+ "$ref": "#/components/schemas/NumImages"
+ },
+ "seed": {
+ "$ref": "#/components/schemas/Seed"
+ },
+ "magic_prompt": {
+ "$ref": "#/components/schemas/MagicPromptOption"
+ },
+ "resolution": {
+ "$ref": "#/components/schemas/ResolutionV3"
+ },
+ "aspect_ratio": {
+ "$ref": "#/components/schemas/AspectRatioV3"
+ },
+ "transparent_background": {
+ "default": false,
+ "description": "Whether the output should have a transparent background. Default false.",
+ "type": "boolean"
+ }
+ },
+ "required": [
+ "prompt"
+ ],
+ "type": "object"
+ },
"TryOnRequestV3": {
"properties": {
"image": {
@@ -4597,6 +4767,119 @@
"title": "ImageGenerationObjectV3",
"type": "object"
},
+ "EditImageGenerationResponseV3": {
+ "description": "The response which contains information about the edited image, including the download link.\nImages links are available for a limited period of time; if you would like to keep the image, you must download it.",
+ "example": {
+ "data": [
+ {
+ "style_type": "GENERAL",
+ "seed": 12345,
+ "upscaled_resolution": "4096x4096",
+ "prompt": "A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.",
+ "resolution": "4096x4096",
+ "url": "https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89",
+ "is_image_safe": true
+ },
+ {
+ "style_type": "GENERAL",
+ "seed": 12345,
+ "upscaled_resolution": "4096x4096",
+ "prompt": "A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.",
+ "resolution": "4096x4096",
+ "url": "https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89",
+ "is_image_safe": true
+ }
+ ],
+ "created": "2000-01-23T04:56:07+00:00"
+ },
+ "properties": {
+ "created": {
+ "description": "The time the request was created.",
+ "format": "date-time",
+ "title": "created",
+ "type": "string"
+ },
+ "data": {
+ "description": "A list of ImageObjects that contain the edited image(s).",
+ "items": {
+ "$ref": "#/components/schemas/EditImageGenerationObjectV3"
+ },
+ "title": "data",
+ "type": "array"
+ }
+ },
+ "required": [
+ "created",
+ "data"
+ ],
+ "title": "EditImageGenerationResponseV3",
+ "type": "object"
+ },
+ "EditImageGenerationObjectV3": {
+ "example": {
+ "style_type": "GENERAL",
+ "seed": 12345,
+ "upscaled_resolution": "4096x4096",
+ "prompt": "A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.",
+ "resolution": "4096x4096",
+ "url": "https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89",
+ "is_image_safe": true
+ },
+ "properties": {
+ "url": {
+ "description": "The direct link to the image generated.",
+ "example": "https://ideogram.ai/api/images/ephemeral/xtdZiqPwRxqY1Y7NExFmzB.png?exp=1743867804&sig=e13e12677633f646d8531a153d20e2d3698dca9ee7661ee5ba4f3b64e7ec3f89",
+ "format": "uri",
+ "nullable": true,
+ "title": "url",
+ "type": "string"
+ },
+ "prompt": {
+ "description": "The prompt used for the generation. This may be different from the original prompt.",
+ "example": "A serene tropical beach scene. Dominating the foreground are tall palm trees with lush green leaves, standing tall against a backdrop of a sandy beach. The beach leads to the azure waters of the sea, which gently kisses the shoreline. In the distance, there's an island or landmass with a silhouette of what appears to be a lighthouse or tower. The sky above is painted with fluffy white clouds, some of which are tinged with hues of pink and orange, suggesting either a sunrise or sunset.",
+ "title": "prompt",
+ "type": "string"
+ },
+ "resolution": {
+ "description": "Output resolution, only used if operations alters image dimensions, such as upscale, crop etc.",
+ "example": "4096x4096",
+ "pattern": "^\\d{2,5}x\\d{2,5}$",
+ "title": "FreeformResolution",
+ "type": "string"
+ },
+ "upscaled_resolution": {
+ "description": "Output resolution, only used if operations alters image dimensions, such as upscale, crop etc.",
+ "example": "4096x4096",
+ "pattern": "^\\d{2,5}x\\d{2,5}$",
+ "title": "FreeformResolution",
+ "type": "string"
+ },
+ "is_image_safe": {
+ "description": "Whether this request passes safety checks. If false, the url field will be empty.",
+ "title": "is_image_safe",
+ "type": "boolean"
+ },
+ "seed": {
+ "description": "Random seed. Set for reproducible generation.",
+ "example": 12345,
+ "maximum": 2147483647,
+ "minimum": 0,
+ "title": "Seed",
+ "type": "integer"
+ },
+ "style_type": {
+ "$ref": "#/components/schemas/StyleTypeV3"
+ }
+ },
+ "required": [
+ "is_image_safe",
+ "prompt",
+ "resolution",
+ "seed"
+ ],
+ "title": "EditImageGenerationObjectV3",
+ "type": "object"
+ },
"ImageObject": {
"example": {
"style_type": "REALISTIC",