# Z-Image Turbo Seamless Tiling API

> Model testun-i-ddelwedd cyflym sy'n cynhyrchu allbwn teiladwy, gyda theilio llorweddol, fertigol neu'r ddau gyfeiriad a mewnpaentio

Yn cynhyrchu delweddau sy'n ailadrodd ar draws yr ymylon, dan reolaeth `tiling_mode` (both, horizontal neu vertical), `tile_size` a `tile_stride`. Mae'n rhedeg hyd at 8 cam casglu ac yn dychwelyd 1 i 4 delwedd mewn png, jpeg neu webp. Mae darparu `image_url` yn galluogi delwedd-i-ddelwedd, ac mae ychwanegu `mask_image_url` yn galluogi mewnpaentio. Mae `strength` yn pennu faint y mae'r mewnbwn yn newid.

- Model id: `z-image/turbo/tiling`
- Made by: Alibaba
- Category: Text to Image
- Output: image
- Price per megapixel of your output image: $0.02 / megapixel of output image (cheapest run $0.02 (20 API credits))
- Run: `POST https://api.doitong.com/v1/run/z-image/turbo/tiling`
- Quote: `POST https://api.doitong.com/v1/quote/z-image/turbo/tiling`
- Docs page: https://doitong.com/cy/developers/models/z-image/turbo/tiling

## Pricing

Price: **$0.02 / megapixel of output image**. Price per megapixel of your output image: the input files are measured before the run (length, resolution, frame rate). The quote measures the same files and is exactly what the run charges.

The full example input below costs $0.02 = 20 API credits (1 MP output image × $0.02).

Prices are the upstream price in USD, paid from the API balance in API credits (1000 API credits = 1 USD). `POST https://api.doitong.com/v1/quote/z-image/turbo/tiling` with the same JSON body returns the exact price for that input; the quote is exactly what a run charges. Invalid input is never charged and failed or canceled requests are refunded automatically.

## Input parameters

Send either the canonical name or the native field name (not both). Canonical names are the same across models.

| Parameter | Canonical name | Type | Required | Default | Allowed values / range | Description |
|---|---|---|---|---|---|---|
| `prompt` |  | string | yes |  |  | Anogiad sy'n arwain cynhyrchu delweddau. |
| `image_size` |  | object {width, height} \| enum (string) | no | `square_hd` | `square_hd`, `square`, `portrait_4_3`, `portrait_16_9`, `landscape_4_3`, `landscape_16_9`, `auto` | Dimensiynau'r ddelwedd a gynhyrchir, gyda 'auto' yn dewis 1024x1024 oni bai bod delwedd fewnbwn wedi'i darparu, ac os felly defnyddir ei dimensiynau. |
| `num_inference_steps` |  | integer | no | `8` | 1 – 8 | Cyfrif camau casglu i'w rhedeg. |
| `seed` |  | integer \| null | no |  |  | Hadau ar gyfer delweddau atgynhyrchadwy: mae anogiad a hadau unfath yn cynhyrchu delwedd unfath pan nad yw fersiwn y model wedi newid. |
| `num_images` | `num_outputs` | integer | no | `1` | 1 – 4 | Cyfrif delweddau y gofynnir amdano ar gyfer cynhyrchu. |
| `enable_safety_checker` |  | boolean | no | `true` |  | Gwiriad diogelwch, sy'n dychwelyd delweddau du yn lle unrhyw ddelweddau a nodir yn anniogel. Mae gwerth true yn galluogi'r gwiriad; mae false yn ei analluogi ar gyfer cyfrifon awdurdodedig yn unig, tra bod ceisiadau heb awdurdodiad yn cael eu gwirio beth bynnag. |
| `output_format` |  | enum (string) | no | `png` | `jpeg`, `png`, `webp` | Fformat ffeil y ddelwedd sy'n deillio. |
| `acceleration` |  | enum (string) | no | `regular` | `none`, `regular`, `high` | Lefel cyflymu a gymhwysir i brosesu. |
| `enable_prompt_expansion` |  | boolean | no | `false` |  | Yn rheoli a yw ehangu'r anogiad wedi'i alluogi. |
| `image_url` | `image` | string (image URL) \| null | no |  |  | URL delwedd a ddefnyddir naill ai ar gyfer cynhyrchu delwedd-i-ddelwedd neu fewn-baentio. Mae darparu mask_image_url yn dewis mewn-baentio; mae ei hepgor yn dewis cynhyrchu delwedd-i-ddelwedd. |
| `mask_image_url` |  | string (image URL) \| null | no |  |  | URL mwgwd mewn-baentio a ddarperir ochr yn ochr â'r image_url gofynnol. Mae'r mwgwd yn cadw'r ardaloedd du yn ddigyfnewid ac yn ailgynhyrchu'r ardaloedd gwyn. |
| `strength` |  | number | no | `0.6` | ≤ 1, > 0 | Cryfder trawsnewid a gymhwysir yn unig i ddelwedd a ddarperir drwy image_url; ni chaiff ei ddefnyddio fel arall. |
| `tile_size` |  | integer | no | `128` | 32 – 256 | Maint teils yn y gofod cudd, lle mae 64 yn cyfateb i 512px, 128 i 1024px, a 256 i 2048px. Mae dimensiynau'r ddelwedd a gynhyrchir yn cyfyngu maint yn awtomatig ar hyd yr echelinau teils; mae darnio yn gofyn am werth eilrif, sy'n rhanadwy â 2. |
| `tile_stride` |  | integer | no | `64` | 16 – 128 | Cam teils yn y gofod cudd, gyda'r cyfatebiaethau picseli 32 = 256px, 64 = 512px, a 128 = 1024px. Dim ond lluosrifau o 2 sy'n ddilys; mae unrhyw werth dros hanner maint effeithiol y deilsen yn cael ei leihau'n awtomatig i'r terfyn hwnnw. |
| `tiling_mode` |  | enum (string) | no | `both` | `both`, `horizontal`, `vertical` | Cyfeiriad teilio: mae 'both' yn cwmpasu pob cyfeiriad, mae 'horizontal' yn cwmpasu o'r chwith i'r dde yn unig, ac mae 'vertical' yn cwmpasu o'r brig i'r gwaelod yn unig. |

