Docs

Running a model

IdeogramText to image

Ideogram 4.0

Open-weight design-focused text-to-image model with strong typography, layout control, transparent backgrounds, and 2K output

POSTauray-serverless/ideogram/4-0
openapi.jsonllms.txt

One of Auray's catalogue models: the same key, the same credits, the same job lifecycle as every other address.

Its request shape is published below. Whether it runs right now is GET /v1/catalogue's word, with no key needed: its addresses say connected for an address that runs, and a submit to any other is refused before anything is charged — described answers 501 model_not_connected, paused 503 model_disabled.

Category text-to-image · Scope image:write (or external:write on an older key) · Price Credits per megapixel (counted as width*height): 2.2422. From 3.6864 to 11.0756 megapixels a request. Priced up to height 3328, width 3328; past that a request is refused before any charge. Plus 0.067834 credits when settings.renderingSpeed=QUALITY. Quoted when you submit, at the most the request can cost; the charge settles to what the job cost and never above the quote. The submit's answer carries the quote as credits_quoted, and credits_charged says what has been taken.

#Input

FieldTypeRequiredDefaultDescription
positivePromptstringno—Text prompt describing elements to include in the generated output. Automatically expanded into a structured prompt before generation. Documented range: 2 or more characters.
widthintegerno2560Width of the generated media in pixels.
heightintegerno1440Height of the generated media in pixels.
settingsobjectno—
settings.copyrightDetectionbooleanno—Opt into post-generation copyright detection using Hive likeness and logo checks.
settings.renderingSpeedstringno"DEFAULT"Generation speed/quality tradeoff. One of "TURBO", "DEFAULT", "QUALITY".
settings.structuredPromptobjectno—
settings.structuredPrompt.compositional_deconstructionobjectno—
settings.structuredPrompt.compositional_deconstruction.backgroundstringno—Environment, framing, and lighting context.
settings.structuredPrompt.compositional_deconstruction.elementsobject[]no—
settings.structuredPrompt.high_level_descriptionstringno—One or two sentences describing the full image, including subject and style.
settings.structuredPrompt.style_descriptionobjectno—
settings.structuredPrompt.style_description.aestheticsstringno—Overall aesthetic direction.
settings.structuredPrompt.style_description.art_stylestringno—Art style for non-photographic images.
settings.structuredPrompt.style_description.color_palettestring[]no—Hex colors guiding the overall palette.
settings.structuredPrompt.style_description.lightingstringno—Lighting setup and mood.
settings.structuredPrompt.style_description.mediumstringno—Artistic medium or capture format.
settings.structuredPrompt.style_description.photostringno—Photographic style for photo-realistic images.
outputTypestringno"URL"Image output type. One of "URL".
outputFormatstringno"JPG"Specifies the file format of the generated output. The available values depend on the task type and the specific model's capabilities. - `JPG`: Best for photorealistic images with smaller file sizes (no transparency). - `PNG`: Lossless compression, supports high quality and transparency (alpha channel). - `WEBP`: Modern format providing superior compression and transparency support. - `MP4`: Widely supported video container (H.264), recommended for general use. - `WEBM`: Optimized for web delivery. - `MOV`: QuickTime format, common in professional workflows (Apple ecosystem). - `GIF`: Animated image format (no audio), suitable for short loops or previews. - `MP3`: Compressed audio, smaller file size. - `WAV`: Uncompressed, high-quality audio. - `FLAC`: Lossless compression. - `OGG`: Open-source compressed audio format (Vorbis codec). - `SVG`: Scalable Vector Graphics. - `TIFF`: High-quality output supporting layers. - `GLB`: Binary glTF format for 3D models, including geometry, textures, and PBR materials. > [!NOTE] > **Transparency**: If you are using features like background removal or LayerDiffuse that require transparency, you must select a format that supports an alpha channel (e.g., `PNG`, `WEBP`, `TIFF`). `JPG` does not support transparency. One of "JPG", "PNG", "WEBP".
outputQualityintegerno95Compression quality of the output. Higher values preserve quality but increase file size. Documented range: 20 to 99.
safetyobjectno—
safety.checkContentbooleanno—Enable or disable content safety checking. Increases total generation time. Always on: a false is sent as true.
advancedFeaturesobjectno—
advancedFeatures.watermarkobjectno—
advancedFeatures.watermark.textstringno—Watermark text. Documented range: 2 to 32 characters.
advancedFeatures.watermark.imagestringno—Watermark image (an http(s) URL; upload a local file first and send its read URL). A URL.
advancedFeatures.watermark.displayPositionstringno—Watermark position. One of "top-left", "top-center", "top-right", "center-left", "center-center", "center-right", "bottom-left", "bottom-center", "bottom-right", "tiled".
advancedFeatures.watermark.opacitynumberno—Watermark opacity. Documented range: 0.1 to 1.
advancedFeatures.watermark.fontColorstringno—Text color in hex format.
advancedFeatures.watermark.bgColorstringno—Background color in hex format.
idempotency_keystringno—Your own name for this request. Send the same one twice and the second call is answered with the first request rather than charged again. Idempotency-Key: as a header is accepted as an alias — that is the spelling a retrying proxy replays, and the one to use when running a model on auray.run, where a request that outlives its connection is answered 504 and recovered by replay. Omit it and the platform mints one. 1 to 64 characters.

