Legacy generation API
The API-key workflow uses /v1 endpoints. It is separate from Studio and does not select its engine or pricing.
Connection and authentication
Use https://api.myrlin.io as the API origin and send your key in the X-API-Key request header. Manage keys from your account settings. Keep keys on your server.
Requests are subject to the key’s permissions, rate limits and account balance. Check GET /v1/balance for balance and cost_per_generation before requesting generation.
Start and poll
| Request | Purpose |
|---|---|
| POST /v1/generate | Submit a generation and retain its returned id. |
| GET /v1/generations/{id} | Read status and download URLs when available. |
| GET /v1/balance | Read the API generation cost and account balance. |
| GET /v1/usage | Read the authenticated account’s API usage. |
Illustrative JSON request body for POST /v1/generate, checked against the request schema. This is not a recorded production request or a free test.
{
"prompt": "A small iron lantern with a wooden handle",
"workflow": "text_to_3d",
"style": "hytale",
"output_format": "both"
}The prompt accepts 3–500 characters. workflow is text_to_3d or image_to_3d; image_to_3d requires reference_image_base64. output_format accepts glb, blockymodel or both. style is a generation hint, not a Minecraft pack compiler.
Conversion and sizing options
This legacy workflow exposes voxel_size for its BlockyModel conversion. It does not describe the Native engine’s geometry process. Requests with api_version: 2 can provide target_size using positive x, y or z dimensions up to 512 units. A single axis scales uniformly; all three axes specify independent target dimensions. auto_size uses category defaults when an explicit target_size is absent.
Check dimensions, UVs and texture appearance after conversion. General mesh output and Hytale model output have different format constraints.
Completion and errors
Poll the returned generation id with backoff. Stop when the status is complete or failed. A URL can be absent until its file is ready; use only populated download fields, such as glb_url, blockymodel_url and texture_url.
Handle invalid credentials, insufficient balance (402), rate limiting (429), validation errors and failed jobs explicitly. Do not automatically resubmit a paid generation when a response is uncertain. Check its saved status first.
What this API does not establish
A completed generation is not proof of game compatibility. Studio engine availability, animation bindings, server plugins and complete modpack behavior are outside this legacy API contract. Use the Studio interface to see the actions currently offered for each engine.