Resize API
Binibigyang-daan ka ng Resize API na i-resize ang mga umiiral nang 3D model batay sa mga aktwal na sukat sa totoong mundo. Maaari kang magtakda ng eksaktong taas, isang hangganan batay sa pinakamahabang gilid, o hayaan ang AI na awtomatikong tantiyahin ang naaangkop na sukat.
Gumawa ng Resize Task
Ang endpoint na ito ay gumagawa ng bagong resize task.
Mga Parameter
Isa lamang sa input_task_id o model_url ang kinakailangan. Kung parehong ibinigay, ang input_task_id ang mauuna.
- Name
- input_task_id
- Type
- string
- Kinakailangan
- Description
Ang ID ng isang natapos nang Meshy task kung saan gusto mong i-resize ang modelo. Dapat ang status ng task ay
SUCCEEDED. Ang output format ay magiging GLB.
- Name
- model_url
- Type
- string
- Kinakailangan
- Description
Isang publikong maa-access na URL o data URI na tumuturo sa isang 3D model file. Mga suportadong format:
.glb,.gltf,.obj,.fbx,.stl. Para sa Data URIs, gamitin ang MIME type:application/octet-stream. Ang output format ay mananatili sa orihinal na format ng input na modelo.
Isa lamang na resize mode ang kinakailangan: resize_height, resize_longest_side, o auto_size. Ang tatlong parameter na ito ay hindi pwedeng pagsabayin.
- Name
- resize_height
- Type
- number
- Description
I-resize ang modelo sa isang partikular na taas na sinusukat sa metro.
- Name
- resize_longest_side
- Type
- number
- Description
I-resize ang modelo upang tumugma ang pinakamahabang gilid nito sa halagang ito, na sinusukat sa metro. Ang aspect ratio ay napapanatili.
- Name
- auto_size
- Type
- boolean
- Description
Kapag naka-set sa
true, ginagamit ng serbisyo ang AI vision upang awtomatikong tantiyahin ang tunay na taas ng bagay sa totoong mundo at i-resize ang modelo alinsunod dito. Ang origin ay magigingbottombilang default maliban kung tahasang na-set angorigin_at.
- Name
- origin_at
- Type
- string
- default bottom
- Description
Posisyon ng origin pagkatapos ng pag-resize.
Mga available na halaga:
bottom,center.
Mga Ibinabalik
Ang result property ng tugon ay naglalaman ng id ng bagong nilikhang resize task.
Mga Mode ng Pagkabigo
400 - Bad Request
Hindi katanggap-tanggap ang request. Karaniwang mga sanhi:
- Kulang na parameter: Dapat ibigay ang
model_urloinput_task_id. - Kulang na resize mode: Dapat magtakda ng kahit isa sa
resize_height,resize_longest_side, oauto_size. - Mga parameter na hindi pwedeng pagsabayin: Ang
resize_height,resize_longest_side, atauto_sizeay hindi maaaring pagsamahin. - Di-wastong input task: Ang
input_task_iday dapat tumutukoy sa isang matagumpay na task. - Di-wastong format ng modelo: Ang
model_urlay tumuturo sa isang file na may hindi suportadong extension. - Hindi maabot na URL: Hindi ma-download ang
model_url.
401 - Unauthorized
Nabigo ang authentication. Pakisuri ang iyong API key.
402 - Payment Required
Hindi sapat ang credits upang isagawa ang task na ito.
429 - Too Many Requests
Lumampas ka na sa iyong rate limit.
Request
# Simple: resize to a specific height
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"resize_height": 1.8
}'
# Advanced: resize longest side with custom origin
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.glb",
"resize_longest_side": 2.0,
"origin_at": "center"
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Kunin ang isang Resize Task
Kinukuha ng endpoint na ito ang isang resize task gamit ang ID nito.
Mga Parameter
- Name
- id
- Type
- path
- Description
Ang ID ng resize task na kukunin.
Ibinabalik
Ang Resize Task object.
Request
curl https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
Burahin ang Resize Task
Ang endpoint na ito ay permanenteng nagbubura ng resize task, kasama na ang lahat ng kaugnay na modelo at datos. Ang aksyong ito ay hindi na maaaring bawiin.
Path Parameters
- Name
- id
- Type
- path
- Description
Ang ID ng resize task na ibubura.
Katayuan ng Task
Ang isang task na nasa PENDING pa ay buburahin at ire-refund ang mga
credits na nagamit noong panahon ng paggawa nito.
Ang isang task na nasa IN_PROGRESS na ay hindi maaaring burahin: ang
request ay tatanggihan na may 409 Conflict at magpapatuloy pa rin ang
pagtakbo ng task. Ang mga credits para sa isang task na nasimulan na ng
worker ay hindi na maaaring i-refund, kaya kung buburahin ito habang
tumatakbo, mawawala sa iyo ang credits at ang resulta. Hintayin munang
umabot ito sa SUCCEEDED, FAILED o CANCELED, saka mo ito burahin.
Ang isang task na nasa terminal state (SUCCEEDED, FAILED o
CANCELED) ay buburahin nang walang refund.
Ibinabalik
Nagbabalik ng 200 OK kapag matagumpay, o 409 Conflict kapag ang task
ay nasa IN_PROGRESS.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// 200 OK on success, with an empty body.
//
// 409 Conflict when the task is IN_PROGRESS — the task is left running:
{
"message": "Task is IN_PROGRESS and cannot be deleted. Credits for a task the worker has already started are not refundable; wait for it to reach SUCCEEDED, FAILED or CANCELED, then delete it."
}
Ilistang mga Resize Task
Ang endpoint na ito ay nagbibigay-daan sa iyo upang kumuha ng listahan ng mga resize task.
Mga Parameter
- Name
- page_num
- Type
- integer
- default 1
- Description
Numero ng pahina para sa pagination.
- Name
- page_size
- Type
- integer
- default 10
- Description
Limitasyon sa laki ng pahina. Ang pinakamataas na pinapayagan ay
100item.
- Name
- sort_by
- Type
- string
- Description
Field na gagamitin para sa pag-sort. Mga available na value:
+created_at: Isaayos ayon sa oras ng paglikha nang pataas (ascending order).-created_at: Isaayos ayon sa oras ng paglikha nang pababa (descending order).
Ibinabalik
Nagbabalik ng paginated na listahan ng The Resize Task Objects.
Request
curl https://api.meshy.ai/openapi/v1/resize?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
]
I-stream ang Resize Task
Ang endpoint na ito ay nag-i-stream ng real-time na mga update para sa isang resize task gamit ang Server-Sent Events (SSE).
Mga Parameter
- Name
- id
- Type
- path
- Description
Natatanging identifier para sa resize task na is-stream.
Ibinabalik
Nagbabalik ng stream ng Mga Resize Task Object bilang Server-Sent Events.
Para sa mga task na PENDING o IN_PROGRESS, ang response stream ay maglalaman lamang ng kinakailangang mga field na progress at status.
Request
curl -N https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Message event examples illustrate task progress.
event: message
data: {
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
The Resize Task Object
Ang Resize Task object ay kumakatawan sa isang resize job.
Properties
id· string
Natatanging identifier para sa task.
type· string
Uri ng task. Ang value ay resize.
model_urls· object
Downloadable URL para sa na-resize na model file. Kapag gumagamit ng input_task_id, ang output ay laging GLB. Kapag gumagamit ng model_url, ang output ay pinananatili ang orihinal na format.
progress· integer
Progress ng task (0-100).
status· string
Status ng task. Mga posibleng value: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
preceding_tasks· integer
Ang bilang ng mga naunang task. May kahulugan lamang kapag ang status ay PENDING.
created_at· timestamp
Timestamp kung kailan nagawa ang task, sa milliseconds.
started_at· timestamp
Timestamp kung kailan sinimulan ang task, sa milliseconds. 0 kung hindi pa nasisimulan.
finished_at· timestamp
Timestamp kung kailan natapos ang task, sa milliseconds. 0 kung hindi pa natatapos.
task_error· object
Error object kung nabigo ang task. Tingnan ang Errors para sa karagdagang detalye.
consumed_credits· integer
Ang bilang ng credits na nagamit ng task na ito (1 credit bawat resize task). Nagbabalik ng 0 para sa mga FAILED na task.