Ireretiro ang lowpoly sa Oct 30, 2026. Lumipat ng modelo bago ang mga petsang ito para maiwasan ang mga error sa request.

Analyze Printability API

Suriin ang isang 3D model para sa printability — watertightness, volume, mga butas, non-manifold edges, at degenerate faces. Opsyonal, suriin din ang kapal ng dingding batay sa laki na plano mong i-print.


POST/openapi/v1/print/analyze

Create an Analyze Printability Task

Ang endpoint na ito ay lumilikha ng bagong analyze-printability task. Sinusuri ng task na ito ang isang 3D model at iniuulat ang mga sukatan nito ng printability.

Tumatakbo ang task sa background. Para sa karaniwang tagal nito, tingnan ang Processing Times.

Kung ang input task ay mayroon nang naka-cache na printability, ang ibinalik na task ay agad na handa at ang unang GET dito ay magbabalik ng resulta ng pagsusuri nang hindi dumadaan sa worker.

Upang suriin din ang kapal ng dingding sa sukat na plano mong i-print, magpadala ng printer_type, isang print size, o pareho. Ang resulta ay ibinabalik sa printability.thin_walls. Mas matagal ang pagsusuri ng kapal ng dingding, kaya karaniwang hindi agad handa ang task, kahit na na-analyze na ang model noon.

Mga Parameter

  • Name
    model_url
    Type
    string
    Kinakailangan
    Description

    URL ng 3D model na susuriin. Mga suportadong format: .glb, .gltf, .obj, .fbx, .stl. Gumamit ng http o https URL, o base64 data: URL para sa GLB (data:model/gltf-binary;base64,...) o glTF (data:model/gltf+json;base64,...). Ang mga .obj, .fbx at .stl na file ay dapat ipadala bilang http o https URL.

    Maximum na laki ng file: 400 MB para sa http o https URL, 100 MB para sa data: URI.

    Ang isang GLB, glTF, FBX o OBJ na file na higit sa 100 MB ay maaaring magkaroon ng hanggang 10,000,000 faces. Binibilang ang mga face bilang triangles: ang quad ay binibilang bilang 2, at ang mesh na iginuhit nang higit sa isang beses ay binibilang nang isang beses bawat kopya. Sa higit sa 100 MB, ang isang FBX na file ay dapat binary FBX 7.1 o mas bago, at ang isang GLB o glTF na file ay hindi dapat gumamit ng Draco compression.

    Ang mga Meshy download URL (assets.meshy.ai/…?Expires=…&Signature=…) ay naka-sign at titigil sa paggana sa expires_at ng task; ang muling pagkuha sa task ay hindi nagre-renew ng mga ito. Para sa isang model na ginawa gamit ang Meshy, ipasa na lamang ang input_task_id. Gumagana ito habang pinapanatili ang source task (tingnan ang Asset Retention). Upang muling gamitin ang isang model pagkatapos noon, i-download ito bago ang expires_at at magpadala ng sarili mong kopya.

  • Name
    printer_type
    Type
    string
    Description

    Ang printer na plano mong gamitin. Itinatakda nito ang minimum na kapal ng dingding para sa pagsusuri ng kapal ng dingding. Default sa fdm kapag nagpadala ka ng print size nang wala ito.

    Mga magagamit na value:

    • fdm: filament, 1.0 mm minimum na dingding.
    • sla: resin, 0.8 mm minimum na dingding.
    • full_color: full-color, 2.0 mm minimum na dingding.
  • Name
    intended_print_height_mm
    Type
    number
    Description

    Taas ng print, sa millimeters. Saklaw: [1, 1000]. Binibilog sa pinakamalapit na millimeter. GLB input lamang.

  • Name
    intended_print_longest_side_mm
    Type
    number
    Description

    Haba ng pinakamahabang gilid ng print, sa millimeters. Saklaw: [1, 1000]. Binibilog sa pinakamalapit na millimeter. Gumagana sa bawat format ng input.