File parameters (`image`, `mask_image_url`) take a public `https://` URL, a `data:` URI up to 10 MB, or the `file_url` of an upload from `POST /files`.

## Example input

Required parameters only:

```json
{
  "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
}
```

A fuller example:

```json
{
  "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
}
```

## Run it

Set `DOITONG_API_KEY` to a key from https://doitong.com/developers/dashboard#keys. `?wait=20` returns the finished request in the same call when it is ready within 20 seconds; otherwise poll `GET /requests/{id}` (it also accepts `?wait=`), or pass `webhook_url`.

### curl

```bash
# Run the model; wait up to 20 s for the finished result in the same call
curl -X POST "https://api.doitong.com/v1/run/z-image/turbo/tiling?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  }'

# Still "queued" or "running"? Poll with the id from the response:
curl "https://api.doitong.com/v1/requests/REQUEST_ID?wait=20" \
  -H "Authorization: Bearer $DOITONG_API_KEY"
```

### JavaScript

```javascript
const API = "https://api.doitong.com/v1";
const headers = {
  "Authorization": "Bearer " + process.env.DOITONG_API_KEY,
  "Content-Type": "application/json",
};

// Run the model; wait up to 20 s for the finished result in the same call
let res = await fetch(API + "/run/z-image/turbo/tiling?wait=20", {
  method: "POST",
  headers,
  body: JSON.stringify({
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  }),
});
let request = await res.json();
if (!res.ok) throw new Error(request.error.code + ": " + request.error.message);

// Not finished yet: long-poll until it is
while (request.status === "queued" || request.status === "running") {
  res = await fetch(API + "/requests/" + request.id + "?wait=20", { headers });
  request = await res.json();
}
if (request.status !== "succeeded") throw new Error(JSON.stringify(request.error));
console.log(request.outputs.map((o) => o.url), request.cost.credits + " API credits ($" + request.cost.usd + ")");
```

### Python

```python
import os
import requests

API = "https://api.doitong.com/v1"
headers = {"Authorization": "Bearer " + os.environ["DOITONG_API_KEY"]}

payload = {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field",
}

# Run the model; wait up to 20 s for the finished result in the same call
r = requests.post(API + "/run/z-image/turbo/tiling", params={"wait": 20}, json=payload, headers=headers)
request = r.json()
if not r.ok:
    raise RuntimeError(request["error"]["code"] + ": " + request["error"]["message"])

# Not finished yet: long-poll until it is
while request["status"] in ("queued", "running"):
    request = requests.get(API + "/requests/" + request["id"], params={"wait": 20}, headers=headers).json()
if request["status"] != "succeeded":
    raise RuntimeError(request["error"])
print([o["url"] for o in request["outputs"]], request["cost"]["credits"], "API credits", "$" + request["cost"]["usd"])
```

### MCP

The MCP server at `https://api.doitong.com/v1/mcp` exposes the tools `search_models`, `get_model`, `quote`, `run`, `get_request`, `cancel_request`, `list_requests`, `create_upload` and `get_account`. A `run` call for this model:

