Retexture API

Retexture API je funkce, která vám umožňuje integrovat schopnosti AI retexturování Meshy do vaší vlastní aplikace. V této sekci najdete všechny informace, které potřebujete k tomu, abyste s tímto API mohli začít pracovat.


POST/openapi/v1/retexture

Vytvoření úlohy Retexturování

Tento koncový bod umožňuje vytvořit novou úlohu Retexturování. Podrobnosti o vlastnostech zahrnutých v objektu úlohy Retexturování naleznete v části Objekt úlohy Retexturování.

Parametry

  • Name
    input_task_id
    Type
    string
    Povinné
    Description

    ID dokončené úlohy Obrázek na 3D nebo Text na 3D, kterou chcete retexturovat. Tato úloha musí být jednou z následujících: Text na 3D Preview, Text na 3D Refine, Obrázek na 3D nebo Remesh. Kromě toho musí mít stav SUCCEEDED.

  • Name
    model_url
    Type
    string
    Povinné
    Description

    Poskytněte 3D model, který má Meshy texturovat. Podporované formáty: .glb, .gltf, .obj, .fbx, .stl.

    Model lze poskytnout dvěma způsoby:

    • Veřejně přístupná URL adresa: URL adresa přístupná z veřejného internetu.
    • Data URI: Base64 kódovaná Data URI modelu. Použijte MIME type application/octet-stream. Příklad: data:application/octet-stream;base64,<vaše base64 kódovaná data modelu>.
  • Name
    text_style_prompt
    Type
    string
    Povinné
    Description

    Popište pomocí textu požadovaný styl textury objektu. Maximálně 800 znaků.

  • Name
    image_style_url
    Type
    string
    Povinné
    Description

    Poskytněte 2D obrázek, který bude vodítkem pro proces texturování. Momentálně podporujeme formáty .jpg, .jpeg a .png.

    Obrázek lze poskytnout dvěma způsoby:

    • Veřejně přístupná URL adresa: URL adresa přístupná z veřejného internetu
    • Data URI: Base64 kódovaná Data URI obrázku. Příklad Data URI: data:image/jpeg;base64,<vaše base64 kódovaná data obrázku>
  • Name
    multiview_image_urls
    Type
    string[]
    Povinné
    Description

    Poskytněte 1 až 4 obrázky zobrazující stejný objekt z různých úhlů pohledu, které budou vodítkem pro texturování. První obrázek je hlavní (přední) pohled; pořadí zbývajících pohledů (levý, zadní, pravý) není důležité.

    Každý prvek podporuje stejné formáty jako image_style_url (veřejně přístupná URL adresa nebo base64 Data URI, .jpg/.jpeg/.png).

  • Name
    ai_model
    Type
    string
    výchozí latest
    Description

    ID AI modelu, který se má použít pro retexturování. Dostupné hodnoty: meshy-6-lite, meshy-6, meshy-7, latest (Meshy 7).

  • Name
    enable_original_uv
    Type
    boolean
    výchozí false
    Description

    Zachová stávající UV rozvržení modelu místo generování nového.

    • Pokud retexturujete model vygenerovaný Meshy (prostřednictvím input_task_id, nebo model_url odkazující na výstup Meshy), nastavte tuto hodnotu na true pro opětovné použití jeho optimalizovaného UV rozvržení.
    • Pokud retexturujete model třetí strany, který jste nahráli, nastavte true, pokud již má dobré UV, které chcete zachovat, nebo ponechte false, aby Meshy vytvořilo nové UV rozvinutí (nejlepší pro modely bez správného UV mapování).
  • Name
    enable_pbr
    Type
    boolean
    výchozí false
    Description

    Vygeneruje PBR mapy (metalness, drsnost, normálová mapa) kromě základní barvy. Emisní mapa je zahrnuta také v případě, že ai_model je meshy-6, s výjimkou texture_resolution: 8k. meshy-6-lite, meshy-7 a latest emisní mapu negenerují.

  • Name
    texture_resolution
    Type
    string
    výchozí 2k
    Description

    Rozlišení textury základní barvy. Jedno z 2k (2048×2048), 4k (4096×4096) nebo 8k (8192×8192). Vyšší rozlišení zachycují více povrchových detailů.

  • Name
    hd_texture
    Type
    boolean
    ⚠ zastaralé
    výchozí false
    Description

    Místo toho použijte texture_resolution — odpovídá hodnotě texture_resolution: "4k". Pokud jsou nastaveny obě, texture_resolution má přednost.

  • Name
    remove_lighting
    Type
    boolean
    výchozí true
    Description

    Odstraní odlesky a stíny ze základní barevné textury, čímž vznikne čistší výsledek, který lépe funguje u vlastního nastavení osvětlení.

  • Name
    target_formats
    Type
    string[]
    Description

    Určuje, které 3D formáty souborů mají být zahrnuty do výstupu. Vygenerovány a vráceny budou pouze požadované formáty, což může zkrátit dobu dokončení úlohy. Pokud parametr vynecháte, budou zahrnuty všechny podporované formáty.

    Dostupné hodnoty: glb, obj, fbx, stl, usdz, 3mf

  • Name
    alpha_thumbnail
    Type
    boolean
    výchozí false
    Description

    Pokud je nastaveno na true, úloha navíc vykreslí verzi náhledu s průhledným pozadím (RGBA) a vrátí ji jako alpha_thumbnail_url v odpovědi GET. Stávající pole thumbnail_url zůstává beze změny.

