Catalog/sched-gantt

Scheduling

Gantt schedule from deps API

Builds a Gantt schedule from tasks with finish-to-start dependencies via an earliest-start forward pass, counting durations in working days only and detecting cycles. Answers 'What are the start/end dates of each task given dependencies?', 'When does the project finish?'.

Price$0.03per request
MethodPOST
Route/v1/scheduling/gantt
StatusLive
MIME typeapplication/json
Rate limit120/minute
Cache0s public
schedulingprojectganttdependenciesforward-passworking-daysplanningagents
API URLhttps://x402.hexl.dev/v1/scheduling/gantt
Integration docs
Example request
{
  "projectStart": "2026-06-01",
  "tasks": [
    {
      "id": "design",
      "durationDays": 3
    },
    {
      "id": "build",
      "durationDays": 5,
      "deps": [
        "design"
      ]
    },
    {
      "id": "test",
      "durationDays": 2,
      "deps": [
        "build"
      ]
    }
  ]
}
Example response
{
  "projectStart": "2026-06-01",
  "projectEnd": "2026-06-12",
  "durationWorkingDays": 10,
  "durationCalendarDays": 12,
  "schedule": [
    {
      "id": "design",
      "durationDays": 3,
      "start": "2026-06-01",
      "end": "2026-06-03"
    },
    {
      "id": "build",
      "durationDays": 5,
      "start": "2026-06-04",
      "end": "2026-06-10"
    },
    {
      "id": "test",
      "durationDays": 2,
      "start": "2026-06-11",
      "end": "2026-06-12"
    }
  ],
  "interpretation": "3 tasks finish by 2026-06-12 (10 working days)."
}
Input schema
{
  "type": "object",
  "required": [
    "projectStart",
    "tasks"
  ],
  "properties": {
    "projectStart": {
      "type": "string",
      "examples": [
        "2026-06-01"
      ]
    },
    "tasks": {
      "type": "array",
      "items": {
        "type": "object"
      }
    },
    "workweek": {
      "type": "array",
      "items": {
        "type": "number"
      },
      "examples": [
        [
          1,
          2,
          3,
          4,
          5
        ]
      ]
    }
  }
}
Output schema
{
  "type": "object",
  "additionalProperties": true
}