Creative Lab — Vinylfigur API

Förvandla ett källfoto till en storhuvud vinylsamlarfigur i två steg: prototyp genererar en stylad konceptbild från ditt ingångsfoto, sedan bygg förvandlar den konceptbilden till en texturerad 3D-modell. De två stegen är länkade via input_task_id.

  • POST /openapi/creative-lab/vinyl-figure/v1/prototype
  • POST /openapi/creative-lab/vinyl-figure/v1/build
POST/openapi/creative-lab/vinyl-figure/v1/prototype

Skapa en Vinylfigure Prototyp Uppgift

Generera en enda konceptbild i vinylfigur-stil från källfotot. Det returnerade uppgifts-ID:t är vad du skickar som input_task_id till bygg-endpointen. Se Vinylfigure Prototyp Uppgift Objektet för svarsstukturen.

Parametrar

  • Name
    image_url
    Type
    string
    Obligatorisk
    Description

    Källfoto för Meshy att stilisera som en storhuvud-vinylfigur. Vi stöder för närvarande .jpg, .jpeg, .png och .webp format.

    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,<dina base64-kodade bilddata>.
  • Name
    name
    Type
    string
    Description

    Valfritt uppgiftsnamn för visningsändamål. Max 100 tecken.

Returnerar

Egenskapen result i svaret innehåller uppgiftens id av den nyligen skapade vinylfigursprototypuppgiften. Pollera Hämta en Uppgift-endpointen eller prenumerera på strömmen tills uppgiften når SUCCEEDED, passera sedan det ID:t till bygg-endpointen som input_task_id.

Felmodeller

  • Name
    400 - Bad Request
    Description

    Förfrågan var oacceptabel. Vanliga orsaker:

    • Saknad parameter: image_url krävs.
    • Ogiltigt bildformat: Den angivna image_url är inte ett stödt format (.jpg, .jpeg, .png, .webp).
    • Bilddimensioner utanför området: Bilden är för liten, överskrider maximal filstorlek, eller överskrider maximalt antal pixlar.
    • Otillgänglig URL: image_url kunde inte laddas ned (404 eller timeout).
    • Ogiltig Data URI: Base64-strängen är felaktigt formad.
    • Innehållet flaggat: Ingångsbilden flaggades av NSFW eller immateriell rättighetsmoderation.
  • 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.

Förfrågan

POST
/openapi/creative-lab/vinyl-figure/v1/prototype
# Steg 1: generera en konceptbild i vinylfigur-stil
curl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/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>"
  }'

Svar

{
  "result": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de"
}
Prototype example
Start with a source portrait, then generate the prototype image used by the build stage.
Source photo used as the Creative Lab Vinyl Figure input
Prototype input
Big-head vinyl figure prototype image generated from the source photo
Prototype output

POST/openapi/creative-lab/vinyl-figure/v1/build

Skapa en vinylfigur-bygguppgift

Generera den slutliga texturerade 3D-vinylfiguren från en lyckad prototypuppgift. Bygget kör samma bild-till-3D-pipeline som Bild till 3D, så formatet på svaret och listan av output-URL:er matchar exakt. Se Vinylfigur-bygguppgiftsobjektet för typ av svar.

Parametrar

  • Name
    input_task_id
    Type
    string
    Obligatorisk
    Description

    Uppgifts-ID för en prototypuppgift skapad 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 skapade via webappen accepteras inte — bygg-endpoint accepterar endast prototypuppgifter producerade av POST /openapi/creative-lab/vinyl-figure/v1/prototype och vägrar alla andra källor med 404.

  • Name
    name
    Type
    string
    Description

    Valfritt uppgiftsnamn för visningsändamål. Max 100 tecken.

Returnerar

resultat-egenskapen i svaret innehåller uppgifts-id för den nyss skapade vinylfigur-bygguppgiften. Använd Hämta en uppgift endpoint eller prenumerera på strömmen tills uppgiften når SUCCEEDED, ladda sedan ner den texturerade GLB från model_urls.glb (eller OBJ + MTL-paret från model_urls.obj och model_urls.mtl om din nedströms-pipeline föredrar OBJ).

