POST/projects/api/v3/planning/autoschedule/highlights.json

Runs optimisation and computes summary highlights.

Body Params

Request is the shared request body accepted by all four /planning/autoschedule action routes (validate, preview, highlights and persist).

    • Name
      config
      Type
      object
      Description
      Config holds optional tuning parameters for a scheduling request. Every field is an optional pointer: an absent field falls back to its server-side default, which is distinct from sending an explicit zero.
    • Name
      lockedTaskIds
      Type
      array
      Description
      LockedTaskIDs lists tasks whose current assignees must be preserved: the scheduler may move their dates but will not reassign them.
    • Name
      projectIds
      Type
      array
      Description
      ProjectIDs is the set of projects to schedule. Exactly one project id is required; scheduling more than one project in a single request is not currently supported.

    Responses

    • Code
      200
      Type
      object
      Schema
      Description
      200 OK
      HighlightsResponse is the /planning/autoschedule/highlights 200 body. All slice fields are non-nil so JSON serializes as [] not null.
    • Code
      400
      Type
      object
      Schema
      Description
      400 Bad Request
      ErrorResponse defines how []Error should be marshaled to JSON.
    • Code
      403
      Type
      object
      Schema
      Description
      403 Forbidden
      ErrorResponse defines how []Error should be marshaled to JSON.
    • Code
      409
      Type
      object
      Schema
      Description
      409 Conflict
      ErrorResponse defines how []Error should be marshaled to JSON.
    • Code
      422
      Type
      object
      Schema
      Description
      422 Unprocessable Entity
      ErrorResponse defines how []Error should be marshaled to JSON.
    • Code
      500
      Type
      object
      Schema
      Description
      500 Internal Server Error
      ErrorResponse defines how []Error should be marshaled to JSON.
    • Code
      502
      Type
      object
      Schema
      Description
      502 Bad Gateway
      ErrorResponse defines how []Error should be marshaled to JSON.

    Examples

    200 OK

    HighlightsResponse
    {
      "bottlenecks": [
        {
          "activeUsersCount": 0,
          "bottleneckThresholdConfig": 0,
          "date": "string",
          "inactiveUsersPercent": 0,
          "isBottleneck": true,
          "projectId": 0,
          "totalAssignedUsers": 0
        }
      ],
      "dailySummary": [
        {
          "date": "string",
          "projectsBreakdown": [
            {
              "projectId": 0,
              "scheduledEstimatedTime": 0,
              "usersInvolvedCount": 0
            }
          ],
          "total": {
            "scheduledEstimatedTime": 0,
            "usersInvolvedCount": 0
          }
        }
      ],
      "included": {
        "jobRoles": {
          "additionalProp": {
            "billableRatesByCurrencyId": {
              "additionalProp": {
                "createdAt": "string",
                "createdByUserId": 0,
                "rate": {
                  "amount": 0,
                  "currency": {
                    "id": 0,
                    "meta": {},
                    "type": "string"
                  }
                },
                "updatedAt": "string",
                "updatedByUserId": 0,
                "validFrom": "string"
              }
            },
            "costRatesByCurrencyId": {
              "additionalProp": {
                "createdAt": "string",
                "createdByUserId": 0,
                "rate": {
                  "amount": 0,
                  "currency": {
                    "id": 0,
                    "meta": {},
                    "type": "string"
                  }
                },
                "updatedAt": "string",
                "updatedByUserId": 0
              }
            },
            "createdAt": "string",
            "createdByUser": 0,
            "deletedAt": "string",
            "deletedByUser": 0,
            "id": 0,
            "isActive": true,
            "name": "string",
            "placeholderCount": 0,
            "primaryUsers": [
              {
                "id": 0,
                "meta": {},
                "type": "string"
              }
            ],
            "updatedAt": "string",
            "updatedByUser": 0,
            "users": [
              {
                "id": 0,
                "meta": {},
                "type": "string"
              }
            ]
          }
        },
        "users": {
          "additionalProp": {
            "avatarUrl": "string",
            "canAccessPortfolio": true,
            "canAddProjects": true,
            "canManagePortfolio": true,
            "company": {
              "id": 0,
              "meta": {},
              "type": "string"
            },
            "companyId": 0,
            "companyRoleId": 0,
            "createdAt": "string",
            "createdBy": {
              "id": 0,
              "meta": {},
              "type": "string"
            },
            "deleted": true,
            "email": "string",
            "firstName": "string",
            "id": 0,
            "inOwnerCompany": true,
            "isAdmin": true,
            "isClientUser": true,
            "isPlaceholderResource": true,
            "isServiceAccount": true,
            "jobRoles": [
              {
                "id": 0,
                "meta": {},
                "type": "string"
              }
            ],
            "lastLogin": "string",
            "lastName": "string",
            "lengthOfDay": 0,
            "loginTarget": "string",
            "meta": {},
            "siteOwner": true,
            "skills": [
              {
                "id": 0,
                "meta": {},
                "type": "string"
              }
            ],
            "teams": [
              {
                "id": 0,
                "meta": {},
                "type": "string"
              }
            ],
            "timezone": "string",
            "title": "string",
            "type": "string",
            "updatedAt": "string",
            "updatedBy": {
              "id": 0,
              "meta": {},
              "type": "string"
            },
            "userCost": 0,
            "userRate": 0,
            "userRates": {
              "additionalProp": {
                "amount": 0,
                "currency": {
                  "id": 0,
                  "meta": {},
                  "type": "string"
                }
              }
            },
            "workingHour": {
              "id": 0,
              "meta": {},
              "type": "string"
            },
            "workingHoursId": 0
          }
        }
      },
      "jobRoleSummary": [
        {
          "jobRole": {
            "id": 0,
            "meta": {},
            "type": "string"
          },
          "jobRoleId": 0,
          "lockedEstimatedTimeOtherProjects": 0,
          "projectsBreakdown": [
            {
              "assignedEstimatedTime": 0,
              "projectId": 0
            }
          ],
          "totalSelectedProjectsEstimatedTime": 0,
          "totalUnavailableTime": 0,
          "totalWorkingTime": 0
        }
      ],
      "projectSummary": [
        {
          "completionDate": "string",
          "completionOnTime": true,
          "projectId": 0
        }
      ],
      "userSummary": [
        {
          "jobRole": {
            "id": 0,
            "meta": {},
            "type": "string"
          },
          "jobRoleId": 0,
          "lockedEstimatedTimeOtherProjects": 0,
          "projectsBreakdown": [
            {
              "assignedAllocatedTime": 0,
              "assignedEstimatedTime": 0,
              "projectId": 0
            }
          ],
          "totalSelectedProjectsAllocatedTime": 0,
          "totalSelectedProjectsEstimatedTime": 0,
          "totalUnavailableTime": 0,
          "totalWorkingTime": 0,
          "user": {
            "id": 0,
            "meta": {},
            "type": "string"
          },
          "userId": 0
        }
      ]
    }