Mga Ibinabalik

Ang property na result ng tugon ay naglalaman ng id ng bagong likhang analyze-printability task.

Mga Mode ng Kabiguan

  • Name
    400 - Bad Request
    Description

    Ang kahilingan ay hindi katanggap-tanggap. Mga karaniwang dahilan:

    • Nawawalang parameter: wala sa input_task_id o model_url ang ibinigay.
    • Hindi wastong UUID: ang input_task_id ay hindi wastong UUID.
    • Hindi wastong model URL: ang model_url ay malformed, gumagamit ng hindi suportadong scheme, o may hindi suportadong extension ng file.
    • Masyadong malaki ang model file: ang laman ng model_url ay lumampas sa 400 MB (http o https URL) o 100 MB (data: URI).
    • Masyadong maraming faces: ang model_url ay isang GLB, glTF, FBX o OBJ na file na higit sa 100 MB na may higit sa 10,000,000 faces. Bawasan ang bilang ng faces, pagkatapos ay ipadala muli ang file.
    • ASCII FBX na higit sa 100 MB: ang model_url ay isang ASCII FBX na higit sa 100 MB. Ipadala ito bilang binary FBX o GLB.
    • Hindi mabasang model file: ang model_url ay higit sa 100 MB at hindi mabasa ang header nito, halimbawa isang Draco-compressed na GLB o glTF, o isang binary FBX na mas luma sa 7.1.
    • Masyadong kumplikado ang header ng model: ang model_url ay higit sa 100 MB at ang header nito ay may masyadong maraming mesh, node o record na susuriin. Bawasan ang bilang ng mga object sa file, pagkatapos ay ipadala ito muli.
    • Hindi ma-download ang model file: ang model_url ay nagbalik ng error, kadalasan dahil nag-expire na ang isang naka-sign na Meshy download URL. Ang muling pagkuha sa task ay magbabalik ng parehong URL na may parehong expiry, kaya magpadala ng sarili mong kopya ng file, o gumamit ng input_task_id habang pinapanatili pa ang source task.
    • Hindi matagumpay ang task: ang tinutukoy na task ay nakabinbin pa, isinasagawa pa, o nabigo.
    • Hindi wastong print size: ang intended_print_height_mm o intended_print_longest_side_mm ay wala sa [1, 1000], o parehong ipinadala.
    • Hindi kilalang uri ng printer: ang printer_type ay hindi fdm, sla, o full_color.
    • Taas sa hindi-GLB na model: ipinadala ang intended_print_height_mm kasama ang isang model_url na hindi .glb. Gamitin na lamang ang intended_print_longest_side_mm.
    • Hindi masukat ang model na ito ayon sa taas: sa hiniling na taas (o sa default na 150 mm), ang pinakamahabang gilid ng model ay wala sa [1, 1000] mm, patag ang model, o hindi matukoy ang sukat nito. Gamitin na lamang ang intended_print_longest_side_mm. Para sa isang .glb na model_url at ilang input_task_id na task, ito ay nalalaman lamang pagkatapos magsimula ang task, at ang task ay nagtatapos bilang FAILED sa halip.
    • Hindi magamit ang sukat ng STL: ipinadala ang printer_type nang walang sukat, at ang sarili ng .stl na pinakamahabang gilid ay hindi mabasa o wala sa [1, 1000] mm. Magpadala ng intended_print_longest_side_mm.
  • Name
    401 - Unauthorized
    Description

    Nabigo ang authentication. Pakisuri ang iyong API key.

  • Name
    404 - Not Found
    Description

    Mga karaniwang dahilan:

    • Hindi umiiral ang task, naburà na, o pagmamay-ari ng ibang user.
    • Gumagamit ang task ng model na mas luma sa Meshy 6, o ang mode nito ay hindi lumilikha ng 3D asset.
    • Ang pinagbabatayang model file ay hindi na available sa storage.
  • Name
    429 - Too Many Requests
    Description

    Lumampas ka sa iyong kota ng pending-task o rate limit.

