Zet je foto's om in aangepaste koelkastmagneten — een ingekleurd diepte-reliëf
met afgeronde rechthoek en een vlakke magnetische achterkant, op maat voor de koelkast — in twee
fasen: prototype genereert een ingekleurde conceptafbeelding op basis van je invoerfoto,
waarna build die conceptafbeelding omzet in een 3D-reliëfmodel. De
twee fasen zijn gekoppeld via input_task_id.
POST /openapi/creative-lab/fridge-magnet/v1/prototype
Genereer één ingekleurde conceptafbeelding op basis van de bronfoto. De
geretourneerde taak-ID is wat je als input_task_id doorgeeft aan de build-
endpoint. Raadpleeg
Het koelkastmagneet-prototypetaakobject
voor de vorm van de respons.
Parameters
Name
image_url
Type
string
Verplicht
Description
Bronfoto die Meshy inkleurt tot een conceptafbeelding die klaar is voor een koelkastmagneet. We ondersteunen momenteel de formaten .jpg, .jpeg, .png en .webp.
Er zijn twee manieren om de afbeelding op te geven:
Publiek toegankelijke URL: Een URL die toegankelijk is vanaf het openbare internet.
Data URI: Een base64-gecodeerde Data URI van de afbeelding. Voorbeeld van een Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Name
name
Type
string
Description
Optionele taaknaam voor weergavedoeleinden. Maximaal 100 tekens.
Retourneert
De eigenschap result van de respons bevat de taak-id van de nieuw gemaakte koelkastmagneet-prototypetaak. Poll de Een taak ophalen-endpoint of abonneer je op de stream totdat de taak SUCCEEDED bereikt, en geef die ID vervolgens door aan de build-endpoint als input_task_id.
Foutmodi
Name
400 - Bad Request
Description
Het verzoek was onacceptabel. Veelvoorkomende oorzaken:
Ontbrekende parameter: image_url is vereist.
Ongeldig afbeeldingsformaat: De opgegeven image_url heeft geen ondersteund formaat (.jpg, .jpeg, .png, .webp).
Afbeeldingsafmetingen buiten bereik: De afbeelding is te klein, overschrijdt de maximale bestandsgrootte of overschrijdt het maximale aantal pixels.
Onbereikbare URL: De image_url kon niet worden gedownload (404 of timeout).
Ongeldige Data URI: De base64-string is onjuist gevormd.
Inhoud gemarkeerd: De invoerafbeelding is gemarkeerd door NSFW- of intellectuele-eigendoms-moderation.
Name
401 - Unauthorized
Description
authenticatie mislukt. Controleer je API-sleutel.
Name
402 - Payment Required
Description
Onvoldoende credits om deze taak uit te voeren.
Name
429 - Too Many Requests
Description
Je hebt je rate limit overschreden.
Request
POST
/openapi/creative-lab/fridge-magnet/v1/prototype
# Stage 1: generate a colorized fridge magnet concept imagecurl https://api.meshy.ai/openapi/creative-lab/fridge-magnet/v1/prototype \ -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>" }'
Response
{"result":"01a3d8f1-8c2e-7d04-b223-3f3776a1c8c9"}
Prototype example
Start with a source photo, then generate the prototype image used by the fridge magnet build stage.
Genereer de uiteindelijke 3D-printbare koelkastmagneet vanuit een geslaagde
prototypetaak. De build voert een depth-map-reliëfpijplijn uit op de
ingekleurde conceptafbeelding van het prototype en levert één mesh-artifact in
de indeling waar je om vraagt. Raadpleeg
Het koelkastmagneet-buildtaakobject voor de
responsvorm.
Parameters
Name
input_task_id
Type
string
Verplicht
Description
De taak-ID van een prototypetaak die via dezelfde OpenAPI endpoint is gemaakt. Het prototype moet met dezelfde API-sleutel zijn gemaakt, moet SUCCEEDED hebben bereikt en moet exact één kandidaat-afbeelding hebben geproduceerd.
Prototypetaken die via de webapp zijn gemaakt, worden niet geaccepteerd — de build-endpoint accepteert alleen prototypetaken die zijn geproduceerd door POST /openapi/creative-lab/fridge-magnet/v1/prototype en weigert elke andere bron met 404.
Name
name
Type
string
Description
Optionele taaknaam voor weergavedoeleinden. Maximaal 100 tekens.
options
Optionele afstelparameters voor de reliëfgeometrie. Elk veld heeft een verstandige standaardwaarde — stuur alleen de waarden die je wilt overschrijven.
Name
badge_shape
Type
string
standaard rounded-rect
Description
Omtreksilhouet van de koelkastmagneet. Beschikbare waarden:
circle
rounded-rect (standaard)
hexagon
shield
star
Name
size_mm
Type
number
standaard 60
Description
Randlengte van het begrenzende vierkant van de koelkastmagneet, in millimeters. Bereik: (0, 400].
Name
relief_height_mm
Type
number
standaard 3.3
Description
Maximale reliëfhoogte boven de basis, in millimeters. Bereik: [0, 20].
Name
relief_offset_mm
Type
number
standaard 0
Description
Verticale offset die vóór extrusie op het reliëf wordt toegepast, in millimeters. Bereik: [0, 20].
Name
base_thickness_mm
Type
number
standaard 2.0
Description
Dikte van de vlakke basisplaat achter het reliëf, in millimeters. De standaard voor de koelkastmagneet is een stevigere basis van 2 mm — dit geeft de magneet genoeg volume om aan de koelkast te hechten zonder dat het reliëf kwetsbaar aanvoelt. Bereik: [0, 20].
Name
has_closed_back
Type
boolean
standaard true
Description
Of de achterkant van de koelkastmagneet is afgedicht als een gesloten oppervlak (de kant waarop je de magneet lijmt). Stel in op false voor een open schaal.
Name
relief_curve
Type
string
standaard linear
Description
Overdrachtscurve die depth-mapwaarden koppelt aan reliëfhoogte. Beschikbare waarden:
linear (standaard)
gamma
s-curve
Name
curve_param
Type
number
standaard 1.0
Description
Vormparameter voor de overdrachtscurve (alleen betekenisvol wanneer relief_curvegamma is). Bereik: (0, 10].
Name
invert_depth
Type
boolean
standaard false
Description
Keer de interpretatie van de depth-map om, zodat donkere gebieden hoger reliëf worden.
Name
smoothing
Type
number
standaard 0.24
Description
Gladmakingssterkte die vóór reliëfextractie op de depth-map wordt toegepast. Bereik: [0, 10].
Name
relief_scale
Type
number
standaard 1.0
Description
Verticale schaalvermenigvuldiger die bovenop relief_height_mm wordt toegepast. Bereik: (0, 10].
Name
depth_threshold
Type
number
standaard 0.1
Description
Low-pass-drempel voor depth-mapwaarden; alles hieronder wordt op nul afgeklemd. Bereik: [0, 1].
Name
remove_background
Type
boolean
standaard true
Description
Verwijder automatisch de achtergrond van de conceptafbeelding van het prototype vóór het maken van reliëf.
Name
export_resolution
Type
integer
standaard 512
Description
Meshresolutie die voor export wordt gebruikt. Bereik: [64, 2048].
output
Optionele wire-formatselector. Standaard ingesteld op glb.
Name
format
Type
string
standaard glb
Description
Artifactbundel die door de build wordt geretourneerd. Beschikbare waarden:
glb (standaard) — retourneert één model.glb onder model_urls.glb.
obj — zipt model.obj + model.mtl + texture.png en retourneert de bundel onder model_urls.obj.
zip — zipt elk artifact dat de generator uitvoert en retourneert de bundel onder model_urls.bundle_zip.
Retourneert
De eigenschap result van de respons bevat de taak-id van de nieuw gemaakte koelkastmagneet-buildtaak. Poll de endpoint Een taak ophalen of abonneer je op de stream totdat de taak SUCCEEDED bereikt, en download vervolgens het artifact uit de enkele vermelding in model_urls.
Foutmodi
Name
400 - Bad Request
Description
Het verzoek was onaanvaardbaar. Veelvoorkomende oorzaken:
Ontbrekende parameter: input_task_id is vereist.
Ongeldige UUID: De input_task_id is geen geldige UUID.
Bovenliggende taak niet geslaagd: De gerefereerde prototypetaak heeft SUCCEEDED nog niet bereikt.
Geen kandidaat: De prototypetaak is geslaagd maar heeft geen kandidaat-afbeelding geproduceerd.
Opties buiten bereik: Een van de options-velden viel buiten het toegestane bereik of de toegestane enum-set.
Name
401 - Unauthorized
Description
Authenticatie is mislukt. Controleer je API-sleutel.
Name
402 - Payment Required
Description
Onvoldoende credits om deze taak uit te voeren.
Name
404 - Not Found
Description
De gerefereerde prototypetaak bestaat niet, behoort toe aan een andere gebruiker of is via de webapp gemaakt (alleen prototypetaken in API-mode kunnen aan build worden gekoppeld).
Haal een prototype- of buildtaak op met een geldige taak-id. Het URL-pad
moet overeenkomen met de fase van de taak — een buildtaak die via
/prototype/:id wordt opgehaald, retourneert 404, en omgekeerd.
Annuleer een koelkastmagneettaak. Als de taak nog steeds PENDING is, worden de credits
die bij het aanmaken zijn verbruikt teruggestort. Taken die al
IN_PROGRESS zijn, worden geannuleerd zonder terugbetaling (de worker verbruikt mogelijk al
Bronnen). Taken die al een eindstatus hebben bereikt
(SUCCEEDED, FAILED, CANCELED) kunnen niet worden geannuleerd.
Het URL-pad moet overeenkomen met de fase van de taak — DELETE op
/prototype/:buildId retourneert 404.
Padparameters
Name
id
Type
path
Description
Unieke identificatie voor de koelkastmagneettaak die moet worden geannuleerd.
Retourneert
Retourneert 204 No Content bij succes met een lege body.
Foutmodi
Name
400 - Bad Request
Description
De taak bevindt zich al in een eindstatus en kan niet worden geannuleerd.
Name
404 - Not Found
Description
De taak bestaat niet, behoort tot een andere gebruiker, of de fase ervan komt niet overeen met het URL-pad.
Stream realtime-updates voor een koelkastmagneettaak via Server-Sent Events (SSE).
Het URL-pad moet overeenkomen met de fase van de taak — het openen van een stream op
/prototype/:buildId/stream verzendt één enkele event: error payload met
status_code: 404 en sluit de stream.
Parameters
Name
id
Type
path
Description
Unieke identificatie voor de koelkastmagneettaak die moet worden gestreamd.
Retourneert
Retourneert een stream van koelkastmagneetprototype
of koelkastmagneet-build-taakobjecten als
Server-Sent Events. Voor PENDING- of IN_PROGRESS-taken bevat de responsstream
alleen de noodzakelijke velden progress en status.
// Error event example (wrong stage or task not found)event: errordata: {"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: messagedata: {"id": "01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0","progress": 0,"status": "PENDING"}event: messagedata: {"id": "01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0","type": "creative-lab-fridge-magnet-build","status": "SUCCEEDED","progress": 100,"created_at": 1729543250000,"started_at": 1729543258000,"finished_at": 1729543285000,"expires_at": 1729802485000,"task_error": null,"consumed_credits": 20,"model_urls": {"glb":"https://assets.meshy.ai/***/tasks/01b4e9a2-9d3f-8e15-c334-4f4887b2d9d0/output/model.glb?Expires=***" }}
Haal een gepagineerde lijst op van je koelkastmagneettaken voor één enkele fase. Het URL-
pad selecteert de fase — /prototype retourneert prototypetaken; /build
retourneert build-taken. Taken uit de andere fase worden in geen van beide
responses opgenomen.
Padparameters
Name
stage
Type
path
Verplicht
Description
Ofwel prototype of build. De collectie retourneert alleen taken
waarvan de fase overeenkomt met de URL — het ophalen van /prototype retourneert nooit
build-taken en omgekeerd.
Queryparameters
Name
page_num
Type
integer
standaard 1
Description
Paginanummer voor paginering.
Name
page_size
Type
integer
standaard 10
Description
Limiet voor paginagrootte. Het maximaal toegestane aantal is 50 items.
Name
sort_by
Type
string
standaard -created_at
Description
Veld om op te sorteren. Beschikbare waarden:
+created_at: Sorteer op aanmaaktijd in oplopende volgorde.
-created_at: Sorteer op aanmaaktijd in aflopende volgorde.
Het koelkastmagneet-prototypetaakobject is een werkeenheid die Meshy bijhoudt om
een ingekleurde conceptafbeelding te genereren op basis van een bronfoto. De output van
deze fase wordt via input_task_id gekoppeld aan de bouwfase.
Eigenschappen
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. De waarde is creative-lab-fridge-magnet-prototype.
Name
name
Type
string
Description
De taaknaam die is opgegeven toen de taak werd aangemaakt. Lege tekenreeks als er geen naam is opgegeven.
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
created_at
Type
timestamp
Description
Tijdstempel van wanneer de taak is aangemaakt, in milliseconden.
Een tijdstempel vertegenwoordigt het aantal milliseconden dat is verstreken sinds 1 januari 1970 UTC, volgens
de RFC 3339-standaard.
Bijvoorbeeld: vrijdag 1 september 2023 12:00:00 PM GMT wordt weergegeven als 1693569600000. Dit geldt
voor alle tijdstempels in Meshy API.
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 verloopt, in milliseconden.
Name
preceding_tasks
Type
integer
Description
Het aantal voorafgaande taken.
De waarde van dit veld is alleen betekenisvol als de taakstatus PENDING is.
Name
task_error
Type
object
Description
Foutdetails voor mislukte taken. Zie Fouten voor de volledige task_error-objectreferentie.
Name
consumed_credits
Type
integer
Description
Het aantal credits dat door deze taak is verbruikt. Aanwezig wanneer de taakstatus PENDING, IN_PROGRESS of SUCCEEDED is. Retourneert 0 voor FAILED-taken (credits worden bij een mislukking terugbetaald).
Name
image_urls
Type
array of strings
Description
Downloadbare URL's voor de kandidaat-conceptafbeeldingen die door deze prototypetaak zijn gegenereerd. Momenteel retourneert de API altijd exact één kandidaat; het veld is een array zodat toekomstige revisies meerdere kandidaten kunnen weergeven zonder een breaking change.
Het koelkastmagneet-buildtaakobject is een werkeenheid die Meshy bijhoudt om
de uiteindelijke 3D koelkastmagneet-mesh te genereren op basis van een geslaagde prototypetaak. De
build voert een depth-map-reliëfpijplijn uit op de conceptafbeelding van het prototype en
publiceert één mesh-artefact in het formaat dat de aanroeper heeft aangevraagd.
Eigenschappen
Name
id
Type
string
Description
Unieke identifier voor de taak.
Name
type
Type
string
Description
Type van de taak. De waarde is creative-lab-fridge-magnet-build.
Name
name
Type
string
Description
De taaknaam die is opgegeven toen de taak werd aangemaakt. Lege string als er geen naam is opgegeven.
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
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.
Name
finished_at
Type
timestamp
Description
Tijdstempel van wanneer de taak is voltooid, in milliseconden.
Name
expires_at
Type
timestamp
Description
Tijdstempel van wanneer het taakresultaat verloopt, in milliseconden.
Name
preceding_tasks
Type
integer
Description
Het aantal voorafgaande taken. Alleen betekenisvol wanneer de status PENDING is.
Name
task_error
Type
object
Description
Foutdetails voor mislukte taken. Zie Fouten voor de volledige task_error-objectreferentie.
Name
consumed_credits
Type
integer
Description
Het aantal credits dat door deze taak is verbruikt. Retourneert 0 voor FAILED-taken (credits worden terugbetaald bij mislukking).
Name
model_urls
Type
object
Description
Downloadbare URL's voor het gegenereerde artefact, geïndexeerd op artefactnaam. Bevat altijd exact één item — de indeling die is aangevraagd via output.format van de build-aanvraag. De sleutel komt overeen met de aangevraagde indeling:
Name
glb
Type
string
Description
Downloadbare URL naar het GLB-bestand. Aanwezig wanneer output.formatglb was (de standaard).
Name
obj
Type
string
Description
Downloadbare URL naar een zipbundel met model.obj, model.mtl en texture.png. Aanwezig wanneer output.formatobj was.
Name
bundle_zip
Type
string
Description
Downloadbare URL naar een zipbundel van elk artefact dat de generator uitvoert. Aanwezig wanneer output.formatzip was.