Förvandla dina foton till anpassade kylskåpsmagneter — en rundad rektangel med färgad
djuprelief och en platt magnetisk baksida, storlek för kylskåpet — i två
steg: prototyp genererar en färgad konceptbild från ditt inmatningsfoto,
sedan bygg omvandlar den konceptbilden till en relief 3D-modell. De
två stegen är länkade via input_task_id.
POST /openapi/creative-lab/fridge-magnet/v1/prototype
Generera en enda färgad konceptbild från källfotot. Det returnerade uppgifts-ID:t är vad du skickar som input_task_id till bygg-endpointen. Se
Objektet för kylskåpsmagnetprototypuppgiften
för svarformatet.
Parametrar
Name
image_url
Type
string
Obligatorisk
Description
Källfoto för Meshy att 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 tillhandahålla bilden:
Offentligt tillgänglig URL: En URL som är tillgänglig från det offentliga internet.
Data URI: En base64-kodad data URI av 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. Max 100 tecken.
Name
remove_background
Type
boolean
standard false
Description
När den är inställd på true, returneras prototypbilden som en transparent RGBA PNG med bakgrunden borttagen, så att du kan komponera motivet på vilken bakgrund som helst.
Detta styr endast bilden som denna endpoint returnerar. Det är separat från byggalternativet med samma namn (standard true), som styr bakgrundsborttagning före reliefing.
Returnerar
result-egenskapen i svaret innehåller uppgifts-id för den nyligen skapade kylskåpsmagnetprototypuppgiften. Pollera Hämta en uppgift endpointen eller prenumerera på strömmen tills uppgiften når SUCCEEDED, sedan skickar du det ID:t till bygg-endpointen som input_task_id.
Felmod
Name
400 - Bad Request
Description
Begäran var oacceptabel. Vanliga orsaker:
Saknad parameter: image_url är obligatorisk.
Ogiltigt bildformat: Den angivna image_url är inte ett stödt format (.jpg, .jpeg, .png, .webp).
Bilddimensioner utanför räckvidd: Bilden är för liten, överskrider maximal filstorlek eller överskrider maximalt antal pixlar.
Oåtkomlig URL: image_url kunde inte laddas ner (404 eller timeout).
Ogiltig Data URI: Base64-strängen är felaktigt formaterad.
Innehåll flaggat: Inmatningsbilden 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 denna uppgift.
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 imagecurlhttps://api.meshy.ai/openapi/creative-lab/fridge-magnet/v1/prototype \-XPOST \-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"}
Prototyp exempel
Börja med ett källfoto, generera sedan prototypbilden som används av kylskåpsmagnetens byggstadium.
Generera den slutliga 3D-utskrivbara kylskåpsmagneten från en lyckad
prototypuppgift. Bygget kör en djupkartsreliefpipeline på
prototypens färgade konceptbild och levererar en enda nätartefakt i
det format du begär. Se
Objektet för kylskåpsmagnetbygguppgift för
svarformatet.
Parametrar
Name
input_task_id
Type
string
Obligatorisk
Description
Uppgifts-ID för en prototypuppgift skapad via denna 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 skapade via webbappen accepteras inte — bygg-endpointen accepterar endast prototypuppgifter producerade 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. Max 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 av kylskåpsmagneten. Tillgängliga värden:
circle
rounded-rect (standard)
hexagon
shield
star
Name
size_mm
Type
number
standard 60
Description
Kantlängd på den begränsande kvadraten för kylskåpsmagneten, i millimeter. Område: (0, 400].
Name
relief_height_mm
Type
number
standard 3.3
Description
Maximal reliefhöjd ovanför basen, i millimeter. Område: [0, 20].
Name
relief_offset_mm
Type
number
standard 0
Description
Vertikal offset som tillämpas på reliefen före extrusion, i millimeter. Område: [0, 20].
Name
base_thickness_mm
Type
number
standard 2.0
Description
Tjocklek på den platta basplattan bakom reliefen, i millimeter. Standard för kylskåpsmagneten är en tjockare 2 mm bas — ger magneten tillräckligt med kropp för att greppa kylskåpet utan att reliefen känns skör. Område: [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 magneten på). Ställ in på false för ett öppet skal.
Name
relief_curve
Type
string
standard linear
Description
Överföringskurva som mappar djupkarts-vä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). Område: (0, 10].
Name
invert_depth
Type
boolean
standard false
Description
Invertera djupkarts-tolkningen 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 reliefutvinning. Område: [0, 10].
Name
relief_scale
Type
number
standard 1.0
Description
Vertikal skalningsmultiplikator som tillämpas ovanpå relief_height_mm. Område: (0, 10].
Name
depth_threshold
Type
number
standard 0.1
Description
Lågpassgräns för djupkarts-värden; allt under detta klampas till noll. Område: [0, 1].
Name
remove_background
Type
boolean
standard true
Description
Ta automatiskt bort bakgrunden från prototypens konceptbild före reliefing.
Separat från prototypparametern med samma namn (standard false), som styr om prototypbilden själv returneras med transparens.
Name
export_resolution
Type
integer
standard 512
Description
Nätupplösning som används för export. Område: [64, 2048].
output
Valfri trådformatväljare. 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 — zippas model.obj + model.mtl + texture.png och returnerar paketet under model_urls.obj.
zip — zippas varje artefakt som generatorn avger och returnerar paketet under model_urls.bundle_zip.
Returnerar
result-egenskapen i svaret innehåller uppgifts-id för den nyligen skapade kylskåpsmagnetbygguppgiften. Poll Hämta en uppgift endpoint eller prenumerera på strömmen tills uppgiften når SUCCEEDED, ladda sedan ner artefakten från den enda posten i model_urls.
Felmodeller
Name
400 - Bad Request
Description
Begäran var oacceptabel. Vanliga orsaker:
Saknad parameter: input_task_id krävs.
Ogiltig UUID: input_task_id är inte en giltig UUID.
Förälder inte lyckad: Den refererade prototypuppgiften har inte nått SUCCEEDED ännu.
Ingen kandidat: Prototypuppgiften lyckades men producerade ingen kandidatbild.
Alternativ utanför räckvidd: Ett av options-fälten föll utanför sitt tillåtna område eller enum-set.
Name
401 - Unauthorized
Description
Autentisering misslyckades. Kontrollera din API-nyckel.
Name
402 - Payment Required
Description
Otillräckliga credits för att utföra denna uppgift.
Name
404 - Not Found
Description
Den refererade prototypuppgiften existerar inte, tillhör en annan användare, eller skapades via webbappen (endast API-läge prototypuppgifter kedjas till bygg).
Hämta en prototyp- eller bygguppgift med ett giltigt uppgifts-id. URL-sökvägen
måste matcha uppgiftens steg — en bygguppgift hämtad genom
/prototype/:id returnerar 404, och vice versa.
Avbryt en kylskåpsmagnetuppgift. 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 använda resurser). Uppgifter som redan har nått ett slutligt 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
Unikt identifierare för kylskåpsmagnetuppgiften som ska avbrytas.
Returnerar
Returnerar 204 No Content vid framgång med en tom kropp.
Feltyper
Name
400 - Bad Request
Description
Uppgiften är redan i ett slutligt tillstånd och kan inte avbrytas.
Name
404 - Not Found
Description
Uppgiften existerar inte, tillhör en annan användare, eller dess steg matchar inte URL-sökvägen.
Strömma realtidsuppdateringar för en kylskåpsmagnetuppgift via Server-Sent Events (SSE).
URL-sökvägen måste matcha uppgiftens steg — att öppna en ström vid
/prototype/:buildId/stream sänder 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åpsmagnetuppgiften att strömma.
Returnerar
Returnerar en ström av Kylskåpsmagnetprototyp
eller Kylskåpsmagnetbygge uppgiftsobjekt som
Server-Sent Events. För PENDING eller IN_PROGRESS uppgifter, kommer svarströmmen
endast att inkludera de nödvändiga progress och status fälten.
// 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 bygguppgifter. Uppgifter från det andra steget ingår inte i någon
av svaren.
Sökvägsparametrar
Name
stage
Type
path
Obligatorisk
Description
Antingen prototype eller build. Samlingen returnerar endast uppgifter
vars steg matchar URL:en — att hämta /prototype returnerar aldrig
bygguppgifter 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
Sidstorleksgräns. Max tillåtet ä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.
Objektet för kylskåpsmagnetprototypuppgift ä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 detta steg är kopplat 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 implementeringsdetalj, bör du inte göra några antaganden om formatet på id:t.
Name
type
Type
string
Description
Typ av uppgift. Värdet är creative-lab-fridge-magnet-prototype.
Name
name
Type
string
Description
Det uppgiftsnamn som angavs när uppgiften skapades. Tom sträng om inget namn angavs.
Name
status
Type
string
Description
Status för uppgiften. Möjliga värden är en av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Framsteg för uppgiften. Om uppgiften inte har startat ännu, kommer denna egenskap att vara 0. När uppgiften har lyckats, kommer detta att bli 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
RFC 3339-standarden.
Till exempel, fredag den 1 september 2023 kl. 12:00:00 GMT representeras 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 startat ännu, kommer denna egenskap att vara 0.
Name
finished_at
Type
timestamp
Description
Tidsstämpel för när uppgiften avslutades, i millisekunder. Om uppgiften inte har avslutats ännu, kommer denna egenskap att vara 0.
Name
expires_at
Type
timestamp
Description
Tidsstämpel för när uppgiftsresultatet går ut, i millisekunder.
Name
preceding_tasks
Type
integer
Description
Antalet föregående uppgifter.
Värdet på detta fält är meningsfullt endast om uppgiftsstatusen är PENDING.
Name
task_error
Type
object
Description
Felformationer för misslyckade uppgifter. Se Fel för fullständig referens av task_error-objektet.
Name
consumed_credits
Type
integer
Description
Antalet credits som förbrukats av denna uppgift. Förekommer när uppgiftsstatusen ä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 konceptbildskandidater som genereras av denna prototypuppgift. För närvarande returnerar API:et alltid exakt en kandidat; fältet är en array så att framtida revisioner kan visa flera kandidater utan en brytande förändring.
Exempel på objekt för kylskåpsmagnetprototypuppgift
Objektet för kylskåpsmagnetbygguppgift är en arbetsenhet som Meshy håller reda på för att generera det slutliga 3D-nätet för kylskåpsmagneten från en lyckad prototypsuppgift. Bygget kör en djupkartsrelief-pipeline på prototypens konceptbild och publicerar en enda nätartefakt 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
Det uppgiftsnamn som angavs när uppgiften skapades. Tom sträng om inget namn angavs.
Name
status
Type
string
Description
Status för uppgiften. Möjliga värden är en av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
Name
progress
Type
integer
Description
Framsteg för uppgiften. Om uppgiften inte har startat ä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.
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 avslutades, i millisekunder.
Name
expires_at
Type
timestamp
Description
Tidsstämpel för när uppgiftsresultatet går ut, 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
Felformationer för misslyckade uppgifter. Se Fel för fullständig referens till task_error-objektet.
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, nycklade 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 av varje artefakt som generatorn avger. Finns när output.format var zip.