API (no authentication)
# Text -> GLB
curl -X POST https://chars.kriskraw.com/api/generate -F "prompt=a red dragon"
# Image -> GLB
curl -X POST https://chars.kriskraw.com/api/generate -F "image=@photo.jpg"
# Generate + skeleton + animations in one job (clips optional, default all)
curl -X POST https://chars.kriskraw.com/api/generate \
-F "prompt=a red dragon" -F "rig=true" -F "clips=idle,walk,run"
# Poll (status: queued | running | done | error)
curl https://chars.kriskraw.com/api/jobs/JOB_ID
# Download when done
curl -o model.glb https://chars.kriskraw.com/api/models/JOB_ID.glb
# Rig & animate: adds a Mixamo-compatible skeleton + idle/walk/run clips
# (humanoid models, best generated in a T-pose). Poll the returned job id.
curl -X POST https://chars.kriskraw.com/api/rig -F "job_id=JOB_ID"
curl -X POST https://chars.kriskraw.com/api/rig -F "glb=@model.glb"
# Optional: include only some clips (list them: GET /api/rig/clips)
curl -X POST https://chars.kriskraw.com/api/rig -F "job_id=JOB_ID" -F "clips=idle,run"
Full interactive documentation:
chars.kriskraw.com/api/docs