---
title: "Projects the space-time curves and paths of a number of train schedules onto a given path."
method: POST
path: "/train_schedules/project_path"
tags: ["train_schedule"]
---

# Projects the space-time curves and paths of a number of train schedules onto a given path.

`POST /train_schedules/project_path`

- Returns 404 if the infra or any of the train schedules are not found
- Returns 200 with a hashmap of train_id to ProjectPathTrainResult

## Important:
- The main train projected is the model train schedule without exceptions.
- If there are exceptions defined for the train schedule that have a different projection than the main train,
  they are included in the `exceptions` field of the result.
- The following train schedules are **excluded** from the result:
    - train schedules for which pathfinding fails
    - train schedules for which the simulation fails
- Trains that have a simulation but that does not honor their schedule, use their schedule with straight lines
  between the known points.

## Request body

- ProjectPathForm
  - `electrical_profile_set_id` integer, nullable
  - `ids` integer[], required
  - `infra_id` integer, required
  - `timetable_id` integer, required
  - `track_section_ranges` object[], required
    - `begin` integer, required — The beginning of the range in mm.
    - `direction` 'START_TO_STOP' | 'STOP_TO_START', required
    - `end` integer, required — The end of the range in mm.
    - `track_section` string, required — The track section identifier.

## Response `200`

Project Path Output

- object

---

[API](https://skmtc.net/openrailassociation/apis/osrd-editoast.md) · [All operations](https://skmtc.net/openrailassociation/apis/osrd-editoast/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/openrailassociation/osrd-editoast/versions/1840dbbd64ac/schema)
