Meta
Muse Image 1.0
muse-image-1.0/text-to-image
Meta's reasoning-based image generation and editing model that first breaks down complex prompts before rendering, can fuse multiple reference images, and leverages web retrieval to ensure factual accuracy
Try muse-image-1.0/text-to-image
Input
Showcases
View all showcasesOutput
imagePricing
muse-image-1.0/text-to-image per task
| Unit Price | $0.015 |
|---|
Overview
muse-image-1.0/text-to-image is the text-only route of Meta's text-to-image model on HiAPI.ai, using a generate-by-reasoning-then-rendering pipeline: before producing an image, it breaks down multi-part prompts, plans the image layout, and self-corrects during reasoning. It is suited to developers who need high-concurrency batch image generation with fairly complex prompts, such as ad creative variants and product catalog images. Called through the unified HiAPI.ai interface, it needs only a text prompt to generate an image, with selectable aspect ratio and output format.
Key Highlights
- Reason first, render later—complex prompts are more controllable—before rendering, it decomposes multi-part prompts, plans layout, and iteratively corrects the output in the reasoning chain, making it better suited to structured descriptions than single-pass forward generation.
- Knowledge-intensive prompts can use web retrieval—when a prompt requires real-world information, it calls web search to calibrate the content, reducing factual errors in accompanying images.
- One call outputs a finished image, easy to integrate—just submit a text prompt to specify the aspect ratio and jpeg, png, or webp output format, and directly obtain a deployable image asset.
Capabilities
Reasoning-based text-to-image: decomposes complex multi-part prompts into executable visual elements, plans layout before rendering, and self-corrects, reducing the cost of repeated prompt revisions.
Aspect ratio presets: offers nine ratios—1:1, 4:3, 3:4, 16:9, 9:16, 3:2, 2:3, 21:9, and 9:21—so you can select one directly for a placement or layout without post-cropping.
Multi-format output: supports jpeg, png, and webp download formats, with webp as the default, making it easy to choose according to frontend display, archiving, or downstream processing needs.
Long prompt support: prompts can be up to 5,000 characters, accommodating complex generation requirements with multiple paragraphs and constraint descriptions.
Use Cases
- Ad teams generating ad variants in batches—batch-generate images from multiple copy prompts for the same selling point, producing assets in different ratios for direct use in multi-channel ad testing.
- E-commerce operations creating product scene images—generate scene images in different styles and compositions from product description text to supplement product catalog and detail page visuals.
- Content teams illustrating knowledge-based topics—input topic descriptions containing factual elements to produce images that fit the content for articles, posts, and social media publishing.
Limitations and Selection Advice
Public materials do not disclose the output resolution of this route; aspect ratio determines only the proportions, not exact pixel dimensions, so scenarios with hard resolution requirements need prior verification. The reasoning-based pipeline and on-demand web retrieval add extra latency, making it unsuitable for real-time generation with very low latency. Output is limited to images and does not involve video or audio. If a task requires fusing or rewriting based on a reference image, use the image-to-image route in the same family.
Frequently asked questions
View all FAQs →-
How do I choose generation or editing?
Choose generation to start from a written brief, or editing with references to build on an existing subject or layout.
-
How many images can I get per task?
Each task returns one image with no count selector. Submit a new task with an adjusted prompt for another composition.
-
Can I select 1K, 2K or 4K?
This entry has no resolution tiers. Choose framing; the model determines dimensions, typically around 2.5MP. Inspect the downloaded file.
-
Which file formats can I choose?
Choose JPEG, PNG or WebP; the default is WebP. Select a format for your web or design workflow.
Create a generation task
https://api.hiapi.ai/v1/tasks Headers
AuthorizationstringRequiredAccount API key. Required on every request. Example: Bearer YOUR_HIAPI_API_KEY. Get your API key
Content-TypestringOptionalThe request body is always parsed as JSON; when sent, only application/json (optionally with charset) is accepted — any other value returns 415. Example: application/json.
Idempotency-KeystringOptionalIdempotency key, up to 255 bytes. Retries with the same key from the same account create the task only once; replays return the original taskId.
On network timeouts or client retries, the same key creates the task only once — no double charges (scope: the API key's account). Use a business-unique identifier as the key (e.g. "order-42"); replays return the original taskId, and keys expire 24 hours after the first request. See the Unified Async API overview for the full scenario matrix.
Body
modelstringRequiredCurrent fixed value: muse-image-1.0/text-to-image
routestringOptionalCurrent fixed value: default
inputobjectRequired
Business parameters for muse-image-1.0/text-to-image and route default — see the parameter table below.
promptstringRequiredminLength 1maxLength 5000Used to describe the image you want to generate, or to explain what should be modified and what should be preserved in the reference image, provided as a string.
aspect_ratiostringOptionalSelect the aspect ratio of the output image, provided as a string; this does not specify an exact pixel size.
1:14:33:416:99:163:22:321:9Show all (1)
9:21output_formatstringOptionalDefault: "webp"Select the file format for downloading the image, provided as a string; defaults to webp.
jpegpngwebpcallbackobjectOptional
Terminal-state notification config. When omitted, no callback is delivered — poll the task yourself. See the callback note below.
Provide callback.url when creating a task and HiAPI POSTs to your service once the task reaches a terminal state — no polling needed. The callback payload mirrors the task detail structure; signature verification, delivery retries and idempotency are documented on the Unified Async API overview page.
urlstringRequiredRequired when callback is present. A POST is sent to this URL once the task reaches a terminal state; must be a valid http(s) URL.
whenstringOptionalDefault: "final"Only final is supported today — notified on both success and fail.
finalstoragestringOptionalDefault: "temp"Artifact storage tier: temp (default, retained about 7 days) or persistent (long-term, billed by size). Insufficient balance or exceeding the storage cap silently downgrades to temp; the effective tier is shown in the task detail response.
temppersistentRequest examples
# Submit an async task; returns a taskId immediately (no waiting for generation)
curl -X POST "https://api.hiapi.ai/v1/tasks" \
-H "Authorization: Bearer $HIAPI_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"model": "muse-image-1.0/text-to-image",
"input": {
"prompt": "…",
"output_format": "webp"
}
}' const res = await fetch("https://api.hiapi.ai/v1/tasks", {
method: "POST",
headers: {
Authorization: `Bearer ${process.env.HIAPI_API_KEY}`,
"Content-Type": "application/json",
},
body: JSON.stringify({
model: "muse-image-1.0/text-to-image",
input: {
"prompt": "…",
"output_format": "webp"
}
}),
});
const task = await res.json();
// { code: 200, message: "success", data: { taskId } } import os, requests
res = requests.post(
"https://api.hiapi.ai/v1/tasks",
headers={"Authorization": f"Bearer {os.environ['HIAPI_API_KEY']}"},
json={
"model": "muse-image-1.0/text-to-image",
"input": {
"prompt": "…",
"output_format": "webp"
}
},
)
print(res.json()) # { code, message, data: { taskId } } 200 OK
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR"
}
} 400 Bad Request
{
"code": 400,
"message": "invalid request",
"data": null,
"error_code": "INVALID_REQUEST"
} Get task detail
https://api.hiapi.ai/v1/tasks/:id Response fields
taskIdstringRequiredTask ID, always prefixed with tk-hiapi-.
modelstringRequiredResolved full model name. Tasks submitted with the route parameter return base@route (e.g. gpt-image-2/text-to-image@ext); otherwise identical to the name passed at creation.
routestringOptionalPresent only when the task was submitted with an explicit route parameter; echoes the submitted value.
statusstringRequiredTask status.
queued Queued, not started yet.
handling Being processed.
archiving Processing finished, artifacts being prepared.
success Terminal: completed, artifacts available (output returned).
fail Terminal: failed (error returned).
After submission, check status: success and fail are terminal, everything else is non-terminal. Poll every 1–3 seconds until terminal. On success, download artifacts from output[].url and transfer them before expireAt; pass storage: "persistent" at creation time when long-term retention is needed.
creatednumberRequiredTask creation time (Unix seconds).
completednumberRequiredUnix seconds when the task reached a terminal state; fixed to 0 while not terminal.
outputarrayOptional
Present only when status == success. Artifact list — always an array; a single task may return multiple types at once (e.g. video + first_frame).
Array [ object ]
Array items
urlstringRequiredArtifact URL, directly downloadable.
typestringRequiredCurrent possible values: video, image, audio, first_frame, last_frame, thumbnail; more may be added later.
expireAtnumberRequiredUnix seconds until which the artifact remains accessible; download or transfer before it expires.
errorobjectOptional
Present only when status == fail.
codestringRequiredBusiness error code.
messagestringRequiredError description.
Response examples
Success
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-01HZTQ8BX2N3GM3YFK4Z9D7VQR",
"model": "happyhorse-1-0",
"status": "success",
"created": 1777282033,
"completed": 1777282099,
"output": [
{
"url": "https://cdn.hiapi.ai/tasks/.../video.mp4",
"type": "video",
"expireAt": 1777886899
}
]
}
} Processing (non-terminal)
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "archiving",
"created": 1777282033,
"completed": 0
}
} Failed
{
"code": 200,
"message": "success",
"data": {
"taskId": "tk-hiapi-...",
"model": "happyhorse-1-0",
"status": "fail",
"created": 1777282033,
"completed": 1777282099,
"error": {
"code": "TASK_FAILED",
"message": "task failed"
}
}
} Articles
View all articles →Related Models
View all models →Same Type
-
Ideogram V4.5 Ideogram $0.011 /image -
Nano Banana Pro Google $0.057 /image -
Nano Banana 2 Lite Google $0.033 /image -
Imagen 4 Google $0.030 /image -
BRIA Product Shot Bria $0.058 /image -
Z-Image Alibaba $0.008 /image -
GPT Image 2.5 OpenAI $0.017 /image -
Seedream 4.5 ByteDance $0.045 /image -
FLUX 1.1 Pro Black Forest Labs $0.050 /image -
851 Labs Background Remover 851 Labs $0.002 /image -
Grok Imagine Image 2.0 xAI $0.052 /image -
Qwen Image 2.0 Alibaba $0.042 /image



