Generate one or more images from a text prompt, billed to the caller's credits.
Requires authentication. Anonymous image generation is available only via
the REST API (``POST /v1/image-generators/{id}/runs``); the MCP transport
always authenticates.
Resolution order for the generator (highest priority first):
1. A deployed ``generator`` ref (``uuid@version`` or bare UUID): pins the
deployed version config.
2. The ``model`` control path (authenticated one-off, ephemeral). Not
usable from published templates.
3. A tier ``generator`` ref (``system:<tier>``): resolves to the tier's
current best model (auto-upgrade). Available tiers:
``system:image-standard`` (default), ``system:image-premium``,
``system:image-edit`` (image-to-image, requires ``reference_image_url``).
4. Default: ``system:image-standard`` when no generator or model is given.
``generator`` and ``model`` are mutually exclusive.
For ``image_to_image`` generators, ``reference_image_url`` is required
and must be a public HTTP or HTTPS URL. For ``text_to_image`` generators,
providing ``reference_image_url`` is rejected.
Billing: spend is deducted from the caller's monthly credit balance.
``BudgetExhausted`` (402) and ``AccountSuspended`` (403) propagate if the
balance is zero or the account is suspended.
``visibility`` sets the access level of the hosted copy of each image:
``public`` (default) returns a link that opens in any browser;
``private`` returns a link only you can open and forward to people you
choose, while the plain URL stays locked.
Returns: ``{run_id, model_tier_or_model, image_url, image_urls, width,
height, num_images, cost_usd, duration_ms, status, created_at,
error_code, error_message, hosted_images}``. ``hosted_images`` carries
the durable Goodeye-hosted copy of each image with its ``url`` (the
browser-viewable link) and ``visibility``. The prompt is never stored;
only its hash is persisted on the run row.