lowpoly zostanie wycofany 30 paź 2026. Zmień model przed tymi datami, aby uniknąć błędów żądań. Zobacz wszystkie wycofania

Creative Lab Lamp API

Zamień zdjęcie w abażur gotowy do druku 3D w dwóch etapach. Zadanie prototypu generuje matowo-białą koncepcyjną grafikę i przekształca ją w model 3D. Zadanie budowy, które jako input_task_id przyjmuje identyfikator zadania prototypu, przekształca ten model w drukowalne części STL. Przy domyślnym presecie oprawy, częściami są abażur bez dna z płytą podstawy dla oprawy oświetleniowej oraz mocowanie oprawy.

  • POST /openapi/creative-lab/lamp/v1/prototype
  • POST /openapi/creative-lab/lamp/v1/build

POST/openapi/creative-lab/lamp/v1/prototype

Utwórz zadanie prototypu lampy

Generuje jeden matowobiały obraz koncepcyjny ze zdjęcia i przekształca go w model 3D klosza lampy. Zadanie zwraca obraz koncepcyjny w image_urls oraz model w model_urls.glb wraz z podglądem w thumbnail_url. Aby zbudować drukowalne części, przekaż identyfikator tego zadania do punktu końcowego budowania jako input_task_id. Informacje o polach zadania znajdziesz w Obiekt zadania prototypu lampy.

Request

POST
/openapi/creative-lab/lamp/v1/prototype
# Stage 1: concept image + 3D lampshade model from a source photo
curl https://api.meshy.ai/openapi/creative-lab/lamp/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>",
    "image_subject": "character"
  }'

Response

{
  "result": "018a210d-8ba4-705c-b111-1f1776f7f578"
}
Prototype example
Rozpocznij od zdjęcia źródłowego. Prototyp zwraca obraz koncepcyjny oraz model 3D przetwarzany przez etap budowania.
Source cat photo used as the Creative Lab Lamp input
Prototype input
Creative Lab Lamp prototype output generated from the source photo
Prototype output

Parametry

  • Name
    image_url
    Type
    string
    Wymagane
    Description

    Zdjęcie, na podstawie którego ma zostać utworzony klosz lampy, jako publicznie dostępny URL lub Data URI (data:image/jpeg;base64,<zakodowane w base64 dane obrazu>).

    Obraz musi być plikiem JPG, JPEG, PNG lub WebP o rozmiarze maksymalnie 20 MB.

  • Name
    image_subject
    Type
    string
    domyślne character
    Description

    Rodzaj obiektu na zdjęciu, który określa sposób stylizacji przez Meshy.

    Dostępne wartości:

    • character: pojedyncza postać lub obiekt, taki jak figurka, zwierzę lub maskotka
    • landscape: scena plenerowa lub panorama, taka jak góra, panorama miasta lub las
  • Name
    name
    Type
    string
    Description

    Nazwa zadania, maksymalnie 100 znaków. Jest zwracana w polu name zadania. Dłuższa nazwa zwraca 400.

  • Name
    remove_background
    Type
    boolean
    domyślne false
    Description

    Czy usunąć tło z obrazu prototypu. true zwraca przezroczysty obraz PNG w formacie RGBA, dzięki czemu możesz umieścić obiekt na dowolnym tle. Meshy buduje również model 3D na podstawie obrazu bez tła. Jeśli Meshy nie może usunąć tła, używa obrazu z tłem, a zadanie nadal kończy się powodzeniem.

Zwracane wartości

Pole result zawiera identyfikator nowego zadania prototypu. Pobierz zadanie lub strumieniuj je, aż status przyjmie wartość SUCCEEDED. Następnie przekaż identyfikator do punktu końcowego budowania jako input_task_id.

