Skip to content

API sandbox

Test /optimize in the browser.

Send a real /optimize request and get back the same ranked JSON your app will receive.

Step 1

Pick a planning shape

Choose construction schedule, delivery routing, or shift staffing — each maps to a real /optimize request body.

Step 2

Send to the live pilot

Press Send to call POST /optimize on the pilot endpoint. If it is offline, you still see a representative fallback response.

Step 3

Copy and integrate

Review the ranked plan, metrics, and JSON. Copy the response or cURL, then wire the same call into your app.

If the live pilot endpoint is offline, you will still see a representative sandbox response so you can explore the response shape.

PreviewPOST /optimizehttps://sparkling-vibrancy-production-1a7a.up.railway.app
Get your API key

Amplitude

Pick a planning shape.

Choose a scenario, review the request shape, then call the live pilot endpoint.

Resequence after a crew delay.

Keep the inspection window without manual reshuffle.

Example constraints (illustrative). The live request uses the scenario template below.

Tip: press Ctrl+Enter or ⌘+Enter to send.

Sandbox response

method: hybridHybrid = classical solve with quantum-aware ranking.

Sample response — press Send to /optimize to call the live API

All tasks fit with no crew conflicts. The inspection stays after framing and the hand-off still lands this week.

Visual plan

Visual plan

Ranked plan

Project days

All tasks fit with no crew conflicts. The inspection stays after framing and the hand-off still lands this week.

D1D2D3D4D5D6D7D8D9

Foundation

Foundation

Foundation

Framing

Framing

Framing

Inspection

Inspection

Inspection

Handoff

Handoff

Handoff
Total Duration Days
9
Constraint Violations
0
Savings Estimate
Approx. 6 idle crew hours avoided
Response

{
  "status": "success",
  "summary": "All tasks fit with no crew conflicts. The inspection stays after framing and the hand-off still lands this week.",
  "solution": [
    {
      "task": "foundation",
      "startDay": 1,
      "endDay": 4
    },
    {
      "task": "framing",
      "startDay": 4,
      "endDay": 8
    },
    {
      "task": "inspection",
      "startDay": 8,
      "endDay": 9
    },
    {
      "task": "handoff",
      "startDay": 9,
      "endDay": 10
    }
  ],
  "metrics": {
    "totalDurationDays": 9,
    "constraintViolations": 0,
    "savingsEstimate": "Approx. 6 idle crew hours avoided"
  },
  "method": "hybrid",
  "details": {
    "solver": "cp-sat",
    "backend": "simulator"
  }
}

This is the JSON body sent on Send. Field edits above are illustrative for now.

API request

{
  "type": "schedule",
  "tasks": [
    {
      "id": "foundation",
      "duration": 3,
      "crew": "Crew A"
    },
    {
      "id": "framing",
      "duration": 4,
      "crew": "Crew B"
    },
    {
      "id": "inspection",
      "duration": 1,
      "crew": "Inspector"
    },
    {
      "id": "handoff",
      "duration": 1,
      "crew": "Crew A"
    }
  ],
  "constraints": [
    "foundation must finish before framing",
    "inspection must happen after framing",
    "handoff must happen after inspection",
    "Crew B unavailable on day 2"
  ]
}