blob: d8a01b375b738329d11e94a2751f6b91509b17e0 [file] [log] [blame]
{
"auth": {
"oauth2": {
"scopes": {
"https://www.googleapis.com/auth/cloud-platform": {
"description": "View and manage your data across Google Cloud Platform services"
}
}
}
},
"basePath": "",
"baseUrl": "https://cloudscheduler.googleapis.com/",
"batchPath": "batch",
"canonicalName": "Cloud Scheduler",
"description": "Creates and manages jobs run on a regular recurring schedule.",
"discoveryVersion": "v1",
"documentationLink": "https://cloud.google.com/scheduler/",
"fullyEncodeReservedExpansion": true,
"icons": {
"x16": "http://www.google.com/images/icons/product/search-16.gif",
"x32": "http://www.google.com/images/icons/product/search-32.gif"
},
"id": "cloudscheduler:v1beta1",
"kind": "discovery#restDescription",
"name": "cloudscheduler",
"ownerDomain": "google.com",
"ownerName": "Google",
"parameters": {
"$.xgafv": {
"description": "V1 error format.",
"enum": [
"1",
"2"
],
"enumDescriptions": [
"v1 error format",
"v2 error format"
],
"location": "query",
"type": "string"
},
"access_token": {
"description": "OAuth access token.",
"location": "query",
"type": "string"
},
"alt": {
"default": "json",
"description": "Data format for response.",
"enum": [
"json",
"media",
"proto"
],
"enumDescriptions": [
"Responses with Content-Type of application/json",
"Media download with context-dependent Content-Type",
"Responses with Content-Type of application/x-protobuf"
],
"location": "query",
"type": "string"
},
"callback": {
"description": "JSONP",
"location": "query",
"type": "string"
},
"fields": {
"description": "Selector specifying which fields to include in a partial response.",
"location": "query",
"type": "string"
},
"key": {
"description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
"location": "query",
"type": "string"
},
"oauth_token": {
"description": "OAuth 2.0 token for the current user.",
"location": "query",
"type": "string"
},
"prettyPrint": {
"default": "true",
"description": "Returns response with indentations and line breaks.",
"location": "query",
"type": "boolean"
},
"quotaUser": {
"description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
"location": "query",
"type": "string"
},
"uploadType": {
"description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
"location": "query",
"type": "string"
},
"upload_protocol": {
"description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
"location": "query",
"type": "string"
}
},
"protocol": "rest",
"resources": {
"projects": {
"resources": {
"locations": {
"methods": {
"get": {
"description": "Gets information about a location.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}",
"httpMethod": "GET",
"id": "cloudscheduler.projects.locations.get",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Resource name for the location.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+name}",
"response": {
"$ref": "Location"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"list": {
"description": "Lists information about the supported locations for this service.",
"flatPath": "v1beta1/projects/{projectsId}/locations",
"httpMethod": "GET",
"id": "cloudscheduler.projects.locations.list",
"parameterOrder": [
"name"
],
"parameters": {
"filter": {
"description": "The standard list filter.",
"location": "query",
"type": "string"
},
"name": {
"description": "The resource that owns the locations collection, if applicable.",
"location": "path",
"pattern": "^projects/[^/]+$",
"required": true,
"type": "string"
},
"pageSize": {
"description": "The standard list page size.",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "The standard list page token.",
"location": "query",
"type": "string"
}
},
"path": "v1beta1/{+name}/locations",
"response": {
"$ref": "ListLocationsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
}
},
"resources": {
"jobs": {
"methods": {
"create": {
"description": "Creates a job.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs",
"httpMethod": "POST",
"id": "cloudscheduler.projects.locations.jobs.create",
"parameterOrder": [
"parent"
],
"parameters": {
"parent": {
"description": "Required.\n\nThe location name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+parent}/jobs",
"request": {
"$ref": "Job"
},
"response": {
"$ref": "Job"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"delete": {
"description": "Deletes a job.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}",
"httpMethod": "DELETE",
"id": "cloudscheduler.projects.locations.jobs.delete",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Required.\n\nThe job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+name}",
"response": {
"$ref": "Empty"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"get": {
"description": "Gets a job.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}",
"httpMethod": "GET",
"id": "cloudscheduler.projects.locations.jobs.get",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Required.\n\nThe job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+name}",
"response": {
"$ref": "Job"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"list": {
"description": "Lists jobs.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs",
"httpMethod": "GET",
"id": "cloudscheduler.projects.locations.jobs.list",
"parameterOrder": [
"parent"
],
"parameters": {
"pageSize": {
"description": "Requested page size.\n\nThe maximum page size is 500. If unspecified, the page size will\nbe the maximum. Fewer jobs than requested might be returned,\neven if more jobs exist; use next_page_token to determine if more\njobs exist.",
"format": "int32",
"location": "query",
"type": "integer"
},
"pageToken": {
"description": "A token identifying a page of results the server will return. To\nrequest the first page results, page_token must be empty. To\nrequest the next page of results, page_token must be the value of\nnext_page_token returned from\nthe previous call to ListJobs. It is an error to\nswitch the value of filter or\norder_by while iterating through pages.",
"location": "query",
"type": "string"
},
"parent": {
"description": "Required.\n\nThe location name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+parent}/jobs",
"response": {
"$ref": "ListJobsResponse"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"patch": {
"description": "Updates a job.\n\nIf successful, the updated Job is returned. If the job does\nnot exist, `NOT_FOUND` is returned.\n\nIf UpdateJob does not successfully return, it is possible for the\njob to be in an Job.State.UPDATE_FAILED state. A job in this state may\nnot be executed. If this happens, retry the UpdateJob request\nuntil a successful response is received.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}",
"httpMethod": "PATCH",
"id": "cloudscheduler.projects.locations.jobs.patch",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "The job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the job's location.\n The list of available locations can be obtained by calling\n ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), or underscores (_). The maximum length is 500 characters.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
"required": true,
"type": "string"
},
"updateMask": {
"description": "A mask used to specify which fields of the job are being updated.",
"format": "google-fieldmask",
"location": "query",
"type": "string"
}
},
"path": "v1beta1/{+name}",
"request": {
"$ref": "Job"
},
"response": {
"$ref": "Job"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"pause": {
"description": "Pauses a job.\n\nIf a job is paused then the system will stop executing the job\nuntil it is re-enabled via ResumeJob. The\nstate of the job is stored in state; if paused it\nwill be set to Job.State.PAUSED. A job must be in Job.State.ENABLED\nto be paused.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}:pause",
"httpMethod": "POST",
"id": "cloudscheduler.projects.locations.jobs.pause",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Required.\n\nThe job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+name}:pause",
"request": {
"$ref": "PauseJobRequest"
},
"response": {
"$ref": "Job"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"resume": {
"description": "Resume a job.\n\nThis method reenables a job after it has been Job.State.PAUSED. The\nstate of a job is stored in Job.state; after calling this method it\nwill be set to Job.State.ENABLED. A job must be in\nJob.State.PAUSED to be resumed.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}:resume",
"httpMethod": "POST",
"id": "cloudscheduler.projects.locations.jobs.resume",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Required.\n\nThe job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+name}:resume",
"request": {
"$ref": "ResumeJobRequest"
},
"response": {
"$ref": "Job"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
},
"run": {
"description": "Forces a job to run now.\n\nWhen this method is called, Cloud Scheduler will dispatch the job, even\nif the job is already running.",
"flatPath": "v1beta1/projects/{projectsId}/locations/{locationsId}/jobs/{jobsId}:run",
"httpMethod": "POST",
"id": "cloudscheduler.projects.locations.jobs.run",
"parameterOrder": [
"name"
],
"parameters": {
"name": {
"description": "Required.\n\nThe job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.",
"location": "path",
"pattern": "^projects/[^/]+/locations/[^/]+/jobs/[^/]+$",
"required": true,
"type": "string"
}
},
"path": "v1beta1/{+name}:run",
"request": {
"$ref": "RunJobRequest"
},
"response": {
"$ref": "Job"
},
"scopes": [
"https://www.googleapis.com/auth/cloud-platform"
]
}
}
}
}
}
}
}
},
"revision": "20181120",
"rootUrl": "https://cloudscheduler.googleapis.com/",
"schemas": {
"AppEngineHttpTarget": {
"description": "App Engine target. The job will be pushed to a job handler by means\nof an HTTP request via an http_method such\nas HTTP POST, HTTP GET, etc. The job is acknowledged by means of an\nHTTP response code in the range [200 - 299]. Error 503 is\nconsidered an App Engine system error instead of an application\nerror. Requests returning error 503 will be retried regardless of\nretry configuration and not counted against retry counts. Any other\nresponse code, or a failure to receive a response before the\ndeadline, constitutes a failed attempt.",
"id": "AppEngineHttpTarget",
"properties": {
"appEngineRouting": {
"$ref": "AppEngineRouting",
"description": "App Engine Routing setting for the job."
},
"body": {
"description": "Body.\n\nHTTP request body. A request body is allowed only if the HTTP method is\nPOST or PUT. It will result in invalid argument error to set a body on a\njob with an incompatible HttpMethod.",
"format": "byte",
"type": "string"
},
"headers": {
"additionalProperties": {
"type": "string"
},
"description": "HTTP request headers.\n\nThis map contains the header field names and values. Headers can be set\nwhen the job is created.\n\nCloud Scheduler sets some headers to default values:\n\n* `User-Agent`: By default, this header is\n `\"AppEngine-Google; (+http://code.google.com/appengine)\"`.\n This header can be modified, but Cloud Scheduler will append\n `\"AppEngine-Google; (+http://code.google.com/appengine)\"` to the\n modified `User-Agent`.\n\nIf the job has an body, Cloud Scheduler sets the\nfollowing headers:\n\n* `Content-Type`: By default, the `Content-Type` header is set to\n `\"application/octet-stream\"`. The default can be overridden by explictly\n setting `Content-Type` to a particular media type when the job is\n created.\n For example, `Content-Type` can be set to `\"application/json\"`.\n* `Content-Length`: This is computed by Cloud Scheduler. This value is\n output only. It cannot be changed.\n\nThe headers below are output only. They cannot be set or overridden:\n\n* `X-Google-*`: For Google internal use only.\n* `X-AppEngine-*`: For Google internal use only. See\n [Reading request headers](https://cloud.google.com/appengine/docs/python/taskqueue/push/creating-handlers#reading_request_headers).\n\nIn addition, some App Engine headers, which contain\njob-specific information, are also be sent to the job handler; see\n[request headers](https://cloud.google.comappengine/docs/standard/python/config/cron#securing_urls_for_cron).",
"type": "object"
},
"httpMethod": {
"description": "The HTTP method to use for the request. PATCH and OPTIONS are not\npermitted.",
"enum": [
"HTTP_METHOD_UNSPECIFIED",
"POST",
"GET",
"HEAD",
"PUT",
"DELETE",
"PATCH",
"OPTIONS"
],
"enumDescriptions": [
"HTTP method unspecified. Defaults to POST.",
"HTTP POST",
"HTTP GET",
"HTTP HEAD",
"HTTP PUT",
"HTTP DELETE",
"HTTP PATCH",
"HTTP OPTIONS"
],
"type": "string"
},
"relativeUri": {
"description": "The relative URI.\n\nThe relative URL must begin with \"/\" and must be a valid HTTP relative URL.\nIt can contain a path, query string arguments, and `#` fragments.\nIf the relative URL is empty, then the root path \"/\" will be used.\nNo spaces are allowed, and the maximum length allowed is 2083 characters.",
"type": "string"
}
},
"type": "object"
},
"AppEngineRouting": {
"description": "App Engine Routing.\n\nFor more information about services, versions, and instances see\n[An Overview of App Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),\n[Microservices Architecture on Google App Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),\n[App Engine Standard request routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed), and\n[App Engine Flex request routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).",
"id": "AppEngineRouting",
"properties": {
"host": {
"description": "Output only. The host that the job is sent to.\n\nFor more information about how App Engine requests are routed, see\n[here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).\n\nThe host is constructed as:\n\n\n* `host = [application_domain_name]`\u003c/br\u003e\n `| [service] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [version] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [version_dot_service]+ '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_service] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_version] + '.' + [application_domain_name]`\u003c/br\u003e\n `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`\n\n* `application_domain_name` = The domain name of the app, for\n example \u003capp-id\u003e.appspot.com, which is associated with the\n job's project ID.\n\n* `service =` service\n\n* `version =` version\n\n* `version_dot_service =`\n version `+ '.' +`\n service\n\n* `instance =` instance\n\n* `instance_dot_service =`\n instance `+ '.' +`\n service\n\n* `instance_dot_version =`\n instance `+ '.' +`\n version\n\n* `instance_dot_version_dot_service =`\n instance `+ '.' +`\n version `+ '.' +`\n service\n\n\nIf service is empty, then the job will be sent\nto the service which is the default service when the job is attempted.\n\nIf version is empty, then the job will be sent\nto the version which is the default version when the job is attempted.\n\nIf instance is empty, then the job will be\nsent to an instance which is available when the job is attempted.\n\nIf service,\nversion, or\ninstance is invalid, then the job will be sent\nto the default version of the default service when the job is attempted.",
"type": "string"
},
"instance": {
"description": "App instance.\n\nBy default, the job is sent to an instance which is available when\nthe job is attempted.\n\nRequests can only be sent to a specific instance if\n[manual scaling is used in App Engine Standard](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine?hl=en_US#scaling_types_and_instance_classes).\nApp Engine Flex does not support instances. For more information, see\n[App Engine Standard request routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed) and\n[App Engine Flex request routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).",
"type": "string"
},
"service": {
"description": "App service.\n\nBy default, the job is sent to the service which is the default\nservice when the job is attempted.",
"type": "string"
},
"version": {
"description": "App version.\n\nBy default, the job is sent to the version which is the default\nversion when the job is attempted.",
"type": "string"
}
},
"type": "object"
},
"Empty": {
"description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n service Foo {\n rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
"id": "Empty",
"properties": {},
"type": "object"
},
"HttpTarget": {
"description": "Http target. The job will be pushed to the job handler by means of\nan HTTP request via an http_method such as HTTP\nPOST, HTTP GET, etc. The job is acknowledged by means of an HTTP\nresponse code in the range [200 - 299]. A failure to receive a response\nconstitutes a failed execution. For a redirected request, the response\nreturned by the redirected request is considered.",
"id": "HttpTarget",
"properties": {
"body": {
"description": "HTTP request body. A request body is allowed only if the HTTP\nmethod is POST, PUT, or PATCH. It is an error to set body on a job with an\nincompatible HttpMethod.",
"format": "byte",
"type": "string"
},
"headers": {
"additionalProperties": {
"type": "string"
},
"description": "The user can specify HTTP request headers to send with the job's\nHTTP request. This map contains the header field names and\nvalues. Repeated headers are not supported, but a header value can\ncontain commas. These headers represent a subset of the headers\nthat will accompany the job's HTTP request. Some HTTP request\nheaders will be ignored or replaced. A partial list of headers that\nwill be ignored or replaced is below:\n- Host: This will be computed by Cloud Scheduler and derived from\nuri.\n* `Content-Length`: This will be computed by Cloud Scheduler.\n* `User-Agent`: This will be set to `\"Google-Cloud-Scheduler\"`.\n* `X-Google-*`: Google internal use only.\n* `X-AppEngine-*`: Google internal use only.\n\nThe total size of headers must be less than 80KB.",
"type": "object"
},
"httpMethod": {
"description": "Which HTTP method to use for the request.",
"enum": [
"HTTP_METHOD_UNSPECIFIED",
"POST",
"GET",
"HEAD",
"PUT",
"DELETE",
"PATCH",
"OPTIONS"
],
"enumDescriptions": [
"HTTP method unspecified. Defaults to POST.",
"HTTP POST",
"HTTP GET",
"HTTP HEAD",
"HTTP PUT",
"HTTP DELETE",
"HTTP PATCH",
"HTTP OPTIONS"
],
"type": "string"
},
"uri": {
"description": "Required.\n\nThe full URI path that the request will be sent to. This string\nmust begin with either \"http://\" or \"https://\". Some examples of\nvalid values for uri are:\n`http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will\nencode some characters for safety and compatibility. The maximum allowed\nURL length is 2083 characters after encoding.",
"type": "string"
}
},
"type": "object"
},
"Job": {
"description": "Configuration for a job.\nThe maximum allowed size for a job is 100KB.",
"id": "Job",
"properties": {
"appEngineHttpTarget": {
"$ref": "AppEngineHttpTarget",
"description": "App Engine HTTP target."
},
"description": {
"description": "A human-readable description for the job. This string must not contain\nmore than 500 characters.",
"type": "string"
},
"httpTarget": {
"$ref": "HttpTarget",
"description": "HTTP target."
},
"lastAttemptTime": {
"description": "Output only. The time the last job attempt started.",
"format": "google-datetime",
"type": "string"
},
"name": {
"description": "The job name. For example:\n`projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.\n\n* `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), colons (:), or periods (.).\n For more information, see\n [Identifying projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)\n* `LOCATION_ID` is the canonical ID for the job's location.\n The list of available locations can be obtained by calling\n ListLocations.\n For more information, see https://cloud.google.com/about/locations/.\n* `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),\n hyphens (-), or underscores (_). The maximum length is 500 characters.",
"type": "string"
},
"pubsubTarget": {
"$ref": "PubsubTarget",
"description": "Pub/Sub target."
},
"retryConfig": {
"$ref": "RetryConfig",
"description": "Settings that determine the retry behavior."
},
"schedule": {
"description": "Required.\n\nDescribes the schedule on which the job will be executed.\n\nAs a general rule, execution `n + 1` of a job will not begin\nuntil execution `n` has finished. Cloud Scheduler will never\nallow two simultaneously outstanding executions. For example,\nthis implies that if the `n+1`th execution is scheduled to run at\n16:00 but the `n`th execution takes until 16:15, the `n+1`th\nexecution will not start until `16:15`.\nA scheduled start time will be delayed if the previous\nexecution has not ended when its scheduled time occurs.\n\nIf retry_count \u003e 0 and a job attempt fails,\nthe job will be tried a total of retry_count\ntimes, with exponential backoff, until the next scheduled start\ntime.\n\nThe schedule can be either of the following types:\n\n* [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)\n* English-like [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)",
"type": "string"
},
"scheduleTime": {
"description": "Output only. The next time the job is scheduled. Note that this may be a\nretry of a previously failed attempt or the next execution time\naccording to the schedule.",
"format": "google-datetime",
"type": "string"
},
"state": {
"description": "Output only. State of the job.",
"enum": [
"STATE_UNSPECIFIED",
"ENABLED",
"PAUSED",
"DISABLED",
"UPDATE_FAILED"
],
"enumDescriptions": [
"Unspecified state.",
"The job is executing normally.",
"The job is paused by the user. It will not execute. A user can\nintentionally pause the job using\nPauseJobRequest.",
"The job is disabled by the system due to error. The user\ncannot directly set a job to be disabled.",
"The job state resulting from a failed CloudScheduler.UpdateJob\noperation. To recover a job from this state, retry\nCloudScheduler.UpdateJob until a successful response is received."
],
"type": "string"
},
"status": {
"$ref": "Status",
"description": "Output only. The response from the target for the last attempted execution."
},
"timeZone": {
"description": "Specifies the time zone to be used in interpreting\nschedule. The value of this field must be a time\nzone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).\n\nNote that some time zones include a provision for\ndaylight savings time. The rules for daylight saving time are\ndetermined by the chosen tz. For UTC use the string \"utc\". If a\ntime zone is not specified, the default will be in UTC (also known\nas GMT).",
"type": "string"
},
"userUpdateTime": {
"description": "Output only. The creation time of the job.",
"format": "google-datetime",
"type": "string"
}
},
"type": "object"
},
"ListJobsResponse": {
"description": "Response message for listing jobs using ListJobs.",
"id": "ListJobsResponse",
"properties": {
"jobs": {
"description": "The list of jobs.",
"items": {
"$ref": "Job"
},
"type": "array"
},
"nextPageToken": {
"description": "A token to retrieve next page of results. Pass this value in the\npage_token field in the subsequent call to\nListJobs to retrieve the next page of results.\nIf this is empty it indicates that there are no more results\nthrough which to paginate.\n\nThe page token is valid for only 2 hours.",
"type": "string"
}
},
"type": "object"
},
"ListLocationsResponse": {
"description": "The response message for Locations.ListLocations.",
"id": "ListLocationsResponse",
"properties": {
"locations": {
"description": "A list of locations that matches the specified filter in the request.",
"items": {
"$ref": "Location"
},
"type": "array"
},
"nextPageToken": {
"description": "The standard List next-page token.",
"type": "string"
}
},
"type": "object"
},
"Location": {
"description": "A resource that represents Google Cloud Platform location.",
"id": "Location",
"properties": {
"displayName": {
"description": "The friendly name for this location, typically a nearby city name.\nFor example, \"Tokyo\".",
"type": "string"
},
"labels": {
"additionalProperties": {
"type": "string"
},
"description": "Cross-service attributes for the location. For example\n\n {\"cloud.googleapis.com/region\": \"us-east1\"}",
"type": "object"
},
"locationId": {
"description": "The canonical id for this location. For example: `\"us-east1\"`.",
"type": "string"
},
"metadata": {
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
},
"description": "Service-specific metadata. For example the available capacity at the given\nlocation.",
"type": "object"
},
"name": {
"description": "Resource name for the location, which may vary between implementations.\nFor example: `\"projects/example-project/locations/us-east1\"`",
"type": "string"
}
},
"type": "object"
},
"PauseJobRequest": {
"description": "Request message for PauseJob.",
"id": "PauseJobRequest",
"properties": {},
"type": "object"
},
"PubsubMessage": {
"description": "A message that is published by publishers and consumed by subscribers. The\nmessage must contain either a non-empty data field or at least one attribute.\nNote that client libraries represent this object differently\ndepending on the language. See the corresponding\n\u003ca href=\"https://cloud.google.com/pubsub/docs/reference/libraries\"\u003eclient\nlibrary documentation\u003c/a\u003e for more information. See\n\u003ca href=\"https://cloud.google.com/pubsub/quotas\"\u003eQuotas and limits\u003c/a\u003e\nfor more information about message limits.",
"id": "PubsubMessage",
"properties": {
"attributes": {
"additionalProperties": {
"type": "string"
},
"description": "Optional attributes for this message.",
"type": "object"
},
"data": {
"description": "The message data field. If this field is empty, the message must contain\nat least one attribute.",
"format": "byte",
"type": "string"
},
"messageId": {
"description": "ID of this message, assigned by the server when the message is published.\nGuaranteed to be unique within the topic. This value may be read by a\nsubscriber that receives a `PubsubMessage` via a `Pull` call or a push\ndelivery. It must not be populated by the publisher in a `Publish` call.",
"type": "string"
},
"publishTime": {
"description": "The time at which the message was published, populated by the server when\nit receives the `Publish` call. It must not be populated by the\npublisher in a `Publish` call.",
"format": "google-datetime",
"type": "string"
}
},
"type": "object"
},
"PubsubTarget": {
"description": "Pub/Sub target. The job will be delivered by publishing a message to\nthe given Pub/Sub topic.",
"id": "PubsubTarget",
"properties": {
"attributes": {
"additionalProperties": {
"type": "string"
},
"description": "Attributes for PubsubMessage.\n\nPubsub message must contain either non-empty data, or at least one\nattribute.",
"type": "object"
},
"data": {
"description": "The message payload for PubsubMessage.\n\nPubsub message must contain either non-empty data, or at least one\nattribute.",
"format": "byte",
"type": "string"
},
"topicName": {
"description": "Required.\n\nThe name of the Cloud Pub/Sub topic to which messages will\nbe published when a job is delivered. The topic name must be in the\nsame format as required by PubSub's\n[PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),\nfor example `projects/PROJECT_ID/topics/TOPIC_ID`.\n\nThe topic must be in the same project as the Cloud Scheduler job.",
"type": "string"
}
},
"type": "object"
},
"ResumeJobRequest": {
"description": "Request message for ResumeJob.",
"id": "ResumeJobRequest",
"properties": {},
"type": "object"
},
"RetryConfig": {
"description": "Settings that determine the retry behavior.\n\nBy default, if a job does not complete successfully (meaning that\nan acknowledgement is not received from the handler, then it will be retried\nwith exponential backoff according to the settings in RetryConfig.",
"id": "RetryConfig",
"properties": {
"maxBackoffDuration": {
"description": "The maximum amount of time to wait before retrying a job after\nit fails.\n\nThe default value of this field is 1 hour.",
"format": "google-duration",
"type": "string"
},
"maxDoublings": {
"description": "The time between retries will double `max_doublings` times.\n\nA job's retry interval starts at\nmin_backoff_duration, then doubles\n`max_doublings` times, then increases linearly, and finally\nretries retries at intervals of\nmax_backoff_duration up to\nretry_count times.\n\nFor example, if min_backoff_duration is\n10s, max_backoff_duration is 300s, and\n`max_doublings` is 3, then the a job will first be retried in 10s. The\nretry interval will double three times, and then increase linearly by\n2^3 * 10s. Finally, the job will retry at intervals of\nmax_backoff_duration until the job has\nbeen attempted retry_count times. Thus, the\nrequests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....\n\nThe default value of this field is 5.",
"format": "int32",
"type": "integer"
},
"maxRetryDuration": {
"description": "The time limit for retrying a failed job, measured from time when an\nexecution was first attempted. If specified with\nretry_count, the job will be retried until both limits are\nreached.\n\nThe default value for max_retry_duration is zero, which means retry\nduration is unlimited.",
"format": "google-duration",
"type": "string"
},
"minBackoffDuration": {
"description": "The minimum amount of time to wait before retrying a job after\nit fails.\n\nThe default value of this field is 5 seconds.",
"format": "google-duration",
"type": "string"
},
"retryCount": {
"description": "The number of attempts that the system will make to run a job using the\nexponential backoff procedure described by\nmax_doublings.\n\nThe default value of retry_count is zero.\n\nIf retry_count is zero, a job attempt will *not* be retried if\nit fails. Instead the Cloud Scheduler system will wait for the\nnext scheduled execution time.\n\nIf retry_count is set to a non-zero number then Cloud Scheduler\nwill retry failed attempts, using exponential backoff,\nretry_count times, or until the next scheduled execution time,\nwhichever comes first.\n\nValues greater than 5 and negative values are not allowed.",
"format": "int32",
"type": "integer"
}
},
"type": "object"
},
"RunJobRequest": {
"description": "Request message for forcing a job to run now using\nRunJob.",
"id": "RunJobRequest",
"properties": {},
"type": "object"
},
"Status": {
"description": "The `Status` type defines a logical error model that is suitable for different\nprogramming environments, including REST APIs and RPC APIs. It is used by\n[gRPC](https://github.com/grpc). The error model is designed to be:\n\n- Simple to use and understand for most users\n- Flexible enough to meet unexpected needs\n\n# Overview\n\nThe `Status` message contains three pieces of data: error code, error message,\nand error details. The error code should be an enum value of\ngoogle.rpc.Code, but it may accept additional error codes if needed. The\nerror message should be a developer-facing English message that helps\ndevelopers *understand* and *resolve* the error. If a localized user-facing\nerror message is needed, put the localized message in the error details or\nlocalize it in the client. The optional error details may contain arbitrary\ninformation about the error. There is a predefined set of error detail types\nin the package `google.rpc` that can be used for common error conditions.\n\n# Language mapping\n\nThe `Status` message is the logical representation of the error model, but it\nis not necessarily the actual wire format. When the `Status` message is\nexposed in different client libraries and different wire protocols, it can be\nmapped differently. For example, it will likely be mapped to some exceptions\nin Java, but more likely mapped to some error codes in C.\n\n# Other uses\n\nThe error model and the `Status` message can be used in a variety of\nenvironments, either with or without APIs, to provide a\nconsistent developer experience across different environments.\n\nExample uses of this error model include:\n\n- Partial errors. If a service needs to return partial errors to the client,\n it may embed the `Status` in the normal response to indicate the partial\n errors.\n\n- Workflow errors. A typical workflow has multiple steps. Each step may\n have a `Status` message for error reporting.\n\n- Batch operations. If a client uses batch request and batch response, the\n `Status` message should be used directly inside batch response, one for\n each error sub-response.\n\n- Asynchronous operations. If an API call embeds asynchronous operation\n results in its response, the status of those operations should be\n represented directly using the `Status` message.\n\n- Logging. If some API errors are stored in logs, the message `Status` could\n be used directly after any stripping needed for security/privacy reasons.",
"id": "Status",
"properties": {
"code": {
"description": "The status code, which should be an enum value of google.rpc.Code.",
"format": "int32",
"type": "integer"
},
"details": {
"description": "A list of messages that carry the error details. There is a common set of\nmessage types for APIs to use.",
"items": {
"additionalProperties": {
"description": "Properties of the object. Contains field @type with type URL.",
"type": "any"
},
"type": "object"
},
"type": "array"
},
"message": {
"description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
"type": "string"
}
},
"type": "object"
}
},
"servicePath": "",
"title": "Cloud Scheduler API",
"version": "v1beta1",
"version_module": true
}