YepAPI
AI Models

Ideogram 4.0

Ideogram 4.0 API. Best-in-class text rendering for posters, packaging and logos, with 23 aspect ratios and optional image reference.

Pricing, live playground and model overview: Ideogram 4.0 API on YepAPI

POST/v1/media/queue
$0.12/image

Overview

Ideogram 4.0 — image generation with best-in-class text rendering for posters, packaging, logos and social graphics. Async operation — submit a job, poll for completion.

PropertyValue
Model IDideogram/ideogram-4.0
Aliasideogram, ideogram-4
ProviderIdeogram
CategoryImage Generation
Inputstext-to-image, image reference
Aspect Ratios1:1, 1:2, 2:1, 2:3, 3:2, 4:5, 5:4, 9:16, 16:9, 5:8, 8:5, 3:4, 4:3, 9:22, 22:9, 9:23, 23:9, 3:8, 8:3, 5:12, 12:5, 1:3, 3:1
BillingPer job — priced when queued, charged only on success
Pricing$0.12/image

Usage

All media models use the async job queue. Submit a job, then poll for the result.

Step 1: Submit Job

Text-to-Image

options.params passes this model's own parameters (see Model parameters).

const res = await fetch('https://api.yepapi.com/v1/media/queue', {
  method: 'POST',
  headers: {
    'x-api-key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'ideogram/ideogram-4.0',
    prompt: 'Retro travel poster that reads VISIT LISBON in bold Art Deco lettering, trams and tiled rooftops',
    options: {
      aspectRatio: '1:1',
      params: {
        rendering_speed: 'TURBO',
      },
    },
  }),
});
const { data } = await res.json();
// data.jobId — use this to poll for results
curl -X POST https://api.yepapi.com/v1/media/queue \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "ideogram/ideogram-4.0", "prompt": "Retro travel poster that reads VISIT LISBON in bold Art Deco lettering, trams and tiled rooftops", "options": {"aspectRatio": "1:1", "params": {"rendering_speed": "TURBO"}}}'

With an Image Reference

Pass a reference image via imageData alongside your prompt. Set options.params.image_weight (1–100) to control how closely the result follows it.

const res = await fetch('https://api.yepapi.com/v1/media/queue', {
  method: 'POST',
  headers: {
    'x-api-key': 'YOUR_API_KEY',
    'Content-Type': 'application/json',
  },
  body: JSON.stringify({
    model: 'ideogram/ideogram-4.0',
    prompt: 'Turn this sketch into a finished poster that reads OPEN HOUSE',
    options: {
      params: {
        image_weight: 50,
      },
    },
    imageData: {
      mimeType: 'image/png',
      base64: '...', // Base64-encoded image
    },
  }),
});
curl -X POST https://api.yepapi.com/v1/media/queue \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model": "ideogram/ideogram-4.0", "prompt": "Turn this sketch into a finished poster that reads OPEN HOUSE", "options": {"params": {"image_weight": 50}}, "imageData": {"mimeType": "image/png", "base64": "..."}}'

Step 2: Poll for Result

const status = await fetch(`https://api.yepapi.com/v1/media/status/${data.jobId}`, {
  headers: { 'x-api-key': 'YOUR_API_KEY' },
});
const { data: job } = await status.json();
// job.status — "pending" | "processing" | "completed" | "failed"
// job.result.image — { mimeType, base64 } when completed
curl https://api.yepapi.com/v1/media/status/JOB_ID \
  -H "x-api-key: YOUR_API_KEY"

Request Body

ParameterTypeRequiredDescriptionDefault
modelstringYesideogram/ideogram-4.0 or aliases ideogram, ideogram-4—
promptstringYesText description of the image to generate—
options.aspectRatiostringNoOne of: 1:1, 1:2, 2:1, 2:3, 3:2, 4:5, 5:4, 9:16, 16:9, 5:8, 8:5, 3:4, 4:3, 9:22, 22:9, 9:23, 23:9, 3:8, 8:3, 5:12, 12:5, 1:3, 3:11:1
options.paramsobjectNoModel-specific parameters under their own names: image_weight, rendering_speed. Unknown names return 400—
imageData.mimeTypestringNoMIME type of input image (image/png, image/jpeg, image/webp)—
imageData.base64stringNoBase64-encoded reference image—

Options are validated when you submit: an unsupported duration, resolution or value returns 400 naming the allowed values.

Model parameters

Pass these inside options.params.

ParameterTypeAllowedDescriptionDefault
image_weightinteger1–100How strongly to preserve the input image (with imageData)—
rendering_speedstringTURBO, DEFAULT, QUALITYSpeed/quality trade-offDEFAULT

Features

  • Accurate in-image text and typography
  • 23 aspect ratios, from 1:3 to 3:1
  • Optional image reference via imageData (image_weight sets how closely to follow it)
  • TURBO, DEFAULT or QUALITY rendering speed

Pricing

MetricCost
Per image$0.12

One image per job. Each job is priced when it's queued and charged only if it succeeds — failed or moderated jobs are free. Price shown is for the default rendering speed; TURBO and QUALITY are quoted at submit.

Info

Image jobs typically complete in 5–60 seconds. Results retained for 1 hour.

Under the Hood

Powered by Ideogram's Ideogram 4.0 via our AI provider.

On this page