Resize API

Binibigyang-daan ka ng Resize API na i-Resize ang mga kasalukuyang 3D model sa mga sukat sa totoong mundo. Maaari kang tumukoy ng eksaktong taas, limitasyon sa pinakamahabang gilid, o hayaan ang AI na awtomatikong tantiyahin ang angkop na laki.


POST/openapi/v1/resize

Gumawa ng Resize Task

Gumagawa ang endpoint na ito ng bagong resize task.

Mga parameter

  • Name
    input_task_id
    Type
    string
    Kinakailangan
    Description

    Ang ID ng isang nakumpletong Meshy task na ang model ay nais mong i-resize. Dapat may status na SUCCEEDED ang task. Ang output format ay magiging GLB.

  • Name
    model_url
    Type
    string
    Kinakailangan
    Description

    Isang URL na publicly accessible o Data URI na tumuturo sa isang 3D model file. Mga sinusuportahang format: .glb, .gltf, .obj, .fbx, .stl. Para sa mga Data URI, gamitin ang MIME type: application/octet-stream. Papanatilihin ng output format ang orihinal na format ng input model.

  • Name
    resize_height
    Type
    number
    Description

    I-resize ang model sa isang partikular na taas na sinusukat sa metro.

  • Name
    resize_longest_side
    Type
    number
    Description

    I-resize ang model upang ang pinakamahabang side nito ay tumugma sa value na ito, na sinusukat sa metro. Pinapanatili ang aspect ratio.

  • Name
    auto_size
    Type
    boolean
    Description

    Kapag nakatakda sa true, ginagamit ng serbisyo ang AI vision upang awtomatikong tantiyahin ang real-world height ng object at i-resize ang model nang naaayon. Ang origin ay magiging default na bottom maliban kung hayagang nakatakda ang origin_at.

  • Name
    origin_at
    Type
    string
    default bottom
    Description

    Posisyon ng origin pagkatapos ng pag-resize.

    Mga available na value: bottom, center.

Ibinabalik

Ang result property ng response ay naglalaman ng id ng bagong ginawang resize task.

Mga failure mode

  • 400 - Bad Request

Hindi katanggap-tanggap ang request. Mga karaniwang sanhi:

  • Nawawalang parameter: Dapat ibigay ang alinman sa model_url o input_task_id.
  • Nawawalang resize mode: Dapat tukuyin ang kahit isa sa resize_height, resize_longest_side, o auto_size.
  • Mutually exclusive na mga parameter: Hindi maaaring pagsamahin ang resize_height, resize_longest_side, at auto_size.
  • Invalid na input task: Dapat tumukoy ang input_task_id sa isang successful na task.
  • Invalid na model format: Ang model_url ay tumuturo sa isang file na may hindi sinusuportahang 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 maisagawa ang task na ito.

  • 429 - Too Many Requests

Lumampas ka na sa iyong rate limit.

Request

POST
/openapi/v1/resize
# 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"
}

GET/openapi/v1/resize/:id

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 object na Resize Task.

Request

GET
/openapi/v1/resize/:id
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
}

DELETE/openapi/v1/resize/:id

Burahin ang Resize Task

Permanenteng binubura ng endpoint na ito ang isang Resize task, kabilang ang lahat ng nauugnay na modelo at data. Hindi na mababawi ang aksyong ito.

Mga Parameter ng Path

  • Name
    id
    Type
    path
    Description

    Ang ID ng Resize task na buburahin.

Mga Ibinabalik

Nagbabalik ng 200 OK kapag matagumpay.

Request

DELETE
/openapi/v1/resize/:id
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

// Returns 200 Ok on success.

GET/openapi/v1/resize

Ilista ang mga Resize Task

Pinapayagan ka ng endpoint na ito na kunin ang 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 50 item.

  • Name
    sort_by
    Type
    string
    Description

    Field na pag-uuri-uriin. Mga available na value:

    • +created_at: Pag-uri-uriin ayon sa oras ng paggawa sa pataas na ayos.
    • -created_at: Pag-uri-uriin ayon sa oras ng paggawa sa pababang ayos.

Mga Ibinabalik

Nagbabalik ng naka-pagination na listahan ng Mga Resize Task Object.

Request

GET
/openapi/v1/resize
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
  }
]

GET/openapi/v1/resize/:id/stream

I-stream ang isang Resize na Task

Ang endpoint na ito ay nag-i-stream ng mga real-time na 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 i-stream.

Mga Ibinabalik

Nagbabalik ng stream ng Mga Resize Task Object bilang Server-Sent Events.

Para sa mga task na PENDING o IN_PROGRESS, isasama lang ng response stream ang kinakailangang mga field na progress at status.

Request

GET
/openapi/v1/resize/:id/stream
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
}

Ang Resize Task Object

Kinakatawan ng Resize Task object ang isang resize job.

Mga Property

  • id · string

Natatanging identifier para sa gawain.

  • type · string

Uri ng gawain. Ang value ay resize.

  • model_urls · object

Nada-download na URL para sa na-resize na model file. Kapag gumagamit ng input_task_id, palaging GLB ang output. Kapag gumagamit ng model_url, pinapanatili ng output ang orihinal na format.

  • progress · integer

Progress ng gawain (0-100).

  • status · string

Status ng gawain. Mga posibleng value: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • preceding_tasks · integer

Bilang ng mga naunang gawain. Makabuluhan lamang kapag ang status ay PENDING.

  • created_at · timestamp

Timestamp kung kailan ginawa ang gawain, sa milliseconds.

  • started_at · timestamp

Timestamp kung kailan sinimulan ang gawain, sa milliseconds. 0 kung hindi pa nasisimulan.

  • finished_at · timestamp

Timestamp kung kailan natapos ang gawain, sa milliseconds. 0 kung hindi pa natatapos.

  • task_error · object

Error object kung nabigo ang gawain. Tingnan ang Errors para sa higit pang detalye.

  • consumed_credits · integer

Ang bilang ng credits na nagamit ng gawaing ito (1 credit bawat resize task). Nagbabalik ng 0 para sa mga FAILED na gawain.