Rodin Gen-2.5
Generate 3D assets from images or text with Rodin Gen-2.5.
Authorization
bearer In: header
Request Body
multipart/form-data
TypeScript Definitions
Use the request body type in TypeScript.
Response Body
application/json
curl -X POST "https://example.com/api/v2/rodin" \ -F tier="Gen-2.5-Extreme-Low"{ "error": "NO_SUCH_TASK", "message": "Submitted.", "uuid": "123e4567-e89b-12d3-a456-426614174000", "submit_time": "2019-08-24T14:15:22Z", "jobs": { "uuids": [ "52faea01-729e-4195-85e8-6050a65315e3" ], "subscription_key": "string" }, "consumed": 0.5, "prompt": "string"}Input
Image-to-3D
Submit one to five images. The first image is used for material generation. prompt is optional; when omitted, the service derives guidance from the images.
curl --fail-with-body --request POST 'https://api.hyper3d.com/api/v2/rodin' \
--header "Authorization: Bearer ${RODIN_API_KEY}" \
--form 'images=@./input.png' \
--form 'tier=Gen-2.5-Medium' \
--form 'mesh_mode=Raw' \
--form 'quality=medium'
Text-to-3D
Submit a prompt and omit images.
curl --fail-with-body --request POST 'https://api.hyper3d.com/api/v2/rodin' \
--header "Authorization: Bearer ${RODIN_API_KEY}" \
--form 'prompt=A small wooden treasure chest with brass trim' \
--form 'tier=Gen-2.5-Medium' \
--form 'mesh_mode=Raw' \
--form 'quality=medium'
Tier
tier is required
Always send a Gen-2.5 tier explicitly. If tier is omitted, the endpoint falls back to Regular and generates a Gen-1/1.5 asset.
tier selects the generation family and how much detail the model resolves. It is independent of the mesh and texture controls below: any tier can be combined with any mesh_mode, quality, or texture_mode the schema allows.
| Tier | Intended use |
|---|---|
Gen-2.5-Extreme-Low | Quick generation of simple assets. |
Gen-2.5-Low | Clean assets and small hard-surface props. |
Gen-2.5-Medium | Balanced structure and detail. |
Gen-2.5-High | Richer structure and smoother surfaces. |
Gen-2.5-Extreme-High | High-frequency detail reproduction. |
Creative mode
Creative mode (geometry_instruct_mode=creative) allows more flexible generation while maintaining consistent output quality. It is available for Gen-2.5-Medium and higher tiers.
HighPack upgrades pack textures from 2K to 4K. For Gen-2.5 it does not change geometry or generate an additional high-poly model.
Texture mode
texture_mode selects the texture generation effort level. The default value of texture_mode depends on the selected tier.
| Tier | Default texture_mode |
|---|---|
Gen-2.5-Extreme-Low | extreme-low |
Gen-2.5-Low | low |
Gen-2.5-Medium | medium |
Gen-2.5-High | high |
Gen-2.5-Extreme-High | high |
How to generate 12K Texture
The texture resolution is jointly determined by texture_mode and addons.
| Item | Texture resolution |
|---|---|
| Base generation | 2K |
addons=HighPack | 4K |
texture_mode=extreme-high | 6K |
texture_mode=extreme-high + addons=HighPack | 12K |
Pricing
| Item | Charge |
|---|---|
| Base Gen-2.5 generation | 0.5 credits |
tier=Gen-2.5-Extreme-High | +0.5 credits |
addons includes HighPack | +1.0 credits |
texture_mode=extreme-high | +2.0 credits |
Charges are additive. Base generation costs only 0.5 credits, and parameters not listed above do not incur additional charges.
Response and lifecycle
{
"message": "Submitted.",
"uuid": "123e4567-e89b-12d3-a456-426614174000",
"jobs": {
"uuids": ["223e4567-e89b-12d3-a456-426614174000"],
"subscription_key": "subscription-key-from-generation-response"
},
"consumed": 0.5
}
Use jobs.subscription_key for Check Status and top-level uuid for Download Results. HTTP 201 means the endpoint handled the request; acceptance requires an absent or empty error and a non-empty top-level uuid. HTTP 400 indicates invalid fields/files, 401 indicates invalid authentication, and 429 indicates throttling.