
Output
3D mesh
Resolution
512, 1024, 1536
Inputs
- Reference image (required)
LLM-ready
API & LLM schema
Exact request contract for this model. Agents can fetch it from /api/v1/models?id=fal-ai/trellis-2.
POST
/api/v1/generate36 fields · 2 required| Field | Type | Requirement | Contract |
|---|---|---|---|
model_id | constant | Required | ArtEmotion model identifier. |
extra | object | Optional | Model-specific settings may also be nested here. |
max_credits | number | Optional | Reject before submission if the estimated list price exceeds this cap. · Range: 1–… |
webhook_url | string | Optional | Format: uri |
webhook_secret | string | Optional | Optional model input. |
folder_id | string | Optional | Optional model input. |
ss_sampling_steps | number | Optional | Number of denoising steps for the initial structure. More steps = slower but potentially higher quality. · Default: 12 · Range: 1–50 |
ss_guidance_strength | number | Optional | How closely the initial 3D structure follows the input image. · Default: 7.5 · Range: 0–10 |
ss_guidance_rescale | number | Optional | Dampens artifacts from high guidance in stage 1. · Default: 0.7 · Range: 0–1 |
ss_rescale_t | number | Optional | Controls noise schedule sharpness for structure generation. · Default: 5 · Range: 1–6 |
ss_guidance_interval_start | number | Optional | Fraction of denoising at which guidance starts for stage 1. · Default: 0.6 · Range: 0–1 |
ss_guidance_interval_end | number | Optional | Fraction of denoising at which guidance ends for stage 1. · Default: 1 · Range: 0–1 |
shape_slat_sampling_steps | number | Optional | Number of denoising steps for shape refinement. More steps = slower but potentially smoother geometry. · Default: 12 · Range: 1–50 |
shape_slat_guidance_strength | number | Optional | How closely the detailed geometry follows the input image. · Default: 7.5 · Range: 0–10 |
shape_slat_guidance_rescale | number | Optional | Dampens artifacts from high guidance in the shape stage. · Default: 0.5 · Range: 0–1 |
shape_slat_rescale_t | number | Optional | Controls noise schedule sharpness for shape refinement. · Default: 3 · Range: 1–6 |
shape_slat_guidance_interval_start | number | Optional | Fraction of denoising at which guidance starts for stage 2. · Default: 0.6 · Range: 0–1 |
shape_slat_guidance_interval_end | number | Optional | Fraction of denoising at which guidance ends for stage 2. · Default: 1 · Range: 0–1 |
tex_slat_sampling_steps | number | Optional | Number of denoising steps for texture generation. More steps = slower but potentially cleaner textures. · Default: 12 · Range: 1–50 |
tex_slat_guidance_strength | number | Optional | How closely the texture follows the input image colors. · Default: 1 · Range: 0–10 |
tex_slat_guidance_rescale | number | Optional | Dampens artifacts from high guidance in the texture stage. · Default: 0 · Range: 0–1 |
tex_slat_rescale_t | number | Optional | Controls noise schedule sharpness for texture generation. · Default: 3 · Range: 1–6 |
tex_slat_guidance_interval_start | number | Optional | Fraction of denoising at which guidance starts for stage 3. · Default: 0.6 · Range: 0–1 |
tex_slat_guidance_interval_end | number | Optional | Fraction of denoising at which guidance ends for stage 3. · Default: 0.9 · Range: 0–1 |
resolution | string | Optional | Output resolution; higher is slower but more detailed. · Allowed: 512, 1024, 1536 · Default: 1024 |
texture_size | number | Optional | Resolution of the texture image baked onto the mesh. · Allowed: 1024, 2048, 4096 · Default: 2048 |
decimation_target | number | Optional | Target number of vertices in the final mesh. Lower = smaller files, less detail. · Default: 500000 · Range: 5000–2000000 |
remesh | boolean | Optional | Rebuild the mesh topology for cleaner triangles. · Default: true |
remesh_band | number | Optional | Controls how far remeshing can move vertices from the original surface. · Default: 1 · Range: 0–4 |
remesh_project | number | Optional | How much to project remeshed vertices back onto the original surface. 0 = smoother, 1 = preserves detail. · Default: 0 · Range: 0–1 |
uv_unwrap_angle_threshold_deg | number | Optional | Maximum angle between adjacent face normals within a single UV chart. · Default: 90 · Range: 0–180 |
uv_unwrap_global_iterations | number | Optional | Number of global clustering passes during UV chart computation. · Default: 1 · Range: 1–10 |
uv_unwrap_refine_iterations | number | Optional | Number of local refinement passes during UV chart computation. · Default: 0 · Range: 0–10 |
uv_unwrap_smooth_strength | number | Optional | Smoothing strength applied to UV chart boundaries. · Default: 1 · Range: 0–10 |
seed | integer | Optional | Random seed for reproducibility. |
reference_image_url | string | Required | Format: uri |
Minimal request example
{
"model_id": "fal-ai/trellis-2",
"reference_image_url": "https://example.com/reference_image"
}Raw JSON Schema
{
"$schema": "https://json-schema.org/draft/2020-12/schema",
"$id": "https://www.artemotion.ai/api/v1/models?id=fal-ai%2Ftrellis-2",
"title": "Trellis 2 generation request",
"description": "Request body accepted by POST /api/v1/generate for fal-ai/trellis-2.",
"type": "object",
"properties": {
"model_id": {
"type": "string",
"const": "fal-ai/trellis-2",
"description": "ArtEmotion model identifier."
},
"extra": {
"type": "object",
"additionalProperties": true,
"description": "Model-specific settings may also be nested here."
},
"max_credits": {
"type": "number",
"minimum": 1,
"description": "Reject before submission if the estimated list price exceeds this cap."
},
"webhook_url": {
"type": "string",
"format": "uri",
"maxLength": 2048
},
"webhook_secret": {
"type": "string",
"maxLength": 512
},
"folder_id": {
"type": "string"
},
"ss_sampling_steps": {
"title": "Structure Steps",
"description": "Number of denoising steps for the initial structure. More steps = slower but potentially higher quality.",
"default": 12,
"type": "number",
"minimum": 1,
"maximum": 50,
"multipleOf": 1
},
"ss_guidance_strength": {
"title": "Structure Guidance",
"description": "How closely the initial 3D structure follows the input image.",
"default": 7.5,
"type": "number",
"minimum": 0,
"maximum": 10
},
"ss_guidance_rescale": {
"title": "Structure Guidance Rescale",
"description": "Dampens artifacts from high guidance in stage 1.",
"default": 0.7,
"type": "number",
"minimum": 0,
"maximum": 1
},
"ss_rescale_t": {
"title": "Structure Rescale T",
"description": "Controls noise schedule sharpness for structure generation.",
"default": 5,
"type": "number",
"minimum": 1,
"maximum": 6
},
"ss_guidance_interval_start": {
"title": "Structure Guidance Start",
"description": "Fraction of denoising at which guidance starts for stage 1.",
"default": 0.6,
"type": "number",
"minimum": 0,
"maximum": 1
},
"ss_guidance_interval_end": {
"title": "Structure Guidance End",
"description": "Fraction of denoising at which guidance ends for stage 1.",
"default": 1,
"type": "number",
"minimum": 0,
"maximum": 1
},
"shape_slat_sampling_steps": {
"title": "Shape Steps",
"description": "Number of denoising steps for shape refinement. More steps = slower but potentially smoother geometry.",
"default": 12,
"type": "number",
"minimum": 1,
"maximum": 50,
"multipleOf": 1
},
"shape_slat_guidance_strength": {
"title": "Shape Guidance",
"description": "How closely the detailed geometry follows the input image.",
"default": 7.5,
"type": "number",
"minimum": 0,
"maximum": 10
},
"shape_slat_guidance_rescale": {
"title": "Shape Guidance Rescale",
"description": "Dampens artifacts from high guidance in the shape stage.",
"default": 0.5,
"type": "number",
"minimum": 0,
"maximum": 1
},
"shape_slat_rescale_t": {
"title": "Shape Rescale T",
"description": "Controls noise schedule sharpness for shape refinement.",
"default": 3,
"type": "number",
"minimum": 1,
"maximum": 6
},
"shape_slat_guidance_interval_start": {
"title": "Shape Guidance Start",
"description": "Fraction of denoising at which guidance starts for stage 2.",
"default": 0.6,
"type": "number",
"minimum": 0,
"maximum": 1
},
"shape_slat_guidance_interval_end": {
"title": "Shape Guidance End",
"description": "Fraction of denoising at which guidance ends for stage 2.",
"default": 1,
"type": "number",
"minimum": 0,
"maximum": 1
},
"tex_slat_sampling_steps": {
"title": "Texture Steps",
"description": "Number of denoising steps for texture generation. More steps = slower but potentially cleaner textures.",
"default": 12,
"type": "number",
"minimum": 1,
"maximum": 50,
"multipleOf": 1
},
"tex_slat_guidance_strength": {
"title": "Texture Guidance",
"description": "How closely the texture follows the input image colors.",
"default": 1,
"type": "number",
"minimum": 0,
"maximum": 10
},
"tex_slat_guidance_rescale": {
"title": "Texture Guidance Rescale",
"description": "Dampens artifacts from high guidance in the texture stage.",
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 1
},
"tex_slat_rescale_t": {
"title": "Texture Rescale T",
"description": "Controls noise schedule sharpness for texture generation.",
"default": 3,
"type": "number",
"minimum": 1,
"maximum": 6
},
"tex_slat_guidance_interval_start": {
"title": "Texture Guidance Start",
"description": "Fraction of denoising at which guidance starts for stage 3.",
"default": 0.6,
"type": "number",
"minimum": 0,
"maximum": 1
},
"tex_slat_guidance_interval_end": {
"title": "Texture Guidance End",
"description": "Fraction of denoising at which guidance ends for stage 3.",
"default": 0.9,
"type": "number",
"minimum": 0,
"maximum": 1
},
"resolution": {
"title": "Resolution",
"description": "Output resolution; higher is slower but more detailed.",
"default": 1024,
"type": "string",
"enum": [
"512",
"1024",
"1536"
]
},
"texture_size": {
"title": "Texture Size",
"description": "Resolution of the texture image baked onto the mesh.",
"default": 2048,
"type": "number",
"enum": [
1024,
2048,
4096
]
},
"decimation_target": {
"title": "Decimation Target",
"description": "Target number of vertices in the final mesh. Lower = smaller files, less detail.",
"default": 500000,
"type": "number",
"minimum": 5000,
"maximum": 2000000,
"multipleOf": 1
},
"remesh": {
"title": "Remesh",
"description": "Rebuild the mesh topology for cleaner triangles.",
"default": true,
"type": "boolean"
},
"remesh_band": {
"title": "Remesh Band",
"description": "Controls how far remeshing can move vertices from the original surface.",
"default": 1,
"type": "number",
"minimum": 0,
"maximum": 4
},
"remesh_project": {
"title": "Remesh Project",
"description": "How much to project remeshed vertices back onto the original surface. 0 = smoother, 1 = preserves detail.",
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 1
},
"uv_unwrap_angle_threshold_deg": {
"title": "UV Angle Threshold",
"description": "Maximum angle between adjacent face normals within a single UV chart.",
"default": 90,
"type": "number",
"minimum": 0,
"maximum": 180
},
"uv_unwrap_global_iterations": {
"title": "UV Global Iterations",
"description": "Number of global clustering passes during UV chart computation.",
"default": 1,
"type": "number",
"minimum": 1,
"maximum": 10,
"multipleOf": 1
},
"uv_unwrap_refine_iterations": {
"title": "UV Refine Iterations",
"description": "Number of local refinement passes during UV chart computation.",
"default": 0,
"type": "number",
"minimum": 0,
"maximum": 10,
"multipleOf": 1
},
"uv_unwrap_smooth_strength": {
"title": "UV Smooth Strength",
"description": "Smoothing strength applied to UV chart boundaries.",
"default": 1,
"type": "number",
"minimum": 0,
"maximum": 10
},
"seed": {
"title": "Seed",
"description": "Random seed for reproducibility.",
"type": "integer"
},
"reference_image_url": {
"type": "string",
"format": "uri"
}
},
"required": [
"model_id",
"reference_image_url"
],
"additionalProperties": false
}FAQ
How much does Trellis 2 cost on ArtEmotion?
Credit-based pricing. You pay in ArtEmotion credits — every plan and top-up converts USD to credits at a fixed rate.
Do I get my credits back if Trellis 2 fails?
Yes — failed generations are never charged. The credits are released back to your balance automatically.
Can I call Trellis 2 from the API?
Yes. Use POST /api/v1/generate with model_id: "fal-ai/trellis-2". See the API reference for the full schema.
Where are my generations stored?
Every output is saved to your personal Library. You can export or delete everything any time from Privacy & deletion.
Ready to generate with Trellis 2?
Start now →No commitment. New accounts get 50 free credits on signup. See pricing.