API pro změnu velikosti
API pro změnu velikosti vám umožňuje změnit velikost existujících 3D modelů na reálné rozměry. Můžete specifikovat přesnou výšku, omezení nejdelší strany nebo nechat AI automaticky odhadnout vhodnou velikost.
Vytvoření úlohy pro změnu velikosti
Tento koncový bod vytváří novou úlohu pro změnu velikosti.
Parametry
Pouze jeden z input_task_id nebo model_url je povinný. Pokud jsou oba poskytnuty, input_task_id má prioritu.
- Name
- input_task_id
- Type
- string
- Povinné
- Description
ID dokončené úlohy Meshy, jejíž model chcete změnit velikost. Úloha musí mít status
SUCCEEDED. Výstupní formát bude GLB.
- Name
- model_url
- Type
- string
- Povinné
- Description
Veřejně přístupná URL nebo data URI ukazující na soubor 3D modelu. Podporované formáty:
.glb,.gltf,.obj,.fbx,.stl. Pro Data URI použijte MIME type:application/octet-stream. Výstupní formát zachová původní formát vstupního modelu.
Přesně jeden režim změny velikosti je povinný: resize_height, resize_longest_side nebo auto_size. Tyto tři parametry jsou vzájemně vylučující.
- Name
- resize_height
- Type
- number
- Description
Změní velikost modelu na konkrétní výšku měřenou v metrech.
- Name
- resize_longest_side
- Type
- number
- Description
Změní velikost modelu tak, aby jeho nejdelší strana odpovídala této hodnotě, měřeno v metrech. Poměr stran je zachován.
- Name
- auto_size
- Type
- boolean
- Description
Když je nastaveno na
true, služba použije AI vidění k automatickému odhadu skutečné výšky objektu a podle toho změní velikost modelu. Počátek bude defaultněbottom, pokud neníorigin_atexplicitně nastaveno.
- Name
- origin_at
- Type
- string
- výchozí bottom
- Description
Pozice počátku po změně velikosti.
Dostupné hodnoty:
bottom,center.
Vrátí
Vlastnost result odpovědi obsahuje id nově vytvořené úlohy pro změnu velikosti.
Režimy selhání
400 - Bad Request
Požadavek byl nepřijatelný. Běžné příčiny:
- Chybějící parametr: Musí být poskytnut buď
model_urlneboinput_task_id. - Chybějící režim změny velikosti: Musí být specifikován alespoň jeden z
resize_height,resize_longest_sideneboauto_size. - Vzájemně vylučující parametry:
resize_height,resize_longest_sideaauto_sizenelze kombinovat. - Neplatná vstupní úloha:
input_task_idmusí odkazovat na úspěšnou úlohu. - Neplatný formát modelu:
model_urlukazuje na soubor s nepodporovanou příponou. - Nepřístupná URL:
model_urlnelze stáhnout.
401 - Unauthorized
Autentizace selhala. Zkontrolujte prosím svůj API klíč.
402 - Payment Required
Nedostatečné kredity pro provedení této úlohy.
429 - Too Many Requests
Překročili jste svůj limit rychlosti.
Požadavek
# Simple: resize to a specific height
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"resize_height": 1.8
}'
# Advanced: resize longest side with custom origin
curl https://api.meshy.ai/openapi/v1/resize \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"model_url": "https://example.com/model.glb",
"resize_longest_side": 2.0,
"origin_at": "center"
}'
Odpověď
{
"result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}
Načíst úkol změny velikosti
Tento koncový bod načte úkol změny velikosti podle jeho ID.
Parametry
- Name
- id
- Type
- path
- Description
ID úkolu změny velikosti, který chcete načíst.
Vrací
Objekt úkolu změny velikosti.
Request
curl https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
Smazat úkol Změnit velikost
Tento koncový bod trvale smaže úkol změnit velikost, včetně všech souvisejících modelů a dat. Tato akce je nevratná.
Parametry cesty
- Name
- id
- Type
- path
- Description
ID úkolu změnit velikost ke smazání.
Vrací
Vrací 200 OK při úspěchu.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 200 Ok on success.
Seznam úloh pro změnu velikosti
Tento koncový bod vám umožňuje získat seznam úloh pro změnu velikosti.
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ý počet je
50položek.
- Name
- sort_by
- Type
- string
- Description
Pole pro třídění. Dostupné hodnoty:
+created_at: Třídit podle času vytvoření vzestupně.-created_at: Třídit podle času vytvoření sestupně.
Vrací
Vrací stránkovaný seznam Objektů úloh pro změnu velikosti.
Požadavek
curl https://api.meshy.ai/openapi/v1/resize?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Odpověď
[
{
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
]
Streamování úlohy Změnit velikost
Tento koncový bod streamuje aktualizace v reálném čase pro úlohu změny velikosti pomocí Server-Sent Events (SSE).
Parametry
- Name
- id
- Type
- path
- Description
Jedinečný identifikátor pro úlohu změny velikosti ke streamování.
Návratové hodnoty
Vrací stream Objektů úlohy Změnit velikost jako Server-Sent Events.
Pro úlohy PENDING nebo IN_PROGRESS bude stream odpovědi obsahovat pouze potřebná pole progress a status.
Požadavek
curl -N https://api.meshy.ai/openapi/v1/resize/a43b5c6d-7e8f-901a-234b-567c890d1e2f/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Message event examples illustrate task progress.
event: message
data: {
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "0193bfc5-ee4f-73f8-8525-44b398884ce9",
"type": "resize",
"model_urls": {
"glb": "https://assets.meshy.ai/.../model.glb?Expires=..."
},
"progress": 100,
"status": "SUCCEEDED",
"created_at": 1699999999000,
"started_at": 1700000000000,
"finished_at": 1700000001000,
"task_error": null,
"consumed_credits": 1
}
Objekt úlohy Změnit velikost
Objekt úlohy Změnit velikost představuje úlohu změny velikosti.
Vlastnosti
id· string
Jedinečný identifikátor pro úlohu.
type· string
Typ úlohy. Hodnota je resize.
model_urls· object
Stahovatelná URL pro soubor modelu se změněnou velikostí. Při použití input_task_id je výstup vždy GLB. Při použití model_url výstup zachovává původní formát.
progress· integer
Pokrok úlohy (0-100).
status· string
Stav úlohy. Možné hodnoty: PENDING, IN_PROGRESS, SUCCEEDED, FAILED, CANCELED.
preceding_tasks· integer
Počet předcházejících úloh. Má smysl pouze, když je stav PENDING.
created_at· timestamp
Časové razítko, kdy byla úloha vytvořena, v milisekundách.
started_at· timestamp
Časové razítko, kdy byla úloha spuštěna, v milisekundách. 0, pokud nebyla spuštěna.
finished_at· timestamp
Časové razítko, kdy byla úloha dokončena, v milisekundách. 0, pokud nebyla dokončena.
task_error· object
Objekt chyby, pokud úloha selhala. Pro více podrobností viz Chyby.
consumed_credits· integer
Počet kreditů spotřebovaných touto úlohou (1 kredit na úlohu změny velikosti). Vrací 0 pro úlohy FAILED.