Skip to content

List models

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

List available AI models in a workspace with optional filtering by modality, capabilities, and text search.

workspace_id
required
Workspace Id
string format: uuid
modality
Any of:
string
Allowed values: image video three_d audio text

Filter by modality

search
Any of:
string

Full-text search on model name/description

supports_reference_images
Any of:
boolean

Require reference image support

inpainting
Any of:
boolean

Require inpainting support

outpainting
Any of:
boolean

Require outpainting support

generate_audio
Any of:
boolean

Require audio generation with video

text_to_3d
Any of:
boolean

Require text-to-3D

image_to_3d
Any of:
boolean

Require image-to-3D

text_to_speech
Any of:
boolean

Require text-to-speech

sound_effect
Any of:
boolean

Require sound effect generation

limit
Limit
integer
default: 20 >= 1 <= 100
cursor
Any of:
string

Successful Response

Media typeapplication/json
ListModelsOutput
object
models
required
Models
Array<object>
ModelSummary
object
model_id
required
Model Id

Unique model identifier — use for generation or to fetch full details.

string format: uuid
name
required
Name
string
modality
required
Modality

Image, video, three_d, or audio

string
Allowed values: text image audio video three_d playable
base_model_id
Any of:
string
description
Any of:
string
inference_timing
required
Inference Timing

Typical generation time range, e.g. ‘5-15s’

string
pagination
required
PaginationOutput
object
next_cursor
Any of:
string
has_more_results
required
Has More Results

If there are more results to page through

boolean
total_count
Any of:
integer
Example
{
"models": [
{
"modality": "text"
}
]
}

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.

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."
}

Invalid input parameters.

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 — too many concurrent requests.

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."
}