Tryby błędów

  • 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, ma ponad 20 MB lub przekracza maksymalną liczbę pikseli.
    • Meshy nie może pobrać obrazu, na przykład ponieważ URL zwraca 404 lub upłynął limit czasu.
    • Data URI nie zawiera prawidłowego kodowania base64.
    • Obraz został oznaczony jako NSFW.
    • image_subject nie ma wartości character ani landscape.

    Komunikat błędu wskazuje, jaki problem został wykryty. Popraw żądanie i wyślij je ponownie.

  • Name
    401 - Unauthorized
    Description

    Klucz API jest nieobecny lub nieprawidłowy. Sprawdź nagłówek Authorization.

  • Name
    402 - Payment Required
    Description

    Ma zastosowanie 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 planu bezpłatnego.

    Sprawdź swoje kredyty i plan, a następnie spróbuj ponownie.

  • Name
    403 - Forbidden
    Description

    Twój zespół ma włączoną funkcję IP Filtering, a Meshy oznaczyło obraz jako naruszający prawa własności intelektualnej osób trzecich. Wyślij obraz, do którego posiadasz prawa użytkowania.

  • 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. Odczekaj kilka sekund i spróbuj ponownie. Zobacz Limity szybkości.
    • Zbyt wiele Twoich zadań jest w kolejce lub w trakcie wykonywania. Poczekaj, aż część z nich się zakończy, a następnie spróbuj ponownie.
    • W przypadku planu nielimitowanego bez pozostałych kredytów osiągnięto liczbę zadań, które mogą być uruchomione bez kredytów. Poczekaj na zakończenie zadania lub doładuj kredyty.
  • Name
    500 - Internal Server Error
    Description

    Meshy napotkało błąd serwera, na przykład z powodu niemożności przeprowadzenia kontroli własności intelektualnej obrazu. Meshy nie tworzy zadania i zwraca wszelkie pobrane kredyty. Spróbuj wysłać żądanie ponownie.


POST/openapi/creative-lab/lamp/v1/build

Create a Lamp build task

Generuje części nadające się do druku 3D na podstawie zakończonego powodzeniem zadania prototypu. Meshy skaluje model prototypu do diameter_mm, przecina spód na płasko o cut_amount_percent i wydrąża go do thickness_mm. Z predefiniowanym ustawieniem mocowania otwiera również spód, dodaje płytę podstawy z otworem mocującym i tworzy osobne mocowanie na światło. Informacje o polach zadania znajdziesz w Obiekt zadania budowy lampy.

Request

POST
/openapi/creative-lab/lamp/v1/build
# Stage 2: chain build off a succeeded prototype task
curl https://api.meshy.ai/openapi/creative-lab/lamp/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": {
      "diameter_mm": 120,
      "thickness_mm": 2,
      "light_source_preset": "bambu_mh001_60mm",
      "cut_amount_percent": 30
    },
    "output": {
      "format": "stl"
    }
  }'

Response

{
  "result": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb"
}
Przykład budowy
Zadanie budowy przekształca model 3D prototypu w drukowalne części klosza lampy.
Podgląd modelu budowy lampy w Creative Lab
Podgląd modelu budowy

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/lamp/v1/prototype, ze statusem SUCCEEDED.

    ID, które nie jest jednym z zadań prototypów lampy utworzonych przez API na Twoim koncie, zwraca 404, włącznie z prototypem utworzonym w aplikacji webowej.

  • Name
    name
    Type
    string
    Description

    Nazwa zadania, do 100 znaków. Jest zwracana w polu name zadania. Dłuższa nazwa zwraca 400.

options

Opcjonalne ustawienia kształtu klosza lampy. Każde pole ma wartość domyślną, więc wysyłaj tylko te, które chcesz zmienić.

  • Name
    diameter_mm
    Type
    number
    domyślne 150
    Description

    Rozmiar największego wymiaru klosza lampy, w milimetrach, od 50 do 400. Meshy skaluje model równomiernie, aby pasował. 0 używa wartości domyślnej, a każda inna wartość poza zakresem zwraca 400.

  • Name
    thickness_mm
    Type
    number
    domyślne 1
    Description

    Grubość ścianki klosza lampy, w milimetrach, do 10. 0 używa wartości domyślnej, a wartość ujemna lub wartość powyżej 10 zwraca 400.

  • Name
    cut_amount_percent
    Type
    number
    domyślne 1
    Description

    Procent wysokości modelu do przycięcia na płasko u dołu, od 1 do 100. Płaski spód pozwala klosza lampy stać na stole druku i zostawia miejsce na mocowanie. Wartość poza zakresem zwraca 400.

  • Name
    light_source_preset
    Type
    string
    domyślne bambu_mh001_60mm
    Description

    Predefiniowane ustawienie oprawy oświetleniowej, które określa, jak Meshy buduje spód.

    Dostępne wartości:

    • bambu_mh001_60mm: klosz lampy z otwartym spodem z płytą podstawy z 60 mm otworem mocującym, oba w model_urls.lamp_stl, oraz mocowanie oprawy w model_urls.base_stl
    • none: pojedynczy, zamknięty klosz lampy w model_urls.lamp_stl, bez model_urls.base_stl
  • Name
    fixture_offset_x_mm
    Type
    number
    domyślne 0
    Description

    O ile przesunąć otwór mocujący wzdłuż osi X od środka klosza lampy, w milimetrach, od -80 do 80. Ma zastosowanie tylko, gdy light_source_preset nie jest none.

  • Name
    fixture_offset_z_mm
    Type
    number
    domyślne 0
    Description

    O ile przesunąć otwór mocujący wzdłuż osi Z (głębokość) od środka klosza lampy, w milimetrach, od -80 do 80. Ma zastosowanie tylko, gdy light_source_preset nie jest none.

  • Name
    rotate_x_deg
    Type
    number
    domyślne 0
    Description

    Obrót wokół osi X do zastosowania na modelu przed przetworzeniem przez Meshy, w stopniach, od -360 do 360. Meshy stosuje trzy obroty jako kąty Eulera XYZ wokół środka modelu.

  • Name
    rotate_y_deg
    Type
    number
    domyślne 0
    Description

    Obrót wokół osi Y do zastosowania na modelu przed przetworzeniem przez Meshy, w stopniach, od -360 do 360.

  • Name
    rotate_z_deg
    Type
    number
    domyślne 0
    Description

    Obrót wokół osi Z do zastosowania na modelu przed przetworzeniem przez Meshy, w stopniach, od -360 do 360.

  • Name
    include_result_json
    Type
    boolean
    domyślne false
    Description

    Czy dodać plik result.json do pakietu zip, z nazwą uruchomionego potoku, ostrzeżeniami i ścieżkami plików. Wymaga ustawienia output.format na zip. true z stl zwraca 400.

