curl --request POST \
--url https://api.gizmo.antimlabs.com/v1/assets \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "A wooden cabinet with three sliding drawers"
}
'{
"ok": true,
"job_id": "job_x9y8z7w6",
"status": "queued",
"estimated_seconds": 1050,
"estimate_note": "Approximate duration; actual generation time varies with the request and service load."
}{
"detail": {
"error": {
"code": "invalid_api_key",
"message": "Invalid or revoked API key",
"status": 401
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded: 60 requests per minute",
"status": 429
}
}
}Generate an asset
Generate a single 3D asset from a prompt and optional reference images. Returns 202 Accepted with a job_id. Poll GET /v1/jobs/{job_id}?include_result=true until the job succeeds, then use result.asset.id to retrieve or export the asset. Generation time varies with the request; estimates are advisory.
curl --request POST \
--url https://api.gizmo.antimlabs.com/v1/assets \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"prompt": "A wooden cabinet with three sliding drawers"
}
'{
"ok": true,
"job_id": "job_x9y8z7w6",
"status": "queued",
"estimated_seconds": 1050,
"estimate_note": "Approximate duration; actual generation time varies with the request and service load."
}{
"detail": {
"error": {
"code": "invalid_api_key",
"message": "Invalid or revoked API key",
"status": 401
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "asset_not_found",
"message": "Asset ast_abc123 not found",
"status": 404,
"fields": [
{}
]
}
}
}{
"detail": {
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded: 60 requests per minute",
"status": 429
}
}
}Authorizations
API key created in Gizmo Settings → API Keys
Headers
Reuse the same key and body when retrying generation; prevents duplicate jobs.
1 - 128^[A-Za-z0-9._:-]+$Body
Request body for asset generation.
Natural language description of the asset
1"A 6-DOF robotic arm with gripper end-effector"
Show child attributes
Show child attributes
Up to 8 http(s) image URLs grounding the asset's geometry/texture
8Uploaded image IDs or HTTP(S) URLs, optionally labeled with a view. Combined maximum: 8 images.
8Show child attributes
Show child attributes
Save the asset to your library for later retrieval and export (default true)