Request

POST
/openapi/v1/print/analyze
# Analyze an existing task
curl https://api.meshy.ai/openapi/v1/print/analyze \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578"
  }'

# Or analyze a model URL directly
curl https://api.meshy.ai/openapi/v1/print/analyze \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "model_url": "https://example.com/model.glb"
  }'

# Also check wall thickness for a 100 mm tall SLA print
curl https://api.meshy.ai/openapi/v1/print/analyze \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
    "input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "printer_type": "sla",
    "intended_print_height_mm": 100
  }'

Response

{
  "result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}

GET/openapi/v1/print/analyze/:id

Kunin ang Analyze Printability Task

Kinukuha ng endpoint na ito ang isang analyze-printability task gamit ang ID nito.

Mga Parameter

  • Name
    id
    Type
    path
    Description

    Ang ID ng analyze-printability task na kukunin.

Ibinabalik

Ang Analyze Printability Task Object. Ang field na printability ay null hanggang maabot ng task ang SUCCEEDED. Kapag na-check ang kapal ng dingding, kasama rin sa printability ang intended_print at thin_walls.

Request

GET
/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f
curl https://api.meshy.ai/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-analyze",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "expires_at": 1715725401000,
  "task_error": null,
  "printability": {
    "_version": "v1",
    "status": "warning",
    "issue_count": 1,
    "error_count": 0,
    "warning_count": 1,
    "metrics": {
      "is_watertight": true,
      "volume": 1.316167354292668,
      "non_manifold_edges": 0,
      "degenerate_faces": 43242,
      "holes": 0
    },
    "evaluated_at": 1700000001000
  },
  "consumed_credits": 0
}

Response (wall thickness checked)

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-analyze",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000012000,
  "expires_at": 1715725412000,
  "task_error": null,
  "printability": {
    "_version": "v1",
    "status": "error",
    "issue_count": 2,
    "error_count": 1,
    "warning_count": 1,
    "metrics": {
      "is_watertight": true,
      "volume": 1.316167354292668,
      "non_manifold_edges": 0,
      "degenerate_faces": 43242,
      "holes": 0
    },
    "intended_print": {
      "printer_type": "sla",
      "height_mm": 100,
      "longest_side_mm": 118,
      "wall_thickness_mm": 0.8,
      "dimensions_mm": [118, 72.41, 99.87]
    },
    "thin_walls": {
      "thin_area_ratio": 0.083,
      "has_thin_walls": true,
      "status": "error"
    },
    "evaluated_at": 1700000012000
  },
  "consumed_credits": 0
}

DELETE/openapi/v1/print/analyze/:id

Mag-delete ng Analyze Printability Task

Ang endpoint na ito ay permanenteng nagde-delete ng isang analyze-printability task at ng naka-cache na resulta nito. Ang aksyon na ito ay hindi na maaaring bawiin.

Path Parameters

  • Name
    id
    Type
    path
    Description

    Ang ID ng analyze-printability task na ide-delete.

Katayuan ng Task

Ang isang task na PENDING pa ay dine-delete at ang mga credits na ginamit noong panahon ng paggawa nito ay ire-refund.

Ang isang task na IN_PROGRESS na ay hindi maaaring i-delete: 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 kapag dine-delete mo ito habang tumatakbo pa, mawawala sa iyo ang credits at ang resulta. Hintayin na umabot ito sa SUCCEEDED, FAILED, o CANCELED, bago ito i-delete.

Ang isang task na nasa terminal state (SUCCEEDED, FAILED, o CANCELED) ay dine-delete nang walang refund.

Mga Ibinabalik

Nagbabalik ng 200 OK kapag matagumpay, o 409 Conflict kapag ang task ay IN_PROGRESS.

Request