output

Opcjonalne. Ustawia pliki zwracane przez budowanie.

  • Name
    format
    Type
    string
    domyślne stl
    Description

    Pliki zwracane przez budowanie.

    Dostępne wartości:

    • stl: model_urls.lamp_stl, klosz lampy z płytą podstawy, gdy jest predefiniowane ustawienie mocowania, oraz model_urls.base_stl, gdy light_source_preset nie jest none
    • zip: jeden plik zip w model_urls.bundle_zip, z lamp.stl oraz base.stl i result.json, gdy mają zastosowanie

Zwraca

Pole result zawiera ID nowego zadania budowy. Pobierz zadanie lub przesyłaj je strumieniowo, aż status będzie SUCCEEDED. Następnie pobierz pliki z model_urls.

Tryby awarii

  • Name
    400 - Bad Request
    Description

    Żądanie nie może zostać uruchomione. Na przykład:

    • input_task_id jest brakujący 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 modelu 3D. Utwórz nowe zadanie prototypu.
    • Pole options jest poza zakresem lub nie jest dostępną wartością.
    • output.format nie jest stl ani zip, lub include_result_json jest true bez zip.

    Komunikat błędu wskazuje, jaki problem został znaleziony.

  • Name
    401 - Unauthorized
    Description

    Brak klucza API lub jest on nieprawidłowy. Sprawdź nagłówek Authorization.

  • Name
    402 - Payment Required
    Description

    Zachodzi jedna z poniższych sytuacji:

    • 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
    404 - Not Found
    Description

    input_task_id nie pasuje do żadnego zadania prototypu lampy utworzonego przez Twoje konto za pomocą API. Prototyp utworzony w aplikacji webowej również zwraca 404. Wyślij ID result z odpowiedzi tworzenia prototypu.

  • Name
    429 - Too Many Requests
    Description

    Osiągnięto jeden z poniższych limitów:

    • Wysłano więcej żądań niż pozwala Twój limit szybkości. Poczekaj kilka sekund, a następnie spróbuj ponownie. Zobacz Limity szybkości.
    • Zbyt wiele Twoich zadań jest w kolejce lub uruchomionych. Poczekaj, aż niektóre się zakończą, a następnie spróbuj ponownie.
    • Na planie nieograniczonym bez pozostałych kredytów osiągnięto liczbę zadań, które mogą być uruchomione bez kredytów. Poczekaj, aż zadanie się zakończy, lub dodaj kredyty.

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

Pobierz zadanie Lamp

Zwraca zadanie prototypu lub builda. Ścieżka musi odpowiadać etapowi zadania. Zadanie builda, o które poproszono przez /prototype/:id, zwraca 404, podobnie jak zadanie prototypu, o które poproszono przez /build/:id.

Opis pól znajdziesz w Obiekt zadania prototypu Lamp oraz Obiekt zadania builda Lamp.

