> ## Documentation Index
> Fetch the complete documentation index at: https://docs.firemoon.studio/llms.txt
> Use this file to discover all available pages before exploring further.

# Ideogram Provider

> High-quality image generation with character editing capabilities

## Overview

Ideogram specializes in character consistency and precise editing capabilities, making it perfect for character design, product visualization, and brand consistency work.

## Available Models

### v3-character-edit

Advanced character editing with precise control and consistency.

**Endpoint:** `POST /api/v1/ideogram/v3-character-edit`

**Best for:**

* Character design and modification
* Product visualization
* Brand asset creation
* Consistent character appearances

**Performance:**

* **Inference time:** 5-15 seconds
* **Quality:** High consistency
* **Cost:** Medium

## Parameters

### Required Parameters

| Parameter   | Type   | Description                               |
| ----------- | ------ | ----------------------------------------- |
| `prompt`    | string | Description of the desired edit or change |
| `image_url` | string | URL of the source image to edit           |

### Optional Parameters

| Parameter             | Type   | Default     | Description                                 |
| --------------------- | ------ | ----------- | ------------------------------------------- |
| `style`               | string | "realistic" | Style: "realistic", "anime", "digital\_art" |
| `magic_prompt_option` | string | "auto"      | Prompt enhancement: "auto", "on", "off"     |
| `aspect_ratio`        | string | "1:1"       | Output aspect ratio                         |
| `negative_prompt`     | string | ""          | What to avoid in the generation             |

## Examples

### Character Outfit Change

<CodeGroup>
  ```javascript title="JavaScript" theme={null}
  const response = await fetch('https://firemoon.studio/api/v1/ideogram/v3-character-edit', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer your_api_key',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      prompt: 'Change the character to wear a red dress and high heels',
      image_url: 'https://example.com/character.jpg',
      style: 'realistic',
      magic_prompt_option: 'auto'
    })
  });

  const result = await response.json();
  console.log('Edited image:', result.images[0].url);
  ```

  ```python title="Python" theme={null}
  import requests

  response = requests.post(
      'https://firemoon.studio/api/v1/ideogram/v3-character-edit',
      headers={
          'Authorization': 'Bearer your_api_key',
          'Content-Type': 'application/json'
      },
      json={
          'prompt': 'Change the character to wear a red dress and high heels',
          'image_url': 'https://example.com/character.jpg',
          'style': 'realistic',
          'magic_prompt_option': 'auto'
      }
  )

  result = response.json()
  print('Edited image:', result['images'][0]['url'])
  ```
</CodeGroup>

### Product Visualization

<CodeGroup>
  ```javascript title="JavaScript" theme={null}
  const response = await fetch('https://firemoon.studio/api/v1/ideogram/v3-character-edit', {
    method: 'POST',
    headers: {
      'Authorization': 'Bearer your_api_key',
      'Content-Type': 'application/json'
    },
    body: JSON.stringify({
      prompt: 'Add a luxury watch to the mannequin wrist',
      image_url: 'https://example.com/product.jpg',
      style: 'digital_art',
      aspect_ratio: '4:3'
    })
  });

  const result = await response.json();
  console.log('Product visualization:', result.images[0].url);
  ```

  ```python title="Python" theme={null}
  import requests

  response = requests.post(
      'https://firemoon.studio/api/v1/ideogram/v3-character-edit',
      headers={
          'Authorization': 'Bearer your_api_key',
          'Content-Type': 'application/json'
      },
      json={
          'prompt': 'Add a luxury watch to the mannequin wrist',
          'image_url': 'https://example.com/product.jpg',
          'style': 'digital_art',
          'aspect_ratio': '4:3'
      }
  )

  result = response.json()
  print('Product visualization:', result['images'][0]['url'])
  ```
</CodeGroup>

## Response Format

```json theme={null}
{
  "images": [
    {
      "url": "https://blob.vercel-storage.com/...",
      "width": 1024,
      "height": 1024,
      "content_type": "image/jpeg"
    }
  ],
  "seed": 123456789,
  "timings": {
    "inference": 8.5
  }
}
```

## Best Practices

### Prompt Engineering for Edits

**Be specific about changes:**

* "Change the shirt color from blue to red"
* "Add a hat to the person's head"
* "Replace the background with a forest"

**Specify style consistency:**

* "Maintain the same lighting and pose"
* "Keep the facial expression unchanged"
* "Preserve the overall composition"

### Image Requirements

1. **Format**: JPEG, PNG, or WebP
2. **Size**: Maximum 10MB
3. **Resolution**: Minimum 512x512, maximum 2048x2048
4. **Content**: Clear subjects work best for editing

### Common Use Cases

* **E-commerce**: Product mockups and variations
* **Marketing**: Branded character assets
* **Design**: Rapid prototyping and iteration
* **Social Media**: Consistent character appearances

## Pricing

Ideogram editing is billed per image edit. Contact us for volume pricing.

<Note>
  Ideogram excels at maintaining consistency across edits, making it ideal for character-driven content and brand assets.
</Note>
