Creative Lab — 피규어 API

원본 사진을 두 단계에 걸쳐 치비 스타일의 수집형 3D 피규어로 변환합니다: prototype 단계는 입력한 사진으로부터 스타일이 적용된 콘셉트 이미지를 생성하고, 이어서 build 단계는 해당 콘셉트 이미지를 텍스처가 적용된 3D 모델로 변환합니다. 두 단계는 input_task_id를 통해 연결됩니다.

  • POST /openapi/creative-lab/figure/v1/prototype
  • POST /openapi/creative-lab/figure/v1/build

POST/openapi/creative-lab/figure/v1/prototype

피규어 프로토타입 작업 생성

소스 사진으로부터 치비 스타일의 콘셉트 이미지를 하나 생성합니다. 반환된 작업 ID는 빌드 엔드포인트에 input_task_id로 전달하는 값입니다. 응답 형태에 대해서는 피규어 프로토타입 작업 객체를 참고하세요.

파라미터

  • Name
    image_url
    Type
    string
    필수
    Description

    Meshy가 치비 피규어 스타일로 변환할 소스 사진입니다. 현재 .jpg, .jpeg, .png, .webp 형식을 지원합니다.

    이미지를 제공하는 방법은 두 가지입니다:

    • 공개적으로 접근 가능한 URL: 공용 인터넷에서 접근 가능한 URL입니다.
    • Data URI: 이미지의 base64로 인코딩된 data URI입니다. data URI 예시: data:image/jpeg;base64,<your base64-encoded image data>.
  • Name
    name
    Type
    string
    Description

    표시 목적의 선택적 작업 이름입니다. 최대 100자입니다.

  • Name
    remove_background
    Type
    boolean
    기본값 false
    Description

    true로 설정하면 프로토타입 이미지가 배경이 제거된 투명 RGBA PNG로 반환되어, 피사체를 원하는 배경에 합성할 수 있습니다.

반환값

응답의 result 프로퍼티는 새로 생성된 피규어 프로토타입 작업의 id를 포함합니다. 작업이 SUCCEEDED에 도달할 때까지 작업 조회 엔드포인트를 폴링하거나 스트림을 구독한 다음, 해당 ID를 빌드 엔드포인트에 input_task_id로 전달하세요.

실패 모드

  • Name
    400 - Bad Request
    Description

    요청이 허용되지 않았습니다. 일반적인 원인:

    • 파라미터 누락: image_url은 필수입니다.
    • 잘못된 이미지 형식: 제공된 image_url이 지원되는 형식(.jpg, .jpeg, .png, .webp)이 아닙니다.
    • 이미지 크기 범위 초과: 이미지가 너무 작거나, 최대 파일 크기를 초과하거나, 최대 픽셀 수를 초과합니다.
    • 접근 불가능한 URL: image_url을 다운로드할 수 없습니다(404 또는 timeout).
    • 잘못된 Data URI: base64 문자열의 형식이 올바르지 않습니다.
    • 콘텐츠 플래그 지정: 입력 이미지가 NSFW 또는 지적 재산권 moderation에 의해 플래그 지정되었습니다.
  • Name
    401 - Unauthorized
    Description

    인증에 실패했습니다. API 키를 확인하세요.

  • Name
    402 - Payment Required
    Description

    이 작업을 수행하기에 크레딧이 부족합니다.

  • Name
    429 - Too Many Requests
    Description

    속도 제한을 초과했습니다.

Request

POST
/openapi/creative-lab/figure/v1/prototype
# Stage 1: generate a chibi-style concept image
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "image_url": "<your publicly accessible image url or base64-encoded data URI>"
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Prototype example
Start with a source portrait, then generate the prototype image used by the build stage.
Source portrait used as the Creative Lab Figure input
Prototype input
Chibi-style figurine prototype image generated from the source photo
Prototype output

POST/openapi/creative-lab/figure/v1/build

Create a Figure Build Task

성공한 프로토타입 작업으로부터 최종 텍스처가 적용된 3D 피규어를 생성합니다. 빌드는 이미지로 3D와 동일한 image-to-3D 파이프라인으로 실행되므로, 응답 객체 형식과 출력 URL 목록이 정확히 일치합니다. 응답 형태에 대해서는 The Figure Build Task Object를 참고하세요.

