API breloka Creative Lab
Zamień zdjęcie w brelok nadający się do druku 3D z kolorowym reliefem w dwóch etapach. Zadanie prototypu generuje kolorowy obraz koncepcyjny na podstawie zdjęcia. Zadanie budowy zamienia ten obraz w model 3D z reliefem i przyjmuje identyfikator zadania prototypu jako input_task_id.
POST /openapi/creative-lab/keychain/v1/prototypePOST /openapi/creative-lab/keychain/v1/build
Utwórz zadanie prototypu Keychain
Generuje jeden skolorowany obraz koncepcyjny ze zdjęcia. Aby zbudować model 3D, przekaż identyfikator tego zadania do punktu końcowego budowania jako input_task_id. Opis pól zadania znajdziesz w Obiekcie zadania prototypu Keychain.
Request
# Stage 1: generate a colorized keychain concept image
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json; charset=utf-8' \
-d '{
"image_url": "<your publicly accessible image url or base64-encoded data URI>",
"name_text": "Luna"
}'
Response
{
"result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}


Parametry
- Name
- image_url
- Type
- string
- Wymagane
- Description
Zdjęcie, które ma zostać przekształcone w obraz koncepcyjny breloka, podane jako publiczny URL lub data URI (
data:image/jpeg;base64,<your base64-encoded image data>).Obraz musi być plikiem JPG, JPEG, PNG lub WebP o rozmiarze maksymalnie 20 MB.
- Name
- name
- Type
- string
- Description
Nazwa zadania, maksymalnie 100 znaków. Jest zwracana w polu
namezadania. Dłuższa nazwa zwraca400.Oznacza zadanie na pulpicie nawigacyjnym i listach zadań i nie pojawia się na breloku. Aby umieścić nazwę na breloku, użyj
name_text.
- Name
- name_text
- Type
- string
- Description
Nazwa do dodania na breloku, na przykład imię zwierzaka lub osoby, maksymalnie 10 znaków. Meshy liczy znaki, nie bajty, więc 10-znakowa nazwa w języku chińskim, japońskim lub koreańskim się zmieści. Dłuższa nazwa zwraca
400. Pomiń to pole, aby uzyskać brelok bez nazwy.Nazwa pojawia się na powierzchni breloka jako płaski, kolorowy element, a nie jako wypukły lub wycięty tekst.
Meshy przycina otaczające białe znaki i usuwa niewidoczne znaki formatujące. Obiekt zadania prototypu zwraca wynik jako
name_text, dzięki czemu możesz sprawdzić tekst przed opłaceniem budowy.Meshy dodaje nazwę na etapie prototypu. Budowanie ją zachowuje i ignoruje
name_textwysłane do punktu końcowego budowania.Gdy tekst nie jest zwykłym ASCII, wyślij treść żądania jako UTF-8 z
Content-Type: application/json; charset=utf-8. Niektóre klienty HTTP, takie jakInvoke-RestMethodw Windows PowerShell, domyślnie kodują treść jako ISO-8859-1. To zamienia każdy znak spoza alfabetu łacińskiego na?, zanim żądanie dotrze do Meshy, a Meshy nie jest w stanie odróżnić tego od nazwy, którą zamierzałeś wysłać.
- Name
- remove_background
- Type
- boolean
- domyślne false
- Description
Czy usunąć tło z obrazu prototypu.
truezwraca przezroczysty obraz PNG RGBA, który zachowuje cały medalion, dzięki czemu możesz umieścić go na dowolnym tle. Budowanie również zaczyna się od obrazu bez tła. Jeśli Meshy nie może usunąć tła, zwraca obraz wraz z tłem, a zadanie nadal kończy się powodzeniem.Opcja
remove_backgrounddla budowania jest odrębna.
Zwracane wartości
Pole result zawiera identyfikator nowego zadania prototypu. Pobierz zadanie lub przesyłaj je strumieniowo, dopóki status nie osiągnie wartości SUCCEEDED. Następnie przekaż identyfikator do punktu końcowego budowania jako input_task_id.
Tryby niepowodzenia
- Name
400 - Bad Request- Description
Żądanie nie może zostać wykonane. Na przykład:
- Brak
image_url. - Obraz nie jest plikiem JPG, JPEG, PNG ani WebP.
- Obraz jest zbyt mały, przekracza 20 MB lub przekracza maksymalną liczbę pikseli.
- Meshy nie może pobrać obrazu, na przykład dlatego, że URL zwraca
404lub przekroczono czas oczekiwania. - Data URI nie jest prawidłowym base64.
name_textjest dłuższe niż 10 znaków. Meshy odrzuca je zamiast skracać i nie pobiera opłaty za żądanie.- Obraz lub
name_textzostały oznaczone jako NSFW.
Komunikat błędu wskazuje znaleziony problem. Popraw żądanie i wyślij je ponownie.
- Brak
- Name
401 - Unauthorized- Description
Brak klucza API lub klucz API jest nieprawidłowy. Sprawdź nagłówek
Authorization.
- Name
402 - Payment Required- Description
Zastosowanie ma jedno z poniższych:
- Konto nie ma wystarczającej liczby kredytów.
- Klucz API, obszar roboczy lub członek osiągnął swój limit kredytów.
- Konto korzysta z darmowego planu.
Sprawdź swoje kredyty i plan, a następnie spróbuj ponownie.
- Name
403 - Forbidden- Description
Twój zespół ma włączone filtrowanie IP, a Meshy oznaczyło obraz jako naruszający prawa własności intelektualnej osób trzecich. Wyślij obraz, do którego masz prawa. Meshy sprawdza pod kątem własności intelektualnej tylko obraz, nie
name_text.
- Name
429 - Too Many Requests- Description
Osiągnięto jeden z poniższych limitów:
- Wysłano więcej żądań, niż pozwala na to Twój limit szybkości. Poczekaj kilka sekund, a następnie spróbuj ponownie. Zobacz Limity szybkości.
- Zbyt wiele Twoich zadań znajduje się w kolejce lub jest uruchomionych. Poczekaj, aż część z nich się zakończy, a następnie spróbuj ponownie.
- W planie bez limitów, bez pozostałych kredytów, osiągnięto liczbę zadań, które mogą działać bez kredytów. Poczekaj na zakończenie zadania lub dodaj kredyty.
- Name
500 - Internal Server Error- Description
Meshy napotkało błąd serwera, na przykład dlatego, że nie mogło przeprowadzić kontroli własności intelektualnej obrazu. Meshy nie tworzy zadania i zwraca wszelkie pobrane kredyty. Spróbuj ponownie wysłać żądanie.
Utwórz zadanie budowy breloka
Generuje model breloka gotowy do druku 3D na podstawie zakończonego powodzeniem zadania prototypu. Meshy przekształca obraz koncepcyjny prototypu w relief mapy głębi i zwraca jeden plik modelu w wybranym przez Ciebie formacie. Informacje o polach zadania znajdziesz w Obiekt zadania budowy breloka.
Request
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/build \
-X POST \
-H "Authorization: Bearer ${YOUR_API_KEY}" \
-H 'Content-Type: application/json' \
-d '{
"input_task_id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"options": {
"badge_shape": "circle",
"size_mm": 40,
"relief_height_mm": 2.5
},
"output": {
"format": "glb"
}
}'
Response
{
"result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}

Parametry
- Name
- input_task_id
- Type
- string
- Wymagane
- Description
ID zadania prototypu do zbudowania. Musi to być zadanie utworzone przez Twoje konto za pomocą
POST /openapi/creative-lab/keychain/v1/prototype, ze statusemSUCCEEDED.ID, które nie odpowiada żadnemu z Twoich zadań prototypu breloka z API, zwraca
404, w tym prototyp utworzony w aplikacji webowej.
- Name
- name
- Type
- string
- Description
Nazwa zadania, maksymalnie 100 znaków. Jest zwracana w polu
namezadania. Dłuższa nazwa zwraca400.
options
Opcjonalne ustawienia kształtu reliefu. Każde pole ma wartość domyślną, więc wyślij tylko te, które chcesz zmienić. Wartość poza zakresem danego pola zwraca 400.
- Name
- badge_shape
- Type
- string
- domyślne circle
- Description
Zarys breloka, gdy Meshy nie odwzorowuje go z obiektu. Meshy używa go, gdy
remove_backgroundma wartośćfalse, lub gdy nie może znaleźć zarysu obiektu.Dostępne wartości:
circlerounded-recthexagonshieldstar
- Name
- size_mm
- Type
- number
- domyślne 40
- Description
Długość boku ograniczającego kwadratu breloka, w milimetrach, do
400.0oznacza użycie wartości domyślnej.
- Name
- relief_height_mm
- Type
- number
- domyślne 2.2
- Description
Maksymalna wysokość reliefu ponad podstawą, w milimetrach, od
0do20.
- Name
- relief_offset_mm
- Type
- number
- domyślne 0
- Description
O ile obniżyć relief, w milimetrach, od
0do20. Meshy odejmuje tę wartość od wysokości reliefu wszędzie, aż do podstawy.
- Name
- base_thickness_mm
- Type
- number
- domyślne 0.1
- Description
Grubość płaskiej płyty podstawy za reliefem, w milimetrach, od
0do20.
- Name
- has_closed_back
- Type
- boolean
- domyślne true
- Description
Czy zamknąć tył breloka.
falsepozostawia tył otwarty, w formie powłoki.
- Name
- relief_curve
- Type
- string
- domyślne linear
- Description
Krzywa mapująca wartości mapy głębi na wysokość reliefu.
Dostępne wartości:
lineargammas-curve
- Name
- curve_param
- Type
- number
- domyślne 1.0
- Description
Siła krzywej, do
10. Krzywegammais-curvejej używają, alinearją ignoruje.0oznacza użycie wartości domyślnej.
- Name
- invert_depth
- Type
- boolean
- domyślne false
- Description
Czy odwrócić mapę głębi, tak aby ciemniejsze obszary stawały się wyższym reliefem.
- Name
- smoothing
- Type
- number
- domyślne 0.24
- Description
Jak bardzo wygładzić mapę głębi przed zbudowaniem reliefu przez Meshy, od
0do10.
- Name
- relief_scale
- Type
- number
- domyślne 1.0
- Description
O ile powiększyć relief i jego teksturę wewnątrz zarysu, względem środka, do
10. Wartość powyżej1powiększa obiekt, a wartość poniżej1go pomniejsza. Nie zmienia wysokości reliefu.0oznacza użycie wartości domyślnej.
- Name
- depth_threshold
- Type
- number
- domyślne 0.1
- Description
Wartość mapy głębi, poniżej której Meshy ustawia głębię na zero, od
0do1.
- Name
- remove_background
- Type
- boolean
- domyślne true
- Description
Czy odwzorować zarys breloka na podstawie obiektu, tak aby brelok podążał za kształtem obiektu.
falseużywa zamiast tego zarysubadge_shape. Meshy używabadge_shaperównież wtedy, gdy nie może znaleźć zarysu obiektu.Jest to niezależne od parametru
remove_backgroundprototypu, który ustawia, czy obraz prototypu ma przezroczyste tło.
- Name
- export_resolution
- Type
- integer
- domyślne 512
- Description
Rozdzielczość siatki eksportowanego modelu, od
64do512. Meshy buduje geometrię na podstawie mapy głębi o rozdzielczości 512 pikseli, więc dokładniejsza siatka dodałaby ścianki bez dodawania szczegółów.0oznacza użycie wartości domyślnej.
output
Opcjonalne. Ustawia format pliku zwracanego przez budowę.
- Name
- format
- Type
- string
- domyślne glb
- Description
Format pliku zwracanego przez budowę.
Dostępne wartości:
glb: jeden plikmodel.glb, wmodel_urls.glbobj: plik zip zmodel.obj,model.mtlitexture.png, wmodel_urls.objzip: plik zip ze wszystkimi plikami wygenerowanymi przez Meshy, wmodel_urls.bundle_zip
Zwraca
Pole result zawiera ID nowego zadania budowy. Pobierz zadanie lub przesyłaj je strumieniowo, aż status osiągnie wartość SUCCEEDED. Następnie pobierz plik z jedynego wpisu w model_urls.
Tryby niepowodzenia
- Name
400 - Bad Request- Description
Żądanie nie może zostać wykonane. Na przykład:
input_task_idjest nieobecne lub nie jest prawidłowym ID zadania.- Status zadania prototypu nie jest
SUCCEEDED. Jeśli wciąż trwa, poczekaj i spróbuj ponownie. Jeśli zakończyło się niepowodzeniem lub zostało anulowane, utwórz nowe zadanie prototypu. - Zadanie prototypu zakończyło się powodzeniem, ale nie ma obrazu. Utwórz nowe zadanie prototypu.
- Pole w
optionsjest poza zakresem lub nie jest dostępną wartością.
Komunikat błędu wskazuje, jaki problem został znaleziony.
- Name
401 - Unauthorized- Description
Brak klucza API lub klucz jest nieprawidłowy. Sprawdź nagłówek
Authorization.
- Name
402 - Payment Required- Description
Ma zastosowanie jedna z poniższych sytuacji:
- Konto nie ma wystarczającej liczby kredytów.
- Klucz API, obszar roboczy lub członek osiągnął limit kredytów.
- Konto korzysta z darmowego planu.
Sprawdź swoje kredyty i plan, a następnie spróbuj ponownie.
- Name
404 - Not Found- Description
input_task_idnie pasuje do żadnego zadania prototypu breloka utworzonego przez Twoje konto za pomocą API. Prototyp utworzony w aplikacji webowej również zwraca404. Wyślij IDresultz odpowiedzi na utworzenie prototypu.
- Name
429 - Too Many Requests- Description
Osiągnięto jeden z poniższych limitów:
- Wysłano więcej żądań, niż pozwala na to limit szybkości. Poczekaj kilka sekund, a następnie spróbuj ponownie. Zobacz Limity szybkości.
- Zbyt wiele Twoich zadań oczekuje w kolejce lub jest uruchomionych. Poczekaj, aż część z nich się zakończy, a następnie spróbuj ponownie.
- Na planie nielimitowanym bez pozostałych kredytów osiągnięto liczbę zadań, które mogą być uruchomione bez kredytów. Poczekaj na zakończenie zadania lub dodaj kredyty.
Pobierz zadanie Keychain
Zwraca zadanie prototypu lub builda. Ścieżka musi odpowiadać etapowi zadania. Zadanie builda zażądane poprzez /prototype/:id zwraca 404, podobnie jak zadanie prototypu zażądane poprzez /build/:id.
Informacje o polach znajdziesz w sekcjach Obiekt zadania prototypu Keychain i Obiekt zadania builda Keychain.
Request
# Prototype
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
# Build
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Prototype Response
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "creative-lab-keychain-prototype",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123456000,
"started_at": 1729123460000,
"finished_at": 1729123486000,
"expires_at": 1729382686000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 6,
"image_urls": [
"https://assets.meshy.ai/***/concept.png?Expires=***"
]
}
Build Response
{
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"type": "creative-lab-keychain-build",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123500000,
"started_at": 1729123510000,
"finished_at": 1729123535000,
"expires_at": 1729382735000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
}
}
Parametry
- Name
- id
- Type
- path
- Description
Identyfikator zadania z odpowiedzi tworzenia.
Zwracane wartości
Obiekt zadania prototypu lub obiekt zadania builda, odpowiadający etapowi podanemu w ścieżce.
Tryby błędów
- Name
400 - Bad Request- Description
idnie jest prawidłowym identyfikatorem zadania. Wyślij identyfikatorresultz odpowiedzi tworzenia.
- Name
403 - Forbidden- Description
Twój zespół ma włączone filtrowanie IP, a Meshy oznaczyło obraz zadania prototypu jako naruszający prawa własności intelektualnej osób trzecich. Zadania builda oraz zespoły na planie Enterprise nie otrzymują tego błędu. Utwórz zadanie prototypu na podstawie obrazu, do którego masz prawa.
- Name
404 - Not Found- Description
Żadne zadanie Keychain o tym identyfikatorze nie należy do Twojego konta, albo etap zadania nie zgadza się ze ścieżką. Sprawdź identyfikator i użyj
/prototypelub/build, aby dopasować zadanie.
- Name
500 - Internal Server Error- Description
Meshy nie mogło przeprowadzić kontroli własności intelektualnej. Spróbuj ponownie.
Usuń zadanie Keychain
Anuluje zadanie Keychain. Anulowanie zadania o statusie PENDING zwraca jego kredyty. Zadanie o statusie IN_PROGRESS jest anulowane bez zwrotu, ponieważ worker już je rozpoczął. Zadanie ze statusem końcowym (SUCCEEDED, FAILED lub CANCELED) nie może zostać anulowane.
Ścieżka musi odpowiadać etapowi zadania. Na przykład DELETE na /prototype/:id z ID zadania typu build zwraca 404.
Request
curl --request DELETE \
--url https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response
// Returns 204 No Content on success (empty body).
Parametry ścieżki
- Name
- id
- Type
- path
- Description
ID zadania do anulowania.
Zwraca
204 No Content z pustym ciałem odpowiedzi.
Tryby niepowodzenia
- Name
400 - Bad Request- Description
Zastosowanie ma jedno z poniższych:
idnie jest prawidłowym ID zadania. Wyślij IDresultz odpowiedzi tworzącej zadanie.- Zadanie ma już status końcowy (
SUCCEEDED,FAILEDlubCANCELED), więc nie można go anulować.
- Name
404 - Not Found- Description
Żadne zadanie Keychain o tym ID nie należy do Twojego konta, albo etap zadania nie odpowiada ścieżce. Sprawdź ID i użyj
/prototypelub/build, aby dopasować zadanie.
Strumieniuj zadanie Keychain
Strumieniuje aktualizacje zadania Keychain jako zdarzenia Server-Sent Events (SSE). Ścieżka musi odpowiadać etapowi zadania. Jeśli tak nie jest, na przykład gdy ID zadania build zostanie użyte w /prototype/:id/stream, strumień wysyła jedno zdarzenie error ze statusem status_code: 404 i się zamyka.
Request
curl -N https://api.meshy.ai/openapi/creative-lab/keychain/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response Stream
// Error event example (wrong stage or task not found)
event: error
data: {
"status_code": 404,
"message": "Task not found"
}
// Message event examples illustrate task progress.
// Every frame is the full task object; fields not yet populated are null / empty.
// The following PENDING frame is shortened to the fields that change.
event: message
data: {
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"progress": 0,
"status": "PENDING"
}
event: message
data: {
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"type": "creative-lab-keychain-build",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123500000,
"started_at": 1729123510000,
"finished_at": 1729123535000,
"expires_at": 1729382735000,
"task_error": null,
"consumed_credits": 30,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
}
}
Parametry
- Name
- id
- Type
- path
- Description
ID zadania z odpowiedzi tworzenia.
Zwraca
Strumień obiektów zadania prototype lub build. Każde zdarzenie zawiera pełny obiekt zadania, dokładnie taki, jaki zwraca Pobierz zadanie Keychain. Gdy zadanie ma status PENDING lub IN_PROGRESS, jego pola wyjściowe są nadal puste (null, [] lub {}), a finished_at ma wartość null.
Jeśli IP Filtering zablokuje wynik zadania, strumień wysyła w jego miejsce jedno zdarzenie error, z taką wartością status_code, jaką zwróciłoby żądanie get.
Lista zadań Keychain
Zwraca Twoje zadania Keychain jednego etapu, po jednej stronie na raz. Ścieżka określa etap. /prototype zwraca tylko zadania prototypowe, a /build zwraca tylko zadania budowania.
Request
# List prototype tasks
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/prototype?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
# List build tasks
curl https://api.meshy.ai/openapi/creative-lab/keychain/v1/build?page_size=10 \
-H "Authorization: Bearer ${YOUR_API_KEY}"
Response (List Prototype Tasks)
[
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "creative-lab-keychain-prototype",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123456000,
"started_at": 1729123460000,
"finished_at": 1729123486000,
"expires_at": 1729382686000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 6,
"image_urls": [
"https://assets.meshy.ai/***/concept.png?Expires=***"
]
}
]
Parametry ścieżki
- Name
- stage
- Type
- path
- Wymagane
- Description
Etap do wylistowania,
prototypelubbuild.
Parametry zapytania
- Name
- page_num
- Type
- integer
- domyślne 1
- Description
Strona do zwrócenia, od
1do255. Wartość0zwraca pierwszą stronę. Wartość spoza zakresu0do255zwraca400.
- Name
- page_size
- Type
- integer
- domyślne 10
- Description
Liczba zadań na stronę, do
100. Wartość od101do255zwraca 100 zadań, a0używa wartości domyślnej. Wartość spoza zakresu0do255zwraca400.
- Name
- sort_by
- Type
- string
- domyślne -created_at
- Description
Kolejność sortowania.
Dostępne wartości:
-created_at: od najnowszych+created_at: od najstarszych
Zwraca
Tablicę obiektów zadań prototypu lub obiektów zadań budowania, odpowiadających etapowi podanemu w ścieżce.
Obiekt zadania prototypu breloka Keychain
Zadanie prototypu generuje kolorowy obraz koncepcyjny na podstawie zdjęcia. Aby przekształcić obraz w model 3D, przekaż ID zadania do punktu końcowego build jako input_task_id.
Właściwości
Example Keychain Prototype Task Object
{
"id": "018a210d-8ba4-705c-b111-1f1776f7f578",
"type": "creative-lab-keychain-prototype",
"name": "",
"name_text": "Luna",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123456000,
"started_at": 1729123460000,
"finished_at": 1729123486000,
"expires_at": 1729382686000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 6,
"image_urls": [
"https://assets.meshy.ai/***/concept.png?Expires=***"
]
}
- Name
- id
- Type
- string
- Description
ID zadania. Nie polegaj na jego formacie.
- Name
- type
- Type
- string
- Description
Typ zadania, zawsze
creative-lab-keychain-prototype.
- Name
- name
- Type
- string
- Description
Wartość
name, którą wysłano podczas tworzenia zadania, lub"", jeśli jej nie wysłano.
- Name
- name_text
- Type
- string
- Description
Nazwa dodana przez Meshy do breloka, po przycięciu białych znaków i usunięciu niewidocznych znaków formatujących. Pomijana, gdy nie wysłano
name_text. Aby sprawdzić, czy klient HTTP poprawnie zakodował tekst, porównaj go z tym, co zostało wysłane.
- Name
- status
- Type
- string
- Description
Status zadania.
Dostępne wartości:
PENDING: oczekuje w kolejceIN_PROGRESS: generowanie wynikuSUCCEEDED: zakończone, z wynikiemFAILED: zakończone, z powodem wtask_errorCANCELED: zakończone, bez wyniku
- Name
- progress
- Type
- integer
- Description
Procent wykonanej pracy, od
0do100. Wynosi0do momentu rozpoczęcia zadania i100, gdy zakończy się powodzeniem.
- Name
- created_at
- Type
- timestamp
- Description
Czas utworzenia zadania, w milisekundach Unix.
- Name
- started_at
- Type
- timestamp
- Description
Czas rozpoczęcia zadania przez worker, w milisekundach Unix.
nulldo tego momentu.
- Name
- finished_at
- Type
- timestamp
- Description
Czas osiągnięcia przez zadanie statusu końcowego, w milisekundach Unix.
nulldo tego momentu.
- Name
- expires_at
- Type
- timestamp
- Description
Czas wygaśnięcia wyniku zadania, w milisekundach Unix. Przypada 3 dni po
finished_at, lub 3 dni pocreated_at, dopóki zadanie się nie zakończy. W przypadku kont Enterprise, które przechowują wyniki API bezterminowo, jest to około 100 lat później. Zobacz Przechowywanie zasobów.
- Name
- preceding_tasks
- Type
- integer
- Description
Pozycja zadania w kolejce, gdy ma status
PENDING.1oznacza, że zostanie uruchomione jako następne.0po opuszczeniu kolejki przez zadanie, i zawsze0w wynikach list.
- Name
- task_error
- Type
- object
- Description
Powód niepowodzenia zadania.
null, chyba żestatustoFAILED. Zobacz Błędy.
- Name
- consumed_credits
- Type
- integer
- Description
Liczba kredytów naliczonych za zadanie, po uwzględnieniu ewentualnego zwrotu. Żądanie zwracające błąd nie jest obciążane. Zadanie zakończone niepowodzeniem ma wartość
0, ponieważ Meshy zwraca za nie kredyty. Anulowanie powoduje zwrot kredytów tylko wtedy, gdy zadanie ma statusPENDING. Jeśli Meshy nie może odczytać obciążenia, odpowiedź get lub stream pomija to pole, a żądanie list zwraca500. W takim przypadku ponów żądanie.
- Name
- image_urls
- Type
- array of strings
- Description
Adresy URL do pobrania obrazu koncepcyjnego. Tablica zawiera jeden URL po pomyślnym zakończeniu zadania, a wcześniej jest pusta.
Obiekt zadania budowy breloka
Zadanie budowy generuje breloczek 3D na podstawie zakończonego powodzeniem zadania prototypu. Zwraca ono jeden plik modelu w formacie, o który poprosiłeś.
Właściwości
Example Keychain Build Task Object
{
"id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
"type": "creative-lab-keychain-build",
"name": "",
"status": "SUCCEEDED",
"progress": 100,
"created_at": 1729123500000,
"started_at": 1729123510000,
"finished_at": 1729123535000,
"expires_at": 1729382735000,
"preceding_tasks": 0,
"task_error": null,
"consumed_credits": 30,
"model_urls": {
"glb": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/model.glb?Expires=***"
}
}
- Name
- id
- Type
- string
- Description
ID zadania. Nie polegaj na jego formacie.
- Name
- type
- Type
- string
- Description
Typ zadania, zawsze
creative-lab-keychain-build.
- Name
- name
- Type
- string
- Description
Wartość
namewysłana podczas tworzenia zadania, lub"", jeśli jej nie wysłano.
- Name
- status
- Type
- string
- Description
Status zadania.
Dostępne wartości:
PENDING: oczekuje w kolejceIN_PROGRESS: generowanie wynikuSUCCEEDED: stan końcowy, z wynikiemFAILED: stan końcowy, z powodem wtask_errorCANCELED: stan końcowy, bez wyniku
- Name
- progress
- Type
- integer
- Description
Procent wykonanej pracy, od
0do100. Wynosi0do momentu rozpoczęcia zadania i100, gdy zakończy się powodzeniem.
- Name
- created_at
- Type
- timestamp
- Description
Czas utworzenia zadania, w milisekundach Unix.
- Name
- started_at
- Type
- timestamp
- Description
Czas rozpoczęcia zadania przez pracownika, w milisekundach Unix.
nulldo tego momentu.
- Name
- finished_at
- Type
- timestamp
- Description
Czas osiągnięcia przez zadanie statusu końcowego, w milisekundach Unix.
nulldo tego momentu.
- Name
- expires_at
- Type
- timestamp
- Description
Czas wygaśnięcia wyniku zadania, w milisekundach Unix. Przypada 3 dni po
finished_at, lub 3 dni pocreated_at, dopóki zadanie się nie zakończy. W przypadku kont Enterprise, które przechowują wyniki API bezterminowo, jest to około 100 lat później. Zobacz Przechowywanie zasobów.
- Name
- preceding_tasks
- Type
- integer
- Description
Pozycja zadania w kolejce, gdy ma status
PENDING.1oznacza, że zostanie uruchomione jako następne.0po opuszczeniu kolejki przez zadanie, i zawsze0w wynikach list.
- Name
- task_error
- Type
- object
- Description
Powód niepowodzenia zadania.
null, chyba żestatustoFAILED. Zobacz Błędy.
- Name
- consumed_credits
- Type
- integer
- Description
Liczba kredytów pobranych za zadanie, po uwzględnieniu ewentualnego zwrotu. Żądanie, które zwraca błąd, nie jest obciążane. Nieudane zadanie ma wartość
0, ponieważ Meshy zwraca za nie kredyty. Anulowanie zwraca kredyty za zadanie tylko wtedy, gdy ma ono statusPENDING. Jeśli Meshy nie może odczytać obciążenia, odpowiedź typu get lub stream pomija to pole, a żądanie listy zwraca500. W takim przypadku ponów żądanie.
- Name
- model_urls
- Type
- object
- Description
Adresy URL do pobrania pliku modelu, z jednym wpisem dla żądanego
output.format.{}do momentu zakończenia zadania powodzeniem.- Name
glb- Type
- string
- Description
Adres URL do pobrania pliku GLB. Obecny, gdy
output.formattoglb.
- Name
obj- Type
- string
- Description
Adres URL do pobrania pliku zip zawierającego
model.obj,model.mtlitexture.png. Obecny, gdyoutput.formattoobj.
- Name
bundle_zip- Type
- string
- Description
Adres URL do pobrania pliku zip zawierającego każdy plik wygenerowany przez Meshy. Obecny, gdy
output.formattozip.