API Reference Guide

Overview

The Skedulo API reference documentation is designed to assist developers integrate Skedulo platform functionality into their applications. The Skedulo API provides full data access to standard and custom objects via GraphQL, including the ability to create and schedule jobs, manage allocation to resources and customers, and handle contact information.

The Skedulo API also provides the capabilities to:

  • Dispatch jobs to resources and manage notifications, via SMS or push.
  • Call the optimization engine to schedule jobs efficiently to multiple resources.
  • Access tracking and summary information about job travel and service times.
  • Access current and historical information about resource locations.
  • Get information about resource availability.

API token requirements

Skedulo APIs can be accessed by an access token.

This is either a perpetual or time-limited token that can be presented as proof of authentication. Access tokens can be obtained via the admin settings of the Skedulo web app. Create long-lived access tokens via Create API tokens with developer tools.

API calls must include the following HTTP headers:

  • content-type: application/json
  • authorization: Bearer “$API_TOKEN”

The access token obtained from the Skedulo web app is a Base64 encoded JavaScript Web Token (JWT). You use this by placing it into the Authorization header of the REST API request using the Bearer method.

For example:

curl -X GET https://api.skedulo.com/auth/whoami -H "Authorization: Bearer eyJ0eXAiOiJKV1QiLCJhbGciOiJSUzI1NiIsImtpZCI6Ik9ESkNORFE0TkRJMVJUTkJNekE1TlRFNVJqVTFORGxDUXpjME9EZEJOVEF3T1RjNE1rVkZSUSJ9.eyJodHRwczovL2FwaS5za2VkdWxvLmNvbS92ZW5kb...-dpYZm_8YuaUYTnMrS4Fs3fQTDxM0oEkt9CWWJxPQTOv3l3pjp3sgDeuRvzYcaFZuoVTVLPYNidL9Pc5gPMrsXpTxOJL3nMF-2GmJJ5YHAXgG2cQc9MmL74u7IsGbQ-qg"

UTC time format

As a general rule, all Skedulo APIs that rely on timestamp inclusion in request bodies, or that return timestamps in their responses, use UTC time (Coordinated Universal Time).

Regional URLs

Skedulo tenant instances are deployed in one of the four geographical regions: US, UK, Canada and Australia. The Skedulo API is hosted on a different subdomain in each region:

Data is accessible only via the API subdomain for the tenant’s geographical deployment region. Note that the deployment region might not be the same as the physical location of the customer’s business.

All API clients must query the main (US) API first to determine the correct subdomain for subsequent requests. They can do this by calling the /auth/config/team/web endpoint with the team name, for example: https://api.skedulo.com/auth/config/team/web?name=my-team, where my-team is the team name in any region.

All subsequent API calls must be to the subdomain that is returned in the result.server.api field of the response.

Make API requests from this documentation

You can make API requests directly from this documentation with a valid API token.

  1. Choose the regional subdomain for your Skedulo tenant from the list under API Server.
  2. Provide authentication information in the Authentication section of the API document.
  3. You can then edit the provided examples and click Try where available to make API calls from the documentation.

HTTP Bearer

In the HTTP Bearer field, enter the access token. This is either a perpetual or time-limited token that can be presented as proof of authentication. Access tokens can be obtained via the admin settings of the Skedulo web app.