Request

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

# Build
curl https://api.meshy.ai/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb \
  -H "Authorization: Bearer ${YOUR_API_KEY}"

Prototype Response

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-lamp-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": 30,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "image_urls": [
    "https://assets.meshy.ai/***/concept.png?Expires=***"
  ]
}

Build Response

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-lamp-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": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}

Parametry

  • Name
    id
    Type
    path
    Description

    Identyfikator zadania z odpowiedzi tworzenia.

Zwraca

Obiekt zadania prototypu lub obiekt zadania builda, odpowiednio do etapu podanego w ścieżce.

Tryby niepowodzenia

  • Name
    400 - Bad Request
    Description

    id nie jest prawidłowym identyfikatorem zadania. Prześlij identyfikator result z odpowiedzi tworzenia.

  • Name
    403 - Forbidden
    Description

    Twój zespół ma włączone IP Filtering, a Meshy oznaczyło obraz zadania prototypu jako naruszający prawa własności intelektualnej osób trzecich. Ten błąd nie dotyczy zadań builda ani zespołów w planie Enterprise. Utwórz zadanie prototypu na podstawie obrazu, do którego masz prawa.

  • Name
    404 - Not Found
    Description

    Żadne zadanie Lamp o tym identyfikatorze nie należy do Twojego konta lub etap zadania nie odpowiada ścieżce. Sprawdź identyfikator i użyj /prototype lub /build, aby dopasować zadanie.

  • Name
    500 - Internal Server Error
    Description

    Meshy nie mogło przeprowadzić kontroli własności intelektualnej. Ponów żądanie.


DELETE/openapi/creative-lab/lamp/v1/(prototype|build)/:id

Usuwanie zadania Lamp

Anuluje zadanie Lamp. Anulowanie zadania ze statusem PENDING zwraca jego kredyty. Zadanie ze statusem IN_PROGRESS jest anulowane bez zwrotu, ponieważ worker już je rozpoczął. Zadania o statusie końcowym (SUCCEEDED, FAILED lub CANCELED) nie można anulować.

Ścieżka musi odpowiadać etapowi zadania. Na przykład DELETE na /prototype/:id z ID zadania typu build zwróci 404.

Request

DELETE
/openapi/creative-lab/lamp/v1/prototype/018a210d-8ba4-705c-b111-1f1776f7f578
curl --request DELETE \
  --url https://api.meshy.ai/openapi/creative-lab/lamp/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.

Zwracane dane

204 No Content z pustym ciałem odpowiedzi.

Tryby błędów

  • Name
    400 - Bad Request
    Description

    Zastosowanie ma jedno z poniższych:

    • id nie jest prawidłowym ID zadania. Wyślij ID result z odpowiedzi tworzenia.
    • Zadanie ma już status końcowy (SUCCEEDED, FAILED lub CANCELED), więc nie można go anulować.
  • Name
    404 - Not Found
    Description

    Żadne zadanie Lamp z tym ID nie należy do Twojego konta, lub etap zadania nie odpowiada ścieżce. Sprawdź ID i użyj /prototype lub /build, aby dopasować zadanie.


GET/openapi/creative-lab/lamp/v1/(prototype|build)/:id/stream

Strumieniuj zadanie Lamp

Strumieniuje aktualizacje zadania Lamp jako Server-Sent Events (SSE). Ścieżka musi odpowiadać etapowi zadania. Jeśli tak nie jest, na przykład gdy identyfikator zadania build zostanie użyty w /prototype/:id/stream, strumień wysyła jedno zdarzenie error z status_code: 404 i zamyka się.

Request

GET
/openapi/creative-lab/lamp/v1/build/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/stream
curl -N https://api.meshy.ai/openapi/creative-lab/lamp/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-lamp-build",
  "status": "SUCCEEDED",
  "progress": 100,
  "created_at": 1729123500000,
  "started_at": 1729123510000,
  "finished_at": 1729123535000,
  "expires_at": 1729382735000,
  "task_error": null,
  "consumed_credits": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}

Parametry

  • Name
    id
    Type
    path
    Description

    Identyfikator 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 Lamp. Gdy zadanie ma status PENDING lub IN_PROGRESS, jego pola wyjściowe są wciąż puste (null, [] lub {}), a finished_at ma wartość null.

Jeśli Filtrowanie IP blokuje wynik zadania, strumień wysyła w jego miejsce jedno zdarzenie error, z status_code, który zwróciłoby żądanie get.


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

Lista zadań Lamp