DELETE
/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/print/analyze/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."
}

GET/openapi/v1/print/analyze

List Analyze Printability Tasks

Ang endpoint na ito ay nagbibigay-daan sa iyo na kunin ang isang listahan ng mga Analyze Printability task.

Mga Parameter

Opsyonal na mga attribute

  • Name
    page_num
    Type
    integer
    Description

    Numero ng pahina para sa pagination. Nagsisimula at nag-default sa 1.

  • Name
    page_size
    Type
    integer
    Description

    Limitasyon sa laki ng pahina. Nag-default sa 10 items. Ang pinakamataas na pinapayagan ay 100 items.

  • Name
    sort_by
    Type
    string
    Description

    Field na gagamitin sa pag-sort. Mga available na value:

    • +created_at: I-sort ayon sa oras ng paglikha nang pataas (ascending).
    • -created_at: I-sort ayon sa oras ng paglikha nang pababa (descending).

Ibinabalik

Nagbabalik ng isang paginated na listahan ng Analyze Printability Task Objects.

Request

GET
/openapi/v1/print/analyze
curl https://api.meshy.ai/openapi/v1/print/analyze?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

[
  {
    "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
    "type": "print-analyze",
    "status": "SUCCEEDED",
    "progress": 100,
    "preceding_tasks": 0,
    "created_at": 1699999999000,
    "started_at": 1700000000000,
    "finished_at": 1700000001000,
    "expires_at": 1715725401000,
    "task_error": null,
    "printability": {
      "_version": "v1",
      "status": "warning",
      "issue_count": 1,
      "error_count": 0,
      "warning_count": 1,
      "metrics": {
        "is_watertight": true,
        "volume": 1.316167354292668,
        "non_manifold_edges": 0,
        "degenerate_faces": 43242,
        "holes": 0
      },
      "evaluated_at": 1700000001000
    },
    "consumed_credits": 0
  }
]

GET/openapi/v1/print/analyze/:id/stream

I-stream ang Analyze Printability Task

Nagsa-stream ang endpoint na ito ng mga real-time na update para sa isang analyze-printability task gamit ang Server-Sent Events (SSE).

Mga Parameter

  • Name
    id
    Type
    path
    Description

    Natatanging identifier para sa analyze-printability task na i-stream.

Ibinabalik

Nagbabalik ng stream ng Analyze Printability Task Objects bilang Server-Sent Events.

Dala ng bawat frame ang kumpletong task object para sa yugtong iyon — ang kaparehong hugis na ibinabalik ng Get endpoint — kaya habang PENDING o IN_PROGRESS pa ang task, ang mga output field ay hindi pa simpleng napupunan (null, [] o {}) at null ang finished_at. Ang printability block ay ipinapadala lamang kapag naabot na ng task ang SUCCEEDED.

Request

GET
/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream
curl -N https://api.meshy.ai/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response Stream

