Chuyển một bức ảnh nguồn thành một tượng nhỏ sưu tập phong cách nhựa với hai giai đoạn:
nguyên mẫu tạo ra một hình ảnh khái niệm có phong cách từ ảnh nhập của bạn, sau đó
xây dựng biến hình ảnh khái niệm đó thành một mô hình 3D có texture. Hai giai đoạn này
được liên kết thông qua input_task_id.
POST /openapi/creative-lab/brick-figure/v1/prototype
Tạo một hình ảnh khái niệm kiểu gạch từ ảnh nguồn. ID nhiệm vụ được trả về là thứ bạn truyền dưới dạng input_task_id tới endpoint tạo. Tham khảo
Đối tượng Nhiệm vụ Tượng Gạch
để biết cấu trúc phản hồi.
Tham số
Name
image_url
Type
string
Bắt buộc
Description
Ảnh nguồn để Meshy tạo kiểu như một tượng gạch nhỏ. Hiện chúng tôi hỗ trợ các định dạng .jpg, .jpeg, .png, và .webp.
Có hai cách để cung cấp hình ảnh:
URL truy cập công khai: Một URL có thể truy cập từ internet công cộng.
Data URI: Một Data URI được mã hóa base64 của hình ảnh. Ví dụ về một Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Name
name
Type
string
Description
Tên nhiệm vụ tùy chọn để hiển thị. Tối đa 100 ký tự.
Phản hồi
Thuộc tính result của phản hồi chứa id của nhiệm vụ tạo mẫu tượng gạch vừa được tạo. Theo dõi endpoint Lấy một Nhiệm vụ hoặc đăng ký stream cho đến khi nhiệm vụ đạt SUCCEEDED, sau đó truyền ID đó tới endpoint tạo dựng dưới dạng input_task_id.
Chế độ Thất bại
Name
400 - Bad Request
Description
Yêu cầu không chấp nhận được. Nguyên nhân phổ biến:
Thiếu tham số: image_url là bắt buộc.
Định dạng hình ảnh không hợp lệ: image_url được cung cấp không phải là định dạng được hỗ trợ (.jpg, .jpeg, .png, .webp).
Kích thước hình ảnh ngoài giới hạn: Hình ảnh quá nhỏ, vượt quá kích thước tệp tối đa, hoặc vượt quá số lượng pixel tối đa.
URL không thể truy cập: Không thể tải xuống image_url (404 hoặc timeout).
Data URI không hợp lệ: Chuỗi base64 không đúng định dạng.
Nội dung bị gắn cờ: Hình ảnh đầu vào bị gắn cờ bởi moderation NSFW hoặc quyền sở hữu trí tuệ.
Name
401 - Unauthorized
Description
Xác thực thất bại. Vui lòng kiểm tra khóa API của bạn.
Name
402 - Payment Required
Description
Không đủ tín dụng để thực hiện nhiệm vụ này.
Name
403 - Forbidden
Description
Hình ảnh đầu vào đã bị gắn cờ do vi phạm quyền sở hữu trí tuệ.
Name
429 - Too Many Requests
Description
Bạn đã vượt quá giới hạn tốc độ.
Request
POST
/openapi/creative-lab/brick-figure/v1/prototype
# Giai đoạn 1: tạo một hình ảnh khái niệm kiểu gạchcurl https://api.meshy.ai/openapi/creative-lab/brick-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>" }'
Tạo tượng gạch 3D cuối cùng có kết cấu từ một nhiệm vụ mẫu đã hoàn thành. Quá trình build chạy cùng một pipeline ảnh sang 3D như Ảnh sang 3D, vì vậy định dạng đối tượng phản hồi và danh sách các URL đầu ra khớp hoàn toàn. Tham khảo The Brick Figure Build Task Object để biết hình dạng phản hồi.
Parameters
Name
input_task_id
Type
string
Bắt buộc
Description
ID của nhiệm vụ mẫu được tạo qua cùng một endpoint OpenAPI. Mẫu phải được tạo với cùng một khóa API, phải đạt đến SUCCEEDED, và phải sản xuất chính xác một hình ảnh ứng viên.
Những nhiệm vụ mẫu được tạo qua webapp không được chấp nhận — endpoint build chỉ chấp nhận những nhiệm vụ mẫu được thực hiện bởi POST /openapi/creative-lab/brick-figure/v1/prototype và từ chối bất kỳ nguồn nào khác với 404.
Name
name
Type
string
Description
Tên nhiệm vụ tùy chọn để hiển thị. Tối đa 100 ký tự.
Returns
Thuộc tính result của phản hồi chứa id của nhiệm vụ build tượng gạch mới tạo. Kiểm tra endpoint Get a Task hoặc đăng ký với stream cho đến khi nhiệm vụ đạt đến SUCCEEDED, sau đó tải xuống GLB đã kết cấu từ model_urls.glb (hoặc cặp OBJ + MTL từ model_urls.obj và model_urls.mtl nếu pipeline xuôi dòng của bạn thích OBJ).
Failure Modes
Name
400 - Bad Request
Description
Yêu cầu không thể chấp nhận được. Các nguyên nhân phổ biến:
Thiếu tham số: input_task_id là bắt buộc.
UUID không hợp lệ: input_task_id không phải là UUID hợp lệ.
Mẫu chưa hoàn thành: Nhiệm vụ mẫu được tham chiếu chưa đạt đến SUCCEEDED.
Không có ứng viên: Nhiệm vụ mẫu đã hoàn thành nhưng không sản xuất được hình ảnh ứng viên nào.
Name
401 - Unauthorized
Description
Xác thực không thành công. Vui lòng kiểm tra khóa API của bạn.
Name
402 - Payment Required
Description
Tín dụng không đủ để thực hiện nhiệm vụ này.
Name
404 - Not Found
Description
Nhiệm vụ mẫu được tham chiếu không tồn tại, thuộc người dùng khác, hoặc được tạo qua webapp (chỉ các nhiệm vụ mẫu ở chế độ API mới được kết nối để build).
Name
429 - Too Many Requests
Description
Bạn đã vượt quá giới hạn tốc độ của mình.
Request
POST
/openapi/creative-lab/brick-figure/v1/build
# Giai đoạn 2: build tiếp từ nhiệm vụ mẫu đã hoàn thànhcurl https://api.meshy.ai/openapi/creative-lab/brick-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" }'
Lấy nhiệm vụ nguyên mẫu hoặc xây dựng dựa trên một id nhiệm vụ hợp lệ. Đường dẫn URL
phải khớp với giai đoạn của nhiệm vụ — nhiệm vụ xây dựng được tải qua
/prototype/:id sẽ trả về 404, và ngược lại.
Hủy một nhiệm vụ tượng gạch. Nếu nhiệm vụ vẫn đang PENDING, tín dụng tiêu thụ khi tạo sẽ được hoàn trả. Nhiệm vụ đã ở IN_PROGRESS bị hủy mà không hoàn trả (người thực hiện có thể đã đang tiêu tốn tài nguyên). Nhiệm vụ đã đạt trạng thái cuối (SUCCEEDED, FAILED, CANCELED) không thể hủy.
Đường dẫn URL phải khớp với giai đoạn của nhiệm vụ — DELETE trên
/prototype/:buildId trả về 404.
Tham số Đường dẫn
Name
id
Type
path
Description
Định danh duy nhất cho nhiệm vụ tượng gạch cần hủy.
Kết Quả Trả Về
Trả về 204 No Content thành công kèm phần thân rỗng.
Chế Độ Thất Bại
Name
400 - Bad Request
Description
Nhiệm vụ đã ở trạng thái cuối và không thể hủy.
Name
404 - Not Found
Description
Nhiệm vụ không tồn tại, thuộc về người dùng khác, hoặc giai đoạn của nó không khớp với đường dẫn URL.
Phát trực tuyến các cập nhật thời gian thực cho một nhiệm vụ tượng gạch qua Server-Sent Events (SSE).
Đường dẫn URL phải khớp với giai đoạn của nhiệm vụ — mở một luồng tại
/prototype/:buildId/stream phát ra một event: error payload duy nhất với
status_code: 404 và đóng luồng.
Tham số
Name
id
Type
path
Description
Định danh duy nhất cho nhiệm vụ tượng gạch để phát trực tuyến.
Trả về
Trả về một luồng các đối tượng nhiệm vụ Prototype Tượng Gạch
hoặc Xây Dựng Tượng Gạch dưới dạng Server-Sent Events. Đối với các nhiệm vụ PENDING hoặc IN_PROGRESS, luồng phản hồi sẽ chỉ bao gồm các trường progress và status cần thiết.
// Ví dụ về sự kiện lỗi (giai đoạn sai hoặc không tìm thấy nhiệm vụ)event: errordata: {"status_code": 404,"message": "Task not found"}// Ví dụ sự kiện tin nhắn minh hoạ việc tiến độ nhiệm vụ.// Đối với các nhiệm vụ PENDING hoặc IN_PROGRESS, luồng phản hồi sẽ không bao gồm tất cả các trường.event: messagedata: {"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb","progress": 0,"status": "PENDING"}event: messagedata: {"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb","type": "creative-lab-brick-figure-build","status": "SUCCEEDED","progress": 100,"created_at": 1729123500000,"started_at": 1729123510000,"finished_at": 1729123535000,"expires_at": 1729382735000,"task_error": null,"consumed_credits": 30,"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=***" } ]}
Lấy danh sách phân trang các nhiệm vụ tượng gạch của bạn cho một giai đoạn duy nhất. Đường dẫn URL
chọn giai đoạn — /prototype trả về các nhiệm vụ nguyên mẫu; /build
trả về các nhiệm vụ xây dựng. Nhiệm vụ từ giai đoạn khác không được bao gồm trong cả hai
phản hồi.
Tham số Đường dẫn
Name
stage
Type
path
Bắt buộc
Description
Hoặc là prototype hoặc build. Bộ sưu tập chỉ trả về các nhiệm vụ
mà giai đoạn khớp với URL — khi lấy /prototype không bao giờ trả về
nhiệm vụ xây dựng và ngược lại.
Tham số Truy vấn
Name
page_num
Type
integer
mặc định 1
Description
Số trang cho phân trang.
Name
page_size
Type
integer
mặc định 10
Description
Giới hạn kích thước trang. Tối đa cho phép là 100 mục.
Name
sort_by
Type
string
mặc định -created_at
Description
Trường để sắp xếp. Giá trị có sẵn:
+created_at: Sắp xếp theo thời gian tạo theo thứ tự tăng dần.
-created_at: Sắp xếp theo thời gian tạo theo thứ tự giảm dần.
Đối tượng Nhiệm vụ Nguyên mẫu Tượng Gạch là một đơn vị công việc mà Meshy theo dõi để tạo ra một hình ảnh khái niệm kiểu gạch từ một bức ảnh nguồn. Đầu ra của giai đoạn này được nối vào giai đoạn xây dựng thông qua input_task_id.
Thuộc tính
Name
id
Type
string
Description
Định danh duy nhất cho công việc. Mặc dù chúng tôi sử dụng UUID có thể sắp xếp theo k để làm chi tiết triển khai cho id của công việc, bạn không nên đưa ra bất kỳ giả định nào về định dạng của id.
Name
type
Type
string
Description
Loại của công việc. Giá trị là creative-lab-brick-figure-prototype.
Name
name
Type
string
Description
Tên công việc cung cấp khi công việc được tạo. Chuỗi rỗng nếu không có tên nào được cung cấp.
Name
status
Type
string
Description
Trạng thái của công việc. Các giá trị có thể là một trong PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Tiến độ của công việc. Nếu công việc chưa bắt đầu, thuộc tính này sẽ là 0. Khi công việc đã thành công, giá trị này sẽ trở thành 100.
Name
created_at
Type
timestamp
Description
Dấu thời gian khi công việc được tạo, tính bằng mili giây.
Dấu thời gian biểu thị số mili giây đã trôi qua kể từ ngày 1 tháng 1 năm 1970 UTC, theo tiêu chuẩn
RFC 3339.
Ví dụ, ngày Thứ Sáu, 1 tháng 9 năm 2023 lúc 12:00:00 PM GMT được biểu thị là 1693569600000. Điều này áp dụng
cho tất cả các dấu thời gian trong Meshy API.
Name
started_at
Type
timestamp
Description
Dấu thời gian khi công việc bắt đầu, tính bằng mili giây. Nếu công việc chưa bắt đầu, thuộc tính này sẽ là null.
Name
finished_at
Type
timestamp
Description
Dấu thời gian khi công việc kết thúc, tính bằng mili giây. Nếu công việc chưa kết thúc, thuộc tính này sẽ là null.
Name
expires_at
Type
timestamp
Description
Dấu thời gian khi kết quả công việc hết hạn, tính bằng mili giây.
Name
preceding_tasks
Type
integer
Description
Số lượng công việc trước đó.
Giá trị của trường này chỉ có ý nghĩa nếu trạng thái công việc là PENDING.
Name
task_error
Type
object
Description
Chi tiết lỗi cho các công việc đã thất bại. Xem Lỗi để biết chi tiết đầy đủ về đối tượng task_error.
Name
consumed_credits
Type
integer
Description
Số tín dụng đã tiêu thụ bởi công việc này. Có mặt khi trạng thái công việc là PENDING, IN_PROGRESS, hoặc SUCCEEDED. Trả về 0 cho các công việc FAILED (tín dụng được hoàn trả khi thất bại).
Name
image_urls
Type
array of strings
Description
Các URL có thể tải xuống cho các hình ảnh khái niệm được tạo bởi công việc prototype này. Hiện tại, API luôn trả về chính xác một ứng cử viên; trường này là một mảng để các phiên bản tương lai có thể hiển thị nhiều ứng cử viên mà không cần thay đổi cấu trúc.
Đối tượng Tác vụ Xây dựng Tượng Gạch là một đơn vị công việc mà Meshy theo dõi
để tạo ra một tượng gạch 3D có dán 贴图(非纹理) từ một tác vụ nguyên mẫu đã SUCCEEDED. Nó
chạy cùng một quy trình Ảnh sang 3D được sử dụng bởi Ảnh sang 3D,
vì vậy các trường đầu ra phản ánh đối tượng tác vụ của endpoint đó task object.
Thuộc tính
Name
id
Type
string
Description
Định danh duy nhất cho nhiệm vụ.
Name
type
Type
string
Description
Loại nhiệm vụ. Giá trị là creative-lab-brick-figure-build.
Name
name
Type
string
Description
Tên nhiệm vụ được cung cấp khi nhiệm vụ được tạo. Chuỗi rỗng nếu không có tên nào được cung cấp.
Name
status
Type
string
Description
Trạng thái của nhiệm vụ. Các giá trị có thể là một trong PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Tiến trình của nhiệm vụ. Nếu nhiệm vụ chưa bắt đầu, thuộc tính này sẽ là 0. Khi nhiệm vụ thành công, điều này sẽ trở thành 100.
Name
created_at
Type
timestamp
Description
Dấu thời gian khi nhiệm vụ được tạo, tính bằng mili giây.
Name
started_at
Type
timestamp
Description
Dấu thời gian khi nhiệm vụ bắt đầu, tính bằng mili giây.
Name
finished_at
Type
timestamp
Description
Dấu thời gian khi nhiệm vụ kết thúc, tính bằng mili giây.
Name
expires_at
Type
timestamp
Description
Dấu thời gian khi kết quả nhiệm vụ hết hạn, tính bằng mili giây.
Name
preceding_tasks
Type
integer
Description
Số lượng nhiệm vụ trước. Chỉ có ý nghĩa khi trạng thái là PENDING.
Name
task_error
Type
object
Description
Chi tiết lỗi cho các nhiệm vụ thất bại. Xem Lỗi để tham khảo đầy đủ đối tượng task_error.
Name
consumed_credits
Type
integer
Description
Số lượng tín dụng đã tiêu thụ bởi nhiệm vụ này. Trả về 0 cho các nhiệm vụ FAILED (tín dụng được hoàn lại khi thất bại).
Name
prompt
Type
string
Description
Luôn trống cho việc xây dựng tượng hình gạch. Có mặt để tương thích đa endpoint với hình dạng V2ImageTo3DTaskResponse dùng chung trong Ảnh sang 3D.
Name
negative_prompt
Type
string
Description
Luôn trống cho việc xây dựng tượng hình gạch. Có mặt để tương thích đa endpoint.
Name
texture_prompt
Type
string
Description
Luôn trống cho việc xây dựng tượng hình gạch. Có mặt để tương thích đa endpoint.
Name
texture_image_url
Type
string
Description
Luôn trống cho việc xây dựng tượng hình gạch. Có mặt để tương thích đa endpoint.
Name
model_urls
Type
object
Description
URL tải xuống cho mô hình 3D được tạo ra. Việc xây dựng tượng hình gạch tạo ra một GLB có gắn texture và cặp OBJ + MTL cho các pipeline ưa thích Wavefront OBJ. Hình dạng trường kết hợp với đối tượng Ảnh sang 3D model_urls để các bổ sung định dạng trong tương lai có thể thanh thoát mà không làm gián đoạn.
Name
glb
Type
string
Description
URL tải xuống cho file GLB có gắn texture.
Name
obj
Type
string
Description
URL tải xuống cho file Wavefront OBJ (hình học + UV).
Name
mtl
Type
string
Description
URL tải xuống cho file vật liệu MTL đi kèm của OBJ. Ghép với obj và mục từ texture_urls[0].base_color.
Name
thumbnail_url
Type
string
Description
URL tải xuống cho ảnh thu nhỏ của file mô hình.
Name
texture_urls
Type
array
Description
Một mảng các đối tượng URL texture được tạo ra bởi nhiệm vụ này. Hiện tại chứa một đối tượng duy nhất với bản đồ màu cơ bản.