Print-ready GLB/STL from text or image. Printer profiles baked in.
Describe a shape — or upload a reference photo — and get a mesh ready to slice. Not a pretty render that collapses on the print bed.
42 3D Creative runs generation, auto-repair (hole filling, normal fixing, watertight check), and then tailors the output to your printer: resin supports auto-generated for Elegoo / Anycubic / Phrozen presets, FDM overhang and draft checks for filament machines. Target size in millimetres is a first-class parameter.
Art-deco chess knight, 60mm tall, resin printer (Elegoo Saturn). Miniature style, no base supports needed. Try →Functional bracket to mount a GoPro under a desk lip — 40mm wide, 4mm thick, two M3 holes. FDM PLA. Try →Low-poly dragon figurine, 80mm tall, cartoon style, FDM Prusa i3. Optimise for minimal supports. Try →Single endpoint, JSON in, URL out. Standard REST — works with any HTTP client, n8n, Make, Zapier, and MCP.
curl -X POST https://api.42rows.com/v1/3d-creative \
-H "Authorization: Bearer sk_..." \
-H "Content-Type: application/json" \
-d '{
"prompt": "art-deco chess knight, 60mm, resin printer",
"quality": "standard",
"target_size_mm": 60,
"printer": "elegoo-saturn",
"format": "stl"
}'Out of the box: Elegoo Mars/Saturn, Anycubic Photon/Mono X, Phrozen Sonic series (resin); Prusa i3, Bambu Lab X1, Ender 3 (FDM). Generic "any-FDM" and "any-resin" profiles are available as fallbacks.
Yes — set `supports: false` in the request. Supports are added only when you pick a resin printer profile and leave it enabled.
Up to 300mm in the longest dimension. Larger prints need to be split manually in your slicer.
Yes. Pass `image_url` instead of `prompt`. Works best with a single object on a plain background — cluttered photos confuse the reconstructor.
In standardised testing the mesh passes slicer validation with zero repairs in 90%+ of runs. The remaining 10% typically involves very thin walls that are physically unprintable at the chosen size — the API flags these in the response.
Try it in the public terminal or get an API key.