파라미터

  • Name
    input_task_id
    Type
    string
    필수
    Description

    동일한 OpenAPI 엔드포인트를 통해 생성된 프로토타입 작업의 작업 ID입니다. 프로토타입은 동일한 API 키로 생성되어야 하며, SUCCEEDED에 도달해야 하고, 정확히 하나의 후보 이미지를 생성했어야 합니다.

    웹앱을 통해 생성된 프로토타입 작업은 허용되지 않습니다 — build 엔드포인트는 POST /openapi/creative-lab/figure/v1/prototype을 통해 생성된 프로토타입 작업만 허용하며, 그 외의 출처는 모두 404로 거부합니다.

  • Name
    name
    Type
    string
    Description

    표시용 선택적 작업 이름입니다. 최대 100자입니다.

반환값

응답의 result 속성에는 새로 생성된 피규어 빌드 작업의 id가 포함됩니다. Get a Task 엔드포인트를 폴링하거나 stream을 구독하여 작업이 SUCCEEDED에 도달할 때까지 기다린 다음, model_urls.glb에서 텍스처가 적용된 GLB를 다운로드하거나(다운스트림 파이프라인에서 OBJ를 선호하는 경우 model_urls.obj와 model_urls.mtl에서 OBJ + MTL 쌍을) 다운로드하세요.

실패 모드

  • Name
    400 - Bad Request
    Description

    요청이 허용되지 않았습니다. 일반적인 원인:

    • 파라미터 누락: input_task_id는 필수입니다.
    • 잘못된 UUID: input_task_id가 유효한 UUID가 아닙니다.
    • 상위 작업이 성공하지 않음: 참조된 프로토타입 작업이 아직 SUCCEEDED에 도달하지 않았습니다.
    • 후보 없음: 프로토타입 작업은 성공했지만 후보 이미지를 생성하지 못했습니다.
  • Name
    401 - Unauthorized
    Description

    인증에 실패했습니다. API 키를 확인해 주세요.

  • Name
    402 - Payment Required
    Description

    이 작업을 수행하기 위한 크레딧이 부족합니다.

  • Name
    404 - Not Found
    Description

    참조된 프로토타입 작업이 존재하지 않거나, 다른 사용자에게 속해 있거나, 웹앱을 통해 생성되었습니다(API 모드 프로토타입 작업만 build로 연결될 수 있습니다).

  • Name
    429 - Too Many Requests
    Description

    속도 제한을 초과했습니다.

Request

POST
/openapi/creative-lab/figure/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/build \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
  }'

Response

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Build example
빌드 작업은 선택된 프로토타입 이미지를 다운로드 가능한 텍스처 3D 모델로 변환합니다.
Creative Lab Figure build model preview
Build model preview

GET/openapi/creative-lab/figure/v1/(prototype|build)/:id

피규어 작업 조회하기

유효한 작업 id가 주어지면 프로토타입 또는 빌드 작업을 조회합니다. URL 경로는 작업의 단계와 일치해야 합니다 — /prototype/:id를 통해 조회한 빌드 작업은 404를 반환하며, 그 반대의 경우도 마찬가지입니다.

응답 형태는 피규어 프로토타입 작업 객체와 피규어 빌드 작업 객체를 참고하세요.

매개변수

  • Name
    id
    Type
    path
    Description

    조회할 피규어 작업의 고유 식별자입니다.

반환값

응답에는 피규어 작업 객체가 포함됩니다. 그 형태는 요청한 단계에 따라 달라집니다.

Request

GET
/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
# Prototype
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# Build
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Prototype Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-figure-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123456000,
  "started_at": 1729123460000,
  "finished_at": 1729123486000,
  "expires_at": 1729382686000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Build Response

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-figure-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 20,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***"
    }
  ]
}

DELETE/openapi/creative-lab/figure/v1/(prototype|build)/:id

Figure 작업 삭제

피규어 작업을 취소합니다. 작업이 아직 PENDING 상태인 경우, 생성 시 소모된 크레딧이 환불됩니다. 이미 IN_PROGRESS 상태인 작업은 환불 없이 취소됩니다 (워커가 이미 리소스를 소모하고 있을 수 있음). 이미 최종 상태(SUCCEEDED, FAILED, CANCELED)에 도달한 작업은 취소할 수 없습니다.

