madeAPI
Log in
Explore/Muse Image
Image1 credit / image

Muse Image

Muse Image is Meta’s first image model, built for precise edits that change only what you ask, coherent multi-turn editing, multi-reference composition, and accurate rendered text — at 1 credit per image.

View docsModel guide
// Node.js. Running this creates one paid generation.
import { randomUUID } from 'node:crypto';
const base = "https://www.made.app/api";
const headers = {
  Authorization: `Bearer ${process.env.MADE_API_KEY}`,
  'Content-Type': 'application/json',
};
const input = {
  "model": "muse_image",
  "prompt": "Sunlit living room corner with a boucle armchair, a small olive tree and limewashed terracotta walls. 35mm film still, soft natural light, muted earth tones with one olive accent, shallow depth of field, subtle film grain, candid and unposed, no text, logos, or watermark.",
  "aspect_ratio": "1:1"
};

async function api(path, body) {
  const response = await fetch(base + path, {
    method: body ? 'POST' : 'GET', headers,
    ...(body && { body: JSON.stringify(body) }),
  });
  if (!response.ok) throw new Error(await response.text());
  return response.json();
}

const { cost } = await api('/v1/cost', input);
console.log('Quoted cents:', cost.customerCostCents);
// Preserve this request ID when retrying a submission.
const requestId = randomUUID();
let job = await api('/v1/generations', {
  ...input, request_id: requestId,
  max_cost_cents: cost.customerCostCents,
});
console.log('Request:', job.id);
while (!['succeeded', 'failed', 'canceled'].includes(job.status)) {
  await new Promise(resolve => setTimeout(resolve, 3000));
  job = await api('/v1/generations/' + job.id);
}
if (job.status !== 'succeeded') throw new Error(JSON.stringify(job.error || job.status));
console.log(job.result.assets);

Input

Advanced settings
Sign in to generate

Uses your credits. See the exact price before generating.

Result

Example
sunlit living room corner generated with Muse Image in Made
Muse Image: Living room corner

Price

1 credit / image. Check the exact cost for your settings before generating. Failed generations are refunded. Full price sheet.