```json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "tools/call",
  "params": {
    "name": "run",
    "arguments": {
      "model_id": "z-image/turbo/tiling",
      "input": {
        "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
      },
      "wait_seconds": 20
    }
  }
}
```

## Response

Every call returns a request object. `status` is one of `queued`, `running`, `succeeded`, `failed`, `canceled`. `outputs` lists the generated files with URLs on our storage (kept forever, or 7 days with `?storage=temporary`; `storage` says which); `output` is the model's own result object with the same URLs.

```json
{
  "id": "req_8k2m4q7x1z9c3v5b6n0p2r4t",
  "object": "request",
  "model": "z-image/turbo/tiling",
  "status": "succeeded",
  "created_at": "2026-10-20T12:00:00Z",
  "started_at": "2026-10-20T12:00:02Z",
  "completed_at": "2026-10-20T12:00:09Z",
  "queue_position": null,
  "cost": {
    "credits": 20,
    "usd": "0.02",
    "charged": 20,
    "refunded": 0
  },
  "input": {
    "prompt": "A red fox trots through fresh snow at sunrise, soft golden light, shallow depth of field"
  },
  "output": {
    "images": [
      {
        "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
        "content_type": "image/jpeg",
        "file_name": "0-output.jpeg",
        "file_size": 1843200,
        "width": 1024,
        "height": 768
      }
    ],
    "timings": {},
    "seed": 42,
    "has_nsfw_concepts": [
      false
    ],
    "prompt": "string"
  },
  "outputs": [
    {
      "type": "image",
      "url": "https://content.doitong.com/dev-api/2026/10/20/req_8k2m4q7x1z9c3v5b6n0p2r4t/0-output.jpeg",
      "content_type": "image/jpeg",
      "file_size": 1843200,
      "width": 1024,
      "height": 768,
      "stored": true
    }
  ],
  "error": null,
  "metrics": {
    "inference_seconds": 6.8
  },
  "urls": {
    "self": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t",
    "cancel": "https://api.doitong.com/v1/requests/req_8k2m4q7x1z9c3v5b6n0p2r4t/cancel"
  }
}
```

### Output fields (`output`)

| Field | Type | Description |
|---|---|---|
| `images` | array of object {url, content_type, file_name, file_size, width, height} | Gwybodaeth ffeil ar gyfer y delweddau a gynhyrchwyd. |
| `timings` | object | Gwybodaeth amseru ar gyfer y broses gynhyrchu. |
| `seed` | integer | Hadau cynhyrchu delweddau, gan gynnwys y gwerth a ddewiswyd ar hap os hepgorodd y mewnbwn hedyn; fel arall, mae'n ailadrodd y gwerth a ddarparwyd. |
| `has_nsfw_concepts` | array of boolean | Yn nodi a yw cysyniadau NSFW yn ymddangos yn y delweddau a gynhyrchir. |
| `prompt` | string | Anogiad a ddefnyddir wrth gynhyrchu delweddau. |

## Related models

- [Z Image Base](https://doitong.com/developers/models/z-image/base.md) (`z-image/base`): $0.01 / megapixel
- [Z Image Base Lora](https://doitong.com/developers/models/z-image/base/lora.md) (`z-image/base/lora`): $0.012 / megapixel
- [Z Image Turbo](https://doitong.com/developers/models/z-image/turbo.md) (`z-image/turbo`): $0.005 / megapixel
- [Z Image Turbo Lora](https://doitong.com/developers/models/z-image/turbo/lora.md) (`z-image/turbo/lora`): $0.0085 / megapixel
- [Z-Image Turbo Seamless Tiling Lora](https://doitong.com/developers/models/z-image/turbo/tiling/lora.md) (`z-image/turbo/tiling/lora`): $0.025 / megapixel of output image
- [Z Image Turbo Controlnet](https://doitong.com/developers/models/z-image/turbo/controlnet.md) (`z-image/turbo/controlnet`): $0.013 / image
- [Z Image Turbo Controlnet Lora](https://doitong.com/developers/models/z-image/turbo/controlnet/lora.md) (`z-image/turbo/controlnet/lora`): $0.04 / image
- [Z Image Turbo Image To Image](https://doitong.com/developers/models/z-image/turbo/image-to-image.md) (`z-image/turbo/image-to-image`): $0.015 / image

## Links

- HTML page: https://doitong.com/developers/models/z-image/turbo/tiling
- All models and guides for AI agents: https://doitong.com/developers/llms.txt
- OpenAPI 3.1 with this model's typed request body: https://doitong.com/developers/openapi.json?model=z-image/turbo/tiling
- Errors: https://doitong.com/developers/docs/errors
- Model details as JSON: https://api.doitong.com/v1/models/z-image/turbo/tiling
