lowpoly wordt op 30 okt 2026 uitgefaseerd. Stap vóór deze datums over op een ander model om fouten bij verzoeken te voorkomen. Alle afschaffingen bekijken

Formaat wijzigen API

Wijzig het formaat van een 3D-model naar een werkelijke grootte, in meters. Stel de hoogte of de lengte van de langste zijde in, of laat Meshy de werkelijke hoogte van het object schatten.


POST/openapi/v1/resize

Resize-taak aanmaken

Maakt een Resize-taak aan. De taak draait op de achtergrond. Voor de gebruikelijke duur van een taak, zie Verwerkingstijden.

Request

POST
/openapi/v1/resize
# 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"
  }'

Response

{
  "result": "0193bfc5-ee4f-73f8-8525-44b398884ce9"
}

Parameters

  • Name
    input_task_id
    Type
    string
    Verplicht
    Description

    Vereist, tenzij u model_url meestuurt. De ID van een taak die een 3D-model heeft opgeleverd, bijvoorbeeld een Tekst naar 3D-, Afbeelding naar 3D-, Remesh- of Hertextureren-taak. De taak moet afkomstig zijn van de API en de status SUCCEEDED hebben. Meshy retourneert het formaat-gewijzigde model als een GLB-bestand.

  • Name
    model_url
    Type
    string
    Verplicht
    Description

    Vereist, tenzij u input_task_id meestuurt. Het model waarvan het formaat moet worden gewijzigd, als een openbare URL of een data-URI. Als u beide meestuurt, gebruikt Meshy input_task_id.

    Het model moet een GLB-, glTF-, OBJ-, FBX- of STL-bestand zijn van maximaal 400 MB vanaf een http- of https-URL, of 100 MB als data-URI. Gebruik voor een data-URI het MIME type application/octet-stream.

    Een bestand groter dan 100 MB moet ook aan deze regels voldoen:

    • Een GLB-, glTF-, FBX- of OBJ-bestand mag maximaal 10.000.000 vlakken hebben. Meshy telt vlakken als driehoeken, dus een vierhoek telt als 2, en een mesh die meerdere keren is getekend telt één keer per kopie.
    • Een FBX-bestand moet binaire FBX 7.1 of nieuwer zijn.
    • Een GLB- of glTF-bestand mag geen Draco-compressie gebruiken.

    Een GLB-, OBJ-, FBX- of STL-bestand behoudt zijn formaat in het resultaat. Een .gltf-bestand of een data-URI komt terug als GLB.

Stuur precies één van resize_height, resize_longest_side, of auto_size mee. Als u er geen of meer dan één meestuurt, retourneert dit 400.

  • Name
    resize_height
    Type
    number
    Description

    De nieuwe hoogte van het model in meters, groter dan 0. Een negatieve waarde retourneert 400.

  • Name
    resize_longest_side
    Type
    number
    Description

    De nieuwe lengte van de langste zijde van het model in meters, groter dan 0. Een negatieve waarde retourneert 400. Meshy behoudt de beeldverhouding van het model.

  • Name
    auto_size
    Type
    boolean
    Description

    Of de werkelijke hoogte van het object moet worden geschat met AI-visie en het model daarop moet worden aangepast. Tenzij u origin_at instelt, plaatst Meshy de oorsprong onderaan.

  • Name
    origin_at
    Type
    string
    standaard bottom
    Description

    Waar de oorsprong van het model na het wijzigen van het formaat moet worden geplaatst, bottom of center.

Retourneert

Het veld result van de respons bevat de ID van de nieuwe Resize-taak.