Návratové hodnoty

Vlastnost result odpovědi obsahuje id úlohy nově vytvořené úlohy Retexturování.

Režimy selhání

  • Name
    400 - Bad Request
    Description

    Požadavek byl nepřijatelný. Časté příčiny:

    • Chybějící parametr: Musí být poskytnut buď model_url, nebo input_task_id.
    • Chybějící styl: Musí být poskytnut jeden z parametrů text_style_prompt, image_style_url nebo multiview_image_urls.
    • Konfliktní vstupy stylu: multiview_image_urls nelze kombinovat s text_style_prompt ani image_style_url.
    • Nepodporovaný model pro Více pohledů: multiview_image_urls vyžaduje explicitní ai_model: "meshy-7".
    • Model není dostupný: ai_model: "meshy-7" a ai_model: "meshy-6-lite" se postupně zpřístupňují a pro váš účet ještě nemusí být povoleny.
    • Neplatná vstupní úloha: input_task_id musí odkazovat na úspěšnou úlohu z podporovaného modelu.
    • Neplatný formát modelu: model_url odkazuje na soubor s nepodporovanou příponou.
    • Nedostupná URL adresa: model_url, image_style_url nebo prvek multiview_image_urls se nepodařilo stáhnout.
  • Name
    401 - Unauthorized
    Description

    Autentizace se nezdařila. Zkontrolujte prosím svůj API klíč.

  • Name
    402 - Payment Required
    Description

    Nedostatek kreditů k provedení této úlohy.

  • Name
    429 - Too Many Requests
    Description

    Překročili jste limit rychlosti.

Request

POST
/openapi/v1/retexture
# Retexture with text prompt
curl https://api.meshy.ai/openapi/v1/retexture \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "model_url": "https://cdn.meshy.ai/model/example_model_2.glb",
    "text_style_prompt": "red fangs, Samurai outfit that fused with japanese batik style",
    "enable_original_uv": true,
    "enable_pbr": true
  }'

# Retexture with image style and PBR
curl https://api.meshy.ai/openapi/v1/retexture \
  -H "Authorization: Bearer ${YOUR_API_KEY}" \
  -H 'Content-Type: application/json' \
  -d '{
    "model_url": "https://cdn.meshy.ai/model/example_model_2.glb",
    "image_style_url": "https://cdn.meshy.ai/image/example_image.jpg",
    "ai_model": "latest",
    "enable_pbr": true,
    "enable_original_uv": true
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}

GET/openapi/v1/retexture/:id

Načtení úlohy Retexturování

Tento koncový bod umožňuje načíst úlohu Retexturování na základě platného id úlohy. Podrobnosti o vlastnostech, které jsou součástí objektu úlohy Retexturování, naleznete v části Objekt úlohy Retexturování.

Parametry

  • Name
    id
    Type
    path
    Description

    Jedinečný identifikátor úlohy Retexturování, kterou chcete načíst.

Návratová hodnota

Odpověď obsahuje objekt úlohy Retexturování. Podrobnosti naleznete v části Objekt úlohy Retexturování.

Request

GET
/openapi/v1/retexture/018a210d-8ba4-705c-b111-1f1776f7f578
curl https://api.meshy.ai/openapi/v1/retexture/018a210d-8ba4-705c-b111-1f1776f7f578 \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "retexture",
  "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=***",
    "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "text_style_prompt": "red fangs, Samurai outfit that fused with japanese batik style",
  "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"
    }
  ],
  "task_error": {

    "message": ""

  },

  "consumed_credits": 10
}

DELETE/openapi/v1/retexture/:id

Smazání úlohy retexturování

