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.
JANCTION Render v0.2.1 · JasmyLab Inc.