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

# Grok Imagine Image 2.0 — generasi dan pengeditan resmi

> Generasi dan pengeditan gambar asinkron dengan grok-imagine-image-2.0

<Info>
  Endpoint ini **asinkron**. Permintaan yang diterima mengembalikan ID tugas. Periksa [status tugas](/id/api-reference/tasks/status) untuk mendapatkan hasil akhir. Tanpa `image_urls`, model membuat gambar dari teks; dengan referensi, model mengedit atau memakai beberapa gambar.
</Info>

<RequestExample>
  ```bash cURL theme={null}
  curl --request POST \
    --url https://api.apimart.ai/v1/images/generations \
    --header 'Authorization: Bearer <token>' \
    --header 'Content-Type: application/json' \
    --header 'X-APIMart-Response-Version: 2026-07-27' \
    --data '{
      "model": "grok-imagine-image-2.0",
      "prompt": "Jalan kota sinematik dengan cahaya neon pada malam yang hujan",
      "n": 1,
      "aspect_ratio": "16:9",
      "resolution": "2k",
      "quality": "medium"
    }'
  ```
</RequestExample>

<ResponseExample>
  ```json 202 theme={null}
  {
    "code": 202,
    "data": {
      "id": "task_01KZQE5CM0Y3KZ6M1N1BK619MX",
      "object": "generation.task",
      "type": "image",
      "status": "pending",
      "progress": 0,
      "poll_url": "/v1/tasks/task_01KZQE5CM0Y3KZ6M1N1BK619MX"
    }
  }
  ```
</ResponseExample>

## Kemampuan model

| Model                    | Resolusi   | `quality`                                 | Gambar input | Output |
| ------------------------ | ---------- | ----------------------------------------- | -----------: | -----: |
| `grok-imagine-image-2.0` | `1k`, `2k` | `low` atau `medium`, hanya teks ke gambar |          0–3 |   1–10 |

## Body

<ParamField body="model" type="string" default="grok-imagine-image-2.0" required>Nilai tetap: `grok-imagine-image-2.0`.</ParamField>
<ParamField body="prompt" type="string" required>Instruksi generasi atau pengeditan. Tidak kosong setelah trim; maksimum 8.000 karakter.</ParamField>
<ParamField body="n" type="integer" default="1">Jumlah output: `1`–`10`.</ParamField>
<ParamField body="aspect_ratio" type="string" default="auto">Nilai: `1:1`, `3:4`, `4:3`, `9:16`, `16:9`, `2:3`, `3:2`, `9:19.5`, `19.5:9`, `9:20`, `20:9`, `1:2`, `2:1`, `auto`.</ParamField>
<ParamField body="resolution" type="string" default="1k">`1k` atau `2k`.</ParamField>
<ParamField body="quality" type="string">Hanya teks ke gambar: `low` atau `medium` secara default. Jangan kirim bersama `image_urls`.</ParamField>
<ParamField body="image_urls" type="array">Satu hingga tiga referensi: URL HTTP(S) publik atau Data URL Base64 JPEG, PNG, WebP.</ParamField>

## Tugas asinkron

Permintaan yang diterima mengembalikan HTTP `202`; ID berada di `data.id`. Gunakan `data.poll_url` atau `GET /v1/tasks/{task_id}` hingga `completed` atau `failed`.
