Printbaarheid analyseren API
Analyseer een 3D-model op FDM-printbaarheid — waterdichtheid, volume, gaten, niet-manifold randen en gedegenereerde vlakken.
Een taak voor Printbaarheid analyseren maken
Deze endpoint maakt een nieuwe taak voor printbaarheid analyseren aan. De taak evalueert een 3D-model en rapporteert de printbaarheidsstatistieken.
Als de invoertaak al gecachte printbaarheid heeft, is de geretourneerde taak onmiddellijk klaar en retourneert de eerste GET erop het analyseresultaat zonder via de worker te gaan.
Parameters
Slechts één van input_task_id of model_url is vereist. Als beide worden opgegeven, krijgt input_task_id prioriteit.
- Name
- input_task_id
- Type
- string
- Verplicht
- Description
De ID van een geslaagde taak waarvan jij de eigenaar bent. Ondersteunde taaktypen: Afbeelding naar 3D, Multi-afbeelding naar 3D, Tekst naar 3D, Remesh, en Hertextureren. De taak moet Meshy 6 (of een Preview-model) gebruiken en moet de status
SUCCEEDEDhebben.
- Name
- model_url
- Type
- string
- Verplicht
- Description
URL van een 3D-model om te analyseren. Ondersteunde formaten:
.glb,.gltf,.obj,.fbx,.stl. Maximale bestandsgrootte: 100 MB. Moet eenhttp-,https- ofdata:-URL gebruiken (data-URL's omzeilen extensiecontroles).
Retourneert
De eigenschap result van de response bevat de id van de nieuw aangemaakte taak voor printbaarheid analyseren.
Foutmodi
- Name
400 - Bad Request- Description
De aanvraag was onaanvaardbaar. Veelvoorkomende oorzaken:
- Ontbrekende parameter: noch
input_task_idnochmodel_urlis opgegeven. - Ongeldige UUID:
input_task_idis geen geldige UUID. - Ongeldige model-URL:
model_urlis verkeerd gevormd, gebruikt een niet-ondersteund schema, of heeft een niet-ondersteunde bestandsextensie. - Modelbestand te groot: de body van
model_urloverschreed 100 MB. - Taak niet geslaagd: de gerefereerde taak is nog in behandeling, in progress, of mislukt.
- Ontbrekende parameter: noch
- Name
401 - Unauthorized- Description
Authenticatie mislukt. Controleer je API-sleutel.
- Name
403 - Forbidden- Description
De taak bestaat, maar is eigendom van een andere gebruiker.
- Name
404 - Not Found- Description
Veelvoorkomende oorzaken:
- De taak bestaat niet of is verwijderd.
- De taak gebruikt een model ouder dan Meshy 6, of de mode ervan produceert geen 3D-asset.
- Het onderliggende modelbestand is niet langer beschikbaar in opslag.
- Name
429 - Too Many Requests- Description
Je hebt je quotum voor taken in behandeling of rate limit overschreden.
Request
# 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"
}'
Response
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Een taak voor Printbaarheid analyseren ophalen
Deze endpoint haalt een taak voor printbaarheid analyseren op via de ID.
Parameters
- Name
- id
- Type
- path
- Description
De ID van de taak voor printbaarheid analyseren die moet worden opgehaald.
Retourneert
Het taakobject voor Printbaarheid analyseren. Het veld printability is null totdat de taak SUCCEEDED bereikt.
Request
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
}
Een taak voor Printbaarheid analyseren verwijderen
Deze endpoint verwijdert permanent een taak voor Printbaarheid analyseren en het in cache opgeslagen resultaat ervan. Deze actie is onomkeerbaar.
Padparameters
- Name
- id
- Type
- path
- Description
De ID van de taak voor Printbaarheid analyseren die moet worden verwijderd.
Retourneert
Retourneert 200 OK bij succes.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/print/analyze/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 200 Ok on success.
Lijst met taken voor Printbaarheid analyseren
Met deze endpoint kun je een lijst met taken voor printbaarheid analyseren ophalen.
Parameters
Optionele attributen
- Name
- page_num
- Type
- integer
- Description
Paginanummer voor paginering. Begint en staat standaard op
1.
- Name
- page_size
- Type
- integer
- Description
Limiet voor paginagrootte. Staat standaard op
10items. Het maximaal toegestane aantal is50items.
- 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 taakobjecten voor Printbaarheid analyseren.
Request
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
}
]
Stream een Printbaarheid analyseren-taak
Deze endpoint streamt realtime-updates voor een Printbaarheid analyseren-taak met Server-Sent Events (SSE).
Parameters
- Name
- id
- Type
- path
- Description
Unieke identifier voor de Printbaarheid analyseren-taak om te streamen.
Retourneert
Retourneert een stream van Printbaarheid analyseren-taakobjecten als Server-Sent Events.
Voor PENDING- of IN_PROGRESS-taken bevat de responsstream alleen de noodzakelijke velden progress en status. Het blok printability wordt pas verzonden zodra de taak SUCCEEDED bereikt.
Request
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.
// 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-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
}
Het taakobject Printbaarheid analyseren
- 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 analyseren. De waarde is
print-analyze.
- 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 dit100.
- Name
- preceding_tasks
- Type
- integer
- Description
Het aantal voorafgaande taken.
De waarde van dit veld is alleen betekenisvol als de taakstatus
PENDINGis.
- 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.
0als de taak nog niet is voltooid.
- Name
- task_error
- Type
- object
- Description
Foutinformatie als de taak is mislukt. Deze eigenschap is
nullals de taak niet is mislukt. Zie Fouten voor meer details.- Name
message- Type
- string
- Description
Foutmelding die beschrijft wat er mis is gegaan.
- Name
- printability
- Type
- object
- Description
Evaluatieresultaat van de printbaarheid.
nulltotdat de taakSUCCEEDEDbereikt.- Name
_version- Type
- string
- Description
Schemaversie van het printbaarheidsresultaat. Momenteel
v1.
- Name
status- Type
- string
- Description
Algemene status. Een van:
healthy: geen fouten en geen waarschuwingen.warning: ten minste één waarschuwing, geen fouten.error: ten minste één fout.unknown: het model kon niet worden geanalyseerd.
- Name
issue_count- Type
- integer
- Description
Totaal aantal problemen, gelijk aan
error_count + warning_count.
- Name
error_count- Type
- integer
- Description
Aantal problemen op foutniveau. Fouten worden gemeld wanneer het model niet waterdicht is, geen positief volume heeft of niet-manifold randen heeft.
- Name
warning_count- Type
- integer
- Description
Aantal problemen op waarschuwingsniveau. Waarschuwingen worden gemeld wanneer het model gedegenereerde vlakken of gaten bevat.
- Name
metrics- Type
- object
- Description
Ruwe geometriemetingen die door de evaluator worden geretourneerd.
- Name
is_watertight- Type
- boolean
- Description
truewanneer de mesh geen begrenzingsranden heeft (d.w.z. gesloten is).
- Name
volume- Type
- number
- Description
Volume van het model in kubieke meter.
- Name
non_manifold_edges- Type
- integer
- Description
Aantal niet-manifold randen.
- Name
degenerate_faces- Type
- integer
- Description
Aantal gedegenereerde vlakken (vlakken met nul oppervlak of ongeldige vlakken).
- Name
holes- Type
- integer
- Description
Aantal gaten (begrenzingslussen) in de mesh.
- Name
evaluated_at- Type
- timestamp
- Description
Tijdstempel van wanneer de analyse is berekend, in milliseconden sinds epoch.
- Name
- consumed_credits
- Type
- integer
- Description
Altijd
0. Deze endpoint is gratis.
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
}