// Error event example
event: error
data: {
  "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: message
data: {
  "id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
  "type": "print-analyze",
  "status": "SUCCEEDED",
  "progress": 100,
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "expires_at": 1715725401000,
  "task_error": null,
  "printability": {
    "_version": "v1",
    "status": "warning",
    "issue_count": 1,
    "error_count": 0,
    "warning_count": 1,
    "metrics": {
      "is_watertight": true,
      "volume": 1.316167354292668,
      "non_manifold_edges": 0,
      "degenerate_faces": 43242,
      "holes": 0
    },
    "evaluated_at": 1700000001000
  },
  "consumed_credits": 0
}

The Analyze Printability Task Object

  • Name
    id
    Type
    string
    Description

    Natatanging identifier para sa task. Bagama't gumagamit kami ng k-sortable UUID para sa mga task id bilang detalye ng implementasyon, hindi mo dapat ipagpalagay ang anumang bagay tungkol sa format ng id.

  • Name
    type
    Type
    string
    Description

    Uri ng analyze-printability task. Ang value ay print-analyze.

  • 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
    preceding_tasks
    Type
    integer
    Description

    Ang bilang ng mga naunang task.

  • Name
    created_at
    Type
    timestamp
    Description

    Timestamp kung kailan nalikha ang task, sa milliseconds.

  • Name
    started_at
    Type
    timestamp
    Description

    Timestamp kung kailan nasimulan ang task, sa milliseconds. Kung hindi pa nasisimulan ang task, ang property na ito ay magiging 0.

  • 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 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Timestamp kung kailan mag-e-expire ang resulta ng task mula sa system, sa milliseconds. 0 kung hindi pa tapos ang task.

  • Name
    task_error
    Type
    object
    Description

    Impormasyon ng error kung nabigo ang task. Ang property na ito ay null kung hindi nabigo ang task. Tingnan ang Errors para sa higit pang detalye.

    • Name
      message
      Type
      string
      Description

      Mensahe ng error na naglalarawan kung ano ang nagkamali.

  • Name
    printability
    Type
    object
    Description

    Resulta ng pagsusuri ng printability. null hanggang maabot ng task ang SUCCEEDED.

    • Name
      _version
      Type
      string
      Description

      Schema version ng resulta ng printability. Kasalukuyang v1.

    • Name
      status
      Type
      string
      Description

      Pangkalahatang status. Isa sa:

      • healthy: walang errors at walang warnings.
      • warning: may kahit isang warning, walang errors.
      • error: may kahit isang error.
      • unknown: hindi masuri ang modelo.

      Kapag sinuri ang kapal ng dingding, ito ang mas malala sa mga pagsusuring nasa itaas at sa thin_walls.status. Mula sa pinakamasama hanggang sa pinakamahusay: error, warning, unknown, healthy.

    • Name
      issue_count
      Type
      integer
      Description

      Kabuuang bilang ng mga isyu, katumbas ng error_count + warning_count.

    • Name
      error_count
      Type
      integer
      Description

      Bilang ng mga isyu sa antas ng error. Itinataas ang mga error kapag ang modelo ay hindi watertight, may non-positive volume, o may non-manifold edges. Kapag sinuri ang kapal ng dingding, ang mga dingding na masyadong manipis (thin_walls.status ay error) ay binibilang bilang isa pang error.

    • Name
      warning_count
      Type
      integer
      Description

      Bilang ng mga isyu sa antas ng warning. Itinataas ang mga warning kapag ang modelo ay naglalaman ng degenerate faces o mga butas.

    • Name
      metrics
      Type
      object
      Description

      Mga raw na sukatan ng heometriya na ibinalik ng evaluator.

      • Name
        is_watertight
        Type
        boolean
        Description

        true kapag ang mesh ay walang boundary edges (ibig sabihin, saradong-sarado ito).

      • Name
        volume
        Type
        number
        Description

        Volume ng modelo sa cubic meters.

      • Name
        non_manifold_edges
        Type
        integer
        Description

        Bilang ng non-manifold edges.

      • Name
        degenerate_faces
        Type
        integer
        Description

        Bilang ng degenerate faces (zero-area o invalid na mga face).

      • Name
        holes
        Type
        integer
        Description

        Bilang ng mga butas (boundary loops) sa mesh.

    • Name
      intended_print
      Type
      object
      Description

      Ang printer at sukat na ginamit ng pagsusuri sa kapal ng dingding. Naroroon lamang kapag sinuri ang kapal ng dingding.

      • Name
        printer_type
        Type
        string
        Description

        fdm, sla, o full_color.

      • Name
        height_mm
        Type
        number
        Description

        Ang taas ng print sa millimeters, kung sinukat ang print ayon sa taas. Kung hindi, null.

      • Name
        longest_side_mm
        Type
        number
        Description

        Ang pinakamahabang gilid ng print sa millimeters. Kapag sinukat ayon sa taas, kinakalkula ito mula sa mga proporsyon ng modelo.

      • Name
        wall_thickness_mm
        Type
        number
        Description

        Ang pinakamababang kapal ng dingding para sa printer_type, sa millimeters. Ang mga dingding na mas manipis dito ay iniuulat bilang masyadong manipis.

      • Name
        dimensions_mm
        Type
        array
        Description

        Ang [width, depth, height] ng print sa millimeters. Ang taas ay maaaring magkaiba sa height_mm ng isang bahagi ng millimeter. null para sa input na hindi GLB, o kung hindi matukoy ang sukat ng modelo.

    • Name
      thin_walls
      Type
      object
      Description

      Ang resulta ng pagsusuri sa kapal ng dingding. Naroroon lamang kapag sinuri ang kapal ng dingding.

      • Name
        thin_area_ratio
        Type
        number
        Description

        Bahagi ng ibabaw, mula 0 hanggang 1, na mas manipis sa intended_print.wall_thickness_mm. null kung hindi nasukat ang modelo.

      • Name
        has_thin_walls
        Type
        boolean
        Description

        true kung may bahagi ng ibabaw na masyadong manipis. Ang mga matatalim na sulok lamang ay maaaring magtakda nito, kaya gamitin ang status upang magpasya kung kailangang palapitin ang mga dingding. null kung hindi nasukat ang modelo.

      • Name
        status
        Type
        string
        Description

        Ang hatol sa kapal ng dingding. Isa sa:

        • healthy: 5% o mas kaunti sa ibabaw ang masyadong manipis.
        • error: higit sa 5% ng ibabaw ang masyadong manipis. Upang palaparin ang mga dingding, ipasa ang id ng task na ito sa Repair Printability bilang input_task_id (para sa .stl, .fbx, o .gltf na model_url, ipadala na lamang ang file bilang model_url).
        • unknown: hindi nasukat ang modelo. Kung mabigo mismo ang pagsusuri sa kapal ng dingding, magtatapos ang task bilang FAILED.
    • Name
      evaluated_at
      Type
      timestamp
      Description

      Timestamp kung kailan nakalkula ang pagsusuri, sa milliseconds mula sa epoch.

  • Name
    consumed_credits
    Type
    integer
    Description

    Laging 0. Libre ang endpoint na ito.

The Analyze Printability Task Object

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-analyze",
  "status": "SUCCEEDED",
  "progress": 100,
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000001000,
  "expires_at": 1715725401000,
  "task_error": null,
  "printability": {
    "_version": "v1",
    "status": "warning",
    "issue_count": 1,
    "error_count": 0,
    "warning_count": 1,
    "metrics": {
      "is_watertight": true,
      "volume": 1.316167354292668,
      "non_manifold_edges": 0,
      "degenerate_faces": 43242,
      "holes": 0
    },
    "evaluated_at": 1700000001000
  },
  "consumed_credits": 0
}

The Analyze Printability Task Object (wall thickness checked)

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-analyze",
  "status": "SUCCEEDED",
  "progress": 100,
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000012000,
  "expires_at": 1715725412000,
  "task_error": null,
  "printability": {
    "_version": "v1",
    "status": "error",
    "issue_count": 2,
    "error_count": 1,
    "warning_count": 1,
    "metrics": {
      "is_watertight": true,
      "volume": 1.316167354292668,
      "non_manifold_edges": 0,
      "degenerate_faces": 43242,
      "holes": 0
    },
    "intended_print": {
      "printer_type": "sla",
      "height_mm": 100,
      "longest_side_mm": 118,
      "wall_thickness_mm": 0.8,
      "dimensions_mm": [118, 72.41, 99.87]
    },
    "thin_walls": {
      "thin_area_ratio": 0.083,
      "has_thin_walls": true,
      "status": "error"
    },
    "evaluated_at": 1700000012000
  },
  "consumed_credits": 0
}