Tento koncový bod trvale odstraní úlohu retexturování, včetně všech souvisejících modelů a dat. Tato akce je nevratná.

Parametry cesty

  • Name
    id
    Type
    path
    Description

    ID úlohy retexturování, která má být smazána.

Stav úlohy

Úloha, která je stále ve stavu PENDING, je smazána a kredity spotřebované při jejím vytvoření jsou vráceny.

Úlohu, která je již ve stavu IN_PROGRESS, nelze smazat: požadavek je odmítnut s chybou 409 Conflict a úloha nadále běží. Kredity za úlohu, kterou už worker začal zpracovávat, nejsou vratné, takže smazání během běhu by vás stálo jak kredity, tak výsledek. Počkejte, až úloha dosáhne stavu SUCCEEDED, FAILED nebo CANCELED, a poté ji smažte.

Úloha v koncovém stavu (SUCCEEDED, FAILED nebo CANCELED) je smazána bez vrácení kreditů.

Návratová hodnota

Vrací 200 OK při úspěchu, nebo 409 Conflict, pokud je úloha ve stavu IN_PROGRESS.

Request

DELETE
/openapi/v1/retexture/a43b5c6d-7e8f-901a-234b-567c890d1e2f
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/retexture/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
  -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 is left 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."
}

GET/openapi/v1/retexture

Seznam úloh Retexturování

Tento koncový bod umožňuje načíst seznam úloh Retexturování.

Parametry

  • Name
    page_num
    Type
    integer
    výchozí 1
    Description

    Číslo stránky pro stránkování.

  • Name
    page_size
    Type
    integer
    výchozí 10
    Description

    Limit velikosti stránky. Maximální povolená hodnota je 100 položek.

  • Name
    sort_by
    Type
    string
    Description

    Pole, podle kterého se má seřazovat.

    Dostupné hodnoty:

    • +created_at: Seřadit podle času vytvoření vzestupně.
    • -created_at: Seřadit podle času vytvoření sestupně.

Návratová hodnota

Vrací stránkovaný seznam Objektů úlohy Retexturování.

Request

GET
/openapi/v1/retexture
curl https://api.meshy.ai/openapi/v1/retexture?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"

Response

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "retexture",
    "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=***",
      "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "text_style_prompt": "red fangs, Samurai outfit that fused with japanese batik style",
    "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": {

      "message": ""

    },

    "consumed_credits": 10
  }
]

GET/openapi/v1/retexture/:id/stream

Streamování úlohy Retexturování

Tento koncový bod streamuje aktualizace v reálném čase pro úlohu Retexturování pomocí Server-Sent Events (SSE).

Parametry

  • Name
    id
    Type
    path
    Description

    Jedinečný identifikátor úlohy Retexturování, kterou chcete streamovat.

Návratová hodnota

Vrací proud objektů úlohy Retexturování ve formě Server-Sent Events.

U úloh se stavem PENDING nebo IN_PROGRESS bude proud odpovědí obsahovat pouze nezbytná pole progress a status.

Request

GET
/openapi/v1/retexture/018a210d-8ba4-705c-b111-1f1776f7f578/stream
curl -N https://api.meshy.ai/openapi/v1/retexture/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.
// For PENDING or IN_PROGRESS tasks, the response stream will not include all fields.
event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 0,
  "status": "PENDING"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "progress": 50,
  "status": "IN_PROGRESS"
}

event: message
data: {
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "retexture",
  "progress": 100,
  "status": "SUCCEEDED",
  "created_at": 1692771650657,
  "started_at": 1692771667037,
  "finished_at": 1692771669037,
  "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=***",
    "mtl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.mtl?Expires=***",
    "stl": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.stl?Expires=***"
  },
  "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": {

    "message": ""

  },

  "consumed_credits": 10
}

Objekt Retexture Task

Objekt Retexture Task je pracovní jednotka, kterou Meshy používá k generování 3D textury z textového nebo obrazového vstupu. Model má následující vlastnosti:

