I-convert ang isang source photo tungo sa isang print-in-place na collapsible fidget toy: ang silhouette ng subject ay nagiging isang hanay ng magkakalapat na concentric rings na kumukupas nang patag at muling lumalawak, na naka-print sa iisang piraso nang walang pangangailangang mag-assemble.
POST /openapi/creative-lab/fidget-collapsible/v1
Hindi tulad ng ibang mga endpoint ng Creative Lab, wala itong prototype/build stage
pair — walang mga intermediate na kandidato na pagpipilian, kaya ang iisang
task ang nagdadala sa larawan hanggang sa maging isang 3D model. Ang mga kontrol sa heometriya na inilalantad ng web
app (laki, bilang ng layer, lapad ng gap, kapal ng dingding, lalim ng extrusion,
bulge) ay hindi rin bahagi ng request: bawat task ay gumagawa gamit ang parehong
mga default sa server-side.
Gumawa ng collapsible fidget model mula sa isang source photo. Sumangguni sa
The Collapsible Fidget Task Object
para sa hugis ng response.
Ang bawat task ay nagkakahalaga ng 6 credits at nangangailangan ng paid plan.
Mga Parameter
Name
image_url
Type
string
Kinakailangan
Description
Source photo na gagawing collapsible fidget ni Meshy. Kasalukuyan naming sinusuportahan ang mga format na .jpg, .jpeg, .png, at .webp.
May dalawang paraan upang magbigay ng imahe:
Publicly accessible URL: Isang URL na naa-access mula sa pampublikong internet.
Data URI: Isang base64-encoded data URI ng imahe. Halimbawa ng data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Isang subject na may isang malinaw at saradong outline ang pinakamainam — ang silhouette ang siyang magiging mga singsing. Ang gulong background, maraming magkakahiwalay na subject, o napakaninipis na hugis ay maaaring makapag-iwan ng masyadong kaunting espasyo para sa mga nested wall, at mabibigo ang task na may task error.
Name
name
Type
string
Description
Opsyonal na pangalan ng task para sa layuning display. Maximum na 100 characters. Isa lang itong label ng task; walang naiuukit sa modelo.
Ibinabalik
Ang result property ng response ay naglalaman ng task id ng bagong likhang collapsible fidget task. I-poll ang Get a Task endpoint o mag-subscribe sa stream hanggang umabot ang task sa SUCCEEDED, pagkatapos ay i-download ang naiipri-print na STL mula sa model_urls.stl (at, kung mayroon, ang GLB mula sa model_urls.glb upang unang i-preview ito).
Mga Mode ng Kabiguan
Name
400 - Bad Request
Description
Hindi katanggap-tanggap ang request. Karaniwang mga dahilan:
Kulang na parameter: Kinakailangan ang image_url.
Invalid na format ng imahe: Ang ibinigay na image_url ay hindi suportadong format (.jpg, .jpeg, .png, .webp).
Sukat ng imahe wala sa saklaw: Masyadong maliit ang imahe, lumampas sa maximum na file size, o lumampas sa maximum na bilang ng pixel.
Hindi maabot na URL: Hindi ma-download ang image_url (404 o timeout).
Invalid na Data URI: Malformed ang base64 string.
Na-flag na content: Na-flag ang input image ng NSFW moderation.
Name
401 - Unauthorized
Description
Nabigo ang authentication. Pakisuri ang iyong API key.
Name
402 - Payment Required
Description
Alinman ang iyong account ay nasa free plan — ang paggawa ng task sa endpoint na ito ay nangangailangan ng paid plan — o kulang ang iyong credits.
Name
403 - Forbidden
Description
Na-flag ang input image dahil sa paglabag sa intellectual property.
Name
429 - Too Many Requests
Description
Nalampasan mo na ang iyong rate limit.
Request
POST
/openapi/creative-lab/fidget-collapsible/v1
curlhttps://api.meshy.ai/openapi/creative-lab/fidget-collapsible/v1 \-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>" }'
Kunin ang isang collapsible fidget task gamit ang isang wastong task id. Tanging ang mga task na ginawa sa pamamagitan ng endpoint na ito ang maa-access dito — ang isang task mula sa ibang Creative Lab endpoint, o isang ginawa sa web app, ay nagbabalik ng 404.
Kanselahin ang isang collapsible fidget task. Kung ang task ay PENDING
pa rin, ang mga credits na nagamit sa oras ng paglikha ay ire-refund. Ang mga
task na IN_PROGRESS na ay kanselahin nang walang refund (maaaring
ginagamit na ng worker ang mga resources). Ang mga task na nakarating na sa
isang terminal state (SUCCEEDED, FAILED, CANCELED) ay hindi na maaaring
kanselahin.
Mga Path Parameter
Name
id
Type
path
Description
Natatanging identifier para sa collapsible fidget task na kakanselahin.
Ibinabalik
Nagbabalik ng 204 No Content kapag matagumpay, na may walang laman na body.
Mga Failure Mode
Name
400 - Bad Request
Description
Ang task ay nasa terminal state na at hindi na maaaring kanselahin.
Name
404 - Not Found
Description
Ang task ay hindi umiiral, pag-aari ito ng ibang user, o hindi ito nalikha sa pamamagitan ng endpoint na ito.
Mag-stream ng mga real-time na update para sa isang collapsible fidget task sa pamamagitan ng Server-Sent
Events (SSE). Ang isang task na hindi umiiral, o hindi ginawa sa pamamagitan ng
endpoint na ito, ay maglalabas ng iisang event: error payload na may status_code: 404
at isasara ang stream.
Mga Parameter
Name
id
Type
path
Description
Natatanging identifier para sa collapsible fidget task na i-stream.
Ibinabalik
Nagbabalik ng stream ng mga Collapsible Fidget
task object bilang Server-Sent Events. Bawat frame ay nagdadala ng buong task object para sa yugto — ang parehong hugis na
ibinabalik ng Get endpoint — kaya habang ang task ay PENDING o IN_PROGRESS, ang
mga output field ay hindi pa lamang napopopulate (null, [] o {}) at
ang finished_at ay null.
// Error event example (task not found, or not created through this endpoint)event: errordata: {"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: messagedata: {"id": "018a210d-8ba4-705c-b111-1f1776f7f578","progress": 0,"status": "PENDING"}event: messagedata: {"id": "018a210d-8ba4-705c-b111-1f1776f7f578","type": "creative-lab-fidget-collapsible","status": "SUCCEEDED","progress": 100,"created_at": 1729123456000,"started_at": 1729123460000,"finished_at": 1729123512000,"expires_at": 1729382712000,"task_error": null,"consumed_credits": 6,"model_urls": {"glb":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***","stl":"https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***" }}
Ang Collapsible Fidget Task object ay isang work unit na sinusubaybayan ng Meshy
upang gawing print-in-place na collapsible fidget model ang isang source photo. Ito ay
isang single-stage task: walang prototype na maaaring i-chain mula rito, at ang intermediate
silhouette ay hindi bahagi ng response.
Mga Katangian
Name
id
Type
string
Description
Natatanging identifier para sa task. Bagaman gumagamit kami ng k-sortable UUID para sa task ids bilang implementation detail, hindi mo dapat ipagpalagay ang format ng id.
Name
type
Type
string
Description
Uri ng task. Ang value ay creative-lab-fidget-collapsible.
Name
name
Type
string
Description
Ang pangalan ng task na ibinigay noong ginawa ang task. Empty string kung walang pangalang ibinigay.
Name
status
Type
string
Description
Status ng task. Ang mga posibleng value ay isa sa PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Progress ng task. Kung hindi pa nasisimulan ang task, ang property na ito ay magiging 0. Kapag nagtagumpay na ang task, ito ay magiging 100.
Name
created_at
Type
timestamp
Description
Timestamp kung kailan ginawa ang task, sa milliseconds.
Ang timestamp ay kumakatawan sa bilang ng milliseconds na lumipas simula noong Enero 1, 1970 UTC, alinsunod
sa RFC 3339 standard.
Halimbawa, Biyernes, Setyembre 1, 2023 12:00:00 PM GMT ay kinakatawan bilang 1693569600000. Ito ay naaangkop
sa lahat ng timestamp sa Meshy API.
Name
started_at
Type
timestamp
Description
Timestamp kung kailan sinimulan ang task, sa milliseconds. Kung hindi pa nasisimulan ang task, ang property na ito ay magiging null.
Name
finished_at
Type
timestamp
Description
Timestamp kung kailan natapos ang task, sa milliseconds. Kung hindi pa natatapos ang task, ang property na ito ay magiging null.
Name
expires_at
Type
timestamp
Description
Timestamp kung kailan mag-e-expire ang resulta ng task, sa milliseconds.
Name
preceding_tasks
Type
integer
Description
Ang bilang ng mga naunang task.
Makabuluhan lamang ang value ng field na ito kung ang status ng task ay PENDING.
Name
task_error
Type
object
Description
Mga detalye ng error para sa mga nabigong task. Tingnan ang Errors para sa buong reference ng task_error object.
Name
consumed_credits
Type
integer
Description
Ang bilang ng credits na nagamit ng task na ito. Naroroon kapag ang status ng task ay PENDING, IN_PROGRESS, o SUCCEEDED. Nagbabalik ng 0 para sa mga task na FAILED (naibabalik ang credits kapag nabigo).
Name
model_urls
Type
object
Description
Mga downloadable URL para sa nabuong 3D model. Napupunan kapag SUCCEEDED na ang task: laging naroroon ang stl, at ang glb ay naroroon lamang kapag nagtagumpay ang preview render.
Name
stl
Type
string
Description
Downloadable URL patungo sa STL file. Ito ang printable na deliverable — direktang ipadala ito sa isang slicer.
Name
glb
Type
string
Description
Downloadable URL patungo sa GLB file, para sa pag-preview ng model sa isang 3D viewer. Ang mga kulay nito ay para lamang sa preview: walang kulay ang STL, at ang kulay ng isang naka-print na fidget ay nagmumula sa filament. Ang GLB ay best-effort: kapag hindi available ang preview render, ganap na tinatanggal ang key mula sa model_urls, kaya basahin ito nang defensive — ang stl ang deliverable at laging naroroon sa isang SUCCEEDED na task.