Felmod

  • 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 än.
    • Ingen kandidat: Prototypuppgiften lyckades men producerade ingen kandidatbild.
  • 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 genom webappen (endast API-mode prototypuppgifter kan kedja in i bygg).

  • Name
    429 - Too Many Requests
    Description

    Du har överskridit din hastighetsgräns.

Förfrågan

POST
/openapi/creative-lab/vinyl-figure/v1/build
# Steg 2: kedjebygge från en lyckad prototypuppgift
curl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build \
  -X POST \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "input_task_id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de"
  }'

Svar

{
  "result": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef"
}

GET/openapi/creative-lab/vinyl-figure/v1/(prototype|build)/:id

Hämta en Vinylfigur Uppgift

Hämta en prototyp eller bygguppgift genom att ange ett giltigt uppdragsid. URL-sökvägen måste matcha uppgiftens stadium — en bygguppgift som hämtas genom /prototype/:id returnerar 404, och vice versa.

Se Vinylfigur Prototyp Uppgiftsobjektet och Vinylfigur Bygg Uppgiftsobjektet för svarens former.

Parametrar

  • Name
    id
    Type
    path
    Description

    Unikt identifierare för vinylfigur uppgiften som ska hämtas.

Returnerar

Svaret innehåller vinylfigurens uppgiftsobjekt. Formen beror på vilket stadium som begärdes.

Begäran

GET
/openapi/creative-lab/vinyl-figure/v1/prototype/019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de
# Prototyp
curl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/prototype/019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# Bygg
curl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Prototyp Svar

{
  "id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de",
  "type": "creative-lab-vinyl-figure-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1752969600000,
  "started_at": 1752969604000,
  "finished_at": 1752969630000,
  "expires_at": 1753228830000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Bygg Svar

{
  "id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef",
  "type": "creative-lab-vinyl-figure-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1752969700000,
  "started_at": 1752969710000,
  "finished_at": 1752969735000,
  "expires_at": 1753228935000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 30,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/texture_0.png?Expires=***"
    }
  ]
}
DELETE/openapi/creative-lab/vinyl-figure/v1/(prototype|build)/:id

Ta bort en Vinyl Figure-uppgift

Avbryt en vinyl figure-uppgift. Om uppgiften fortfarande är PENDING, återbetalas de credits som konsumerades vid skapandet. Uppgifter som redan är IN_PROGRESS avbryts utan återbetalning (arbetaren kan redan vara igång med att använda resurser). Uppgifter som redan har nått ett terminalt tillstånd (SUCCEEDED, FAILED, CANCELED) kan inte avbrytas.

URL-sökvägen måste matcha uppgiftens steg — DELETE/prototype/:buildId returnerar 404.

Path-Parametrar

  • Name
    id
    Type
    path
    Description

    Unik identifierare för vinyl figure-uppgiften som ska avbrytas.

Returnerar

Returnerar 204 No Content vid framgång med tomt innehåll.

Felmod

  • Name
    400 - Bad Request
    Description

    Uppgiften är redan i ett terminalt 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.

Request

DELETE
/openapi/creative-lab/vinyl-figure/v1/prototype/019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/prototype/019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

// Returns 204 No Content on success (empty body).
GET/openapi/creative-lab/vinyl-figure/v1/(prototype|build)/:id/stream

Strömma en Vinylfigur-uppgift

Strömma realtidsuppdateringar för en vinylfigur-uppgift via Server-Sent Events (SSE). URL-sökvägen måste matcha uppgiftens steg — öppna en ström på /prototype/:buildId/stream skickar en enda event: error payload med status_code: 404 och stänger strömmen.

Parametrar

  • Name
    id
    Type
    path
    Description

    Unikt identifierare för vinylfigur-uppgiften att strömma.

Returnerar

Returnerar en ström av Vinylfigur Prototyp eller Vinylfigur Bygg uppgiftsobjekt som Server-Sent Events. För PENDING eller IN_PROGRESS uppgifter, kommer svarsströmmen endast att inkludera de nödvändiga progress och status fälten.