Zwraca Twoje zadania Lamp z jednego etapu, po jednej stronie na raz. Ścieżka wybiera etap. /prototype zwraca tylko zadania prototypowe, a /build zwraca tylko zadania budowy.

Request

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

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

Response (List Prototype Tasks)

[
  {
    "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
    "type": "creative-lab-lamp-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": 30,
    "model_urls": {
      "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
    },
    "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
    "image_urls": [
      "https://assets.meshy.ai/***/concept.png?Expires=***"
    ]
  }
]

Parametry ścieżki

  • Name
    stage
    Type
    path
    Wymagane
    Description

    Etap do wyświetlenia, prototype lub build.

Parametry zapytania

  • Name
    page_num
    Type
    integer
    domyślne 1
    Description

    Strona do zwrócenia, od 1 do 255. 0 zwraca pierwszą stronę. Wartość spoza zakresu 0 do 255 zwraca 400.

  • Name
    page_size
    Type
    integer
    domyślne 10
    Description

    Liczba zadań na stronę, maksymalnie 100. Wartość od 101 do 255 zwraca 100 zadań, a 0 używa wartości domyślnej. Wartość spoza zakresu 0 do 255 zwraca 400.

  • 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ń prototypowych lub obiektów zadań budowy, zgodnie z etapem podanym w ścieżce.


Obiekt zadania prototypu lampy

Zadanie prototypu generuje matowo-biały obraz koncepcyjny ze zdjęcia i zamienia go w model 3D. Aby utworzyć części do druku, przekaż ID tego zadania do punktu końcowego build jako input_task_id.

Właściwości

Example Lamp Prototype Task Object