Faalmodi

  • Name
    400 - Bad Request
    Description

    Het verzoek kan niet worden uitgevoerd. Het foutbericht geeft aan welk probleem er is gevonden. Bijvoorbeeld:

    • Ontbrekende parameter: Noch model_url noch input_task_id is meegestuurd.
    • Ontbrekende resize-mode: Geen van resize_height, resize_longest_side en auto_size is meegestuurd.
    • Elkaar uitsluitende parameters: Het verzoek bevat meer dan één van resize_height, resize_longest_side en auto_size. Stuur er maar één.
    • Negatieve grootte: resize_height of resize_longest_side is negatief.
    • Ongeldige invoertaak: input_task_id is geen geslaagde API-taak met een modelbestand.
    • Ongeldig modelformaat: Het model_url-bestand heeft een niet-ondersteunde extensie.
    • Onbereikbare URL: Meshy kan het model_url-bestand niet downloaden.
    • Modelbestand te groot: Het model_url-bestand is groter dan 400 MB vanaf een http- of https-URL, of groter dan 100 MB als data-URI.
    • Te veel vlakken: Het model_url-bestand is groter dan 100 MB en heeft meer dan 10.000.000 vlakken. Verminder het aantal vlakken en stuur het bestand opnieuw.
    • ASCII FBX groter dan 100 MB: Het model_url-bestand is een ASCII FBX groter dan 100 MB. Stuur het als binaire FBX of GLB.
    • Onleesbaar modelbestand: Het model_url-bestand is groter dan 100 MB en Meshy kan de header niet lezen. Bijvoorbeeld een Draco-gecomprimeerde GLB of glTF, of een binaire FBX ouder dan 7.1.
    • Modelheader te complex: Het model_url-bestand is groter dan 100 MB en de header bevat te veel meshes, nodes of records om te controleren. Verminder het aantal objecten in het bestand en stuur het opnieuw.

    Corrigeer het verzoek en stuur het opnieuw. Zie Fouten.

  • Name
    401 - Unauthorized
    Description

    De API-sleutel ontbreekt of is ongeldig. Controleer de Authorization-header.

  • Name
    402 - Payment Required
    Description

    Bijvoorbeeld:

    • Onvoldoende credits: Het account heeft onvoldoende credits voor deze taak, of het account heeft een creditlimiet bereikt. Controleer uw credit-saldo en probeer het opnieuw.
    • Gratis abonnement: Het aanmaken van een taak vereist een betaald abonnement. Upgrade uw abonnement in uw abonnementsinstellingen en probeer het opnieuw.
  • Name
    403 - Forbidden
    Description

    input_task_id is een bas-reliëfmodel, waarvoor deze endpoint het formaat niet kan wijzigen. Het bericht is This model type does not support this operation. Stuur een ander model.

  • Name
    404 - Not Found
    Description

    input_task_id komt niet overeen met een van uw taken. Controleer de taak-ID en stuur het verzoek opnieuw.

  • Name
    429 - Too Many Requests
    Description

    U heeft uw rate limit overschreden. Wacht en probeer het opnieuw. Zie Rate limits.


GET/openapi/v1/resize/:id

Haal een Formaat wijzigen-taak op

Retourneert een Formaat wijzigen-taak op basis van de ID.

Request

GET
/openapi/v1/resize/:id
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
}

Parameters

  • Name
    id
    Type
    path
    Description

    De taak-ID uit de aanmaakreactie.

Retourneert

Het Formaat wijzigen-taakobject.


DELETE/openapi/v1/resize/:id

Een Resize-taak verwijderen

Verwijdert een Resize-taak permanent, inclusief de bijbehorende modellen en gegevens. Je kunt een verwijdering niet ongedaan maken.

Request

DELETE
/openapi/v1/resize/:id
curl --request DELETE \
  --url https://api.meshy.ai/openapi/v1/resize/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 keeps 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."
}

Padparameters

  • Name
    id
    Type
    path
    Description

    De ID van de te verwijderen taak.

Taakstatus

Het verwijderen van een PENDING-taak betaalt de credits terug die je gebruikte toen je de taak aanmaakte.

Een IN_PROGRESS-taak kan niet worden verwijderd. Het verzoek geeft 409 Conflict terug, en de taak blijft doorlopen. Meshy betaalt geen credits terug voor een taak die al is gestart, dus het verwijderen ervan zou je zowel de credits als het resultaat kosten. Wacht tot de taak SUCCEEDED, FAILED of CANCELED bereikt, en verwijder deze dan.

Het verwijderen van een taak met een eindstatus (SUCCEEDED, FAILED of CANCELED) betaalt de credits niet terug.

Retourwaarden

200 OK wanneer de taak is verwijderd, of 409 Conflict wanneer de taak IN_PROGRESS is.


GET/openapi/v1/resize