#Rules

Across fields, as the model's documentation states them. Each is judged before anything is charged — warned with a Deprecation header until enforcement starts — and listed as JSON Schema under x-auray-rules in the openapi.json.

  • Send height whenever width is sent. Send width whenever height is sent.
  • When width is sent or height is sent, width and height must be one of these: 2K (1:1): width 2048, height 2048; 2K (1:2): width 1440, height 2880; 2K (2:1): width 2880, height 1440; 2K (2:3): width 1664, height 2496; 2K (3:2): width 2496, height 1664; 2K (4:5): width 1792, height 2240; 2K (5:4): width 2240, height 1792; 2K (9:16): width 1440, height 2560; 2K (16:9): width 2560, height 1440; 2K (5:8): width 1600, height 2560; 2K (8:5): width 2560, height 1600; 2K (3:4): width 1728, height 2304; and 11 more (23 in all).
  • Send exactly one of positivePrompt or settings.structuredPrompt.
  • When settings.structuredPrompt is sent: settings.structuredPrompt.high_level_description is required. When settings.structuredPrompt is sent: settings.structuredPrompt.compositional_deconstruction.background and settings.structuredPrompt.compositional_deconstruction.elements are required. When settings.structuredPrompt is sent: in every item of settings.structuredPrompt.compositional_deconstruction.elements: when settings.structuredPrompt.compositional_deconstruction.elements[].type is "text", settings.structuredPrompt.compositional_deconstruction.elements[].text is required.
  • When advancedFeatures.watermark is sent: send exactly one of advancedFeatures.watermark.text or advancedFeatures.watermark.image.

#Example

curl -X POST https://queue.auray.run/auray-serverless/ideogram/4-0 \
  -H "Authorization: Bearer $AURAY_API_KEY" \
  -H "content-type: application/json" \
  -d '{
  "positivePrompt": "a brass orrery on a walnut desk, morning light from a window to the left"
}'

The same body on https://auray.run runs synchronously and answers the result — unless it usually takes longer than a run may hold its connection, which is refused 400 model_not_synchronous before anything is charged. Options — ?webhook=, ?wait=, priority and timeout headers — are on Submit a request.

#Machine contracts

  • openapi.json — this page as an OpenAPI 3.1 document, public.
  • llms.txt — the same, written for an agent.

Start typing to search every page of the documentation.

Up arrow Down arrow to moveEnter to openEscape to close