{
  "id": "018a210d-8ba4-705c-b111-1f1776f7f578",
  "type": "creative-lab-lamp-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": 30,
  "model_urls": {
    "glb": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/model.glb?Expires=***"
  },
  "thumbnail_url": "https://assets.meshy.ai/***/tasks/018a210d-8ba4-705c-b111-1f1776f7f578/output/preview.png?Expires=***",
  "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-lamp-prototype.

  • Name
    name
    Type
    string
    Description

    name wysłane podczas tworzenia zadania lub "", jeśli go nie wysłano.

  • Name
    status
    Type
    string
    Description

    Status zadania.

    Dostępne wartości:

    • PENDING: oczekuje w kolejce
    • IN_PROGRESS: generowanie wyniku
    • SUCCEEDED: zakończone, z wynikiem
    • FAILED: zakończone, z powodem w task_error
    • CANCELED: zakończone, bez wyniku
  • Name
    progress
    Type
    integer
    Description

    Procent wykonanej pracy, od 0 do 100. Wynosi 0 do czasu rozpoczęcia zadania i 100, gdy zakończy się powodzeniem.

  • Name
    created_at
    Type
    timestamp
    Description

    Czas utworzenia zadania, w milisekundach Unix.

  • Name
    started_at
    Type
    timestamp
    Description

    Czas, kiedy worker rozpoczął zadanie, w milisekundach Unix. null do tego momentu.

  • Name
    finished_at
    Type
    timestamp
    Description

    Czas, kiedy zadanie osiągnęło status końcowy, w milisekundach Unix. null do 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 po created_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. 1 oznacza, że zostanie uruchomione jako następne. 0 po opuszczeniu kolejki przez zadanie i zawsze 0 w wynikach listy.

  • Name
    task_error
    Type
    object
    Description

    Powód niepowodzenia zadania. null, chyba że status to FAILED. 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. Nieudane zadanie ma wartość 0, ponieważ Meshy zwraca za nie kredyty. Anulowanie powoduje zwrot kredytów tylko wtedy, gdy zadanie ma status PENDING. Jeśli Meshy nie może odczytać obciążenia, odpowiedź get lub stream pomija to pole, a żądanie listy zwraca 500. W takim przypadku ponów żądanie.

  • Name
    model_urls
    Type
    object
    Description

    Adresy URL do pobrania modelu 3D wygenerowanego z obrazu koncepcyjnego. {} do czasu powodzenia zadania.

    • Name
      glb
      Type
      string
      Description

      Adres URL do pobrania modelu klosza lampy jako plik GLB. Etap budowy (build) zamienia ten model w części do druku.

  • Name
    thumbnail_url
    Type
    string
    Description

    Adres URL do pobrania obrazu podglądu modelu 3D. "" do czasu powodzenia zadania.

  • Name
    image_urls
    Type
    array of strings
    Description

    Adresy URL do pobrania obrazu koncepcyjnego. Tablica zawiera jeden adres URL po powodzeniu zadania, a do tego czasu jest pusta.


Obiekt zadania budowy lampy

Zadanie budowy zamienia model 3D z ukończonego zadania prototypu na drukowalne części klosza lampy. Meshy wydrąża model i wyrównuje jego spód. Przy zastosowaniu ustawienia wstępnego oprawy, otwiera też spód oraz dodaje płytę podstawy i mocowanie oprawy.

Właściwości

Example Lamp Build Task Object

{
  "id": "019c320e-9a8f-7a1c-9c11-2a1876f8a9bb",
  "type": "creative-lab-lamp-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": 6,
  "model_urls": {
    "lamp_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/lamp.stl?Expires=***",
    "base_stl": "https://assets.meshy.ai/***/tasks/019c320e-9a8f-7a1c-9c11-2a1876f8a9bb/output/base.stl?Expires=***"
  }
}
  • Name
    id
    Type
    string
    Description

    Identyfikator zadania. Nie polegaj na jego formacie.

  • Name
    type
    Type
    string
    Description

    Typ zadania, zawsze creative-lab-lamp-build.

  • Name
    name
    Type
    string
    Description

    Wartość name, którą wysłałeś podczas tworzenia zadania, lub "", jeśli jej nie wysłałeś.

  • Name
    status
    Type
    string
    Description

    Status zadania.

    Dostępne wartości:

    • PENDING: oczekiwanie w kolejce
    • IN_PROGRESS: generowanie wyniku
    • SUCCEEDED: zakończone, z wynikiem
    • FAILED: zakończone, z powodem w task_error
    • CANCELED: zakończone, bez wyniku
  • Name
    progress
    Type
    integer
    Description

    Procent wykonanej pracy, od 0 do 100. Wynosi 0 do czasu rozpoczęcia zadania i 100, gdy zakończy się powodzeniem.

  • Name
    created_at
    Type
    timestamp
    Description

    Czas utworzenia zadania, w milisekundach Unix.

  • Name
    started_at
    Type
    timestamp
    Description

    Czas, w którym worker rozpoczął zadanie, w milisekundach Unix. null do tego momentu.

  • Name
    finished_at
    Type
    timestamp
    Description

    Czas, w którym zadanie osiągnęło status końcowy, w milisekundach Unix. null do 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 po created_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. 1 oznacza, że zostanie uruchomione jako następne. 0 po opuszczeniu kolejki przez zadanie, i zawsze 0 w wynikach list.

  • Name
    task_error
    Type
    object
    Description

    Powód niepowodzenia zadania. null, chyba że status to FAILED. Zobacz Błędy.

  • Name
    consumed_credits
    Type
    integer
    Description

    Liczba kredytów naliczonych za zadanie, po uwzględnieniu ewentualnego zwrotu. Żądanie, które zwraca błąd, nie jest obciążane opłatą. Nieudane zadanie ma wartość 0, ponieważ Meshy zwraca za nie kredyty. Anulowanie powoduje zwrot kredytów za zadanie tylko wtedy, gdy ma ono status PENDING. Jeśli Meshy nie może odczytać opłaty, odpowiedź typu get lub stream pomija to pole, a żądanie listy zwraca 500. W takim przypadku ponów żądanie.

  • Name
    model_urls
    Type
    object
    Description

    Adresy URL do pobrania plików drukowalnych. To, które klucze się pojawią, zależy od output.format i options.light_source_preset.

    • Name
      lamp_stl
      Type
      string
      Description

      Adres URL do pobrania pliku lamp.stl. Przy zastosowaniu ustawienia wstępnego oprawy jest to klosz lampy z otwartym spodem wraz z płytą podstawy, która ma otwór na oprawę. Gdy options.light_source_preset jest ustawione na none, jest to pojedynczy, szczelnie zamknięty klosz lampy. Obecne, gdy output.format to stl.

    • Name
      base_stl
      Type
      string
      Description

      Adres URL do pobrania pliku base.stl, mocowania oprawy oświetleniowej. Obecne, gdy output.format to stl, a options.light_source_preset nie jest ustawione na none.

    • Name
      bundle_zip
      Type
      string
      Description

      Adres URL do pobrania pliku zip zawierającego lamp.stl oraz, jeśli mają zastosowanie, base.stl i result.json. Obecne, gdy output.format to zip; wtedy lamp_stl i base_stl są pomijane.