Printy3D

Mesh preparation API

Print-ready 3D models from any file, over an API.

Upload a model and Printy3D inspects it, repairs it into a watertight solid that keeps its textures, or runs a tool on it: cut, lattice, label, thickness and strength checks. A STEP model can be checked exactly, as designed. From your code, over plain HTTP or the Python and TypeScript SDKs.

Test keys run free, simulated jobs as soon as you sign up. Live GPU jobs start once our team has approved your account.

POST /v1/jobs
curl https://printy3d-api-staging.onrender.com/v1/jobs \
  -H "Authorization: Bearer $PRINTY3D_API_KEY" \
  -H "Idempotency-Key: $(uuidgen)" \
  -H "Content-Type: application/json" \
  -d '{
    "input_file_id": "file_01JB7Q4V6Y8M2N3P4R5S6T7V8W",
    "recipe": "repair",
    "params": { "printer": "mimaki",
                "scale": { "mode": "target", "value": 6, "unit": "in" } }
  }'
GET /v1/jobs/{id} (abridged)
{
  "id": "job_01JB7Q9K2C4D6F8G0H2J4K6M8N",
  "recipe": "repair",
  "status": "succeeded",
  "result": {
    "before": { "is_watertight": false, "shells": 14, "faces": 412806 },
    "after":  { "is_watertight": true,  "shells": 1,  "faces": 388120 },
    "printability_score": 100,
    "applied": { "sources": { "wall_thickness_mm": "printer",
                              "close_holes_mm": "recommended" } }
  },
  "usage": { "held_credits": 1800, "charged_credits": 312,
             "charge_basis": "run_time" }
}

Four kinds of job

Every job takes one uploaded file and returns verified artifacts you can download.

Inspect

Know what you have before you print it.

  • Size, volume, surface area, shells, watertightness
  • Repair settings the engine recommends, per print size
  • Eight thumbnails and a GLB preview for the web
Inspect docs

Repair

One closed, printable solid, colour kept.

  • Holes closed, walls thickened, narrow gaps filled
  • Profiles for figures, mechanical parts and vehicles
  • GLB, OBJ with textures, 3MF; before/after analysis
Repair docs

Tools

One operation, when you need exactly that.

  • Cut with alignment keys, mirror, lattice infill, labels
  • Wall thickness, measurements, format conversion
  • Structural checks: stress, fragility, FEA
Tools docs

Exact Check

Will this CAD model print? Measured as designed.

  • STEP parts and assemblies, nothing changed
  • Thinnest walls, narrow gaps, parts that touch or overlap
  • Free verdicts for any process, material and scale
Exact Check docs

How it works

  1. Upload

    Reserve a file, PUT the bytes straight to storage, complete it. Resumable multipart uploads up to 1 GiB for approved accounts.

  2. Run a job

    Inspect, repair, a tool or Exact Check. Jobs queue for a GPU (Exact Check for a CPU worker) and report their stage, progress and queue position.

  3. Download

    Every output is an artifact with its size and SHA-256, behind a short-lived download URL.

  4. Export

    Need STL, PLY, 3MF, OBJ or GLB instead? Ask for an export and Printy3D converts the result.

22 input formats

Game assets, sculpts, scans, CAD, Gaussian splats, LiDAR and DICOM, as single files or archives.

Meshes

  • STL
  • OBJ
  • 3MF
  • PLY
  • GLB
  • GLTF
  • FBX
  • VRM
  • WRL
  • DAE
  • OFF

CAD

  • STEP
  • STP

Scans & medical

  • PLY splats
  • LAS
  • LAZ
  • DCM
  • DICOM

Archives

  • ZIP
  • TAR
  • TGZ
  • TAR.GZ
  • RAR

Formats reference

Textures preserved

Send a GLB, 3MF, VRM or FBX, or a ZIP of an OBJ with its MTL and texture images. A repair rebuilds the surface and projects the texture back onto it, so the print-ready mesh comes back in full colour.

Transparent texture areas can cut the geometry (hair cards, lace), and material colours can be blended into a single texture.

Built to integrate

  • Test mode

    p3d_test_ keys run jobs free in a sandbox with simulated results, so your integration is done before you go live.

  • Safe retries

    Every create takes an Idempotency-Key: a retried request never runs or charges a job twice.

  • Clear errors

    RFC 9457 problem documents with a stable code, a human detail and a request id.

  • Pay per second

    1 credit = 1 second of GPU run time. Queue time is free; failures on our side cost nothing.

  • Transparent queue

    Queued jobs report their position, estimated start and the fleet's capacity.

  • SDKs

    Python and TypeScript clients with one-call uploads, waiting and verified downloads, coming soon to PyPI and npm. SDK docs

How access works

  1. Sign up

    Create an account. You get a personal account with nothing else to set up.

  2. Build with test keys

    Create a test key in the console right away and build your integration against the sandbox: free jobs with simulated, placeholder results.

  3. Approved by our team

    We review every new account. Once yours is approved, live keys run the real engine on GPUs and your credits appear in the console.

Start building today

Sign up, create a test key and run your first job in minutes.