Google.Cloud.Scheduler.V1
Google.Cloud.Scheduler.V1
is a.NET client library for the Google Cloud Scheduler API.
Note:
This documentation is for version 2.3.0
of the library.
Some samples may not work with other versions.
Installation
Install the Google.Cloud.Scheduler.V1
package from NuGet. Add it to
your project in the normal way (for example by right-clicking on the
project in Visual Studio and choosing "Manage NuGet Packages...").
Authentication
When running on Google Cloud Platform, no action needs to be taken to authenticate.
Otherwise, the simplest way of authenticating your API calls is to
download a service account JSON file then set the GOOGLE_APPLICATION_CREDENTIALS
environment variable to refer to it.
The credentials will automatically be used to authenticate. See the Getting Started With
Authentication guide for more details.
Getting started
All operations are performed through CloudSchedulerClient.
Create a client instance by calling the static Create
or CreateAsync
methods. Alternatively,
use the builder class associated with each client class (e.g. CloudSchedulerClientBuilder for CloudSchedulerClient)
as an easy way of specifying custom credentials, settings, or a custom endpoint. Clients are thread-safe,
and we recommend using a single instance across your entire application unless you have a particular need
to configure multiple client objects separately.
Sample code
Creating a job
CloudSchedulerClient client = CloudSchedulerClient.Create();
LocationName parent = LocationName.FromProjectLocation(projectId, locationId);
Job job = new Job
{
Description = "Sample job",
Schedule = "0 9 * * 1", // Every Monday at 9am, UTC.
TimeZone = "UTC",
// Other options are to create an App Engine HTTP target or a PubSub target.
HttpTarget = new HttpTarget
{
HttpMethod = HttpMethod.Get,
Uri = "https://www.google.com"
}
};
Job createdJob = client.CreateJob(parent, job);
Console.WriteLine($"Created job details: {createdJob}");
Listing all jobs
CloudSchedulerClient client = CloudSchedulerClient.Create();
LocationName parent = LocationName.FromProjectLocation(projectId, locationId);
PagedEnumerable<ListJobsResponse, Job> jobs = client.ListJobs(parent);
foreach (Job job in jobs)
{
Console.WriteLine(job);
}