Base URL: https://api.cyberneticphysics.com
All endpoints require a Bearer token or API key in the Authorization header.
Authorization: Bearer cp_live_...
Create API keys at /settings/keys in the dashboard. Keys support scoped permissions: sessions:read, sessions:write, isaac:read, isaac:write, isaac:execute, jobs:read, jobs:write.
GPU-accelerated Isaac Sim instances streamed via WebRTC. Configurable runtime and idle timeouts.
/v1/sessionsAUTHStart a new Isaac Sim session. Provisions a GPU, launches the simulator, and returns a WebRTC viewer URL.
{
"gpuSpec": "RTX_4090", // optional, GPU preference
"maxRuntimeMinutes": 240, // optional, default 240
"idleTimeoutMinutes": 30, // optional, default 30
"envId": "env_...", // optional, load a saved environment
"baseVersionId": "ver_...", // optional, specific version
"fromSessionId": "sess_..." // optional, restart from a previous session
}{
"sessionId": "sess_a1b2c3...",
"status": "queued",
"access": {
"viewerUrl": "https://..."
},
"maxRuntimeMinutes": 240,
"idleTimeoutMinutes": 30,
"costEstimateUsd": 0,
"costPerHour": 0.85
}/v1/sessionsAUTHList sessions for the active workspace.
{
"items": [{ "sessionId": "sess_...", "status": "running", ... }],
"total": 5,
"page": 1,
"pageSize": 25,
"hasMore": false
}/v1/sessions/:idAUTHGet session status, GPU info, viewer URL, and cost.
/v1/sessions/:id/stopAUTHStop a running session and release the GPU.
Save, version, and restore Isaac Sim scenes. Environments are collections of USD assets that persist across sessions.
/v1/envsAUTHCreate a named environment.
{
"name": "warehouse-scene",
"description": "Franka arm in a warehouse setting"
}/v1/envsAUTHList environments with their versions.
/v1/envs/:envId/versionsAUTHUpload a new version of an environment (USD scene bundle). Returns a presigned PUT URL for the upload.
{
"notes": "Added new shelf geometry",
"rootStageRelpath": "scene.usd"
}/v1/sessions/:sessionId/publishAUTHSave the current session's working state as a new environment version.
{
"notes": "Trained policy snapshot",
"stopSessionAfterPublish": false
}Upload photos or video to create simulation-ready USDZ assets. Pipeline: COLMAP → 3DGRUT → USDZ.
/v1/uploads/presignAUTHGet presigned S3 URLs to upload input files. Video uploads accept one file. Photo uploads require at least 3 images.
{
"inputKind": "photos", // "photos" or "video"
"files": [
{ "name": "img_001.jpg", "size": 4200000, "contentType": "image/jpeg" },
{ "name": "img_002.jpg", "size": 3800000, "contentType": "image/jpeg" },
...
]
}{
"uploadId": "upload_...",
"presignedUrls": [
{ "url": "https://...", "fields": { ... }, "expiresAt": "..." }
]
}/v1/jobsAUTHStart a 3D reconstruction job on the uploaded files.
{
"inputUri": "s3://...", // from presign response
"inputKind": "photos",
"config": {
"extractFps": 3, // frames per second (video only)
"maxResolution": 2000, // max image dimension
"exportUsdz": true // generate USDZ output
},
"costGuardrails": {
"maxRuntimeMinutes": 240,
"maxHourlyPrice": 2, // max GPU $/hr
"gpuMinVram": 24 // min GPU VRAM in GB
}
}{
"jobId": "job_...",
"status": "queued",
"costEstimateUsd": 8.0,
"artifacts": null
}/v1/jobsAUTHList reconstruction jobs for the active workspace.
/v1/jobs/:idAUTHGet job status and output artifacts (USDZ, COLMAP sparse cloud, logs).
{
"jobId": "job_...",
"status": "completed",
"artifacts": {
"usdz": "https://...",
"colmapSparse": "https://...",
"logs": "https://..."
},
"costActualUsd": 3.20
}/v1/jobs/:id/cancelAUTHCancel a running reconstruction job.
LLM-guided reward function discovery using IsaacLabEureka. Generates reward candidates, trains policies, and evolves the best reward across iterations.
/v1/eureka/runsAUTHStart an Eureka reward discovery run.
{
"taskId": "Isaac-Cartpole-v0", // IsaacLab task name
"rlLibrary": "rl_games", // "rl_games" or "rsl_rl"
"maxTrainingIterations": 5, // Eureka iterations
"numParallelRuns": 4, // parallel reward candidates per iteration
"seed": 42, // optional
"envId": "env_...", // optional, custom environment
"notes": "Testing reach task rewards" // optional
}{
"jobId": "eureka_...",
"status": "queued",
"taskId": "Isaac-Cartpole-v0",
"currentIteration": 0,
"bestReward": null
}/v1/eureka/runsAUTHList Eureka runs for the active workspace.
/v1/eureka/runs/:idAUTHGet run status, current iteration, best reward score, and LLM token usage.
/v1/eureka/runs/:id/cancelAUTHCancel a running Eureka job.
/v1/eureka/runs/:id/logsAUTHGet training logs streamed from the GPU worker.
/v1/eureka/runs/:id/artifactsAUTHGet the discovered reward function code and policy checkpoint URLs.
Credit-based billing. Purchase credits via Stripe, and GPU usage is metered per second. All amounts in USD.
/v1/meAUTHGet current user profile, workspaces, and active workspace.
{
"user": {
"userId": "...",
"login": "...",
"email": "...",
"avatar": "..."
},
"workspaces": [
{ "id": "ws_...", "type": "personal", "slug": "natalia", "role": "owner" }
],
"activeWorkspaceId": "ws_..."
}/v1/budgetAUTHGet current spending and budget limits.
{
"monthlyBudgetUsd": 100,
"dailyLimitUsd": 20,
"currentMonthSpend": 34.50,
"currentDaySpend": 2.10
}/v1/budgetAUTHSet monthly budget, daily limit, and alert threshold.
{
"monthlyBudgetUsd": 100,
"dailyLimitUsd": 20,
"alertThresholdPercent": 80
}/v1/budget/historyAUTHDaily spending history.
?days=30
Manage API keys for programmatic access and MCP integration.
/v1/api-keysAUTHCreate a new API key with scoped permissions.
{
"name": "claude-code-mcp",
"scopes": ["sessions:write", "isaac:execute"]
}{
"id": "key_...",
"name": "claude-code-mcp",
"prefix": "cp_live_abc",
"key": "cp_live_abc...full_key...",
"scopes": ["sessions:write", "isaac:execute"]
}/v1/api-keysAUTHList API keys for the active workspace.
/v1/api-keys/:idAUTHRevoke an API key.
© 2026 Cybernetic Physics