Assignments

This section contains a detailed technical explanation of all the endpoints necessary to manage the information related to assignments through the API.

Considerations

Taking into account the data returned by the API in these requests, it is necessary to distinguish between two concepts: assignment and assignments summary.

Assignment

Refers to detailed and specific information about employees, tasks and individual schedules. Each assignment contains the following information:

Structure of an assignment
  • product. Identifier of the product (section) to which the assignment belongs.

  • blockedType. If the assignment is blocked and how (NONE, EXTENSIBLE_WORK, NON_EXTENSIBLE_WORK, EXTENSIBLE_TIME, NON_EXTENSIBLE_TIME, DAILY_WORKED).

  • person. Employee identifier.

  • day. Day of the assignment in yyyy-MM-dd format.

  • presence. Type of assignment that contains the work periods (timeFrames) with their locations. It contains the following fields:

    • startTime. The start time of the presence in minutes from the beginning of the day (00:00). It can be null, as the actual start time can be calculated as the sum of the durations of its time periods (timeFrames).

    • duration. The duration in minutes of the entire presence. Can be null, as the actual duration can be calculated as the sum of the durations of its timeFrames.

    • worked. Whether the type of assignment or presence is worked (true) or if it is a rest day (false).

    • timeFrames. Set of time intervals that contain the tasks to be performed. For each interval, the following information is included:

      • startMinuteDay. Start of the interval in minutes elapsed since the beginning of the day (00:00).

      • duration. Duration of the interval in minutes.

      • paid. Whether the interval, whether work or rest, is paid (true) or not (false).

      • worked. Determines if the timeFrame has an assigned task (true) or is a rest interval (false).

      • location. Task to be performed in the defined interval. For each task, the following information is included:

        • color. Color configured in Orquest for the task.

        • description. Description of the task defined in Orquest.

        • name. Name of the task in Orquest.

        • shortName. Task abbreviation in Orquest.

        • requiredLevel. Skill level required to perform the task. Ranges from 0 (no training needed) to 3 (maximum training level) and must be previously configured in Orquest.

        • priority. Priority of task coverage. Ranges from 0 (low) to 5 (high) and must be previously configured in Orquest.

        • maxResources. Limit of people for the task.

        • type. Type of task, whether it is fixed, variable, or non-plannable (FIXED, VARIABLE, NON_PLANIFIABLE).

        • shouldAvoidOvercover. If this parameter is true, the task will not be overcovered.

        • system. Determines if the task was created by the system (true) or by the user (false).

        • category. Category of the task previously configured in Orquest.

        • product. Identifier of the product or section.

        • id. Identifier of the task.

        • metadata. Any additional data that has been previously configured for the task in Orquest. The metadata structure must be previously configured.

Assignments summary

Provides an overall summary of the number of employees required in specific time slots to cover a task.

Assignments summary
  • location. Task name.

  • locationId. External task identifier.

  • product. External product or section identifier.

  • service. External service or store identifier.

  • timeSlots. Time slots indicating how long employees are needed for the task. Each time slot is 15 minutes long and contains the following fields:

    • from. Start of the time slot in UTC.

    • to. End of the time slot in UTC.

    • total. Number of employees assigned to the time slot.

Thus, while an assignment focuses on the details of each employee’s work during their shift, the assignments summary focuses on the overall staffing needs for tasks, without specifying who will do what work exactly.