Skip to content

Get model

Viewing v1— superseded by v2

GET
/v1/workspaces/{workspace_id}/models/{model_id}
curl --request GET \
--url https://api.app.layer.ai/api/v1/workspaces/:workspace_id/models/:model_id \
--header 'Authorization: Bearer <token>'

v1 is superseded. v1 was superseded by v2 on 2026-08-26. A sunset date has not been announced yet; v1 will be deprecated as a whole before removal. Migrate with the v2 migration guide.

Get full details for a specific model including capabilities, timing, and prompt format.

workspace_id
required
Workspace Id

Id of the workspace that owns the resource.

string format: uuid

Id of the workspace that owns the resource.

model_id
required
Model Id

Id of the model, as returned by the list models endpoint.

string format: uuid

Id of the model, as returned by the list models endpoint.

Successful Response

Media typeapplication/json
GetModelRESTOutput
object
model
required
ModelDetailREST
object
model_id
required
Model Id
string format: uuid
name
required
Name
string
modality
required
Modality
string
Allowed values: text image audio video three_d playable world
base_model_id
Base Model Id
string
nullable
base_model_name
Base Model Name
string
nullable
description
Description
string
nullable
inference_timing
required
Inference Timing
string
capabilities
required
ModelCapabilitiesREST

ModelCapabilities without the MCP token-saving serializer — returns all fields.

object
session_modes
Session Modes

Supported modes: create, create_video, create_3_d, create_speech, create_sound_effect, prompt_edit_image, etc.

Array<string>
text_prompt
Text Prompt
boolean
text_prompt_required
Text Prompt Required
boolean
max_prompt_chars
Max Prompt Chars

Longest prompt, in characters, the model accepts; null when unbounded.

integer
nullable
negative_prompt
Negative Prompt
boolean
seed
Seed
boolean
inpainting
Inpainting
boolean
outpainting
Outpainting
boolean
tileability
Tileability
boolean
guidance_file_types
Guidance File Types

Supported reference image types: pose, depth, canny, lineart, prompt (style reference), init, reference_image, etc.

Array<string>
duration_seconds
Duration Seconds

Supported video durations in seconds

Array<integer>
duration_seconds_min
Duration Seconds Min

Audio models: shortest clip this model generates, in seconds.

number
nullable
duration_seconds_max
Duration Seconds Max

Audio models: longest clip this model generates, in seconds. Pass duration_seconds between the min and max; a request outside them is refused.

number
nullable
duration_seconds_required
Duration Seconds Required

This model has no default clip length; without duration_seconds the shortest is used.

boolean
auto_aspect_ratio
Auto Aspect Ratio
boolean
generate_audio
Generate Audio
boolean
lipsync
Lipsync
boolean
textures
Textures
boolean
quad_mesh
Quad Mesh
boolean
pbr_materials
Pbr Materials
boolean
text_to_speech
Text To Speech
boolean
sound_effect
Sound Effect
boolean
music
Music
boolean
voice_changer
Voice Changer
boolean
text_to_dialogue
Text To Dialogue
boolean
audio_separation
Audio Separation
boolean
audio_isolation
Audio Isolation
boolean
audio_inpaint
Audio Inpaint
boolean
audio_outpaint
Audio Outpaint
boolean
audio_denoise
Audio Denoise
boolean
prompt_format
Prompt Format
string
nullable
Example
{
"model": {
"modality": "text",
"capabilities": {
"text_prompt": false,
"text_prompt_required": false,
"negative_prompt": false,
"seed": false,
"inpainting": false,
"outpainting": false,
"tileability": false,
"duration_seconds_required": false,
"auto_aspect_ratio": false,
"generate_audio": false,
"lipsync": false,
"textures": false,
"quad_mesh": false,
"pbr_materials": false,
"text_to_speech": false,
"sound_effect": false,
"music": false,
"voice_changer": false,
"text_to_dialogue": false,
"audio_separation": false,
"audio_isolation": false,
"audio_inpaint": false,
"audio_outpaint": false,
"audio_denoise": false
}
}
}

Unauthenticated — missing or invalid Bearer token.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}

Forbidden — insufficient permissions, or the access token lacks the scope the operation requires.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}

Resource not found.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}

The outcome of the request with this Idempotency-Key is not known yet: it is still running, or it failed without a stored response. Retry after the number of seconds in Retry-After.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}

Invalid input parameters, or an Idempotency-Key reused for a different request.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}

Rate limited — retry after the number of seconds in Retry-After.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}

Internal server error.

Media typeapplication/problem+json
object
type
required
string
title
required
string
status
required
integer
detail
required
string
Example
{
"type": "https://api.layer.ai/errors/ERROR_CODE",
"title": "Error Title",
"status": 400,
"detail": "Human-readable description."
}