Suggest: Resources and times for a job
Optimize resources, schedule, and dispatch a job using the optimize/resource_suggestions
endpoint and GraphQL
Skedulo’s optimized scheduling uses two methods for automated job scheduling: Suggest and Optimize.
Skedulo currently supports two optimization endpoints: /planr
and /optimization
.
If you are a new Skedulo user or wanting to implement a new optimization solution via our API, it is recommended that you use /optimization
going forward as /planr
is being deprecated in favor of /optimization
.
Suggest is currently only available through the Planr API. All new batch optimization and schedule requests should be made using Optimization.
The /optimization
endpoint uses the same request types as /planr
You can use Suggest to find the best times to schedule a single job given a set of resources and a specific scheduling window.
Suggest uses real time optimization for schedulers who need to determine the best available resources to allocate work to on demand.
Suggest “suggests” an optimal time and resource to complete the job.
To use Suggest in the Skedulo web application, open the job card for the job that you want to schedule in the Scheduling page.
Click the lightbulb icon on the card to populate the suggested times for you to schedule the job against the resources in your swimlane.
You can use the Planr REST API for two types of Suggest functionality:
The /planr/optimize/suggest
endpoint finds the best time to schedule a job given a set of resources for within a specified scheduling window. The request body provides the job UID , a list of resource IDs, and the scheduling window. The response provides a list of available resources and the time they are available to complete the job.
See the Suggest: times to schedule a job section in this chapter of the developer documentation for more information about how to use the /optimize/suggest
endpoint.
The /planr/optimize/resource_suggestions
endpoint provides a list of resources that are available to complete the job and the time they are available. The request body provides the job UID, a list of resource IDs, and the time window for which you want to check their availability to do the given job. The response provides a list of the resources available during that timeframe, the time they are available to start the job, their current workload capacity, and any constraint violations.
See Suggest: Resources and times for a job for more information about using the resource_suggestions
endpoint.
Certain optimization scheduling options are not available using Suggest APIs:
balanceWorkload
minimizeResources
maxTravelTimeInMinutes
See the API documentation for more information about how to use the Suggest optimized scheduling feature.
Optimize takes a global view of scheduling multiple jobs and resources across a scheduling window. Unlike Suggest, which optimizes a single job, Optimize attempts to look at all possible job scheduling and resource assignments to create a valid scheduling solution.
You can use the Skedulo web application to run Optimize on multiple jobs and resources.
Balanced Workload
, Minimum Resources
, or other settings such as Ignore travel on first job
.The following is an example of optimized scheduling solution using Minimum Resources
in the Skedulo web application:
For information about how to use the Optimize feature in the Skedulo web application, see the knowledge base article: Automate scheduling with optimization.
The /optimization/schedule
endpoint attempts to schedule jobs against a given list of resources and returns a valid schedule. You can use this endpoint to specify availability windows for resources who are available outside the scheduling window for the job/s you want to schedule. This prevents optimization from returning invalid solutions and provides an extra layer of flexibility in optimized job scheduling.
See Optimize for more information about using the /optimize/schedule
endpoint.
See the API documentation for more information about how to use the Optimize feature.
Optimize resources, schedule, and dispatch a job using the optimize/resource_suggestions
endpoint and GraphQL
Optimize resources, schedule, and dispatch a job using the optimize/suggest
endpoint and GraphQL
Find a valid scheduling solution for multiple jobs and resources.
Was this page helpful?