Blender rendering API (HTTP)

For pipelines and your own agents. Everything the MCP tools do is plain HTTP with JSON. A temporary key needs no sign-up.

curl -X POST https://render.janction.jp/v1/keys                       # -> {"api_key": "jr_..."}
curl -X POST https://render.janction.jp/v1/files -H "X-API-Key: $K" -F [email protected]     # -> {"scene_id": "f_..."}
curl -X POST https://render.janction.jp/v1/estimate -H "X-API-Key: $K" -H "Content-Type: application/json" \
     -d '{"kind":"final","frame_start":1,"frame_end":24,"width":1280,"height":720,"samples":64}'   # -> seconds, human, quota
curl -X POST https://render.janction.jp/v1/jobs -H "X-API-Key: $K" -H "Content-Type: application/json" \
     -d '{"scene_id":"f_...","kind":"final","frame_start":1,"frame_end":24,"width":1280,"height":720,"samples":64}'
curl https://render.janction.jp/v1/jobs/j_... -H "X-API-Key: $K"      # status, progress, eta, artifacts[]
curl -o output.mp4 https://render.janction.jp/v1/jobs/j_.../artifacts/output.mp4 -H "X-API-Key: $K"

Endpoints. POST /v1/keys, POST /v1/files, POST /v1/estimate, POST /v1/jobs (kind info | preview | final), GET /v1/jobs/{id}, DELETE /v1/jobs/{id}, GET /v1/jobs/{id}/artifacts/{name}, GET /v1/me, GET /v1/health. Errors: 429 quota_exceeded (with resets_at), 400 beta_limit (job too big; split it), later 402 payment_required.

Security. Each job runs in a disposable container with no network, non-root, capabilities dropped, CPU/memory/time limits. Keys are stored hashed and accepted only in headers. Details on the Security page.

MCP. The same service is an MCP server at https://render.janction.jp/mcp; see MCP server for Blender rendering.

Related

Overview · llms.txt

JANCTION Render v0.2.1 · JasmyLab Inc.