Printbaarheid repareren API

Repareer een 3D-model voor FDM-printbaarheid — herstel niet-manifold randen, gedegenereerde vlakken, gaten en andere topology-problemen zodat de mesh klaar is om te printen.


POST/openapi/v1/print/repair

Een taak voor Printbaarheid repareren maken

Deze endpoint maakt een nieuwe taak voor Printbaarheid repareren. De taak voert topology-reparatie uit op een 3D-model en retourneert een waterdichte, printklare versie.

De uitvoerindeling komt overeen met de invoerindeling. Als je een .stl indient via model_url, bevat model_urls.stl in de response de gerepareerde mesh en zijn de andere indelingsvelden leeg. Het input_task_id-pad leest altijd de GLB van de brontaak, dus de uitvoer is .glb.

Parameters

  • Name
    model_url
    Type
    string
    Verplicht
    Description

    URL van een 3D-model om te repareren. Ondersteunde indelingen: .glb, .stl, .obj. Maximale bestandsgrootte: 100 MB. Moet http, https of een data:-URL gebruiken (data-URL's omzeilen extensiecontroles).

  • Name
    alpha_thumbnail
    Type
    boolean
    standaard false
    Description

    Wanneer ingesteld op true, rendert de taak daarnaast een versie met transparante achtergrond (RGBA) van de preview en retourneert deze als alpha_thumbnail_url in de GET-response. Het bestaande veld thumbnail_url blijft ongewijzigd.

Retourneert

De eigenschap result van de response bevat de id van de nieuw gemaakte taak voor Printbaarheid repareren.

Foutmodi

  • Name
    400 - Bad Request
    Description

    De aanvraag was niet acceptabel. Veelvoorkomende oorzaken:

    • Ontbrekende parameter: noch input_task_id noch model_url is opgegeven.
    • Ongeldige UUID: input_task_id is geen geldige UUID.
    • Ongeldige model-URL: model_url is verkeerd gevormd, gebruikt een niet-ondersteund schema of heeft een niet-ondersteunde bestandsextensie.
    • Modelbestand te groot: de body van model_url was groter dan 100 MB.
    • Taak niet geslaagd: de gerefereerde taak is nog in behandeling, in progress of mislukt.
    • Ontbrekende GLB: de gerefereerde taak heeft geen GLB-asset om te repareren.
  • Name
    401 - Unauthorized
    Description

    Authenticatie mislukt. Controleer je API-sleutel.

  • Name
    402 - Payment Required
    Description

    Veelvoorkomende oorzaken:

    • Gratis abonnement: het maken van taken vereist een betaald abonnement. Upgrade op de subscription page.
    • Onvoldoende credits: de creditlimiet van de werkruimte is bereikt.
  • Name
    404 - Not Found
    Description

    De gerefereerde taak bestaat niet of is eigendom van een andere gebruiker.

  • Name
    429 - Too Many Requests
    Description

    Je hebt je quotum voor taken in behandeling of rate limit overschreden.

Request

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

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

Response

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

GET/openapi/v1/print/repair/:id

Een taak voor Printbaarheid repareren ophalen

Deze endpoint haalt een taak voor printbaarheid repareren op via de ID.

Parameters

  • Name
    id
    Type
    path
    Description

    De ID van de taak voor printbaarheid repareren die moet worden opgehaald.

Retourneert

Het taakobject voor Printbaarheid repareren. Het blok model_urls is leeg totdat de taak SUCCEEDED bereikt. Alleen het veld model_urls dat overeenkomt met de invoerindeling wordt ingevuld.

Request

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

Response

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-repair",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000030000,
  "expires_at": 1715725401000,
  "task_error": null,
  "model_urls": {
    "glb": "",
    "fbx": "",
    "obj": "",
    "stl": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.stl?Expires=***",
    "usdz": "",
    "3mf": "",
    "mtl": ""
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
  "texture_urls": [],
  "consumed_credits": 10
}

DELETE/openapi/v1/print/repair/:id

Een taak voor Printbaarheid repareren verwijderen

Deze endpoint verwijdert permanent een taak voor printbaarheid repareren en de gerepareerde uitvoer ervan. Deze actie is onomkeerbaar.

Padparameters

  • Name
    id
    Type
    path
    Description

    De ID van de taak voor printbaarheid repareren die moet worden verwijderd.

Retourneert

Retourneert 200 OK bij succes.

Request

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

Response

// Returns 200 Ok on success.

GET/openapi/v1/print/repair

Taken voor Printbaarheid repareren weergeven

Met deze endpoint kun je een lijst met taken voor Printbaarheid repareren ophalen.

Parameters

Optionele attributen

  • Name
    page_num
    Type
    integer
    Description

    Paginanummer voor paginering. Begint bij en is standaard 1.

  • Name
    page_size
    Type
    integer
    Description

    Limiet voor paginagrootte. Standaard 10 items. Maximaal toegestaan is 50 items.

  • Name
    sort_by
    Type
    string
    Description

    Veld om op te sorteren. Beschikbare waarden:

    • +created_at: Sorteer op aanmaaktijd in oplopende volgorde.
    • -created_at: Sorteer op aanmaaktijd in aflopende volgorde.

Retourneert

Retourneert een gepagineerde lijst met Printbaarheid repareren-taakobjecten.

Request

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

Response

[
  {
    "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
    "type": "print-repair",
    "status": "SUCCEEDED",
    "progress": 100,
    "preceding_tasks": 0,
    "created_at": 1699999999000,
    "started_at": 1700000000000,
    "finished_at": 1700000030000,
    "expires_at": 1715725401000,
    "task_error": null,
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
      "fbx": "",
      "obj": "",
      "stl": "",
      "usdz": "",
      "3mf": "",
      "mtl": ""
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
    "texture_urls": [],
    "consumed_credits": 10
  }
]

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

Stream een taak voor Printbaarheid repareren

Deze endpoint streamt realtime-updates voor een taak voor printbaarheid repareren met Server-Sent Events (SSE).

Parameters

  • Name
    id
    Type
    path
    Description

    Unieke identificatie voor de taak voor printbaarheid repareren die moet worden gestreamd.

Retourneert

Retourneert een stream van taakobjecten voor Printbaarheid repareren als Server-Sent Events.

Voor PENDING- of IN_PROGRESS-taken bevat de responsstream alleen de noodzakelijke velden progress en status. Het blok model_urls wordt pas verzonden zodra de taak SUCCEEDED bereikt.

Request

GET
/openapi/v1/print/repair/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream
curl -N https://api.meshy.ai/openapi/v1/print/repair/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.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
  "id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "a43b5c6d-7e8f-901a-234b-567c890d1e2f",
  "type": "print-repair",
  "status": "SUCCEEDED",
  "progress": 100,
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000030000,
  "expires_at": 1715725401000,
  "task_error": null,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/model.glb?Expires=***",
    "fbx": "",
    "obj": "",
    "stl": "",
    "usdz": "",
    "3mf": "",
    "mtl": ""
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/a43b5c6d-7e8f-901a-234b-567c890d1e2f/output/preview.png?Expires=***",
  "texture_urls": [],
  "consumed_credits": 10
}