URL 경로는 작업의 단계와 일치해야 합니다 — /prototype/:buildId에 대한 DELETE는 404를 반환합니다.

경로 매개변수

  • Name
    id
    Type
    path
    Description

    취소할 피규어 작업의 고유 식별자입니다.

반환값

성공 시 빈 본문과 함께 204 No Content를 반환합니다.

실패 모드

  • Name
    400 - Bad Request
    Description

    작업이 이미 최종 상태이며 취소할 수 없습니다.

  • Name
    404 - Not Found
    Description

    작업이 존재하지 않거나, 다른 사용자에게 속해 있거나, 해당 단계가 URL 경로와 일치하지 않습니다.

Request

DELETE
/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

// Returns 204 No Content on success (empty body).

GET/openapi/creative-lab/figure/v1/(prototype|build)/:id/stream

피규어 작업 스트리밍

Server-Sent Events(SSE)를 통해 피규어 작업의 실시간 업데이트를 스트리밍합니다. URL 경로는 작업의 단계와 일치해야 하며, /prototype/:buildId/stream에서 스트림을 열면 status_code: 404가 포함된 단일 event: error 페이로드를 전송하고 스트림을 닫습니다.

매개변수

  • Name
    id
    Type
    path
    Description

    스트리밍할 피규어 작업의 고유 식별자입니다.

반환값

Server-Sent Events로 Figure Prototype 또는 Figure Build 작업 객체의 스트림을 반환합니다. 모든 프레임은 해당 단계의 전체 작업 객체를 담고 있으며 — Get 엔드포인트가 반환하는 것과 동일한 형태입니다 — 따라서 작업이 PENDING 또는 IN_PROGRESS 상태인 동안에는 출력 필드가 아직 채워지지 않은 상태(null, [] 또는 {})이며 finished_at은 null입니다.

Request

GET
/openapi/creative-lab/figure/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
curl -N https://api.meshy.ai/openapi/creative-lab/figure/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response Stream

// Error event example (wrong stage or task not found)
event: error
data: {
  "status_code": 404,
  "message": "Task not found"
}

// Message event examples illustrate task progress.
// Every frame is the full task object; fields not yet populated are null / empty.
// The PENDING frame below is abbreviated to the fields that change.
event: message
data: {
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-figure-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 20,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***"
    }
  ]
}

GET/openapi/creative-lab/figure/v1/(prototype|build)

피규어 작업 목록 조회

단일 단계에 대한 피규어 작업의 페이지네이션된 목록을 조회합니다. URL 경로에서 단계를 선택하며 — /prototype은 프로토타입 작업을 반환하고, /build는 빌드 작업을 반환합니다. 다른 단계의 작업은 어느 응답에도 포함되지 않습니다.

경로 매개변수

  • Name
    stage
    Type
    path
    필수
    Description

    prototype 또는 build 중 하나입니다. 이 컬렉션은 URL과 일치하는 단계의 작업만 반환합니다 — /prototype을 조회해도 빌드 작업은 절대 반환되지 않으며, 그 반대도 마찬가지입니다.

쿼리 매개변수

  • Name
    page_num
    Type
    integer
    기본값 1
    Description

    페이지네이션을 위한 페이지 번호입니다.

  • Name
    page_size
    Type
    integer
    기본값 10
    Description

    페이지 크기 제한입니다. 최대 허용치는 100개입니다.

  • Name
    sort_by
    Type
    string
    기본값 -created_at
    Description

    정렬 기준 필드입니다. 사용 가능한 값:

    • +created_at: 생성 시간 오름차순으로 정렬합니다.
    • -created_at: 생성 시간 내림차순으로 정렬합니다.

반환 값

단계별 작업 객체의 페이지네이션된 목록을 반환합니다 — /prototype을 조회할 때는 피규어 프로토타입 작업 객체를, /build를 조회할 때는 피규어 빌드 작업 객체를 반환합니다.

Request