Resize-taken weergeven

Geeft een lijst van uw Resize-taken terug.

Request

GET
/openapi/v1/resize
curl https://api.meshy.ai/openapi/v1/resize?page_size=10 \
-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
  }
]

Parameters

  • Name
    page_num
    Type
    integer
    standaard 1
    Description

    Het terug te geven paginanummer, tot 255. Een grotere waarde geeft 400 terug.

  • Name
    page_size
    Type
    integer
    standaard 10
    Description

    Het aantal taken per pagina, tot 100.

  • Name
    sort_by
    Type
    string
    Description

    De sorteervolgorde.

    Beschikbare waarden:

    • +created_at: oudste eerst
    • -created_at: nieuwste eerst

Retourneert

Een gepagineerde lijst van Resize-taakobjecten.


GET/openapi/v1/resize/:id/stream

Een Resize-taak streamen

Streamt de updates van een Resize-taak als Server-Sent Events (SSE).

Request

GET
/openapi/v1/resize/:id/stream
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
}

Parameters

  • Name
    id
    Type
    path
    Description

    De taak-ID uit de create-respons.

Retourwaarden

Een stream van Resize-taakobjecten als Server-Sent Events.

Elke event bevat het volledige taakobject, in dezelfde vorm als de Get-endpoint teruggeeft. Zolang de taak PENDING of IN_PROGRESS is, hebben de resultaatvelden nog geen waarden.


Het Resize-taakobject

Een Resize-taakobject beschrijft één formaatwijziging van een 3D-model. Het bevat de status, de progress, en het modelbestand wanneer de taak slaagt.

Eigenschappen

  • Name
    id
    Type
    string
    Description

    De taak-ID. Behandel dit als een ondoorzichtige tekenreeks en vertrouw niet op het formaat ervan.

  • Name
    type
    Type
    string
    Description

    Het taaktype, altijd resize.

  • Name
    model_urls
    Type
    object
    Description

    Download-URL voor het bestand van het model met gewijzigd formaat. Voor input_task_id is het bestand altijd GLB. Voor model_url behoudt een GLB-, OBJ-, FBX- of STL-bestand zijn formaat, en komt een .gltf-bestand of een Data URI terug als GLB.

  • Name
    progress
    Type
    integer
    Description

    Hoeveel van de taak is voltooid, als percentage. Dit is 0 totdat de taak start en 100 wanneer deze slaagt.

  • Name
    status
    Type
    string
    Description

    De taakstatus, een van PENDING, IN_PROGRESS, SUCCEEDED, FAILED, of CANCELED.

  • Name
    preceding_tasks
    Type
    integer
    Description

    Het aantal taken dat voor deze taak in de wachtrij staat. De waarde is alleen relevant zolang de taak PENDING is.

  • Name
    created_at
    Type
    timestamp
    Description

    Tijdstip waarop de taak is aangemaakt, in Unix-milliseconden.

  • Name
    started_at
    Type
    timestamp
    Description

    Tijdstip waarop de taak is gestart, in Unix-milliseconden. Dit is 0 totdat de taak start.

  • Name
    finished_at
    Type
    timestamp
    Description

    Tijdstip waarop de taak is beëindigd, in Unix-milliseconden. Dit is 0 totdat de taak is beëindigd.

  • Name
    expires_at
    Type
    timestamp
    Description

    Tijdstip waarop de download-URL's van de taak verlopen, in Unix-milliseconden. Dit is 0 totdat de taak is beëindigd.

  • Name
    texture_urls
    Type
    array
    Description

    Download-URL's voor de textuurmaps van het model, wanneer de taak slaagt: een array van objecten, één per textuurset. Elk object heeft een base_color-URL, en kan ook metallic-, roughness-, normal-, emission- en metallic_roughness-URL's bevatten. Dit is null totdat de taak slaagt, en een lege array wanneer het model geen textuurmaps heeft.

  • Name
    task_error
    Type
    object
    Description

    De foutdetails wanneer de taak mislukt. Zie Fouten.

  • Name
    consumed_credits
    Type
    integer
    Description

    Het aantal credits dat de taak heeft gebruikt, wat 1 is voor een Resize-taak. Dit is 0 voor een FAILED-taak.