Biến ảnh của bạn thành nam châm tủ lạnh tùy chỉnh — một hình chữ nhật bo tròn có màu sắc với mặt lưng từ tính phẳng, kích thước phù hợp cho tủ lạnh — trong hai giai đoạn: nguyên mẫu tạo ra một hình ảnh ý tưởng có màu sắc từ ảnh đầu vào của bạn, sau đó xây dựng biến hình ảnh ý tưởng đó thành một mô hình 3D nổi. Hai giai đoạn này được liên kết thông qua input_task_id.
POST /openapi/creative-lab/fridge-magnet/v1/prototype
Tạo một hình ảnh khái niệm được tô màu từ ảnh nguồn. ID nhiệm vụ trả về là thứ bạn truyền vào dưới dạng input_task_id cho endpoint xây dựng. Tham khảo
Đối Tượng Nhiệm Vụ Nguyên Mẫu Nam Châm Tủ Lạnh
để 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ô màu thành hình ảnh khái niệm sẵn sàng cho nam châm tủ lạnh. Hiện tại 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 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,<dữ liệu hình ảnh được mã hóa base64 của bạn>.
Name
name
Type
string
Description
Tên nhiệm vụ tùy chọn cho mục đích hiển thị. Tối đa 100 ký tự.
Name
remove_background
Type
boolean
mặc định false
Description
Khi được đặt thành true, hình ảnh nguyên mẫu được trả về dưới dạng PNG RGBA trong suốt với nền đã được loại bỏ, để bạn có thể ghép đối tượng lên bất kỳ nền nào.
Điều này chỉ kiểm soát hình ảnh mà endpoint này trả về. Nó tách biệt với tùy chọn xây dựng cùng tên (mặc định true), kiểm soát việc loại bỏ nền trước khi tạo relief.
Trả Về
Thuộc tính result của phản hồi chứa ID nhiệm vụ của nhiệm vụ nguyên mẫu nam châm tủ lạnh mới được tạo. Kiểm tra endpoint Lấy Nhiệm Vụ hoặc đăng ký luồng cho đến khi nhiệm vụ đạt SUCCEEDED, sau đó truyền ID đó đến endpoint xây dựng dưới dạng input_task_id.
Các Chế Độ Thất Bại
Name
400 - Bad Request
Description
Yêu cầu không chấp nhận được. Cá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 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 phạm vi: 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: image_url không thể tải xuống (404 hoặc timeout).
Data URI không hợp lệ: Chuỗi base64 bị lỗi.
Nội dung bị gắn cờ: Hình ảnh đầu vào bị gắn cờ bởi moderation NSFW hoặc 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
429 - Too Many Requests
Description
Bạn đã vượt quá giới hạn tốc độ của mình.
Yêu Cầu
POST
/openapi/creative-lab/fridge-magnet/v1/prototype
# Stage 1: generate a colorized fridge magnet concept imagecurlhttps://api.meshy.ai/openapi/creative-lab/fridge-magnet/v1/prototype \-XPOST \-H"Authorization: Bearer ${YOUR_API_KEY}" \-H'Content-Type: application/json' \-d'{ "image_url": "<your publicly accessible image url or base64-encoded data URI>" }'
Phản Hồi
{"result":"01a3d8f1-8c2e-7d04-b223-3f3776a1c8c9"}
Ví dụ nguyên mẫu
Bắt đầu với một ảnh nguồn, sau đó tạo hình ảnh nguyên mẫu được sử dụng bởi giai đoạn xây dựng nam châm tủ lạnh.
Tạo ra nam châm tủ lạnh có thể in 3D cuối cùng từ một nhiệm vụ nguyên mẫu đã thành công. Quá trình xây dựng chạy một đường ống bản đồ độ sâu trên hình ảnh khái niệm đã được tô màu của nguyên mẫu và xuất ra một lưới duy nhất ở định dạng bạn yêu cầu. Tham khảo
Đối Tượng Nhiệm Vụ Xây Dựng Nam Châm Tủ Lạnh để biết cấu trúc phản hồi.
Tham Số
Name
input_task_id
Type
string
Bắt buộc
Description
ID nhiệm vụ của một nhiệm vụ nguyên mẫu được tạo thông qua endpoint OpenAPI này. Nguyên mẫu phải được tạo với cùng khóa API, phải đạt SUCCEEDED, và phải tạo ra chính xác một hình ảnh ứng viên.
Nhiệm vụ nguyên mẫu được tạo thông qua ứng dụng web không được chấp nhận — endpoint xây dựng chỉ chấp nhận các nhiệm vụ nguyên mẫu được tạo bởi POST /openapi/creative-lab/fridge-magnet/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ự.
options
Tham số điều chỉnh tùy chọn cho hình học relief. Mỗi trường có một giá trị mặc định hợp lý — chỉ gửi những trường bạn muốn ghi đè.
Name
badge_shape
Type
string
mặc định rounded-rect
Description
Hình bóng viền của nam châm tủ lạnh. Các giá trị có sẵn:
circle
rounded-rect (mặc định)
hexagon
shield
star
Name
size_mm
Type
number
mặc định 60
Description
Chiều dài cạnh vuông bao quanh của nam châm tủ lạnh, tính bằng milimét. Phạm vi: (0, 400].
Name
relief_height_mm
Type
number
mặc định 3.3
Description
Chiều cao relief tối đa trên nền, tính bằng milimét. Phạm vi: [0, 20].
Name
relief_offset_mm
Type
number
mặc định 0
Description
Độ lệch dọc áp dụng cho relief trước khi đùn, tính bằng milimét. Phạm vi: [0, 20].
Name
base_thickness_mm
Type
number
mặc định 2.0
Description
Độ dày của tấm nền phẳng phía sau relief, tính bằng milimét. Mặc định của nam châm tủ lạnh là tấm nền dày hơn 2 mm — đủ để nam châm bám vào tủ lạnh mà không làm relief cảm thấy mỏng manh. Phạm vi: [0, 20].
Name
has_closed_back
Type
boolean
mặc định true
Description
Mặt sau của nam châm tủ lạnh có được niêm phong như một bề mặt kín (mặt bạn dán nam châm vào) hay không. Đặt thành false cho một vỏ mở.
Name
relief_curve
Type
string
mặc định linear
Description
Đường cong chuyển đổi ánh xạ các giá trị bản đồ độ sâu thành chiều cao relief. Các giá trị có sẵn:
linear (mặc định)
gamma
s-curve
Name
curve_param
Type
number
mặc định 1.0
Description
Tham số hình dạng cho đường cong chuyển đổi (chỉ có ý nghĩa khi relief_curve là gamma). Phạm vi: (0, 10].
Name
invert_depth
Type
boolean
mặc định false
Description
Đảo ngược diễn giải bản đồ độ sâu để các vùng tối hơn trở thành relief cao hơn.
Name
smoothing
Type
number
mặc định 0.24
Description
Độ mạnh làm mịn áp dụng cho bản đồ độ sâu trước khi trích xuất relief. Phạm vi: [0, 10].
Name
relief_scale
Type
number
mặc định 1.0
Description
Hệ số nhân tỷ lệ dọc áp dụng trên relief_height_mm. Phạm vi: (0, 10].
Name
depth_threshold
Type
number
mặc định 0.1
Description
Ngưỡng lọc thấp cho các giá trị bản đồ độ sâu; bất kỳ giá trị nào dưới mức này sẽ bị kẹp về không. Phạm vi: [0, 1].
Name
remove_background
Type
boolean
mặc định true
Description
Tự động loại bỏ nền của hình ảnh khái niệm nguyên mẫu trước khi tạo relief.
Tách biệt với tham số nguyên mẫu cùng tên (mặc định false), điều khiển liệu hình ảnh nguyên mẫu có được trả về với độ trong suốt hay không.
Name
export_resolution
Type
integer
mặc định 512
Description
Độ phân giải lưới được sử dụng để xuất. Phạm vi: [64, 2048].
output
Bộ chọn định dạng dây tùy chọn. Mặc định là glb.
Name
format
Type
string
mặc định glb
Description
Gói hiện vật được trả về bởi quá trình xây dựng. Các giá trị có sẵn:
glb (mặc định) — trả về một model.glb duy nhất dưới model_urls.glb.
obj — nén model.obj + model.mtl + texture.png và trả về gói dưới model_urls.obj.
zip — nén mọi hiện vật mà trình tạo phát ra và trả về gói dưới model_urls.bundle_zip.
Trả Về
Thuộc tính result của phản hồi chứa id nhiệm vụ của nhiệm vụ xây dựng nam châm tủ lạnh mới được tạo. Thăm dò endpoint Lấy Nhiệm Vụ hoặc đăng ký luồng cho đến khi nhiệm vụ đạt SUCCEEDED, sau đó tải xuống hiện vật từ mục nhập duy nhất trong model_urls.
Các 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ố: 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ệ.
Cha chưa thành công: Nhiệm vụ nguyên mẫu được tham chiếu chưa đạt SUCCEEDED.
Không có ứng viên: Nhiệm vụ nguyên mẫu đã thành công nhưng không tạo ra hình ảnh ứng viên.
Tùy chọn ngoài phạm vi: Một trong các trường options nằm ngoài phạm vi hoặc tập hợp enum cho phép.
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
404 - Not Found
Description
Nhiệm vụ nguyên mẫu được tham chiếu không tồn tại, thuộc về người dùng khác, hoặc được tạo thông qua ứng dụng web (chỉ các nhiệm vụ nguyên mẫu chế độ API mới liên kết vào xây dựng).
Truy xuất một nhiệm vụ prototype hoặc build với 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ụ — một nhiệm vụ build được truy xuất qua
/prototype/:id sẽ trả về 404, và ngược lại.
Hủy một tác vụ nam châm tủ lạnh. Nếu tác vụ vẫn đang ở trạng thái PENDING, tín dụng tiêu thụ khi tạo sẽ được hoàn lại. Các tác vụ đã IN_PROGRESS sẽ bị hủy mà không hoàn lại (công nhân có thể đã đang tiêu thụ tài nguyên). Các tác vụ đã đạt trạng thái cuối cùng (SUCCEEDED, FAILED, CANCELED) không thể bị hủy.
Đường dẫn URL phải khớp với giai đoạn của tác 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 tác vụ nam châm tủ lạnh cần hủy.
Trả về
Trả về 204 No Content khi thành công với nội dung trống.
Chế độ Thất bại
Name
400 - Bad Request
Description
Tác vụ đã ở trạng thái cuối cùng và không thể bị hủy.
Name
404 - Not Found
Description
Tác 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.
Truyền tải cập nhật thời gian thực cho một nhiệm vụ nam châm tủ lạnh 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 sẽ 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ụ nam châm tủ lạnh để truyền tải.
Trả về
Trả về một luồng các đối tượng nhiệm vụ Fridge Magnet Prototype
hoặc Fridge Magnet Build 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 cần thiết progress và status.
// Error event example (wrong stage or task not found)event: errordata: {"status_code": 404,"message": "Task not found"}// Message event examples illustrate task progress.// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.event: messagedata: {"id": "01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0","progress": 0,"status": "PENDING"}event: messagedata: {"id": "01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0","type": "creative-lab-fridge-magnet-build","status": "SUCCEEDED","progress": 100,"created_at": 1729543250000,"started_at": 1729543258000,"finished_at": 1729543285000,"expires_at": 1729802485000,"task_error": null,"consumed_credits": 20,"model_urls": {"glb":"https://assets.meshy.ai/***/tasks/01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0/output/model.glb?Expires=***" }}
Lấy danh sách phân trang các nhiệm vụ nam châm tủ lạnh 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. Các 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ụ
có giai đoạn khớp với URL — việc lấy /prototype không bao giờ trả về
các 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à 50 mục.
Name
sort_by
Type
string
mặc định -created_at
Description
Trường để sắp xếp. Các 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 Nam châm Tủ lạnh 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 được tô màu từ một bức ảnh nguồn. Kết quả đầu ra của giai đoạn này được liên kết 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 nhiệm vụ. Mặc dù chúng tôi sử dụng UUID có thể sắp xếp theo k cho id nhiệm vụ như một chi tiết triển khai, 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 nhiệm vụ. Giá trị là creative-lab-fridge-magnet-prototype.
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 độ 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.
Một dấu thời gian đại diện cho 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ụ, Thứ Sáu, ngày 1 tháng 9 năm 2023 12:00:00 PM GMT được biểu diễn 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 nhiệm vụ được bắt đầu, tính bằng mili giây. Nếu nhiệm vụ chưa bắt đầu, thuộc tính này sẽ là 0.
Name
finished_at
Type
timestamp
Description
Dấu thời gian khi nhiệm vụ được hoàn thành, tính bằng mili giây. Nếu nhiệm vụ chưa hoàn thành, thuộc tính này sẽ là 0.
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 đó.
Giá trị của trường này chỉ có ý nghĩa nếu trạng thái nhiệm vụ 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. Có mặt khi trạng thái nhiệm vụ là PENDING, IN_PROGRESS, hoặc SUCCEEDED. 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
image_urls
Type
array of strings
Description
Các URL có thể tải xuống cho các ứng viên hình ảnh khái niệm được tạo ra bởi nhiệm vụ nguyên mẫu này. Hiện tại API luôn trả về chính xác một ứng 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 viên mà không gây ra thay đổi phá vỡ.
Ví dụ về Đối tượng Nhiệm vụ Nguyên mẫu Nam châm Tủ lạnh
Đối tượng Nhiệm vụ Xây dựng Nam châm Tủ lạnh là một đơn vị công việc mà Meshy theo dõi để tạo ra lưới nam châm tủ lạnh 3D cuối cùng từ một nhiệm vụ nguyên mẫu đã thành công. Quá trình xây dựng chạy một đường ống xử lý bản đồ độ sâu trên hình ảnh ý tưởng của nguyên mẫu và xuất bản một lưới duy nhất ở định dạng mà người gọi yêu cầu.
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 của nhiệm vụ. Giá trị là creative-lab-fridge-magnet-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 độ 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, giá trị 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ụ hoàn thành, 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
model_urls
Type
object
Description
URL có thể tải xuống cho hiện vật được tạo ra, được khóa theo tên hiện vật. Luôn chứa chính xác một mục nhập — định dạng được yêu cầu thông qua output.format của yêu cầu xây dựng. Khóa khớp với định dạng được yêu cầu:
Name
glb
Type
string
Description
URL có thể tải xuống cho tệp GLB. Có mặt khi output.format là glb (mặc định).
Name
obj
Type
string
Description
URL có thể tải xuống cho một gói zip chứa model.obj, model.mtl, và texture.png. Có mặt khi output.format là obj.
Name
bundle_zip
Type
string
Description
URL có thể tải xuống cho một gói zip của mọi hiện vật mà trình tạo phát ra. Có mặt khi output.format là zip.
Ví dụ Đối tượng Nhiệm vụ Xây dựng Nam châm Tủ lạnh