MixMediaAPI · Docs
Open as Markdown

POST /api/v1/jobs/createTask

Creates a generation task and returns its ID (taskId) right away. The price is charged now and refunded on failure.

Request

POST https://ai.aimixmedia.site/api/v1/jobs/createTask
Authorization: Bearer <API_KEY>
Content-Type: application/json

Parameters

FieldRequiredDescription
modelyesModel ID, e.g. nano-banana-2 — list
inputyesModel parameters: prompt, photos, etc. — see the model page
callBackUrlnoWhere to POST the result when the task finishes — callback

The optional Idempotency-Key header protects against duplicates on retries — details.

Response

{
  "code": 200,
  "msg": "success",
  "data": {
    "taskId": "task_nano-banana-2_1790621023886ca4e4d"
  }
}

Examples

curl -X POST https://ai.aimixmedia.site/api/v1/jobs/createTask \
  -H "Authorization: Bearer $API_KEY" \
  -H "Content-Type: application/json" \
  -d '{"model":"nano-banana-2","callBackUrl":"https://your-app.example/callback","input":{"prompt":"Poster \"Summer in Moscow\"","aspect_ratio":"3:4"}}'
import os, requests

r = requests.post(
    "https://ai.aimixmedia.site/api/v1/jobs/createTask",
    headers={"Authorization": f"Bearer {os.environ['API_KEY']}"},
    json={
      "model": "nano-banana-2",
      "callBackUrl": "https://your-app.example/callback",
      "input": {
        "prompt": "Poster \"Summer in Moscow\"",
        "aspect_ratio": "3:4"
      }
    },
)
print(r.json())  # {"code": 200, "data": {"taskId": "..."}}
const r = await fetch("https://ai.aimixmedia.site/api/v1/jobs/createTask", {
  method: "POST",
  headers: { Authorization: `Bearer ${process.env.API_KEY}`, "Content-Type": "application/json" },
  body: JSON.stringify({
    "model": "nano-banana-2",
    "callBackUrl": "https://your-app.example/callback",
    "input": {
      "prompt": "Poster \"Summer in Moscow\"",
      "aspect_ratio": "3:4"
    }
  }),
});
console.log(await r.json()); // { code: 200, data: { taskId: "..." } }

Errors

codeerrorWhen
401unauthorizedMissing or invalid key
402insufficient_balanceNot enough balance
422validation_errorInvalid parameter (see msg)
422unsupported_modelUnknown model
429rate_limitedToo many requests

All codes are in Errors & limits.