Customizing Skedulo picklist values

Managing object picklists in the Skedulo web application

Skedulo web application picklists

The Skedulo web application includes a number of picklists or drop-down menus on objects such as Jobs, Resources, Activities, and Regions.

For example, the Jobs.Type picklist is a required field on all jobs creating using the Skedulo web application (but is not required when creating a job using the API):

Job Type picklist

Picklists and their values can be modified using REST API.

You can access picklist items as part of the Custom fields API.

Retrieve picklist names and values

You can get an idea of the schema name and field name of the picklist from the Skedulo web application.

For example, the Job.Type picklist is on the Create Job page as well as the job details page and the list is called Type.

The endpoint to view or modify the picklist values for Job.Type is /custom/vocabulary/Jobs/Type.

However, sometimes the schema name and field name for the list may not be obvious and you need to look up the names so that you can identify the correct endpoint.

You can use the Skedulo Lens API to retrieve a complete list of Skedulo picklists and their field values from /custom/vocabularies.

curl --request GET \
  --url https://api.skedulo.com/custom/vocabularies \
  --header 'authorization: Bearer $AUTH_TOKEN'

This returns a JSON encoded list of all fields defined as picklists in Skedulo. This includes any picklist fields on custom objects and their field values.

To retrieve picklists for a specific Skedulo object or custom object, you can use the name of the object appended to the endpoint.

For example, you can return all picklists for the Resources object using the following request:

curl --request GET \
  --url 'https://api.skedulo.com/custom/vocabularies?names=Resources' \
  --header 'authorization: Bearer $AUTH_TOKEN'

You can also retrieve a specific picklist’s items using /custom/vocabulary/{schemaName}/{fieldName}.

For example, the following request returns just the Resources.Category picklist field value items:

curl --request GET \
  --url https://api.skedulo.com/custom/vocabulary/Resources/Category \
  --header 'authorization: Bearer $AUTH_TOKEN'

The JSON response lists the picklist vocabulary items:

{
  "result": [
    {
      "value": "Customer Service",
      "label": "Customer Service",
      "active": true,
      "defaultValue": true,
      "controllingField": null,
      "validFor": []
    },
    {
      "value": "Installation Technician",
      "label": "Installation Technician",
      "active": true,
      "defaultValue": false,
      "controllingField": null,
      "validFor": []
    },
    {
      "value": "Electrician",
      "label": "Electrician",
      "active": true,
      "defaultValue": false,
      "controllingField": null,
      "validFor": []
    }
  ]
}

Identify the picklist you want to modify and use the following format to make PUT, POST, or DELETE requests: /custom/vocabulary/{schemaName}/{fieldName}.

Modify or delete a picklist field value by appending the above endpoint with /{value}.


Modify picklist items and field dependencies

Use the Skedulo Lens API to modify picklist values and field dependencies.