Remesh
POST/v1/assets/{id}/remesh
Retopologize an existing AI-generated asset into a brand-new one — keep the silhouette, drop the polycount.
The {id} in the path is the source — any model you generated with Text → 3D, Image → 3D, or an earlier post-process step. Remesh writes the result to a new asset and leaves the original untouched.
Parameters
| Parameter | Description |
|---|---|
| engineOPTIONAL string | Which retopology engine — e.g. pb-remesh, tripo-remesh, tripo-remesh-quad (quad output), meshy-remesh, hunyuan-remesh. Omit for the default. Authoritative list: GET /v1/models?category=remesh. |
| polycountOPTIONAL integer | Target polygon count, 100–2,000,000. The self-hosted pb-remesh engine covers 500–500,000. Omit to let the engine pick. |
| licenseOPTIONAL string | Usage rights for the result. Defaults to private (all-rights-reserved). |
| callbackUrlOPTIONAL string | Push the finished asset to your server instead of polling — see Webhooks. |
Source must be AI-generated Remesh only accepts models PicoBerry generated. An uploaded mesh can't be re-meshed — you'll get
400 with error.code 13005.Request
request
curl -X POST https://api.picoberry.ai/v1/assets/019…/remesh \
-H "Authorization: Bearer pb_live_xxx" -H "Content-Type: application/json" \
-d '{"engine":"tripo-remesh-quad","polycount":8000}'requests.post(f"{BASE}/v1/assets/{id}/remesh", headers=headers,
json={"engine": "tripo-remesh-quad", "polycount": 8000})await fetch(`${BASE}/v1/assets/${id}/remesh`, { method: "POST",
headers: { ...headers, "Content-Type": "application/json" },
body: JSON.stringify({ engine: "tripo-remesh-quad", polycount: 8000 }) });Response
response · 200
{ "success": true, "data": { "id": "019…", "taskStatus": 0 } }That's the create response — a new asset is now processing. Poll GET /v1/assets/{id} until taskStatus is 2, then files.model holds the retopologized mesh. See Async & polling for the loop.
Cost varies by engine PB Remesh starts at 10 credits; the Tripo, Meshy and Hunyuan engines are priced higher. The exact per-engine cost is on
GET /v1/models.