# Overview

### What You Can Create

#### Image Generation

| Category           | Description                                |
| ------------------ | ------------------------------------------ |
| **Text to Image**  | Generate images from text prompts          |
| **Image to Image** | Edit, transform, or style transfer images  |
| **Upscaler**       | Enhance resolution and image quality       |
| **AI Remover**     | Remove objects, backgrounds, or watermarks |

#### Video Generation

| Category           | Description                          |
| ------------------ | ------------------------------------ |
| **Image to Video** | Animate still images into video      |
| **Text to Video**  | Create videos from text descriptions |
| **Video Effects**  | Apply visual effects and filters     |
| **Video to Video** | Edit, restyle, or enhance videos     |
| **Video Extend**   | Extend video duration seamlessly     |
| **Motion Control** | Control movement and animation       |

#### Audio & Speech

| Category           | Description                      |
| ------------------ | -------------------------------- |
| **Text to Speech** | Generate natural voice from text |
| **Text to Audio**  | Create music and sound effects   |
| **Speech to Text** | Transcribe audio to text         |
| **Audio Editing**  | Edit and enhance audio files     |
| **Video to Audio** | Generate audio/music for videos  |

#### Digital Human & Portrait

| Category              | Description                    |
| --------------------- | ------------------------------ |
| **Digital Human**     | Create talking avatar videos   |
| **Portrait Transfer** | Face swap and portrait editing |

#### 3D Generation

| Category        | Description                    |
| --------------- | ------------------------------ |
| **Image to 3D** | Generate 3D models from images |
| **Text to 3D**  | Create 3D models from text     |

#### AI Vision & Analysis

| Category               | Description                        |
| ---------------------- | ---------------------------------- |
| **Image to Text**      | Image captioning and analysis      |
| **Content Moderation** | Filter inappropriate content       |
| **Video to Text**      | Video understanding and captioning |

### Request Flow

#### 1. Submit Task

Send your request with parameters to the model endpoint:

{% tabs %}
{% tab title="cURL (Video Generation)" %}

```bash
curl https://llm.onerouter.pro/v1/videos/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "{model-id}",
  "prompt": "Your prompt here"
  ...parameters
}'
```

{% endtab %}

{% tab title="cURL (Image Generation)" %}

```bash
curl https://llm.onerouter.pro/v1/images/generations \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
  "model": "{model-id}",
  "prompt": "Your prompt here"
  ...parameters
}'
```

{% endtab %}
{% endtabs %}

#### 2. Task Processing

* Validates your request
* Routes to the appropriate model
* Routes to the fallback providers, if the previous provider experienced issues such as insufficient capacity and availability failures.&#x20;
* Queues and processes the task
* Generates content

#### 3. Retrieve Results

Poll the task status until completion:

{% tabs %}
{% tab title="cURL (Video Generation)" %}

```bash
curl https://video.onerouter.pro/v1/videos/tasks/{task_id} \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" 
```

{% endtab %}

{% tab title="cURL (Image Generation)" %}

```bash
curl https://video.onerouter.pro/v1/images/tasks/{task_id} \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H "Content-Type: application/json" 
```

{% endtab %}
{% endtabs %}

When status is `completed`, the `outputs` array contains URLs to your generated content.

{% tabs %}
{% tab title="JSON (Video Generation)" %}

```json
{
  "code": 200,
  "message": "success",
  "data": {
    "task_id": "{task_id}",
    "object": "video",
    "model": "{model-id}",
    "status": "completed",
    "fail_reason": "",
    "submit_time": 1779064285,
    "start_time": 1779064284,
    "finish_time": 1779064332,
    "outputs": [
      "https://storage.googleapis.com/infron_gcs/video%2Fvideo_v2%2Fveo_output%2Fe79e79099e6544138c8d2db68bcca266%2F16093903391301042331%2Fsample_0.mp4"
    ],
    "created_at": "2026-05-18 00:31:25"
  }
}
```

{% endtab %}

{% tab title="JSON (Image Generation)" %}

```json
{
  "code": 200,
  "message": "success",
  "data": {
    "task_id": "fe4d1df7d7c347958cefe0b5290f3527",
    "object": "image",
    "model": "openai/gpt-image-2/image-to-image",
    "status": "completed",
    "fail_reason": "",
    "submit_time": 1779368267,
    "start_time": 1779368266,
    "finish_time": 1779368327,
    "outputs": [
      "https://storage.googleapis.com/infron_gcs/image%2Fgenerated%2Fofficial_openai_image_4b081ff0fb794a8391f708964353a071.png"
    ],
    "created_at": "2026-05-21 12:57:47"
  }
}
```

{% endtab %}
{% endtabs %}

### Content Lifecycle

1. **Task created** — Your request is received
2. **Processing** — AI model generates content
3. **Completed** — Content available via URLs
4. **Retained for 7 days** — Download before expiration
5. **Deleted** — Content is permanently removed

{% hint style="info" %}
created -> in\_progress → processing → completed | failed
{% endhint %}

### Rate Limits

Your account tier determines:

* How many requests per minute
* How many concurrent tasks

See [Account Levels & Rate Limits](https://infron.ai/dashboard/quota-limit) for details.


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://infronai.gitbook.io/docs/media-apis/api-guides/overview.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