Request

GET
/openapi/creative-lab/vinyl-figure/v1/build/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/stream
curl -N https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response Stream

// Felhändelseexempel (fel steg eller uppgift hittades inte)
event: error
data: {
  "status_code": 404,
  "message": "Task not found"
}

// Meddelandehändelseexempel visar uppgiftens framsteg.
// För PENDING eller IN_PROGRESS uppgifter, kommer svarsströmmen inte att inkludera alla fält.
event: message
data: {
  "id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef",
  "type": "creative-lab-vinyl-figure-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1752969700000,
  "started_at": 1752969710000,
  "finished_at": 1752969735000,
  "expires_at": 1753228935000,
  "task_error": null,
  "consumed_credits": 30,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/texture_0.png?Expires=***"
    }
  ]
}

GET/openapi/creative-lab/vinyl-figure/v1/(prototype|build)

Lista Vinyl Figur Uppgifter

Hämta en paginerad lista över dina vinylfiguruppgifter för ett enda steg. URL-sökvägen väljer steget — /prototype returnerar prototypskeenden; /build returnerar byggkeenden. Uppgifter från det andra steget är inte inkluderade 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 — hämtning av /prototype returnerar aldrig byggkeenden 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. Maximalt 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.

Returerar

Returnerar en paginerad lista över per-steg-uppgifter - antingen vinylfigurens prototypske uppgift när man listar /prototype eller vinylfigurens byggke uppgift när man listar /build.

Request

GET
/openapi/creative-lab/vinyl-figure/v1/prototype
# Lista prototypskeenden
curl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/prototype?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

# Lista byggkeenden
curl https://api.meshy.ai/openapi/creative-lab/vinyl-figure/v1/build?page_size=10 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response (List Prototype Tasks)