Het taakobject Printbaarheid repareren

  • Name
    id
    Type
    string
    Description

    Unieke identificatie voor de taak. Hoewel we een k-sorteerbare UUID gebruiken voor taak-id's als implementatiedetail, moet je geen aannames doen over de indeling van de id.

  • Name
    type
    Type
    string
    Description

    Type van de taak voor printbaarheid repareren. De waarde is print-repair.

  • Name
    status
    Type
    string
    Description

    Status van de taak. Mogelijke waarden zijn een van PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Progress van de taak. Als de taak nog niet is gestart, is deze eigenschap 0. Zodra de taak is geslaagd, wordt dit 100.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Het aantal voorafgaande taken.

  • Name
    created_at
    Type
    timestamp
    Description

    Tijdstempel van wanneer de taak is aangemaakt, in milliseconden.

  • Name
    started_at
    Type
    timestamp
    Description

    Tijdstempel van wanneer de taak is gestart, in milliseconden. Als de taak nog niet is gestart, is deze eigenschap 0.

  • Name
    finished_at
    Type
    timestamp
    Description

    Tijdstempel van wanneer de taak is voltooid, in milliseconden. Als de taak nog niet is voltooid, is deze eigenschap 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Tijdstempel van wanneer het taakresultaat uit het systeem verloopt, in milliseconden. 0 als de taak nog niet is voltooid.

  • Name
    task_error
    Type
    object
    Description

    Foutinformatie als de taak is mislukt. Deze eigenschap is null als de taak niet is mislukt. Zie Fouten voor meer details.

    • Name
      message
      Type
      string
      Description

      Foutmelding die beschrijft wat er misging.

  • Name
    model_urls
    Type
    object
    Description

    Downloadbare URL's naar het gerepareerde 3D-model. Alleen het veld dat overeenkomt met de invoerindeling wordt ingevuld; de andere indelingsvelden zijn lege strings.

    • Name
      glb
      Type
      string
      Description

      Downloadbare URL naar de gerepareerde GLB. Ingevuld wanneer de invoer een GLB was of wanneer input_task_id werd gebruikt.

    • Name
      fbx
      Type
      string
      Description

      Gereserveerd voor FBX-uitvoer. Altijd een lege string voor taken voor printbaarheid repareren.

    • Name
      obj
      Type
      string
      Description

      Downloadbare URL naar de gerepareerde OBJ. Ingevuld wanneer de invoer een OBJ-upload was.

    • Name
      stl
      Type
      string
      Description

      Downloadbare URL naar de gerepareerde STL. Ingevuld wanneer de invoer een STL-upload was.

    • Name
      usdz
      Type
      string
      Description

      Gereserveerd voor USDZ-uitvoer. Altijd een lege string voor taken voor printbaarheid repareren.

    • Name
      3mf
      Type
      string
      Description

      Gereserveerd voor 3MF-uitvoer. Altijd een lege string voor taken voor printbaarheid repareren.

    • Name
      mtl
      Type
      string
      Description

      Gereserveerd voor MTL-uitvoer. Altijd een lege string voor taken voor printbaarheid repareren.

  • Name
    thumbnail_url
    Type
    string
    Description

    URL van een voorbeeldafbeelding die uit het gerepareerde model is gerenderd.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    Downloadbare URL naar een versie met transparante achtergrond (RGBA) van thumbnail_url. Alleen aanwezig wanneer de taak is aangemaakt met alpha_thumbnail: true en het transparante voorbeeld succesvol is gerenderd; anders wordt dit veld weggelaten.

  • Name
    texture_urls
    Type
    array
    Description

    Altijd een lege array. Reparatie behoudt alleen de invoergeometrie en bakt textures niet opnieuw.

  • Name
    consumed_credits
    Type
    integer
    Description

    Het aantal credits dat door deze taak is verbruikt. 10 zodra de taak SUCCEEDED heeft bereikt. Retourneert 0 voor FAILED-taken (credits worden terugbetaald bij mislukking).

The Repair Printability Task Object

{
  "id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
  "type": "print-repair",
  "status": "SUCCEEDED",
  "progress": 100,
  "preceding_tasks": 0,
  "created_at": 1699999999000,
  "started_at": 1700000000000,
  "finished_at": 1700000030000,
  "expires_at": 1715725401000,
  "task_error": null,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/model.glb?Expires=***",
    "fbx": "",
    "obj": "",
    "stl": "",
    "usdz": "",
    "3mf": "",
    "mtl": ""
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/0193bfc5-ee4f-73f8-8525-44b398884ce9/output/preview.png?Expires=***",
  "texture_urls": [],
  "consumed_credits": 10
}