Förvandla dina foton till anpassade kylskåpsmagneter — en färglagd
djuprelief med rundade hörn och platt magnetisk baksida, dimensionerad för kylskåpet — i två
steg: prototype genererar en färglagd konceptbild från ditt indatafoto,
sedan gör build om den konceptbilden till en 3D-modell i relief. De
två stegen länkas via input_task_id.
POST /openapi/creative-lab/fridge-magnet/v1/prototype
Generera en enda färglagd konceptbild från källfotot. Det
returnerade uppgifts-ID:t är det du skickar som input_task_id till build-
endpoint. Se
Prototypuppgiftsobjektet för kylskåpsmagnet
för svarsformen.
Parametrar
Name
image_url
Type
string
Obligatorisk
Description
Källfoto som Meshy ska färglägga till en konceptbild redo för kylskåpsmagnet. Vi stöder för närvarande formaten .jpg, .jpeg, .png och .webp.
Det finns två sätt att ange bilden:
Publikt åtkomlig URL: En URL som är åtkomlig från det publika internet.
Data URI: En base64-kodad Data URI för bilden. Exempel på en Data URI: data:image/jpeg;base64,<your base64-encoded image data>.
Name
name
Type
string
Description
Valfritt uppgiftsnamn för visningsändamål. Högst 100 tecken.
Returnerar
Egenskapen result i svaret innehåller uppgiftens id för den nyskapade prototypuppgiften för kylskåpsmagnet. Polla endpointen Hämta en uppgift eller prenumerera på strömmen tills uppgiften når SUCCEEDED, och skicka sedan detta ID till build-endpointen som input_task_id.
Fellägen
Name
400 - Bad Request
Description
Begäran var oacceptabel. Vanliga orsaker:
Saknad parameter: image_url krävs.
Ogiltigt bildformat: Det angivna image_url är inte ett format som stöds (.jpg, .jpeg, .png, .webp).
Bilddimensioner utanför intervallet: Bilden är för liten, överskrider den maximala filstorleken eller överskrider det maximala antalet pixlar.
Oåtkomlig URL: image_url kunde inte laddas ned (404 eller timeout).
Ogiltig Data URI: Base64-strängen är felaktigt utformad.
Innehåll flaggat: Indatabilden flaggades av NSFW- eller immaterialrättslig moderation.
Name
401 - Unauthorized
Description
Autentisering misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckliga credits för att utföra den här uppgiften.
Name
429 - Too Many Requests
Description
Du har överskridit din hastighetsgräns.
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.
Generera den slutliga 3D-utskrivbara kylskåpsmagneten från en lyckad
prototypuppgift. Bygget kör en reliefpipeline med djupkarta på
prototypens färgsatta konceptbild och levererar en enda nät-artefakt i
det format du begär. Se
Objektet för bygguppgift för kylskåpsmagnet för
svarsstrukturen.
Parametrar
Name
input_task_id
Type
string
Obligatorisk
Description
Uppgifts-ID:t för en prototypuppgift som skapats via samma OpenAPI-endpoint. Prototypen måste ha skapats med samma API-nyckel, måste ha nått SUCCEEDED och måste ha producerat exakt en kandidatbild.
Prototypuppgifter som skapats via webbappen accepteras inte — bygg-endpointen accepterar endast prototypuppgifter som producerats av POST /openapi/creative-lab/fridge-magnet/v1/prototype och avvisar alla andra källor med 404.
Name
name
Type
string
Description
Valfritt uppgiftsnamn för visningsändamål. Högst 100 tecken.
options
Valfria justeringsparametrar för reliefgeometrin. Varje fält har ett rimligt standardvärde — skicka endast de du vill åsidosätta.
Name
badge_shape
Type
string
standard rounded-rect
Description
Kontursilhuett för kylskåpsmagneten. Tillgängliga värden:
circle
rounded-rect (standard)
hexagon
shield
star
Name
size_mm
Type
number
standard 60
Description
Kantlängd för kylskåpsmagnetens begränsande kvadrat, i millimeter. Intervall: (0, 400].
Name
relief_height_mm
Type
number
standard 3.3
Description
Maximal reliefhöjd över basen, i millimeter. Intervall: [0, 20].
Name
relief_offset_mm
Type
number
standard 0
Description
Vertikal förskjutning som tillämpas på reliefen före extrudering, i millimeter. Intervall: [0, 20].
Name
base_thickness_mm
Type
number
standard 2.0
Description
Tjocklek på den platta basplattan bakom reliefen, i millimeter. Standardvärdet för kylskåpsmagneten är en kraftigare 2 mm-bas — det ger magneten tillräckligt med volym för att greppa kylskåpet utan att reliefen känns skör. Intervall: [0, 20].
Name
has_closed_back
Type
boolean
standard true
Description
Om baksidan av kylskåpsmagneten är förseglad som en sluten yta (sidan du limmar fast magneten på). Ange false för ett öppet skal.
Name
relief_curve
Type
string
standard linear
Description
Överföringskurva som mappar djupkartvärden till reliefhöjd. Tillgängliga värden:
linear (standard)
gamma
s-curve
Name
curve_param
Type
number
standard 1.0
Description
Formparameter för överföringskurvan (endast meningsfull när relief_curve är gamma). Intervall: (0, 10].
Name
invert_depth
Type
boolean
standard false
Description
Invertera tolkningen av djupkartan så att mörkare områden blir högre relief.
Name
smoothing
Type
number
standard 0.24
Description
Utjämningsstyrka som tillämpas på djupkartan före reliefextrahering. Intervall: [0, 10].
Name
relief_scale
Type
number
standard 1.0
Description
Vertikal skalmultiplikator som tillämpas ovanpå relief_height_mm. Intervall: (0, 10].
Name
depth_threshold
Type
number
standard 0.1
Description
Lågpasströskel för djupkartvärden; allt under detta kläms till noll. Intervall: [0, 1].
Name
remove_background
Type
boolean
standard true
Description
Ta automatiskt bort bakgrunden från prototypens konceptbild före reliefering.
Name
export_resolution
Type
integer
standard 512
Description
Nätupplösning som används för export. Intervall: [64, 2048].
output
Valfri väljare för wire-format. Standard är glb.
Name
format
Type
string
standard glb
Description
Artefaktpaket som returneras av bygget. Tillgängliga värden:
glb (standard) — returnerar en enda model.glb under model_urls.glb.
obj — zippar model.obj + model.mtl + texture.png och returnerar paketet under model_urls.obj.
zip — zippar varje artefakt som generatorn avger och returnerar paketet under model_urls.bundle_zip.
Returnerar
Egenskapen result i svaret innehåller uppgiftens id för den nyligen skapade bygguppgiften för kylskåpsmagneten. Polla endpointen Hämta en uppgift eller prenumerera på strömmen tills uppgiften når SUCCEEDED, ladda sedan ner artefakten från den enda posten i model_urls.
Fellägen
Name
400 - Bad Request
Description
Begäran kunde inte accepteras. Vanliga orsaker:
Saknad parameter: input_task_id krävs.
Ogiltig UUID: input_task_id är inte en giltig UUID.
Överordnad uppgift inte lyckad: Den refererade prototypuppgiften har inte nått SUCCEEDED ännu.
Ingen kandidat: Prototypuppgiften lyckades men producerade ingen kandidatbild.
Alternativ utanför intervallet: Ett av fälten i options låg utanför sitt tillåtna intervall eller sin enum-uppsättning.
Name
401 - Unauthorized
Description
Autentisering misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckligt med credits för att utföra denna uppgift.
Name
404 - Not Found
Description
Den refererade prototypuppgiften finns inte, tillhör en annan användare eller skapades via webbappen (endast prototypuppgifter i API-mode kan kedjas till bygge).
Hämta en prototyp- eller bygguppgift med ett giltigt uppgifts-id. URL-sökvägen
måste matcha uppgiftens steg — en bygguppgift som hämtas via
/prototype/:id returnerar 404, och vice versa.
Avbryt en kylskåpsmagnet-uppgift. Om uppgiften fortfarande är PENDING, återbetalas de credits
som förbrukades vid skapandet. Uppgifter som redan är
IN_PROGRESS avbryts utan återbetalning (arbetaren kan redan
förbruka resurser). Uppgifter som redan har nått ett slutgiltigt tillstånd
(SUCCEEDED, FAILED, CANCELED) kan inte avbrytas.
URL-sökvägen måste matcha uppgiftens steg — DELETE på
/prototype/:buildId returnerar 404.
Sökvägsparametrar
Name
id
Type
path
Description
Unik identifierare för kylskåpsmagnet-uppgiften som ska avbrytas.
Returnerar
Returnerar 204 No Content vid lyckat resultat med en tom body.
Fellägen
Name
400 - Bad Request
Description
Uppgiften är redan i ett slutgiltigt tillstånd och kan inte avbrytas.
Name
404 - Not Found
Description
Uppgiften finns inte, tillhör en annan användare eller dess steg matchar inte URL-sökvägen.
Strömma realtidsuppdateringar för en kylskåpsmagnet-uppgift via Server-Sent Events (SSE).
URL-sökvägen måste matcha uppgiftens steg — att öppna en ström vid
/prototype/:buildId/stream skickar ut en enda event: error payload med
status_code: 404 och stänger strömmen.
Parametrar
Name
id
Type
path
Description
Unik identifierare för kylskåpsmagnet-uppgiften som ska strömmas.
Returnerar
Returnerar en ström av uppgiftsobjekt för kylskåpsmagnet-prototyp
eller kylskåpsmagnet-bygge som
Server-Sent Events. För PENDING- eller IN_PROGRESS-uppgifter kommer svarsströmmen
endast att inkludera de nödvändiga fälten progress och 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=***" }}
Hämta en paginerad lista över dina kylskåpsmagnetuppgifter för ett enskilt steg. URL-
sökvägen väljer steget — /prototype returnerar prototypuppgifter; /build
returnerar build-uppgifter. Uppgifter från det andra steget ingår inte i något
svar.
Sökvägsparametrar
Name
stage
Type
path
Obligatorisk
Description
Antingen prototype eller build. Samlingen returnerar endast uppgifter
vars steg matchar URL:en — hämtning av /prototype returnerar aldrig
build-uppgifter och vice versa.
Frågeparametrar
Name
page_num
Type
integer
standard 1
Description
Sidnummer för paginering.
Name
page_size
Type
integer
standard 10
Description
Gräns för sidstorlek. Högsta tillåtna är 50 objekt.
Name
sort_by
Type
string
standard -created_at
Description
Fält att sortera efter. Tillgängliga värden:
+created_at: Sortera efter skapandetid i stigande ordning.
-created_at: Sortera efter skapandetid i fallande ordning.
Prototypuppgiftsobjektet för kylskåpsmagnet är en arbetsenhet som Meshy håller reda på för att
generera en färglagd konceptbild från ett källfoto. Utdata från
det här steget kedjas vidare till byggsteget
via input_task_id.
Egenskaper
Name
id
Type
string
Description
Unik identifierare för uppgiften. Även om vi använder ett k-sorterbart UUID för uppgifts-id:n som implementationsdetalj, bör du inte göra några antaganden om id:ts format.
Name
type
Type
string
Description
Typ av uppgift. Värdet är creative-lab-fridge-magnet-prototype.
Name
name
Type
string
Description
Uppgiftsnamnet som angavs när uppgiften skapades. Tom sträng om inget namn angavs.
Name
status
Type
string
Description
Uppgiftens status. Möjliga värden är något av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Uppgiftens progress. Om uppgiften inte har startats ännu kommer denna egenskap att vara 0. När uppgiften har lyckats blir detta 100.
Name
created_at
Type
timestamp
Description
Tidsstämpel för när uppgiften skapades, i millisekunder.
En tidsstämpel representerar antalet millisekunder som har förflutit sedan 1 januari 1970 UTC, enligt
standarden RFC 3339.
Till exempel representeras fredag 1 september 2023 12:00:00 PM GMT som 1693569600000. Detta gäller
för alla tidsstämplar i Meshy API.
Name
started_at
Type
timestamp
Description
Tidsstämpel för när uppgiften startades, i millisekunder. Om uppgiften inte har startats ännu kommer denna egenskap att vara 0.
Name
finished_at
Type
timestamp
Description
Tidsstämpel för när uppgiften slutfördes, i millisekunder. Om uppgiften inte är slutförd ännu kommer denna egenskap att vara 0.
Name
expires_at
Type
timestamp
Description
Tidsstämpel för när uppgiftsresultatet upphör att gälla, i millisekunder.
Name
preceding_tasks
Type
integer
Description
Antalet föregående uppgifter.
Värdet för detta fält är meningsfullt endast om uppgiftens status är PENDING.
Name
task_error
Type
object
Description
Feldetaljer för misslyckade uppgifter. Se Fel för den fullständiga objektreferensen för task_error.
Name
consumed_credits
Type
integer
Description
Antalet credits som förbrukats av denna uppgift. Finns när uppgiftens status är PENDING, IN_PROGRESS eller SUCCEEDED. Returnerar 0 för FAILED-uppgifter (credits återbetalas vid misslyckande).
Name
image_urls
Type
array of strings
Description
Nedladdningsbara URL:er för konceptbildskandidaterna som genererats av denna prototypuppgift. För närvarande returnerar API:et alltid exakt en kandidat; fältet är en array så att framtida versioner kan visa flera kandidater utan en brytande ändring.
Objektet för bygguppgift för kylskåpsmagnet är en arbetsenhet som Meshy håller reda på för att
generera det slutliga 3D-nätet (mesh) för kylskåpsmagnet från en lyckad prototypuppgift. Bygget
kör en pipeline för djupkarte-relief på prototypens konceptbild och
publicerar en enda nätartefakt (mesh) i det format som anroparen begärde.
Egenskaper
Name
id
Type
string
Description
Unik identifierare för uppgiften.
Name
type
Type
string
Description
Typ av uppgift. Värdet är creative-lab-fridge-magnet-build.
Name
name
Type
string
Description
Uppgiftsnamnet som angavs när uppgiften skapades. Tom sträng om inget namn angavs.
Name
status
Type
string
Description
Uppgiftens status. Möjliga värden är ett av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Uppgiftens progress. Om uppgiften ännu inte har startats är denna egenskap 0. När uppgiften har lyckats blir detta 100.
Name
created_at
Type
timestamp
Description
Tidsstämpel för när uppgiften skapades, i millisekunder.
Name
started_at
Type
timestamp
Description
Tidsstämpel för när uppgiften startades, i millisekunder.
Name
finished_at
Type
timestamp
Description
Tidsstämpel för när uppgiften slutfördes, i millisekunder.
Name
expires_at
Type
timestamp
Description
Tidsstämpel för när uppgiftsresultatet upphör att gälla, i millisekunder.
Name
preceding_tasks
Type
integer
Description
Antalet föregående uppgifter. Meningsfullt endast när status är PENDING.
Name
task_error
Type
object
Description
Felinformation för misslyckade uppgifter. Se Fel för den fullständiga objektreferensen för task_error.
Name
consumed_credits
Type
integer
Description
Antalet credits som förbrukats av denna uppgift. Returnerar 0 för FAILED-uppgifter (credits återbetalas vid misslyckande).
Name
model_urls
Type
object
Description
Nedladdningsbara URL:er för den genererade artefakten, indexerade efter artefaktnamn. Innehåller alltid exakt en post — formatet som begärdes via byggbegärans output.format. Nyckeln matchar det begärda formatet:
Name
glb
Type
string
Description
Nedladdningsbar URL till GLB-filen. Finns när output.format var glb (standard).
Name
obj
Type
string
Description
Nedladdningsbar URL till ett zip-paket som innehåller model.obj, model.mtl och texture.png. Finns när output.format var obj.
Name
bundle_zip
Type
string
Description
Nedladdningsbar URL till ett zip-paket med varje artefakt som generatorn skapar. Finns när output.format var zip.