[
  {
    "id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de",
    "type": "creative-lab-vinyl-figure-prototype",
    "name": "",
    "status": "SUCCEEDED",
    "progress": 100,
    "created_at": 1752969600000,
    "started_at": 1752969604000,
    "finished_at": 1752969630000,
    "expires_at": 1753228830000,
    "preceding_tasks": 0,
    "task_error": null,
    "consumed_credits": 6,
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

Vinylfigurens prototypuppgift objekt

Vinylfigurens prototypuppgift objekt är en arbetsenhet som Meshy följer för att generera en vinylfigur-stil konceptbild från ett källfoto. Utdata från detta steg 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 som implementeringsdetalj, bör du inte anta något om formatet på id.

  • Name
    type
    Type
    string
    Description

    Typ av uppgift. Värdet är creative-lab-vinyl-figure-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

    Uppgiftens status. Möjliga värden är en av PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    progress
    Type
    integer
    Description

    Uppgiftens framsteg. 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.

  • 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 är avslutad ännu, kommer denna egenskap att vara 0.

  • Name
    expires_at
    Type
    timestamp
    Description

    Tidsstämpel för när uppgiftsresultatet upphör, i millisekunder.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Antalet tidigare uppgifter.

  • Name
    task_error
    Type
    object
    Description

    Feldetaljer för misslyckade uppgifter. Se Fel för hela task_error objektreferensen.

  • Name
    consumed_credits
    Type
    integer
    Description

    Antalet credits som förbrukats av denna uppgift. Detta visas när uppgiftsstatusen är PENDING, IN_PROGRESS eller SUCCEEDED. Returnerar 0 för FAILED uppgifter (credits återbetalas vid fel).

  • Name
    image_urls
    Type
    array of strings
    Description

    Nedladdningsbara URL:er för konceptbildkandidater genererade av denna prototypuppgift. För närvarande returnerar API:et alltid exakt en kandidat; fältet är en array så framtida versioner kan visa flera kandidater utan en brytande förändring.

Example Vinyl Figure Prototype Task Object

{
  "id": "019c8a2e-4b7d-7c3a-8d21-3f2987a1c4de",
  "type": "creative-lab-vinyl-figure-prototype",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1752969600000,
  "started_at": 1752969604000,
  "finished_at": 1752969630000,
  "expires_at": 1753228830000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 6,
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Vinylfigurens bygguppgiftens objekt

Vinylfigurens bygguppgiftens objekt är en arbetsenhet som Meshy håller koll på för att generera en texturerad 3D-vinylfigur från en lyckad prototypsuppgift. Den kör samma bild-till-3D-pipeline som används av Bild till 3D, så utdatafälten speglar den endpointens uppgiftsobjekt.

Egenskaper

  • Name
    id
    Type
    string
    Description

    Unik identifierare för uppgiften.

  • Name
    type
    Type
    string
    Description

    Typ av uppgift. Värdet är creative-lab-vinyl-figure-build.

  • Name
    name
    Type
    string
    Description

    Uppgiftsnamnet 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 framsteg. Om uppgiften ännu inte har startat 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 uppgiftens resultat 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

    Felformation för misslyckade uppgifter. Se Fel för fullständig task_error objektreferens.

  • Name
    consumed_credits
    Type
    integer
    Description

    Antal krediter som förbrukats av denna uppgift. Returnerar 0 för FAILED uppgifter (krediter återbetalas vid fel).

  • Name
    prompt
    Type
    string
    Description

    Alltid tomt för vinylfigurbyggnad. Närvarande för kompatibilitet mellan endpoint med den delade V2ImageTo3DTaskResponse strukturen som används av Bild till 3D.

  • Name
    negative_prompt
    Type
    string
    Description

    Alltid tomt för vinylfigurbyggnad. Närvarande för kompatibilitet mellan endpoint.

  • Name
    texture_prompt
    Type
    string
    Description

    Alltid tomt för vinylfigurbyggnad. Närvarande för kompatibilitet mellan endpoint.

  • Name
    texture_image_url
    Type
    string
    Description

    Alltid tomt för vinylfigurbyggnad. Närvarande för kompatibilitet mellan endpoint.

  • Name
    model_urls
    Type
    object
    Description

    Nedladdningsbara URL:er för den genererade 3D-modellen. Vinylfigurbyggnaden ger en texturerad GLB plus OBJ + MTL-paret för pipeline som föredrar Wavefront OBJ. Fältets form matchar Bild till 3D model_urls objektet så framtida formatläggningar kan ske utan brytande förändring.

    • Name
      glb
      Type
      string
      Description

      Nedladdningsbar URL till den texturerade GLB-filen.

    • Name
      obj
      Type
      string
      Description

      Nedladdningsbar URL till Wavefront OBJ-filen (geometri + UV).

    • Name
      mtl
      Type
      string
      Description

      Nedladdningsbar URL till OBJ-kompanjon MTL-materialfilen. Para ihop med obj och inmatningen från texture_urls[0].base_color.

  • Name
    thumbnail_url
    Type
    string
    Description

    Nedladdningsbar URL till miniatyrbilden av modellfilen.

  • Name
    texture_urls
    Type
    array
    Description

    En array av textur URL-objekt som genereras av denna uppgift. Innehåller för närvarande ett enda objekt med baskartans färg.

    • Name
      base_color
      Type
      string
      Description

      Nedladdningsbar URL till baskartans färgbild.

Example Vinyl Figure Build Task Object

{
  "id": "019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef",
  "type": "creative-lab-vinyl-figure-build",
  "name": "",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1752969700000,
  "started_at": 1752969710000,
  "finished_at": 1752969735000,
  "expires_at": 1753228935000,
  "preceding_tasks": 0,
  "task_error": null,
  "consumed_credits": 30,
  "prompt": "",
  "negative_prompt": "",
  "texture_prompt": "",
  "texture_image_url": "",
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.glb?Expires=***",
    "obj": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.obj?Expires=***",
    "mtl": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/model.mtl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/preview.png?Expires=***",
  "texture_urls": [
    {
      "base_color": "https://assets.meshy.ai/***/tasks/019c8a31-6e2f-7b4d-9a55-4c3098b2d5ef/output/texture_0.png?Expires=***"
    }
  ]
}