Afbeelding naar 3D API
Zet een afbeelding om in een 3D-model, met of zonder textuur, in de formaten die u kiest. Stuur de afbeelding, of gebruik de uitvoer van een taak van Tekst naar afbeelding of Afbeelding naar afbeelding.
Een Afbeelding naar 3D-taak maken
Maakt een Afbeelding naar 3D-taak aan. De taak draait op de achtergrond. Voor hoe lang een taak gewoonlijk duurt, zie Verwerkingstijden.
Request
# Simple request with required params
curl https://api.meshy.ai/openapi/v1/image-to-3d \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"image_url": "<your publicly accessible image url or base64-encoded data URI>"
}'
# With Ultra 4K geometry, remesh, PBR, and A-pose
curl https://api.meshy.ai/openapi/v1/image-to-3d \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"image_url": "<your publicly accessible image url or base64-encoded data URI>",
"ai_model": "meshy-7.1",
"geometry_resolution": "4k",
"enable_pbr": true,
"should_remesh": true,
"target_polycount": 100000,
"should_texture": true,
"pose_mode": "a-pose",
"target_formats": ["glb"]
}'
# Textured with Meshy N1 from the input image
curl https://api.meshy.ai/openapi/v1/image-to-3d \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"image_url": "<your publicly accessible image url or base64-encoded data URI>",
"ai_model": "meshy-7.1",
"texture_model": "meshy-n1"
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Parameters
- Name
- input_task_id
- Type
- string
- Verplicht
- Description
Verplicht, tenzij u
image_urlmeestuurt. De ID van een Tekst naar afbeelding- of Afbeelding naar afbeelding-taak waarvan u de afbeelding als invoer wilt gebruiken. De taak moet er een zijn die u met de API hebt aangemaakt, de statusSUCCEEDEDhebben en precies één afbeelding hebben opgeleverd.
- Name
- image_url
- Type
- string
- Verplicht
- Description
Verplicht, tenzij u
input_task_idmeestuurt. De afbeelding die naar een 3D-model moet worden omgezet, als een openbare URL of een base64-gecodeerde data-URI, zoalsdata:image/jpeg;base64,<uw base64-gecodeerde afbeeldingsgegevens>. Als u beide meestuurt, gebruikt Meshyinput_task_id.De afbeelding moet een JPG-, JPEG-, PNG- of WebP-bestand van maximaal 20 MB zijn, minstens 32 pixels aan elke zijde, en maximaal 178.956.970 pixels (breedte × hoogte).
- Name
- model_type
- Type
- string
- standaard standard
- Description
Het soort 3D-mesh dat gegenereerd moet worden.
Beschikbare waarden:
standard: een mesh met veel detailsmart-topology: een mesh van een Smart Topology-model, dat u kiest metai_model(meshy-t2ofmeshy-t2.5)
Met
smart-topologynegeert Meshyshould_remesh,save_pre_remeshed_modelendecimation_mode, en accepteert het alleentopology: triangle.
- Name
- ai_model
- Type
- string
- standaard latest
- Description
Het AI-model dat het 3D-model genereert. De beschikbare waarden hangen af van
model_type.Standaardmodellen (
model_type: standard):latest: Meshy 7.1meshy-7.1meshy-6meshy-6-litemeshy-7(verouderd): gebruik in plaats daarvanmeshy-7.1
Smart Topology-modellen (
model_type: smart-topology) produceren driehoeken, met een aantal vlakken dat u instelt mettarget_polycount:meshy-t2: schonere topology en van nature gescheiden onderdelenmeshy-t2.5(standaard): scherper detail voor game-assets
- Name
- geometry_resolution
- Type
- string
- standaard standard
- Description
De pass voor het genereren van de geometrie.
Beschikbare waarden:
standard2k: voert de Ultra-pass uit op 2048³4k: voert de Ultra-pass uit op 4096³, voor het meeste oppervlaktedetail
2kvereistmeshy-7.1,latest, of de verouderdemeshy-7.4kvereistmeshy-7.1oflatest.
- Name
- ultra_mode
- Type
- boolean
- ⚠ verouderd
- standaard false
- Description
Gebruik in plaats daarvan
geometry_resolution.ultra_mode: trueis hetzelfde alsgeometry_resolution: "2k".
- Name
- should_texture
- Type
- boolean
- standaard true
- Description
Of texturen gegenereerd moeten worden.
truelevert een getextureerd model op, enfalseslaat texturering over en levert een niet-getextureerde mesh op.
should_texture = true- Name
- texture_model
- Type
- string
- standaard depends on ai_model
- Description
Het AI-model dat het 3D-model textureert, in dezelfde taak. Laat dit weg om het standaard textuurmodel voor uw
ai_modelte gebruiken. Het heeft geen invloed op de kosten in credits.Beschikbare waarden:
meshy-7: Meshy 7, met PBR-maps en texturen tot 8Kmeshy-n1: Meshy N1, een 2K basiskleurtextuur alleen op basis van referentieafbeeldingenmeshy-6-lite: Meshy 6 Lite, een 2K-textuur tegen de laagste kostenmeshy-6: Meshy 6, alleen als standaard voorai_model: meshy-6
Elk
ai_modelaccepteertmeshy-7,meshy-n1enmeshy-6-lite. Een optie die het gekozen textuurmodel niet ondersteunt, geeft400terug. Metmeshy-n1mislukt de taak bij een gegenereerd model van meer dan 7.999.999 driehoeken, en betaalt Meshy de credits terug. Metshould_texture: falsenegeert Meshytexture_model, maar een onbekende waarde geeft nog steeds400terug.Zie Modellen voor wat elk textuurmodel doet en welke u moet kiezen.
- Name
- enable_pbr
- Type
- boolean
- standaard false
- Description
Of naast de basiskleur ook PBR-maps (metallic, roughness en normal) gegenereerd moeten worden.
truevereistshould_texture: true, en geeft400terug bijshould_texture: false. Mettexture_model: meshy-n1geefttrue400terug.Het Meshy 6-textuurmodel genereert ook een emissiemap, behalve bij
texture_resolution: 8k.
- Name
- texture_resolution
- Type
- string
- standaard 2k
- Description
De grootte van de basiskleurtextuur. Een grotere textuur legt meer oppervlaktedetail vast.
Beschikbare waarden:
2k: 2048×20484k: 4096×40968k: 8192×8192
4ken8kvereisen het Meshy 7- of Meshy 6-textuurmodel, en geven400terug bij de andere. Bij8kproduceert Meshy geen emissiemap.
- Name
- hd_texture
- Type
- boolean
- ⚠ verouderd
- standaard false
- Description
Gebruik in plaats daarvan
texture_resolution.hd_texture: trueis hetzelfde alstexture_resolution: "4k". Als u beide meestuurt, gebruikt Meshytexture_resolution.
- Name
- texture_prompt
- Type
- string
- Description
Tekst die de textuur stuurt, tot 800 tekens. Langere tekst geeft
400terug. Mettexture_model: meshy-n1geeft het meesturen hiervan400terug.
- Name
- texture_image_url
- Type
- string
- Description
Een afbeelding die de textuur stuurt, als een openbare URL of een base64-gecodeerde data-URI, zoals
data:image/jpeg;base64,<uw base64-gecodeerde afbeeldingsgegevens>. De afbeelding moet een JPG-, JPEG-, PNG- of WebP-bestand van maximaal 20 MB zijn, minstens 32 pixels aan elke zijde, en maximaal 178.956.970 pixels (breedte × hoogte).Meshy stuurt de textuur met slechts één van
texture_promptentexture_image_url. Als u beide meestuurt, gebruikt Meshytexture_prompt. Voor de kosten in credits van texturering, zie Prijzen.Met
texture_model: meshy-n1textureert Meshy vanaf deze afbeelding als vooraanzicht, of vanaf de invoerafbeelding wanneer u dit weglaat.Textureren vanaf een afbeelding werkt mogelijk niet goed wanneer de vorm van de afbeelding sterk afwijkt van de geometrie van het 3D-model.
- Name
- should_remesh
- Type
- boolean
- standaard true (meshy-6-lite), false (other models)
- Description
Of de remesh-fase moet worden uitgevoerd. Voor het best mogelijke 3D-model stelt u dit in op
false.
should_remesh = true- Name
- topology
- Type
- string
- standaard triangle
- Description
Het type vlakken van het geremeshte model.
Beschikbare waarden:
quad: een overwegend vierhoekige meshtriangle: een gedecimeerde driehoekige mesh
Smart Topology-uitvoer bestaat alleen uit driehoeken, dus
quadmetmeshy-t2ofmeshy-t2.5geeft400terug. Mettexture_model: meshy-n1geeftquad400terug wanneer het model geremesht wordt, watmeshy-6-litestandaard doet.
- Name
- decimation_mode
- Type
- integer
- Description
Adaptief aantal vlakken, per niveau. Wanneer u dit instelt, negeert Meshy
target_polycount.Beschikbare waarden:
1: ultra2: hoog3: gemiddeld4: laag
- Name
- save_pre_remeshed_model
- Type
- boolean
- standaard false
- Description
Of ook een GLB van het model van vóór de remesh-fase moet worden opgeslagen. Meshy geeft deze terug in
model_urls.pre_remeshed_glb.
- Name
- target_polycount
- Type
- integer
- Description
Het aantal vlakken om naar te streven. Het resultaat kan afwijken van het doel, afhankelijk van de geometrie van het model.
Dit geldt in twee afzonderlijke gevallen:
- Remesh: Wanneer
should_remeshoptruestaat bij eenstandard-model, decimeert Meshy de mesh naar ongeveer dit aantal. Als udecimation_modeinstelt, gebruikt Meshy dat en negeert hettarget_polycount. - Smart Topology: Wanneer
model_typesmart-topologyis enai_modelmeshy-t2ofmeshy-t2.5is, genereert Meshy het model met dit aantal vlakken. Er vindt geen remesh plaats, en u heeftshould_remeshniet nodig.
Het bereik en de standaardwaarde hangen af van het geval:
Geval Bereik Standaard Remesh 100tot30000030000meshy-t2100tot150004000meshy-t2.5100tot3000015000Een waarde buiten het bereik geeft
400terug.- Remesh: Wanneer
- Name
- symmetry_mode
- Type
- string
- ⚠ verouderd
- standaard auto
- Description
Laat dit weg, omdat het geen invloed heeft op de uitvoer. De waarden ervan bepaalden de symmetrie tijdens het genereren:
off: geen symmetrieauto: symmetrie gekozen op basis van de invoergeometrieon: afgedwongen symmetrie
- Name
- pose_mode
- Type
- string
- standaard ""
- Description
De pose voor het gegenereerde model.
Beschikbare waarden:
a-pose: een A-poset-pose: een T-pose""(lege string): geen specifieke pose
- Name
- is_a_t_pose
- Type
- boolean
- ⚠ verouderd
- standaard false
- Description
Gebruik in plaats daarvan
pose_mode. Of het model in een A- of T-pose moet worden gegenereerd.
- Name
- surface_mode
- Type
- string
- ⚠ verouderd
- Description
Gebruik in plaats daarvan
ai_model. Het heeft geen invloed op de uitvoer, omdat de modelgeneratie die hiermee geselecteerd werd niet meer in gebruik is.Geaccepteerde waarden zijn
organicenhard. Elke andere waarde geeft400terug.
- Name
- image_enhancement
- Type
- boolean
- standaard true
- Description
Of de invoerafbeelding geoptimaliseerd moet worden vóór het genereren.
falsebehoudt het exacte uiterlijk van de invoerafbeelding, zonder stijlverwerking.Dit werkt alleen met
meshy-6,meshy-7.1oflatest. Metmeshy-6-liteofmodel_type: smart-topologygeeft het400terug.
- Name
- remove_lighting
- Type
- boolean
- standaard true
- Description
Of hooglichten en schaduwen uit de basiskleurtextuur verwijderd moeten worden. Het resultaat is schoner en werkt beter onder uw eigen belichting.
Dit heeft alleen effect met het Meshy 6-textuurmodel, en een textuurmodel dat het niet ondersteunt geeft
400terug voortrue. Metmodel_type: smart-topology, of metai_model: meshy-6-liteen het bijbehorende standaard textuurmodel, geeft het meesturen hiervan400terug.
- Name
- moderation
- Type
- boolean
- standaard false
- Description
Of deze invoer gescreend moet worden op schadelijke inhoud vóór het genereren:
image_urltexture_image_urltexture_prompt
Als Meshy schadelijke inhoud detecteert, geeft het verzoek
400terug en maakt Meshy geen taak aan.
- Name
- target_formats
- Type
- string[]
- Description
De bestandsformaten om te genereren. Meshy genereert en retourneert alleen de formaten die u opgeeft, wat de taak kan verkorten. Als u dit weglaat, genereert Meshy elk formaat behalve
3mf, dat u alleen krijgt wanneer u het opgeeft.Beschikbare waarden:
glbobjfbxstlusdz3mf
- Name
- auto_size
- Type
- boolean
- standaard false
- Description
Of de werkelijke hoogte van het object geschat moet worden met AI-visie en het model daarnaar in grootte aangepast moet worden. Meshy plaatst de oorsprong onderaan tenzij u
origin_atinstelt.
- Name
- alpha_thumbnail
- Type
- boolean
- standaard false
- Description
Of er ook een voorbeeld met een transparante achtergrond (RGBA) gerenderd moet worden, geretourneerd in
alpha_thumbnail_urlwanneer u de taak ophaalt.thumbnail_urlverandert niet.
- Name
- multi_view_thumbnails
- Type
- boolean
- standaard false
- Description
Of er ook voorbeelden van voor-, rechter-, achter- en linkerkant gerenderd moeten worden, geretourneerd in
thumbnail_urlswanneer u de taak ophaalt.thumbnail_urlverandert niet en toont nog steeds het vooraanzicht. Dit voegt ongeveer 5 seconden toe aan de taak.
auto_size = true- Name
- origin_at
- Type
- string
- standaard bottom
- Description
Waar de oorsprong van het model geplaatst moet worden,
bottomofcenter.
Resultaten
Het veld result van het antwoord bevat de ID van de nieuwe Afbeelding naar 3D-taak.
Foutmodi
- Name
400 - Bad Request- Description
Het verzoek kan niet worden uitgevoerd. Het foutbericht geeft aan welk probleem er is gevonden. Bijvoorbeeld:
- Ontbrekende parameter: Noch
image_urlnochinput_task_idis meegestuurd. - Ongeldige invoertaak:
input_task_idis geenSUCCEEDEDTekst naar afbeelding- of Afbeelding naar afbeelding-taak die precies één afbeelding heeft opgeleverd. - Ongeldig afbeeldingsformaat: De afbeelding bij
image_urlis geen JPG-, JPEG-, PNG- of WebP-bestand. - Onbereikbare URL: Meshy kan de afbeelding bij
image_urlniet downloaden, omdat de URL404teruggeeft of een time-out geeft. - Afbeelding te groot: De afbeelding bij
image_urloftexture_image_urlis groter dan 20 MB. - Ongeldige afbeeldingsgrootte: De afbeelding bij
image_urloftexture_image_urlheeft een zijde korter dan 32 pixels, of meer dan 178.956.970 pixels (breedte × hoogte). - Ongeldige data-URI: De base64-string is onjuist opgebouwd.
- Ongeldige combinatie van parameters:
enable_pbristrue, enshould_textureisfalse. - Niet-ondersteund model voor Ultra:
geometry_resolutionis2kof4k, met eenai_modeldie dit niet kan uitvoeren. - Niet-ondersteund model voor afbeeldingsopties: één van de volgende:
image_enhancementis meegestuurd metai_model: "meshy-6-lite"ofmodel_type: "smart-topology".remove_lightingis meegestuurd metmodel_type: "smart-topology", of metai_model: "meshy-6-lite"en het bijbehorende standaard textuurmodel.
- Ongeldig textuurmodel:
texture_modelis geen van de beschikbare waarden. - Textuurmodel niet beschikbaar:
texture_modelismeshy-6met eenai_modelanders danmeshy-6. Stuurmeshy-7,meshy-n1ofmeshy-6-litemee, of laat het weg. - Niet-ondersteunde optie voor het textuurmodel: Het verzoek vraagt het textuurmodel om een optie die het niet ondersteunt, zoals
enable_pbr: truemetmeshy-n1of een4k-textuur metmeshy-6-lite. Zie Modellen.
Corrigeer het verzoek en stuur het opnieuw. Zie Fouten.
- Ontbrekende parameter: Noch
- Name
401 - Unauthorized- Description
De API-sleutel ontbreekt of is ongeldig. Controleer de
Authorization-header.
- Name
402 - Payment Required- Description
Bijvoorbeeld:
- Onvoldoende credits: Het account heeft onvoldoende credits voor deze taak, of het account heeft een creditlimiet bereikt. Controleer uw creditsaldo en probeer het opnieuw.
- Gratis abonnement: Voor het aanmaken van een taak is een betaald abonnement vereist. Upgrade uw abonnement in uw abonnementsinstellingen en probeer het opnieuw.
- Name
403 - Forbidden- Description
Contentmoderatie heeft de prompt of een invoerafbeelding geblokkeerd. Wijzig de invoer en probeer het opnieuw.
- Name
404 - Not Found- Description
input_task_idkomt met geen van uw taken overeen. Controleer de taak-ID en stuur het verzoek opnieuw.
- Name
429 - Too Many Requests- Description
U heeft uw rate limit overschreden. Wacht en probeer het opnieuw. Zie Rate limits.
Een Afbeelding naar 3D-taak ophalen
Retourneert een Afbeelding naar 3D-taak aan de hand van de ID.
Request
curl https://api.meshy.ai/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30
}
Parameters
- Name
- id
- Type
- path
- Description
De taak-ID uit het antwoord van het aanmaken.
Retourneert
Een Image to 3D-taak verwijderen
Verwijdert een Afbeelding naar 3D-taak permanent, inclusief de bijbehorende modellen en gegevens. Je kunt een verwijdering niet ongedaan maken.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578 \
-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 keeps 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."
}
Pad-parameters
- Name
- id
- Type
- path
- Description
De ID van de te verwijderen taak.
Taakstatus
Het verwijderen van een PENDING-taak betaalt de credits terug die zijn gebruikt bij het aanmaken ervan.
Een IN_PROGRESS-taak kan niet worden verwijderd. Het verzoek geeft 409 Conflict
terug, en de taak blijft doorlopen. Meshy betaalt geen credits terug voor een taak die is gestart,
dus het verwijderen ervan zou je zowel de credits als het resultaat kosten. Wacht tot de taak
SUCCEEDED, FAILED of CANCELED bereikt, en verwijder hem dan.
Het verwijderen van een taak met een definitieve status (SUCCEEDED, FAILED of CANCELED)
betaalt de credits niet terug.
Retourneert
200 OK wanneer de taak is verwijderd, of 409 Conflict wanneer de taak
IN_PROGRESS is.
Lijst van Afbeelding naar 3D-taken
Geeft een lijst van uw Afbeelding naar 3D-taken terug.
Request
curl https://api.meshy.ai/openapi/v1/image-to-3d?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
[
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30
}
]
Parameters
- Name
- page_num
- Type
- integer
- standaard 1
- Description
Het paginanummer dat geretourneerd wordt, tot
255. Een hogere waarde levert400op.
- Name
- page_size
- Type
- integer
- standaard 10
- Description
Het aantal taken per pagina, tot
100.
- Name
- sort_by
- Type
- string
- Description
De sorteervolgorde.
Beschikbare waarden:
+created_at: oudste eerst-created_at: nieuwste eerst
Returns
Een gepagineerde lijst van Afbeelding naar 3D-taakobjecten.
Stream een Afbeelding naar 3D taak
Streamt de updates van een Afbeelding naar 3D taak als Server-Sent Events (SSE).
Request
curl -N https://api.meshy.ai/openapi/v1/image-to-3d/018a210d-8ba4-705c-b111-1f1776f7f578/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.
// These examples are shortened. Each event holds the full task object.
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30
}
Parameters
- Name
- id
- Type
- path
- Description
De taak-ID uit de create-respons.
Retourwaarden
Een stream van Afbeelding naar 3D taakobjecten als Server-Sent Events.
Elk event bevat het volledige taakobject, in dezelfde vorm als de Get-endpoint teruggeeft. Zolang de taak PENDING of IN_PROGRESS is, hebben de resultaatvelden nog geen waarden.
Het Image to 3D-taakobject
Een Image to 3D-taakobject beschrijft één generatie van een 3D-model op basis van een afbeelding. Het bevat de status, de voortgang en de modelbestanden wanneer de taak slaagt.
Eigenschappen
Example Image to 3D Task Object
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "image-to-3d",
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***",
"fbx": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.fbx?Expires=***",
"obj": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.obj?Expires=***",
"usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***",
"stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***",
"pre_remeshed_glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/pre_remeshed_model.glb?Expires=***"
},
"thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
"thumbnail_urls": {
"front": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_front.png?Expires=***",
"right": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_right.png?Expires=***",
"back": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_back.png?Expires=***",
"left": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview_left.png?Expires=***"
},
"texture_prompt": "",
"texture_image_url": "",
"progress": 100,
"started_at": 1692771667037,
"created_at": 1692771650657,
"expires_at": 1692771679037,
"finished_at": 1692771669037,
"status": "SUCCEEDED",
"texture_urls": [
{
"base_color": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0.png?Expires=***",
"metallic": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_metallic.png?Expires=XXX",
"normal": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_normal.png?Expires=XXX",
"roughness": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_roughness.png?Expires=XXX",
"emission": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/texture_0_emission.png?Expires=XXX"
}
],
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30
}
- Name
- id
- Type
- string
- Description
De taak-ID. Behandel dit als een ondoorzichtige string en vertrouw niet op het formaat ervan.
- Name
- type
- Type
- string
- Description
Het taaktype, altijd
image-to-3d.
- Name
- model_urls
- Type
- object
- Description
Downloadlinks voor het gegenereerde 3D-model, één per bestandsformaat. Een formaat dat de taak niet heeft gegenereerd, heeft geen sleutel, in plaats van een lege string.
- Name
glb- Type
- string
- Description
Het GLB-bestand.
- Name
fbx- Type
- string
- Description
Het FBX-bestand.
- Name
obj- Type
- string
- Description
Het OBJ-bestand.
- Name
usdz- Type
- string
- Description
Het USDZ-bestand.
- Name
mtl- Type
- string
- Description
Het MTL-bestand, geretourneerd samen met een OBJ-bestand wanneer het model texturen heeft.
- Name
stl- Type
- string
- Description
Het STL-bestand.
- Name
3mf- Type
- string
- Description
Het 3MF-bestand. Alleen aanwezig wanneer
target_formats3mfbevat.
- Name
pre_remeshed_glb- Type
- string
- Description
Het GLB-bestand van vóór de remesh. Alleen aanwezig wanneer je de taak hebt aangemaakt met zowel
should_remesh: truealssave_pre_remeshed_model: true.
- Name
- thumbnail_url
- Type
- string
- Description
Downloadlink voor een voorbeeldafbeelding van het 3D-model. Wanneer
thumbnail_urlsaanwezig is, is dit dezelfde afbeelding alsthumbnail_urls.front. Meshy behoudt dit veld voor achterwaartse compatibiliteit.
- Name
- alpha_thumbnail_url
- Type
- string
- Description
Downloadlink voor een versie van
thumbnail_urlmet een transparante achtergrond (RGBA). Alleen aanwezig wanneer je de taak hebt aangemaakt metalpha_thumbnail: trueen Meshy de transparante preview heeft gerenderd.
- Name
- thumbnail_urls
- Type
- object
- Description
Downloadlinks voor previews van het 3D-model vanuit vier zijden. Elke waarde is een ondertekende URL naar een 512×512 PNG, gerenderd met dezelfde materialen en belichting als
thumbnail_url. Gebruik ze om het model vanuit verschillende hoeken te bekijken, bijvoorbeeld in een batchpijplijn, zonder de GLB te downloaden.Alleen aanwezig wanneer je de taak hebt aangemaakt met
multi_view_thumbnails: trueen de taakSUCCEEDEDheeft bereikt. Taken die zijn aangemaakt zondermulti_view_thumbnails: truebevatten dit veld niet.- Name
- front
- Type
- string
- Description
De vooraanzicht, op 0° rond de verticale as. Komt overeen met
thumbnail_url.
- Name
- right
- Type
- string
- Description
De rechteraanzicht, op 90°.
- Name
- back
- Type
- string
- Description
De achteraanzicht, op 180°.
- Name
- left
- Type
- string
- Description
De linkeraanzicht, op 270°.
- Name
- texture_prompt
- Type
- string
- Description
De tekstprompt die de textuur heeft gestuurd.
- Name
- texture_image_url
- Type
- string
- Description
Downloadlink voor de afbeelding die de textuur heeft gestuurd.
- Name
- ultra_mode
- Type
- boolean
- ⚠ verouderd
- Description
Lees in plaats daarvan
geometry_resolution.
- Name
- geometry_resolution
- Type
- string
- Description
De Ultra-laag waarin de taak is uitgevoerd,
2kof4k. Eenstandard-taak bevat dit veld niet.
- Name
- progress
- Type
- integer
- Description
Hoeveel van de taak is voltooid, als percentage. Dit is
0totdat de taak start en100wanneer deze slaagt.
- Name
- started_at
- Type
- timestamp
- Description
Tijdstip waarop de taak is gestart, in Unix-milliseconden. Dit is
0totdat de taak start.
- Name
- created_at
- Type
- timestamp
- Description
Tijdstip waarop de taak is aangemaakt, in Unix-milliseconden.
- Name
- expires_at
- Type
- timestamp
- Description
Tijdstip waarop het resultaat van de taak verloopt, in Unix-milliseconden.
- Name
- finished_at
- Type
- timestamp
- Description
Tijdstip waarop de taak is voltooid, in Unix-milliseconden. Dit is
0totdat de taak voltooid is.
- Name
- status
- Type
- string
- Description
De taakstatus, een van
PENDING,IN_PROGRESS,SUCCEEDED,FAILEDofCANCELED.
- Name
- texture_urls
- Type
- array
- Description
De texturen die de taak heeft gegenereerd, als een array van objecten. Deze bevat meestal één object, met de volgende velden:
- Name
base_color- Type
- string
- Description
Downloadlink voor de basiskleurmap.
- Name
metallic- Type
- string
- Description
Downloadlink voor de metallic map. Het veld ontbreekt wanneer je de taak hebt aangemaakt met
enable_pbr: false.
- Name
normal- Type
- string
- Description
Downloadlink voor de normal map. Het veld ontbreekt wanneer je de taak hebt aangemaakt met
enable_pbr: false.
- Name
roughness- Type
- string
- Description
Downloadlink voor de roughness map. Het veld ontbreekt wanneer je de taak hebt aangemaakt met
enable_pbr: false.
- Name
emission- Type
- string
- Description
Downloadlink voor de emissiemap. Meshy neemt dit veld alleen op wanneer je de taak hebt aangemaakt met al het volgende:
ai_model: meshy-6, met het bijbehorende standaard textuurmodelenable_pbr: true- een
texture_resolutionvan2kof4k
- Name
- preceding_tasks
- Type
- integer
- Description
Het aantal taken dat vóór deze taak in de wachtrij staat. De waarde is alleen betekenisvol zolang de taak
PENDINGis.
- Name
- task_error
- Type
- object
- Description
De foutdetails wanneer de taak mislukt. Dit is
nulltenzij de statusFAILEDis. Zie Fouten.
- Name
- consumed_credits
- Type
- integer
- Description
Het aantal credits dat de taak heeft gebruikt. Aanwezig wanneer de status
PENDING,IN_PROGRESSofSUCCEEDEDis. Dit is0voor eenFAILED-taak, omdat Meshy de credits terugbetaalt wanneer een taak mislukt.