---
title: "Models - execute a parametric model"
method: POST
path: "/api/v1/models/{modelName}"
tags: ["Models"]
---

# Models - execute a parametric model

`POST /api/v1/models/{modelName}`

Generic endpoint - works for any registered model. See model-specific endpoints for fully typed parameters. Always returns 202 with a task ID for polling.

## Path parameters

- `modelName` string, required

## Request body

- ModelSubmissionBody — Submit a parametric model for generation with specified parameters and output formats
  - `params` object — Model-specific parameters. Omitted params use their defaults. See model definition for available options.
  - `outputs` OutputOptions, required — Controls which output formats are generated and their quality settings
    - `formats` OutputFormat[], required — Output formats to generate. Multiple formats can be requested (e.g. ['gltf', 'stpz']) - each produces a separate downloadable result. Do not include both 'step' and 'stpz' - only one STEP variant is supported per request.
    - `meshPrecision` number — Mesh tessellation precision (lower = finer). Range: [0.0001, 10]
    - `gltfMeshPrecision` number — Mesh tessellation precision (lower = finer). Range: [0.0001, 10]
    - `adjustYtoZ` boolean — Convert from Y-up to Z-up coordinate system in the output. Useful for software that expects Z-up.

## Response `202`

Task accepted

- TaskAcceptedResponse — HTTP 202 response when a task is accepted for async processing
  - `ok` true, required
  - `data` TaskCreatedResult, required — Returned when a CAD task is accepted. Poll the statusUrl to track progress.
    - `taskId` string, uuid, required — Unique task identifier - use this to poll for status and retrieve results
    - `status` 'queued', required — Initial task status (always 'queued' upon creation)
    - `statusUrl` string, required — Relative URL to poll for task status updates

## Other responses

- `400` — Validation error
- `404` — Not found
- `500` — Server error

## Changes

- **2026-05-04** `43c3bc84d7c1` — 2 info
  - the `outputs/gltfMeshPrecision` request property's min was decreased from `0.01` to `0.00`
  - the `outputs/meshPrecision` request property's min was decreased from `0.01` to `0.00`
- **2026-04-30** `bef883f8a334` — 1 breaking, 13 info
  - added 'propertyNames' constraint to the request property `params`
  - api operation id `generateModel` removed and replaced with ``
  - the `adjustYtoZ` request property default value `false` was removed
  - added the non-success response with the status `500`
  - …10 more
- **2026-04-17** `5eb4ed0f33c7` — 8 breaking, 4 warning, 4 info
  - the `outputs/gltfMeshPrecision` request property's min was increased to `0.01`
  - the `outputs/meshPrecision` request property's min was increased to `0.01`
  - the response property `data` became optional for the status `202`
  - the response property `ok` became optional for the status `202`
  - …12 more

[Change history](https://skmtc.dev/bitbybit-dev/apis/bitbybit-cad-cloud-api/changes/api/v1/models/:modelName/post.md)

---

[API](https://skmtc.dev/bitbybit-dev/apis/bitbybit-cad-cloud-api.md) · [All operations](https://skmtc.dev/bitbybit-dev/apis/bitbybit-cad-cloud-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/bitbybit-dev/bitbybit-cad-cloud-api/revisions/1135d4473bc2/schema)