Vlastnosti

  • Name
    id
    Type
    string
    Description

    Jedinečný identifikátor úlohy. Ačkoli jako implementační detail používáme pro id úloh k-sortovatelné UUID, neměli byste dělat žádné předpoklady o formátu id.

  • Name
    type
    Type
    string
    Description

    Typ úlohy Retexture. Hodnota je retexture.

  • Name
    model_urls
    Type
    object
    Description

    Stažitelná URL adresa na texturovaný soubor 3D modelu vygenerovaný Meshy.

    • Name
      glb
      Type
      string
      Description

      Stažitelná URL adresa na soubor GLB.

    • Name
      fbx
      Type
      string
      Description

      Stažitelná URL adresa na soubor FBX.

    • Name
      obj
      Type
      string
      Description

      Stažitelná URL adresa na soubor OBJ.

    • Name
      usdz
      Type
      string
      Description

      Stažitelná URL adresa na soubor USDZ.

    • Name
      mtl
      Type
      string
      Description

      Stažitelná URL adresa na soubor MTL, vrácená spolu s exporty OBJ, pokud jsou přítomny textury.

    • Name
      stl
      Type
      string
      Description

      Stažitelná URL adresa na soubor STL.

    • Name
      3mf
      Type
      string
      Description

      Stažitelná URL adresa na soubor 3MF. Přítomno pouze pokud byl 3mf vyžádán prostřednictvím target_formats.

  • Name
    text_style_prompt
    Type
    string
    Description

    Toto je textový prompt, který byl použit k vytvoření úlohy texturování.

  • Name
    image_style_url
    Type
    string
    Description

    Toto je obrazový vstup, který byl použit k vytvoření úlohy texturování.

  • Name
    multiview_image_urls
    Type
    string[]
    Description

    Stažitelné URL adresy na referenční obrázky z více pohledů, které byly použity k vytvoření úlohy texturování. Přítomno pouze pokud byla úloha vytvořena s multiview_image_urls.

  • Name
    thumbnail_url
    Type
    string
    Description

    Stažitelná URL adresa na miniaturu souboru modelu.

  • Name
    alpha_thumbnail_url
    Type
    string
    Description

    Stažitelná URL adresa na verzi thumbnail_url s průhledným pozadím (RGBA). Přítomno pouze pokud byla úloha vytvořena s alpha_thumbnail: true a průhledný náhled byl úspěšně vykreslen; jinak je toto pole vynecháno.

  • Name
    progress
    Type
    integer
    Description

    Průběh úlohy. Pokud úloha ještě nebyla spuštěna, tato vlastnost bude 0. Jakmile úloha uspěje, hodnota se změní na 100.

  • Name
    started_at
    Type
    timestamp
    Description

    Časové razítko okamžiku, kdy byla úloha spuštěna, v milisekundách. Pokud úloha ještě nebyla spuštěna, tato vlastnost bude 0.

  • Name
    created_at
    Type
    timestamp
    Description

    Časové razítko okamžiku, kdy byla úloha vytvořena, v milisekundách.

  • Name
    expires_at
    Type
    timestamp
    Description

    Časové razítko okamžiku, kdy vyprší platnost výsledku úlohy, v milisekundách.

  • Name
    finished_at
    Type
    timestamp
    Description

    Časové razítko okamžiku, kdy byla úloha dokončena, v milisekundách. Pokud úloha ještě není dokončena, tato vlastnost bude 0.

  • Name
    status
    Type
    string
    Description

    Stav úlohy. Možné hodnoty jsou jedna z PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.

  • Name
    texture_urls
    Type
    array
    Description

    Pole objektů URL textur vygenerovaných úlohou. Obvykle obsahuje pouze jeden objekt URL textury. Každá URL textury má následující vlastnosti:

    • Name
      base_color
      Type
      string
      Description

      Stažitelná URL adresa na obrázek mapy základní barvy.

    • Name
      metallic
      Type
      string
      Description

      Stažitelná URL adresa na obrázek metalické mapy.

    • Name
      normal
      Type
      string
      Description

      Stažitelná URL adresa na obrázek normálové mapy.

    • Name
      roughness
      Type
      string
      Description

      Stažitelná URL adresa na obrázek mapy drsnosti.

    • Name
      emission
      Type
      string
      Description

      Stažitelná URL adresa na obrázek emisní mapy.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Počet předcházejících úloh.

  • Name
    task_error
    Type
    object
    Description

    Podrobnosti chyby pro neúspěšné úlohy. Úplný popis objektu task_error naleznete v sekci Chyby.

  • Name
    consumed_credits
    Type
    integer
    Description

    Počet kreditů spotřebovaných touto úlohou. Přítomno, když je stav úlohy PENDING, IN_PROGRESS, nebo SUCCEEDED. Pro úlohy se stavem FAILED vrací 0 (kredity jsou při selhání vráceny).

Example Retexture Task Model

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "retexture",
  "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=***",
    "usdz": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.usdz?Expires=***"
  },
  "text_style_prompt": "red fangs, Samurai outfit that fused with japanese batik style",
  "image_style_url": "https://assets.meshy.ai/***/image/example_image.jpg?Expires=***",
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "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": {

    "message": ""

  },

  "consumed_credits": 10
}