GET
/openapi/creative-lab/figure/v1/prototype
# List prototype tasks
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/prototype?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# List build tasks
curl https://api.meshy.ai/openapi/creative-lab/figure/v1/build?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response (List Prototype Tasks)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-figure-prototype",
    "name": "",
    "status": "SUCCEEDED",
    "progress": 100,
    "created_at": 1729123456000,
    "started_at": 1729123460000,
    "finished_at": 1729123486000,
    "expires_at": 1729382686000,
    "preceding_tasks": 0,
    "task_error": null,
    "consumed_credits": 6,
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

The Figure Prototype Task Object

Figure Prototype Task 객체는 소스 사진으로부터 치비 스타일의 컨셉 이미지를 생성하기 위해 Meshy가 추적하는 작업 단위입니다. 이 단계의 출력은 input_task_id를 통해 빌드 단계로 연결됩니다.

Properties

  • Name
    id
    Type
    string
    Description

    작업의 고유 식별자입니다. 구현 세부 사항으로 작업 id에 k-정렬 가능한 UUID를 사용하지만, id의 형식에 대해 어떠한 가정도 해서는 안 됩니다.

  • Name
    type
    Type
    string
    Description

    작업의 유형입니다. 값은 creative-lab-figure-prototype입니다.

  • Name
    name
    Type
    string
    Description

    작업이 생성될 때 제공된 작업 이름입니다. 이름이 제공되지 않은 경우 빈 문자열입니다.

  • Name
    status
    Type
    string
    Description

    작업의 상태입니다. 가능한 값은 PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED 중 하나입니다.

  • Name
    progress
    Type
    integer
    Description

    작업의 진행 상태입니다. 작업이 아직 시작되지 않았다면 이 속성은 0입니다. 작업이 성공하면 100이 됩니다.

  • Name
    created_at
    Type
    timestamp
    Description

    작업이 생성된 시점의 타임스탬프이며, 밀리초 단위입니다.

  • Name
    started_at
    Type
    timestamp
    Description

    작업이 시작된 시점의 타임스탬프이며, 밀리초 단위입니다. 작업이 아직 시작되지 않았다면 이 속성은 0입니다.

  • Name
    finished_at
    Type
    timestamp
    Description

    작업이 완료된 시점의 타임스탬프이며, 밀리초 단위입니다. 작업이 아직 완료되지 않았다면 이 속성은 0입니다.

  • Name
    expires_at
    Type
    timestamp
    Description

    작업 결과가 만료되는 시점의 타임스탬프이며, 밀리초 단위입니다.

  • Name
    preceding_tasks
    Type
    integer
    Description

    선행 작업의 개수입니다.

  • Name
    task_error
    Type
    object
    Description

    실패한 작업에 대한 오류 세부 정보입니다. task_error 객체의 전체 참조는 오류를 참조하세요.

  • Name
    consumed_credits
    Type
    integer
    Description

    이 작업에서 소비된 크레딧 수입니다. 작업 상태가 PENDING, IN_PROGRESS, 또는 SUCCEEDED일 때 존재합니다. FAILED 작업의 경우 0을 반환합니다(실패 시 크레딧은 환불됩니다).

  • Name
    image_urls
    Type
    array of strings
    Description

    이 프로토타입 작업으로 생성된 컨셉 이미지 후보들의 다운로드 가능한 URL입니다. 현재 API는 항상 정확히 하나의 후보만 반환하지만, 이 필드는 향후 개정에서 호환성을 깨지 않고 여러 후보를 노출할 수 있도록 배열 형태로 되어 있습니다.

Example Figure Prototype Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-figure-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123456000,
  "started_at": 1729123460000,
  "finished_at": 1729123486000,
  "expires_at": 1729382686000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Figure Build Task 객체

Figure Build Task 객체는 성공한 프로토타입 작업으로부터 텍스처가 적용된 3D 피규어를 생성하기 위해 Meshy가 추적하는 작업 단위입니다. 이는 이미지로 3D에서 사용하는 것과 동일한 image-to-3D 파이프라인을 실행하므로, 출력 필드는 해당 엔드포인트의 task 객체를 그대로 따릅니다.

