Scheduler REST API (Classic)


This topic describes how to perform common tasks in Azure Scheduler by using the Scheduler management REST API.



  • A valid Azure account and an active Azure subscription are required. This documentation assumes that you already have an active subscription and associated subscription ID.

  • A management certificate for your Azure subscription. A management certificate is required to authenticate client access to resources in your subscription. You must use an X-509 v3 certificate that contains a public key and has a .cer file name extension. For information on how to create a management certificate, see Manage Certificates in Azure.


The Scheduler API provides a RESTful set of operations that interact with Azure Scheduler service to manage your scheduled jobs and job collections.

The Scheduler management API enables a core set of site administration scenarios:

  1. Create, update, and delete “job collections” programmatically

  2. Create, update, delete scheduled jobs programmatically

  3. View list of job collections and jobs programmatically

  4. View job status and history programmatically


The Azure Scheduler REST API exposes the following hierarchy of resources for managing your jobs and job collections:





Operations on Resources

To determine whether the service has finished processing a request, call Get Operation Status, especially if you need to use that resource on a subsequent call or if you need to ensure that a modification or deletion really happened. For more information on asynchronous operations, see Tracking Asynchronous Service Management Requests.

Creating a resource

New resources are created with an HTTP POST or PUT verb. If the resource is created successfully, an HTTP 200 (OK), 201 (created), or 202 (accepted) status code is returned, and the serialized resource object is included in the response body. If a client attempts to create a resource that already exists, an HTTP 400 (bad request) or 409 (conflict) status code is returned.

Reading a resource

To read the current state of an existing resource, an HTTP GET verb is used. If the resource exists, then the response status code is 200 or 202 and the response body will contain a serialized object. If the resource does not exist, then response status code is 400 (bad request) or 404 (not found).

Updating a resource

Existing resources are updated with an HTTP PUT or PATCH verb. The name of the object is passed in the URL string, and the new state of the object is passed in the request body. If the resource is updated successfully, an HTTP 200 or 202 status code is returned. If the resource to be updated does not exist, an HTTP 400 (bad request) or 404 (not found) status code is returned.

Deleting a resource

An existing resource is deleted with an HTTP DELETE verb. The name of the object is passed in the URL string. If the resource is deleted successfully, an HTTP 200 or 202 status code is returned. If the object has already been deleted or does not exist, then HTTP 400 or 404 is returned.


To call the Azure Scheduler APIs successfully, you will need a management certificate that is associated with your subscription. For more information, see Authenticating Service Management Requests. The Scheduler service endpoint is exposed only through https, to help mitigate information disclosure threats.

See Also

What is Scheduler?
Get Started Using Scheduler in the Management Portal
Scheduler Concepts, Terminology, and Entity Hierarchy
How to Build Complex Schedules and Advanced Recurrence with Azure Scheduler
Scheduler PowerShell Cmdlets Reference
Scheduler High-Availability and Reliability
Scheduler Outbound Authentication
Scheduler Limits, Defaults, and Error Codes
Plans and Billing in Azure Scheduler
Azure Scheduler Pricing
Azure Scheduler Videos
Register Subscription
Get Resource Provider Properties
Create Cloud Service2
Get Cloud Service1
Get Cloud Services2
Delete Cloud Service2
Create Job1
Update Job1
Get Job1
Delete Job2
Check Name Availability1
Create Job Collection
Update Job Collection
Get Job Collection
Delete Job Collection
Get All Jobs
Get Job History1