DraftForge

Built to live inside your PLM

Every capability in the studio is exposed as a REST API: drive DraftForge from a Teamcenter dispatcher module, an NX Open journal, an Active Workspace command — or a ten-line script. JSON in, STEP/STL out, webhooks on completion.

REST endpoints
MethodEndpointDescription
POST/api/v1/jobsUpload a drawing (multipart). Optional callback_url form field for a completion webhook. Returns job_id.
GET/api/v1/jobs/{id}Job status, pipeline stages, extracted analysis, parametric recipe, geometry metrics.
POST/api/v1/jobs/{id}/rebuildRegenerate geometry with parameter overrides — the model is fully parametric.
GET/api/v1/jobs/{id}/files/stepDownload AP214 STEP (also: /stl, /recipe, /analysis, /page_1).
POST/api/v1/jobs/demoRun the bundled sample drawing through the full pipeline.
GET/api/v1/healthService, AI provider, geometry kernel and auth status.
# 1. Submit a drawing
curl -s -X POST http://localhost:8112/api/v1/jobs \
  -H "X-API-Key: $DRAFTFORGE_API_KEY" \
  -F "file=@BRK-2041_revC.pdf" \
  -F "callback_url=https://plm.example.com/hooks/draftforge"
# -> {"job_id":"a1b2c3d4e5f6","status":"queued"}

# 2. Poll until done
curl -s http://localhost:8112/api/v1/jobs/a1b2c3d4e5f6 | jq .status

# 3. Pull the STEP into your vault
curl -sO http://localhost:8112/api/v1/jobs/a1b2c3d4e5f6/files/step

# 4. Parametric variant: stretch the part, get new geometry
curl -s -X POST http://localhost:8112/api/v1/jobs/a1b2c3d4e5f6/rebuild \
  -H "Content-Type: application/json" \
  -d '{"parameters": {"base_length": 160, "wall_height": 90}}'

API key auth

Set DRAFTFORGE_API_KEY on the server and every route (except /health) requires the X-API-Key header. Scope one key per integration.

Completion webhooks

Pass callback_url when creating a job and DraftForge POSTs the result when the pipeline finishes — no polling loops in your dispatcher.

Parametric by contract

The recipe JSON is the model. Store it in Teamcenter alongside the STEP; call /rebuild with new parameters to mint size variants on demand.