속성

  • Name
    id
    Type
    string
    Description

    작업의 고유 식별자입니다.

  • Name
    type
    Type
    string
    Description

    작업의 유형입니다. 값은 creative-lab-figure-build입니다.

  • Name
    name
    Type
    string
    Description

    작업 생성 시 제공된 작업 이름입니다. 이름이 제공되지 않은 경우 빈 문자열입니다.

  • Name
    status
    Type
    string
    Description

    작업의 상태입니다. 가능한 값은 PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED 중 하나입니다.

  • Name
    progress
    Type
    integer
    Description

    작업의 진행률입니다. 작업이 아직 시작되지 않은 경우 이 속성은 0입니다. 작업이 성공하면 100이 됩니다.

  • Name
    created_at
    Type
    timestamp
    Description

    작업이 생성된 시점의 타임스탬프이며, 밀리초 단위입니다.

  • Name
    started_at
    Type
    timestamp
    Description

    작업이 시작된 시점의 타임스탬프이며, 밀리초 단위입니다.

  • Name
    finished_at
    Type
    timestamp
    Description

    작업이 종료된 시점의 타임스탬프이며, 밀리초 단위입니다.

  • Name
    expires_at
    Type
    timestamp
    Description

    작업 결과가 만료되는 시점의 타임스탬프이며, 밀리초 단위입니다.

  • Name
    preceding_tasks
    Type
    integer
    Description

    선행 작업의 개수입니다. 상태가 PENDING일 때만 의미가 있습니다.

  • Name
    task_error
    Type
    object
    Description

    실패한 작업에 대한 오류 상세 정보입니다. task_error 객체의 전체 참조는 오류를 참고하세요.

  • Name
    consumed_credits
    Type
    integer
    Description

    이 작업에서 소비된 크레딧 수입니다. FAILED 작업의 경우 0을 반환합니다(실패 시 크레딧은 환불됩니다).

  • Name
    prompt
    Type
    string
    Description

    figure build에서는 항상 비어 있습니다. 이미지로 3D에서 사용하는 공유 V2ImageTo3DTaskResponse 형식과의 엔드포인트 간 호환성을 위해 존재합니다.

  • Name
    negative_prompt
    Type
    string
    Description

    figure build에서는 항상 비어 있습니다. 엔드포인트 간 호환성을 위해 존재합니다.

  • Name
    texture_prompt
    Type
    string
    Description

    figure build에서는 항상 비어 있습니다. 엔드포인트 간 호환성을 위해 존재합니다.

  • Name
    texture_image_url
    Type
    string
    Description

    figure build에서는 항상 비어 있습니다. 엔드포인트 간 호환성을 위해 존재합니다.

  • Name
    model_urls
    Type
    object
    Description

    생성된 3D 모델을 다운로드할 수 있는 URL입니다. figure build는 텍스처가 적용된 GLB와, Wavefront OBJ를 선호하는 파이프라인을 위한 OBJ + MTL 쌍을 함께 제공합니다. 이 필드 형태는 이미지로 3D의 model_urls 객체와 일치하므로, 향후 형식이 추가되더라도 호환성이 깨지지 않고 자연스럽게 반영됩니다.

    • Name
      glb
      Type
      string
      Description

      텍스처가 적용된 GLB 파일을 다운로드할 수 있는 URL입니다.

    • Name
      obj
      Type
      string
      Description

      Wavefront OBJ 파일(지오메트리 + UV)을 다운로드할 수 있는 URL입니다.

    • Name
      mtl
      Type
      string
      Description

      OBJ와 짝을 이루는 MTL 머티리얼 파일을 다운로드할 수 있는 URL입니다. obj와 texture_urls[0].base_color 항목을 함께 사용하세요.

  • Name
    thumbnail_url
    Type
    string
    Description

    모델 파일의 썸네일 이미지를 다운로드할 수 있는 URL입니다.

  • Name
    texture_urls
    Type
    array
    Description

    이 작업으로 생성된 텍스처 URL 객체의 배열입니다. 현재는 기본 색상 맵을 담은 단일 객체만 포함합니다.

    • Name
      base_color
      Type
      string
      Description

      기본 색상 맵 이미지를 다운로드할 수 있는 URL입니다.

Example Figure Build Task Object

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-figure-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 20,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/texture_0.png?Expires=***"
    }
  ]
}