> For clean Markdown of any page, append .md to the page URL. > For a complete documentation index, see https://developer.ideogram.ai/ideogram-api/api-overview/llms.txt. > For AI client integration (Claude Code, Cursor, etc.), connect to the MCP server at https://developer.ideogram.ai/_mcp/server. > Overview of the Ideogram Developer API — capabilities, model families, and where to start. # Ideogram Developer API The Ideogram API lets you integrate the Ideogram Image Generation models right into your product. ## Capabilities #### Ideogram 4.0 Prompt fidelity, crystal-clear type, reliable editing, and production-ready image workflows across the app, API, MCP, and open weights. #### Background Control Remove a background for a transparent cutout, or replace it with a generated scene from a prompt. #### Typography Ideogram excels at integrating text into images for logos, branding, POD, or design layouts. #### Custom Models Train on-brand image models from your approved assets so generations follow your style, art direction, typography, and visual identity. ### Generate Generate an image given a descriptive prompt. *prompt: A photo of a cat sleeping on a couch.* ![](/_fern-img/c4175df52dae484a097361fe9cf6d1a5447c1ef6e12a6c9b8845de4d60cf3657.webp) ### Remix The **Remix** tool is invaluable for making changes to an existing image, whether it was generated in Ideogram or uploaded. The AI uses the original image as a basis to generate a new one, allowing you to control how much influence the original image has on the final result. *prompt: A photo of a dog sleeping on a couch* ![](/_fern-img/44ee41021866594fa57b3f09d6ae59ead087696adc75d74d7cc581a9624e9773.webp) ![](/_fern-img/277a53d25343c498715d48729bbd51b3a4a3a3acba0bc61d22169b502d0267ee.webp) ### Edit Take a starting image and modify a part of an image while keeping the rest intact. *prompt: A dog wearing a cowboy hat* ![](/_fern-img/a0ec5ec44044270b41926319dc759d04f72223ff56d3c7c3fb515fcf54c3165c.webp) ![](/_fern-img/e48bfa22968f270ac136fd12243f73cad9246aacecfbb2b115ac1e1bbc06c018.webp) ![](/_fern-img/523005bb829cfbcd72a666c3d38d6a57ab729380c2f91459f5f06a45ec78dcce.webp) ### Reframe Take a starting image and extend it to match your desired resolution. *resolution: 1280x768* ![](/_fern-img/ee072c3d9d9b592b8f97597acee0e04f09f2b52c57cd43d6ee6f1bda1f7e7a49.webp) ![](/_fern-img/97a10963e47d8df6bebac168ea2691cb40021fa45c60e614b6f4c425d099af0d.webp) ### Replace Background Take a starting image and replace the background with a new one. *prompt: A man standing in a busy coffee shop* ![](/_fern-img/7e5374e84f8394a1d41cd52e89041e698689167455b63552fdc911a9ea4a000e.webp) ![](/_fern-img/256b57fd5837cb20a23e5ceb64d95d8ede925100c5174b60ab27ab8ba3ec6a08.webp) ### Face Swapping Using the Edit endpoint, you can take a starting image and swap the face of the person in the image with a new one. *prompt: A man sitting on a motorcycle in a dimly lit garage* ![](/_fern-img/ee072c3d9d9b592b8f97597acee0e04f09f2b52c57cd43d6ee6f1bda1f7e7a49.webp) ![](/_fern-img/d651067950c2440063d3b3de14c7fc0db0b908d4d9afcbe64737003a34104d89.webp) ![](/_fern-img/1f68e2f04e44d61a0bdcf442c7c5811666a802df5a8748380a17456db128644d.webp) ![](/_fern-img/687c40bb58485c9b5abed3b53016e474d2444b2ce9293e94a544a8afd0b74d00.webp) ### Style Presets Using any of the API V3 endpoints, you can use a style\_preset to generate an image. Here are a few examples with the same prompt but different `style_preset` values. *prompt: A bioluminescent jellyfish in an underwater city* ![](/_fern-img/2b11d4d32347cc5f3e69c42494b56d36dbe8ec8491dea608ac06dc6eee9e3dce.webp) ![](/_fern-img/12b8f317a306fef79b5e55e2ff92e77a995a79ce17caa1afda6dd5956f63be7a.webp) ![](/_fern-img/c2732f7412111b09e448c6c02a51fd431a115c7504fc47a6cc6436f5ca84e67c.webp) *prompt: A birthday cake with "Creative Typography" written on it* ![](/_fern-img/29e301fcc47f944e510684bc94dbd38e796270bac368bd172038c7398c97fc0c.webp) ![](/_fern-img/d47774b14978f9f1bf4758fcbd0cee2ecf44729331bd6533f648e70f7ecf6af5.webp) ![](/_fern-img/236d24c3871287635f520f726bb9ce54a467a9fa4331df091565960128f75c02.webp) For more detailed documentation on our models' capabilities, please refer to our [Official Documentation](https://docs.ideogram.ai/). ## Start building #### [Setup](/ideogram-api/api-setup) Get started by following our Setup guide and then follow this example for a simple Generation with and without character reference. #### [API Reference](/api-reference) View the full API reference for all endpoints and parameters. ## Quickstart Get started by following our Setup guide, then generate your first image with Ideogram 4.0. The second Python example shows a v3 generation with a character reference image. #### Python ```python import requests # Generate with Ideogram 4.0 (POST /v1/ideogram-v4/generate) response = requests.post( "https://api.ideogram.ai/v1/ideogram-v4/generate", headers={ "Api-Key": "" }, json={ "text_prompt": "A picture of a cat" } ) print(response.json()) if response.status_code == 200: with open('output.png', 'wb') as f: f.write(requests.get(response.json()['data'][0]['url']).content) # Generate with Ideogram 3.0 and a character reference image response = requests.post( "https://api.ideogram.ai/v1/ideogram-v3/generate", headers={ "Api-Key": "" }, data={ "style_type": "AUTO", "prompt": "A cinematic medium shot of a man sitting on a motorcycle in a dimly lit garage.", }, files=[ ("character_reference_images", open("character_reference_image.png", "rb")), ] ) print(response.json()) if response.status_code == 200: with open('output_character.png', 'wb') as f: f.write(requests.get(response.json()['data'][0]['url']).content) ``` #### Typescript ```typescript // Generate with Ideogram 4.0 (POST /v1/ideogram-v4/generate) const response = await fetch('https://api.ideogram.ai/v1/ideogram-v4/generate', { method: 'POST', headers: { 'Api-Key': '', 'Content-Type': 'application/json' }, body: JSON.stringify({ text_prompt: 'A photo of a cat' }) }); const data = await response.json(); console.log(data); ``` ## Enterprise Scale The Ideogram API serves thousands of API customers to generate millions of images daily. If you wish to utilize our API at a larger scale than our default rate limit of 10 inflight requests, please reach out to us at *[partnership@ideogram.ai](mailto:partnership@ideogram.ai)* and we will help fit your exact needs. > Overview of the Ideogram Developer API — capabilities, model families, and where to start.