POST api/ProjectSchedule

Schedules the specified input project data by applying the specified operations and using the specified settings. Project size is limited to 1024 tasks.

Request Information

URI Parameters

None.

Body Parameters

ScheduleInput
NameDescriptionTypeAdditional information
EnsureValidHierarchy

Resets any invalid indentation values in order to obtain a valid task hierarchy.

boolean

None.

EnsureTimeScheduleConstraints

Updates standard task time values according to the general schedule.

boolean

None.

EnsureTimeLimitConstraints

Updates standard task time values according to the item's minimum and maximum start and finish values.

boolean

None.

RemoveCircularDependencies

Removes predecessor items that generate circular dependencies, either explicitely or implicitely in the hierarchy.

boolean

None.

EnsureDependencyConstraints

Ensures that dependency constrains between tasks are enforced.

boolean

None.

SummarizeParentTimeValues

Updates parent task time values according to the child item time values.

boolean

None.

SplitAllRemainingWork

Creates and inserts partial copies of the standard started task items that have not yet been fully completed considering their remaining work effort into the managed hierarchy, and updates the finish date and times of the original task items to their completion points. Used as preparation for rescheduling the remaining work effort task items, such as before leveling resources.

boolean

None.

OptimizeWork

Optimizes schedule times of all managed items in order to optimize the project finish date without leveling resources, respecting dependency constraints.

boolean

None.

LevelAllocations

Levels the assigned allocation units assuming that all tasks within the component are fixed duration and effort driven.

boolean

None.

LevelResources

Levels the assigned resources from all standard tasks within the component in order to avoid over allocation, by updating task timing values accordingly. The resource leveling algorithm is applied starting from the current date and time, and without considering already started tasks.

boolean

None.

ProjectXml

Input project data.

string

None.

LicenseXml

DlhSoft license XML content to use (required in production).

string

None.

Request Formats

application/json, text/json

Sample:
{
  "EnsureValidHierarchy": true,
  "EnsureTimeScheduleConstraints": true,
  "EnsureTimeLimitConstraints": true,
  "RemoveCircularDependencies": true,
  "EnsureDependencyConstraints": true,
  "SummarizeParentTimeValues": true,
  "SplitAllRemainingWork": true,
  "OptimizeWork": true,
  "LevelAllocations": true,
  "LevelResources": true,
  "ProjectXml": "sample string 11",
  "LicenseXml": "sample string 12"
}

application/xml, text/xml

Sample:
<ProjectScheduleService.ScheduleInput xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ProjectManagementServices">
  <LicenseXml>sample string 12</LicenseXml>
  <ProjectXml>sample string 11</ProjectXml>
  <EnsureDependencyConstraints>true</EnsureDependencyConstraints>
  <EnsureTimeLimitConstraints>true</EnsureTimeLimitConstraints>
  <EnsureTimeScheduleConstraints>true</EnsureTimeScheduleConstraints>
  <EnsureValidHierarchy>true</EnsureValidHierarchy>
  <LevelAllocations>true</LevelAllocations>
  <LevelResources>true</LevelResources>
  <OptimizeWork>true</OptimizeWork>
  <RemoveCircularDependencies>true</RemoveCircularDependencies>
  <SplitAllRemainingWork>true</SplitAllRemainingWork>
  <SummarizeParentTimeValues>true</SummarizeParentTimeValues>
</ProjectScheduleService.ScheduleInput>

application/x-www-form-urlencoded

Sample:

Sample not available.

Response Information

Resource Description

ScheduleOutput
NameDescriptionTypeAdditional information
ProjectXml

Output project data.

string

None.

Response Formats

application/json, text/json

Sample:
{
  "ProjectXml": "sample string 1"
}

application/xml, text/xml

Sample:
<ProjectScheduleService.ScheduleOutput xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/ProjectManagementServices">
  <ProjectXml>sample string 1</ProjectXml>
</ProjectScheduleService.ScheduleOutput>