# Cloud Scheduler API . projects . locations . jobs

## Instance Methods

Creates a job.

Deletes a job.

Gets a job.

Lists jobs.

Retrieves the next page of results.

Updates a job.

Pauses a job.

Resume a job.

Forces a job to run now.

### Method Details

`create(parent, body=None, x__xgafv=None)`

    Creates a job.

    Args:
      parent: string, Required. The location name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID`. (required)
      body: object, The request body.
        The object takes the form of:

    { # Configuration for a job.
        # The maximum allowed size for a job is 100KB.
      "description": "A String", # Optionally caller-specified in CreateJob or
          # UpdateJob.
          #
          # A human-readable description for the job. This string must not contain
          # more than 500 characters.
      "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
          # of an HTTP request via an http_method such
          # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
          # HTTP response code in the range [200 - 299]. Error 503 is
          # considered an App Engine system error instead of an application
          # error. Requests returning error 503 will be retried regardless of
          # retry configuration and not counted against retry counts. Any other
          # response code, or a failure to receive a response before the
          # deadline, constitutes a failed attempt.
        "headers": { # HTTP request headers.
            #
            # This map contains the header field names and values. Headers can be set
            # when the job is created.
            #
            # Cloud Scheduler sets some headers to default values:
            #
            # * `User-Agent`: By default, this header is
            #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
            #   This header can be modified, but Cloud Scheduler will append
            #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
            #   modified `User-Agent`.
            # * `X-CloudScheduler`: This header will be set to true.
            #
            # If the job has an body, Cloud Scheduler sets
            # the following headers:
            #
            # * `Content-Type`: By default, the `Content-Type` header is set to
            #   `"application/octet-stream"`. The default can be overridden by explictly
            #   setting `Content-Type` to a particular media type when the job is
            #   created.
            #   For example, `Content-Type` can be set to `"application/json"`.
            # * `Content-Length`: This is computed by Cloud Scheduler. This value is
            #   output only. It cannot be changed.
            #
            # The headers below are output only. They cannot be set or overridden:
            #
            # * `X-Google-*`: For Google internal use only.
            # * `X-AppEngine-*`: For Google internal use only.
            #
            # In addition, some App Engine headers, which contain
            # job-specific information, are also be sent to the job handler.
          "a_key": "A String",
        },
        "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
            #
            # For more information about services, versions, and instances see
            # [An Overview of App
            # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
            # [Microservices Architecture on Google App
            # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
            # [App Engine Standard request
            # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
            # and [App Engine Flex request
            # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "instance": "A String", # App instance.
              #
              # By default, the job is sent to an instance which is available when
              # the job is attempted.
              #
              # Requests can only be sent to a specific instance if
              # [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).
              # App Engine Flex does not support instances. For more information, see
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
          "version": "A String", # App version.
              #
              # By default, the job is sent to the version which is the default
              # version when the job is attempted.
          "host": "A String", # Output only. The host that the job is sent to.
              #
              # For more information about how App Engine requests are routed, see
              # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
              #
              # The host is constructed as:
              #
              #
              # * `host = [application_domain_name]`</br>
              #   `| [service] + '.' + [application_domain_name]`</br>
              #   `| [version] + '.' + [application_domain_name]`</br>
              #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
              #   `| [instance] + '.' + [application_domain_name]`</br>
              #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
              #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
              #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
              #
              # * `application_domain_name` = The domain name of the app, for
              #   example <app-id>.appspot.com, which is associated with the
              #   job's project ID.
              #
              # * `service =` service
              #
              # * `version =` version
              #
              # * `version_dot_service =`
              #   version `+ '.' +`
              #   service
              #
              # * `instance =` instance
              #
              # * `instance_dot_service =`
              #   instance `+ '.' +`
              #   service
              #
              # * `instance_dot_version =`
              #   instance `+ '.' +`
              #   version
              #
              # * `instance_dot_version_dot_service =`
              #   instance `+ '.' +`
              #   version `+ '.' +`
              #   service
              #
              #
              # If service is empty, then the job will be sent
              # to the service which is the default service when the job is attempted.
              #
              # If version is empty, then the job will be sent
              # to the version which is the default version when the job is attempted.
              #
              # If instance is empty, then the job will be
              # sent to an instance which is available when the job is attempted.
              #
              # If service,
              # version, or
              # instance is invalid, then the job will be sent
              # to the default version of the default service when the job is attempted.
        },
        "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
            # permitted.
        "body": "A String", # Body.
            #
            # HTTP request body. A request body is allowed only if the HTTP method is
            # POST or PUT. It will result in invalid argument error to set a body on a
            # job with an incompatible HttpMethod.
        "relativeUri": "A String", # The relative URI.
            #
            # The relative URL must begin with "/" and must be a valid HTTP relative URL.
            # It can contain a path, query string arguments, and `#` fragments.
            # If the relative URL is empty, then the root path "/" will be used.
            # No spaces are allowed, and the maximum length allowed is 2083 characters.
      },
      "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
          # different programming environments, including REST APIs and RPC APIs. It is
          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
          # three pieces of data: error code, error message, and error details.
          #
          # You can find out more about this error model and how to work with it in the
          # [API Design Guide](https://cloud.google.com/apis/design/errors).
        "message": "A String", # A developer-facing error message, which should be in English. Any
            # user-facing error message should be localized and sent in the
            # google.rpc.Status.details field, or localized by the client.
        "details": [ # A list of messages that carry the error details.  There is a common set of
            # message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      },
      "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
          #
          # By default, if a job does not complete successfully (meaning that
          # an acknowledgement is not received from the handler, then it will be retried
          # with exponential backoff according to the settings in RetryConfig.
        "maxDoublings": 42, # The time between retries will double `max_doublings` times.
            #
            # A job's retry interval starts at
            # min_backoff_duration, then doubles
            # `max_doublings` times, then increases linearly, and finally
            # retries at intervals of
            # max_backoff_duration up to
            # retry_count times.
            #
            # For example, if min_backoff_duration is
            # 10s, max_backoff_duration is 300s, and
            # `max_doublings` is 3, then the a job will first be retried in 10s. The
            # retry interval will double three times, and then increase linearly by
            # 2^3 * 10s.  Finally, the job will retry at intervals of
            # max_backoff_duration until the job has
            # been attempted retry_count times. Thus, the
            # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
            #
            # The default value of this field is 5.
        "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
            # it fails.
            #
            # The default value of this field is 5 seconds.
        "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
            # it fails.
            #
            # The default value of this field is 1 hour.
        "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
            # execution was first attempted. If specified with
            # retry_count, the job will be retried until both
            # limits are reached.
            #
            # The default value for max_retry_duration is zero, which means retry
            # duration is unlimited.
        "retryCount": 42, # The number of attempts that the system will make to run a job using the
            # exponential backoff procedure described by
            # max_doublings.
            #
            # The default value of retry_count is zero.
            #
            # If retry_count is zero, a job attempt will *not* be retried if
            # it fails. Instead the Cloud Scheduler system will wait for the
            # next scheduled execution time.
            #
            # If retry_count is set to a non-zero number then Cloud Scheduler
            # will retry failed attempts, using exponential backoff,
            # retry_count times, or until the next scheduled execution time,
            # whichever comes first.
            #
            # Values greater than 5 and negative values are not allowed.
      },
      "state": "A String", # Output only. State of the job.
      "name": "A String", # Optionally caller-specified in CreateJob, after
          # which it becomes output only.
          #
          # The job name. For example:
          # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
          #
          # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
          #    hyphens (-), colons (:), or periods (.).
          #    For more information, see
          #    [Identifying
          #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
          # * `LOCATION_ID` is the canonical ID for the job's location.
          #    The list of available locations can be obtained by calling
          #    ListLocations.
          #    For more information, see https://cloud.google.com/about/locations/.
          # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
          #    hyphens (-), or underscores (_). The maximum length is 500 characters.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
      "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
          # retry of a previously failed attempt or the next execution time
          # according to the schedule.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "schedule": "A String", # Required, except when used with UpdateJob.
          #
          # Describes the schedule on which the job will be executed.
          #
          # The schedule can be either of the following types:
          #
          # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
          # * English-like
          # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
          #
          # As a general rule, execution `n + 1` of a job will not begin
          # until execution `n` has finished. Cloud Scheduler will never
          # allow two simultaneously outstanding executions. For example,
          # this implies that if the `n+1`th execution is scheduled to run at
          # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
          # execution will not start until `16:15`.
          # A scheduled start time will be delayed if the previous
          # execution has not ended when its scheduled time occurs.
          #
          # If retry_count > 0 and a job attempt fails,
          # the job will be tried a total of retry_count
          # times, with exponential backoff, until the next scheduled start
          # time.
      "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
          # this deadline then the request is cancelled and the attempt is marked as a
          # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
          # execution logs. Cloud Scheduler will retry the job according
          # to the RetryConfig.
          #
          # The allowed duration for this deadline is:
          # * For HTTP targets, between 15 seconds and 30 minutes.
          # * For App Engine HTTP targets, between 15
          #   seconds and 24 hours.
      "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
          # the given Pub/Sub topic.
        "attributes": { # Attributes for PubsubMessage.
            #
            # Pubsub message must contain either non-empty data, or at least one
            # attribute.
          "a_key": "A String",
        },
        "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
            # be published when a job is delivered. The topic name must be in the
            # same format as required by PubSub's
            # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
            # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
            #
            # The topic must be in the same project as the Cloud Scheduler job.
        "data": "A String", # The message payload for PubsubMessage.
            #
            # Pubsub message must contain either non-empty data, or at least one
            # attribute.
      },
      "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
          # an HTTP request via an http_method such as HTTP
          # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
          # response code in the range [200 - 299]. A failure to receive a response
          # constitutes a failed execution. For a redirected request, the response
          # returned by the redirected request is considered.
        "headers": { # The user can specify HTTP request headers to send with the job's
            # HTTP request. This map contains the header field names and
            # values. Repeated headers are not supported, but a header value can
            # contain commas. These headers represent a subset of the headers
            # that will accompany the job's HTTP request. Some HTTP request
            # headers will be ignored or replaced. A partial list of headers that
            # will be ignored or replaced is below:
            # - Host: This will be computed by Cloud Scheduler and derived from
            # uri.
            # * `Content-Length`: This will be computed by Cloud Scheduler.
            # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
            # * `X-Google-*`: Google internal use only.
            # * `X-AppEngine-*`: Google internal use only.
            #
            # The total size of headers must be less than 80KB.
          "a_key": "A String",
        },
        "oidcToken": { # Contains information needed for generating an # If specified, an
            # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
            # token will be generated and attached as an `Authorization` header in the
            # HTTP request.
            #
            # This type of authorization can be used for many scenarios, including
            # calling Cloud Run, or endpoints where you intend to validate the token
            # yourself.
            # [OpenID Connect
            # token](https://developers.google.com/identity/protocols/OpenIDConnect).
            # This type of authorization can be used for many scenarios, including
            # calling Cloud Run, or endpoints where you intend to validate the token
            # yourself.
          "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
              # specified in target will be used.
          "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
              # to be used for generating OIDC token.
              # The service account must be within the same project as the job. The caller
              # must have iam.serviceAccounts.actAs permission for the service account.
        },
        "httpMethod": "A String", # Which HTTP method to use for the request.
        "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
            # method is POST, PUT, or PATCH. It is an error to set body on a job with an
            # incompatible HttpMethod.
        "oauthToken": { # Contains information needed for generating an # If specified, an
            # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
            # will be generated and attached as an `Authorization` header in the HTTP
            # request.
            #
            # This type of authorization should generally only be used when calling
            # Google APIs hosted on *.googleapis.com.
            # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
            # This type of authorization should generally only be used when calling Google
            # APIs hosted on *.googleapis.com.
          "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
              # to be used for generating OAuth token.
              # The service account must be within the same project as the job. The caller
              # must have iam.serviceAccounts.actAs permission for the service account.
          "scope": "A String", # OAuth scope to be used for generating OAuth access token.
              # If not specified, "https://www.googleapis.com/auth/cloud-platform"
              # will be used.
        },
        "uri": "A String", # Required. The full URI path that the request will be sent to. This string
            # must begin with either "http://" or "https://". Some examples of
            # valid values for uri are:
            # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
            # encode some characters for safety and compatibility. The maximum allowed
            # URL length is 2083 characters after encoding.
      },
      "timeZone": "A String", # Specifies the time zone to be used in interpreting
          # schedule. The value of this field must be a time
          # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
          #
          # Note that some time zones include a provision for
          # daylight savings time. The rules for daylight saving time are
          # determined by the chosen tz. For UTC use the string "utc". If a
          # time zone is not specified, the default will be in UTC (also known
          # as GMT).
    }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for a job.
          # The maximum allowed size for a job is 100KB.
        "description": "A String", # Optionally caller-specified in CreateJob or
            # UpdateJob.
            #
            # A human-readable description for the job. This string must not contain
            # more than 500 characters.
        "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
            # of an HTTP request via an http_method such
            # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
            # HTTP response code in the range [200 - 299]. Error 503 is
            # considered an App Engine system error instead of an application
            # error. Requests returning error 503 will be retried regardless of
            # retry configuration and not counted against retry counts. Any other
            # response code, or a failure to receive a response before the
            # deadline, constitutes a failed attempt.
          "headers": { # HTTP request headers.
              #
              # This map contains the header field names and values. Headers can be set
              # when the job is created.
              #
              # Cloud Scheduler sets some headers to default values:
              #
              # * `User-Agent`: By default, this header is
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
              #   This header can be modified, but Cloud Scheduler will append
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
              #   modified `User-Agent`.
              # * `X-CloudScheduler`: This header will be set to true.
              #
              # If the job has an body, Cloud Scheduler sets
              # the following headers:
              #
              # * `Content-Type`: By default, the `Content-Type` header is set to
              #   `"application/octet-stream"`. The default can be overridden by explictly
              #   setting `Content-Type` to a particular media type when the job is
              #   created.
              #   For example, `Content-Type` can be set to `"application/json"`.
              # * `Content-Length`: This is computed by Cloud Scheduler. This value is
              #   output only. It cannot be changed.
              #
              # The headers below are output only. They cannot be set or overridden:
              #
              # * `X-Google-*`: For Google internal use only.
              # * `X-AppEngine-*`: For Google internal use only.
              #
              # In addition, some App Engine headers, which contain
              # job-specific information, are also be sent to the job handler.
            "a_key": "A String",
          },
          "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
              #
              # For more information about services, versions, and instances see
              # [An Overview of App
              # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
              # [Microservices Architecture on Google App
              # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "service": "A String", # App service.
                #
                # By default, the job is sent to the service which is the default
                # service when the job is attempted.
            "instance": "A String", # App instance.
                #
                # By default, the job is sent to an instance which is available when
                # the job is attempted.
                #
                # Requests can only be sent to a specific instance if
                # [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).
                # App Engine Flex does not support instances. For more information, see
                # [App Engine Standard request
                # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                # and [App Engine Flex request
                # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "version": "A String", # App version.
                #
                # By default, the job is sent to the version which is the default
                # version when the job is attempted.
            "host": "A String", # Output only. The host that the job is sent to.
                #
                # For more information about how App Engine requests are routed, see
                # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                #
                # The host is constructed as:
                #
                #
                # * `host = [application_domain_name]`</br>
                #   `| [service] + '.' + [application_domain_name]`</br>
                #   `| [version] + '.' + [application_domain_name]`</br>
                #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                #   `| [instance] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                #
                # * `application_domain_name` = The domain name of the app, for
                #   example <app-id>.appspot.com, which is associated with the
                #   job's project ID.
                #
                # * `service =` service
                #
                # * `version =` version
                #
                # * `version_dot_service =`
                #   version `+ '.' +`
                #   service
                #
                # * `instance =` instance
                #
                # * `instance_dot_service =`
                #   instance `+ '.' +`
                #   service
                #
                # * `instance_dot_version =`
                #   instance `+ '.' +`
                #   version
                #
                # * `instance_dot_version_dot_service =`
                #   instance `+ '.' +`
                #   version `+ '.' +`
                #   service
                #
                #
                # If service is empty, then the job will be sent
                # to the service which is the default service when the job is attempted.
                #
                # If version is empty, then the job will be sent
                # to the version which is the default version when the job is attempted.
                #
                # If instance is empty, then the job will be
                # sent to an instance which is available when the job is attempted.
                #
                # If service,
                # version, or
                # instance is invalid, then the job will be sent
                # to the default version of the default service when the job is attempted.
          },
          "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
              # permitted.
          "body": "A String", # Body.
              #
              # HTTP request body. A request body is allowed only if the HTTP method is
              # POST or PUT. It will result in invalid argument error to set a body on a
              # job with an incompatible HttpMethod.
          "relativeUri": "A String", # The relative URI.
              #
              # The relative URL must begin with "/" and must be a valid HTTP relative URL.
              # It can contain a path, query string arguments, and `#` fragments.
              # If the relative URL is empty, then the root path "/" will be used.
              # No spaces are allowed, and the maximum length allowed is 2083 characters.
        },
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
            #
            # By default, if a job does not complete successfully (meaning that
            # an acknowledgement is not received from the handler, then it will be retried
            # with exponential backoff according to the settings in RetryConfig.
          "maxDoublings": 42, # The time between retries will double `max_doublings` times.
              #
              # A job's retry interval starts at
              # min_backoff_duration, then doubles
              # `max_doublings` times, then increases linearly, and finally
              # retries at intervals of
              # max_backoff_duration up to
              # retry_count times.
              #
              # For example, if min_backoff_duration is
              # 10s, max_backoff_duration is 300s, and
              # `max_doublings` is 3, then the a job will first be retried in 10s. The
              # retry interval will double three times, and then increase linearly by
              # 2^3 * 10s.  Finally, the job will retry at intervals of
              # max_backoff_duration until the job has
              # been attempted retry_count times. Thus, the
              # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
              #
              # The default value of this field is 5.
          "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 5 seconds.
          "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 1 hour.
          "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
              # execution was first attempted. If specified with
              # retry_count, the job will be retried until both
              # limits are reached.
              #
              # The default value for max_retry_duration is zero, which means retry
              # duration is unlimited.
          "retryCount": 42, # The number of attempts that the system will make to run a job using the
              # exponential backoff procedure described by
              # max_doublings.
              #
              # The default value of retry_count is zero.
              #
              # If retry_count is zero, a job attempt will *not* be retried if
              # it fails. Instead the Cloud Scheduler system will wait for the
              # next scheduled execution time.
              #
              # If retry_count is set to a non-zero number then Cloud Scheduler
              # will retry failed attempts, using exponential backoff,
              # retry_count times, or until the next scheduled execution time,
              # whichever comes first.
              #
              # Values greater than 5 and negative values are not allowed.
        },
        "state": "A String", # Output only. State of the job.
        "name": "A String", # Optionally caller-specified in CreateJob, after
            # which it becomes output only.
            #
            # The job name. For example:
            # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
            #
            # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), colons (:), or periods (.).
            #    For more information, see
            #    [Identifying
            #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
            # * `LOCATION_ID` is the canonical ID for the job's location.
            #    The list of available locations can be obtained by calling
            #    ListLocations.
            #    For more information, see https://cloud.google.com/about/locations/.
            # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), or underscores (_). The maximum length is 500 characters.
        "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
            # retry of a previously failed attempt or the next execution time
            # according to the schedule.
        "userUpdateTime": "A String", # Output only. The creation time of the job.
        "schedule": "A String", # Required, except when used with UpdateJob.
            #
            # Describes the schedule on which the job will be executed.
            #
            # The schedule can be either of the following types:
            #
            # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
            # * English-like
            # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
            #
            # As a general rule, execution `n + 1` of a job will not begin
            # until execution `n` has finished. Cloud Scheduler will never
            # allow two simultaneously outstanding executions. For example,
            # this implies that if the `n+1`th execution is scheduled to run at
            # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
            # execution will not start until `16:15`.
            # A scheduled start time will be delayed if the previous
            # execution has not ended when its scheduled time occurs.
            #
            # If retry_count > 0 and a job attempt fails,
            # the job will be tried a total of retry_count
            # times, with exponential backoff, until the next scheduled start
            # time.
        "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
            # this deadline then the request is cancelled and the attempt is marked as a
            # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
            # execution logs. Cloud Scheduler will retry the job according
            # to the RetryConfig.
            #
            # The allowed duration for this deadline is:
            # * For HTTP targets, between 15 seconds and 30 minutes.
            # * For App Engine HTTP targets, between 15
            #   seconds and 24 hours.
        "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
            # the given Pub/Sub topic.
          "attributes": { # Attributes for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
            "a_key": "A String",
          },
          "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
              # be published when a job is delivered. The topic name must be in the
              # same format as required by PubSub's
              # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
              # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
              #
              # The topic must be in the same project as the Cloud Scheduler job.
          "data": "A String", # The message payload for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
        },
        "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
            # an HTTP request via an http_method such as HTTP
            # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
            # response code in the range [200 - 299]. A failure to receive a response
            # constitutes a failed execution. For a redirected request, the response
            # returned by the redirected request is considered.
          "headers": { # The user can specify HTTP request headers to send with the job's
              # HTTP request. This map contains the header field names and
              # values. Repeated headers are not supported, but a header value can
              # contain commas. These headers represent a subset of the headers
              # that will accompany the job's HTTP request. Some HTTP request
              # headers will be ignored or replaced. A partial list of headers that
              # will be ignored or replaced is below:
              # - Host: This will be computed by Cloud Scheduler and derived from
              # uri.
              # * `Content-Length`: This will be computed by Cloud Scheduler.
              # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
              # * `X-Google-*`: Google internal use only.
              # * `X-AppEngine-*`: Google internal use only.
              #
              # The total size of headers must be less than 80KB.
            "a_key": "A String",
          },
          "oidcToken": { # Contains information needed for generating an # If specified, an
              # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
              # token will be generated and attached as an `Authorization` header in the
              # HTTP request.
              #
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
              # [OpenID Connect
              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
            "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                # specified in target will be used.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OIDC token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
          },
          "httpMethod": "A String", # Which HTTP method to use for the request.
          "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
              # method is POST, PUT, or PATCH. It is an error to set body on a job with an
              # incompatible HttpMethod.
          "oauthToken": { # Contains information needed for generating an # If specified, an
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
              # will be generated and attached as an `Authorization` header in the HTTP
              # request.
              #
              # This type of authorization should generally only be used when calling
              # Google APIs hosted on *.googleapis.com.
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
              # This type of authorization should generally only be used when calling Google
              # APIs hosted on *.googleapis.com.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OAuth token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
            "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                # will be used.
          },
          "uri": "A String", # Required. The full URI path that the request will be sent to. This string
              # must begin with either "http://" or "https://". Some examples of
              # valid values for uri are:
              # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
              # encode some characters for safety and compatibility. The maximum allowed
              # URL length is 2083 characters after encoding.
        },
        "timeZone": "A String", # Specifies the time zone to be used in interpreting
            # schedule. The value of this field must be a time
            # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
            #
            # Note that some time zones include a provision for
            # daylight savings time. The rules for daylight saving time are
            # determined by the chosen tz. For UTC use the string "utc". If a
            # time zone is not specified, the default will be in UTC (also known
            # as GMT).
      }

`delete(name, x__xgafv=None)`

    Deletes a job.

    Args:
      name: string, Required. The job name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # A generic empty message that you can re-use to avoid defining duplicated
          # empty messages in your APIs. A typical example is to use it as the request
          # or the response type of an API method. For instance:
          #
          #     service Foo {
          #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
          #     }
          #
          # The JSON representation for `Empty` is empty JSON object `{}`.
      }

`get(name, x__xgafv=None)`

    Gets a job.

    Args:
      name: string, Required. The job name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`. (required)
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for a job.
          # The maximum allowed size for a job is 100KB.
        "description": "A String", # Optionally caller-specified in CreateJob or
            # UpdateJob.
            #
            # A human-readable description for the job. This string must not contain
            # more than 500 characters.
        "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
            # of an HTTP request via an http_method such
            # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
            # HTTP response code in the range [200 - 299]. Error 503 is
            # considered an App Engine system error instead of an application
            # error. Requests returning error 503 will be retried regardless of
            # retry configuration and not counted against retry counts. Any other
            # response code, or a failure to receive a response before the
            # deadline, constitutes a failed attempt.
          "headers": { # HTTP request headers.
              #
              # This map contains the header field names and values. Headers can be set
              # when the job is created.
              #
              # Cloud Scheduler sets some headers to default values:
              #
              # * `User-Agent`: By default, this header is
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
              #   This header can be modified, but Cloud Scheduler will append
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
              #   modified `User-Agent`.
              # * `X-CloudScheduler`: This header will be set to true.
              #
              # If the job has an body, Cloud Scheduler sets
              # the following headers:
              #
              # * `Content-Type`: By default, the `Content-Type` header is set to
              #   `"application/octet-stream"`. The default can be overridden by explictly
              #   setting `Content-Type` to a particular media type when the job is
              #   created.
              #   For example, `Content-Type` can be set to `"application/json"`.
              # * `Content-Length`: This is computed by Cloud Scheduler. This value is
              #   output only. It cannot be changed.
              #
              # The headers below are output only. They cannot be set or overridden:
              #
              # * `X-Google-*`: For Google internal use only.
              # * `X-AppEngine-*`: For Google internal use only.
              #
              # In addition, some App Engine headers, which contain
              # job-specific information, are also be sent to the job handler.
            "a_key": "A String",
          },
          "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
              #
              # For more information about services, versions, and instances see
              # [An Overview of App
              # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
              # [Microservices Architecture on Google App
              # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "service": "A String", # App service.
                #
                # By default, the job is sent to the service which is the default
                # service when the job is attempted.
            "instance": "A String", # App instance.
                #
                # By default, the job is sent to an instance which is available when
                # the job is attempted.
                #
                # Requests can only be sent to a specific instance if
                # [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).
                # App Engine Flex does not support instances. For more information, see
                # [App Engine Standard request
                # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                # and [App Engine Flex request
                # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "version": "A String", # App version.
                #
                # By default, the job is sent to the version which is the default
                # version when the job is attempted.
            "host": "A String", # Output only. The host that the job is sent to.
                #
                # For more information about how App Engine requests are routed, see
                # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                #
                # The host is constructed as:
                #
                #
                # * `host = [application_domain_name]`</br>
                #   `| [service] + '.' + [application_domain_name]`</br>
                #   `| [version] + '.' + [application_domain_name]`</br>
                #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                #   `| [instance] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                #
                # * `application_domain_name` = The domain name of the app, for
                #   example <app-id>.appspot.com, which is associated with the
                #   job's project ID.
                #
                # * `service =` service
                #
                # * `version =` version
                #
                # * `version_dot_service =`
                #   version `+ '.' +`
                #   service
                #
                # * `instance =` instance
                #
                # * `instance_dot_service =`
                #   instance `+ '.' +`
                #   service
                #
                # * `instance_dot_version =`
                #   instance `+ '.' +`
                #   version
                #
                # * `instance_dot_version_dot_service =`
                #   instance `+ '.' +`
                #   version `+ '.' +`
                #   service
                #
                #
                # If service is empty, then the job will be sent
                # to the service which is the default service when the job is attempted.
                #
                # If version is empty, then the job will be sent
                # to the version which is the default version when the job is attempted.
                #
                # If instance is empty, then the job will be
                # sent to an instance which is available when the job is attempted.
                #
                # If service,
                # version, or
                # instance is invalid, then the job will be sent
                # to the default version of the default service when the job is attempted.
          },
          "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
              # permitted.
          "body": "A String", # Body.
              #
              # HTTP request body. A request body is allowed only if the HTTP method is
              # POST or PUT. It will result in invalid argument error to set a body on a
              # job with an incompatible HttpMethod.
          "relativeUri": "A String", # The relative URI.
              #
              # The relative URL must begin with "/" and must be a valid HTTP relative URL.
              # It can contain a path, query string arguments, and `#` fragments.
              # If the relative URL is empty, then the root path "/" will be used.
              # No spaces are allowed, and the maximum length allowed is 2083 characters.
        },
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
            #
            # By default, if a job does not complete successfully (meaning that
            # an acknowledgement is not received from the handler, then it will be retried
            # with exponential backoff according to the settings in RetryConfig.
          "maxDoublings": 42, # The time between retries will double `max_doublings` times.
              #
              # A job's retry interval starts at
              # min_backoff_duration, then doubles
              # `max_doublings` times, then increases linearly, and finally
              # retries at intervals of
              # max_backoff_duration up to
              # retry_count times.
              #
              # For example, if min_backoff_duration is
              # 10s, max_backoff_duration is 300s, and
              # `max_doublings` is 3, then the a job will first be retried in 10s. The
              # retry interval will double three times, and then increase linearly by
              # 2^3 * 10s.  Finally, the job will retry at intervals of
              # max_backoff_duration until the job has
              # been attempted retry_count times. Thus, the
              # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
              #
              # The default value of this field is 5.
          "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 5 seconds.
          "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 1 hour.
          "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
              # execution was first attempted. If specified with
              # retry_count, the job will be retried until both
              # limits are reached.
              #
              # The default value for max_retry_duration is zero, which means retry
              # duration is unlimited.
          "retryCount": 42, # The number of attempts that the system will make to run a job using the
              # exponential backoff procedure described by
              # max_doublings.
              #
              # The default value of retry_count is zero.
              #
              # If retry_count is zero, a job attempt will *not* be retried if
              # it fails. Instead the Cloud Scheduler system will wait for the
              # next scheduled execution time.
              #
              # If retry_count is set to a non-zero number then Cloud Scheduler
              # will retry failed attempts, using exponential backoff,
              # retry_count times, or until the next scheduled execution time,
              # whichever comes first.
              #
              # Values greater than 5 and negative values are not allowed.
        },
        "state": "A String", # Output only. State of the job.
        "name": "A String", # Optionally caller-specified in CreateJob, after
            # which it becomes output only.
            #
            # The job name. For example:
            # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
            #
            # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), colons (:), or periods (.).
            #    For more information, see
            #    [Identifying
            #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
            # * `LOCATION_ID` is the canonical ID for the job's location.
            #    The list of available locations can be obtained by calling
            #    ListLocations.
            #    For more information, see https://cloud.google.com/about/locations/.
            # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), or underscores (_). The maximum length is 500 characters.
        "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
            # retry of a previously failed attempt or the next execution time
            # according to the schedule.
        "userUpdateTime": "A String", # Output only. The creation time of the job.
        "schedule": "A String", # Required, except when used with UpdateJob.
            #
            # Describes the schedule on which the job will be executed.
            #
            # The schedule can be either of the following types:
            #
            # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
            # * English-like
            # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
            #
            # As a general rule, execution `n + 1` of a job will not begin
            # until execution `n` has finished. Cloud Scheduler will never
            # allow two simultaneously outstanding executions. For example,
            # this implies that if the `n+1`th execution is scheduled to run at
            # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
            # execution will not start until `16:15`.
            # A scheduled start time will be delayed if the previous
            # execution has not ended when its scheduled time occurs.
            #
            # If retry_count > 0 and a job attempt fails,
            # the job will be tried a total of retry_count
            # times, with exponential backoff, until the next scheduled start
            # time.
        "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
            # this deadline then the request is cancelled and the attempt is marked as a
            # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
            # execution logs. Cloud Scheduler will retry the job according
            # to the RetryConfig.
            #
            # The allowed duration for this deadline is:
            # * For HTTP targets, between 15 seconds and 30 minutes.
            # * For App Engine HTTP targets, between 15
            #   seconds and 24 hours.
        "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
            # the given Pub/Sub topic.
          "attributes": { # Attributes for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
            "a_key": "A String",
          },
          "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
              # be published when a job is delivered. The topic name must be in the
              # same format as required by PubSub's
              # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
              # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
              #
              # The topic must be in the same project as the Cloud Scheduler job.
          "data": "A String", # The message payload for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
        },
        "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
            # an HTTP request via an http_method such as HTTP
            # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
            # response code in the range [200 - 299]. A failure to receive a response
            # constitutes a failed execution. For a redirected request, the response
            # returned by the redirected request is considered.
          "headers": { # The user can specify HTTP request headers to send with the job's
              # HTTP request. This map contains the header field names and
              # values. Repeated headers are not supported, but a header value can
              # contain commas. These headers represent a subset of the headers
              # that will accompany the job's HTTP request. Some HTTP request
              # headers will be ignored or replaced. A partial list of headers that
              # will be ignored or replaced is below:
              # - Host: This will be computed by Cloud Scheduler and derived from
              # uri.
              # * `Content-Length`: This will be computed by Cloud Scheduler.
              # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
              # * `X-Google-*`: Google internal use only.
              # * `X-AppEngine-*`: Google internal use only.
              #
              # The total size of headers must be less than 80KB.
            "a_key": "A String",
          },
          "oidcToken": { # Contains information needed for generating an # If specified, an
              # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
              # token will be generated and attached as an `Authorization` header in the
              # HTTP request.
              #
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
              # [OpenID Connect
              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
            "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                # specified in target will be used.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OIDC token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
          },
          "httpMethod": "A String", # Which HTTP method to use for the request.
          "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
              # method is POST, PUT, or PATCH. It is an error to set body on a job with an
              # incompatible HttpMethod.
          "oauthToken": { # Contains information needed for generating an # If specified, an
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
              # will be generated and attached as an `Authorization` header in the HTTP
              # request.
              #
              # This type of authorization should generally only be used when calling
              # Google APIs hosted on *.googleapis.com.
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
              # This type of authorization should generally only be used when calling Google
              # APIs hosted on *.googleapis.com.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OAuth token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
            "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                # will be used.
          },
          "uri": "A String", # Required. The full URI path that the request will be sent to. This string
              # must begin with either "http://" or "https://". Some examples of
              # valid values for uri are:
              # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
              # encode some characters for safety and compatibility. The maximum allowed
              # URL length is 2083 characters after encoding.
        },
        "timeZone": "A String", # Specifies the time zone to be used in interpreting
            # schedule. The value of this field must be a time
            # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
            #
            # Note that some time zones include a provision for
            # daylight savings time. The rules for daylight saving time are
            # determined by the chosen tz. For UTC use the string "utc". If a
            # time zone is not specified, the default will be in UTC (also known
            # as GMT).
      }

`list(parent, pageToken=None, pageSize=None, x__xgafv=None)`

    Lists jobs.

    Args:
      parent: string, Required. The location name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID`. (required)
      pageToken: string, A token identifying a page of results the server will return. To
    request the first page results, page_token must be empty. To
    request the next page of results, page_token must be the value of
    next_page_token returned from
    the previous call to ListJobs. It is an error to
    switch the value of filter or
    order_by while iterating through pages.
      pageSize: integer, Requested page size.

    The maximum page size is 500. If unspecified, the page size will
    be the maximum. Fewer jobs than requested might be returned,
    even if more jobs exist; use next_page_token to determine if more
    jobs exist.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Response message for listing jobs using ListJobs.
        "jobs": [ # The list of jobs.
          { # Configuration for a job.
              # The maximum allowed size for a job is 100KB.
            "description": "A String", # Optionally caller-specified in CreateJob or
                # UpdateJob.
                #
                # A human-readable description for the job. This string must not contain
                # more than 500 characters.
            "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
                # of an HTTP request via an http_method such
                # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
                # HTTP response code in the range [200 - 299]. Error 503 is
                # considered an App Engine system error instead of an application
                # error. Requests returning error 503 will be retried regardless of
                # retry configuration and not counted against retry counts. Any other
                # response code, or a failure to receive a response before the
                # deadline, constitutes a failed attempt.
              "headers": { # HTTP request headers.
                  #
                  # This map contains the header field names and values. Headers can be set
                  # when the job is created.
                  #
                  # Cloud Scheduler sets some headers to default values:
                  #
                  # * `User-Agent`: By default, this header is
                  #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
                  #   This header can be modified, but Cloud Scheduler will append
                  #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
                  #   modified `User-Agent`.
                  # * `X-CloudScheduler`: This header will be set to true.
                  #
                  # If the job has an body, Cloud Scheduler sets
                  # the following headers:
                  #
                  # * `Content-Type`: By default, the `Content-Type` header is set to
                  #   `"application/octet-stream"`. The default can be overridden by explictly
                  #   setting `Content-Type` to a particular media type when the job is
                  #   created.
                  #   For example, `Content-Type` can be set to `"application/json"`.
                  # * `Content-Length`: This is computed by Cloud Scheduler. This value is
                  #   output only. It cannot be changed.
                  #
                  # The headers below are output only. They cannot be set or overridden:
                  #
                  # * `X-Google-*`: For Google internal use only.
                  # * `X-AppEngine-*`: For Google internal use only.
                  #
                  # In addition, some App Engine headers, which contain
                  # job-specific information, are also be sent to the job handler.
                "a_key": "A String",
              },
              "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
                  #
                  # For more information about services, versions, and instances see
                  # [An Overview of App
                  # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
                  # [Microservices Architecture on Google App
                  # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
                  # [App Engine Standard request
                  # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
                  # and [App Engine Flex request
                  # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
                "service": "A String", # App service.
                    #
                    # By default, the job is sent to the service which is the default
                    # service when the job is attempted.
                "instance": "A String", # App instance.
                    #
                    # By default, the job is sent to an instance which is available when
                    # the job is attempted.
                    #
                    # Requests can only be sent to a specific instance if
                    # [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).
                    # App Engine Flex does not support instances. For more information, see
                    # [App Engine Standard request
                    # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                    # and [App Engine Flex request
                    # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
                "version": "A String", # App version.
                    #
                    # By default, the job is sent to the version which is the default
                    # version when the job is attempted.
                "host": "A String", # Output only. The host that the job is sent to.
                    #
                    # For more information about how App Engine requests are routed, see
                    # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                    #
                    # The host is constructed as:
                    #
                    #
                    # * `host = [application_domain_name]`</br>
                    #   `| [service] + '.' + [application_domain_name]`</br>
                    #   `| [version] + '.' + [application_domain_name]`</br>
                    #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                    #   `| [instance] + '.' + [application_domain_name]`</br>
                    #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                    #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                    #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                    #
                    # * `application_domain_name` = The domain name of the app, for
                    #   example <app-id>.appspot.com, which is associated with the
                    #   job's project ID.
                    #
                    # * `service =` service
                    #
                    # * `version =` version
                    #
                    # * `version_dot_service =`
                    #   version `+ '.' +`
                    #   service
                    #
                    # * `instance =` instance
                    #
                    # * `instance_dot_service =`
                    #   instance `+ '.' +`
                    #   service
                    #
                    # * `instance_dot_version =`
                    #   instance `+ '.' +`
                    #   version
                    #
                    # * `instance_dot_version_dot_service =`
                    #   instance `+ '.' +`
                    #   version `+ '.' +`
                    #   service
                    #
                    #
                    # If service is empty, then the job will be sent
                    # to the service which is the default service when the job is attempted.
                    #
                    # If version is empty, then the job will be sent
                    # to the version which is the default version when the job is attempted.
                    #
                    # If instance is empty, then the job will be
                    # sent to an instance which is available when the job is attempted.
                    #
                    # If service,
                    # version, or
                    # instance is invalid, then the job will be sent
                    # to the default version of the default service when the job is attempted.
              },
              "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
                  # permitted.
              "body": "A String", # Body.
                  #
                  # HTTP request body. A request body is allowed only if the HTTP method is
                  # POST or PUT. It will result in invalid argument error to set a body on a
                  # job with an incompatible HttpMethod.
              "relativeUri": "A String", # The relative URI.
                  #
                  # The relative URL must begin with "/" and must be a valid HTTP relative URL.
                  # It can contain a path, query string arguments, and `#` fragments.
                  # If the relative URL is empty, then the root path "/" will be used.
                  # No spaces are allowed, and the maximum length allowed is 2083 characters.
            },
            "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
                # different programming environments, including REST APIs and RPC APIs. It is
                # used by [gRPC](https://github.com/grpc). Each `Status` message contains
                # three pieces of data: error code, error message, and error details.
                #
                # You can find out more about this error model and how to work with it in the
                # [API Design Guide](https://cloud.google.com/apis/design/errors).
              "message": "A String", # A developer-facing error message, which should be in English. Any
                  # user-facing error message should be localized and sent in the
                  # google.rpc.Status.details field, or localized by the client.
              "details": [ # A list of messages that carry the error details.  There is a common set of
                  # message types for APIs to use.
                {
                  "a_key": "", # Properties of the object. Contains field @type with type URL.
                },
              ],
              "code": 42, # The status code, which should be an enum value of google.rpc.Code.
            },
            "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
                #
                # By default, if a job does not complete successfully (meaning that
                # an acknowledgement is not received from the handler, then it will be retried
                # with exponential backoff according to the settings in RetryConfig.
              "maxDoublings": 42, # The time between retries will double `max_doublings` times.
                  #
                  # A job's retry interval starts at
                  # min_backoff_duration, then doubles
                  # `max_doublings` times, then increases linearly, and finally
                  # retries at intervals of
                  # max_backoff_duration up to
                  # retry_count times.
                  #
                  # For example, if min_backoff_duration is
                  # 10s, max_backoff_duration is 300s, and
                  # `max_doublings` is 3, then the a job will first be retried in 10s. The
                  # retry interval will double three times, and then increase linearly by
                  # 2^3 * 10s.  Finally, the job will retry at intervals of
                  # max_backoff_duration until the job has
                  # been attempted retry_count times. Thus, the
                  # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
                  #
                  # The default value of this field is 5.
              "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
                  # it fails.
                  #
                  # The default value of this field is 5 seconds.
              "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
                  # it fails.
                  #
                  # The default value of this field is 1 hour.
              "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
                  # execution was first attempted. If specified with
                  # retry_count, the job will be retried until both
                  # limits are reached.
                  #
                  # The default value for max_retry_duration is zero, which means retry
                  # duration is unlimited.
              "retryCount": 42, # The number of attempts that the system will make to run a job using the
                  # exponential backoff procedure described by
                  # max_doublings.
                  #
                  # The default value of retry_count is zero.
                  #
                  # If retry_count is zero, a job attempt will *not* be retried if
                  # it fails. Instead the Cloud Scheduler system will wait for the
                  # next scheduled execution time.
                  #
                  # If retry_count is set to a non-zero number then Cloud Scheduler
                  # will retry failed attempts, using exponential backoff,
                  # retry_count times, or until the next scheduled execution time,
                  # whichever comes first.
                  #
                  # Values greater than 5 and negative values are not allowed.
            },
            "state": "A String", # Output only. State of the job.
            "name": "A String", # Optionally caller-specified in CreateJob, after
                # which it becomes output only.
                #
                # The job name. For example:
                # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
                #
                # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
                #    hyphens (-), colons (:), or periods (.).
                #    For more information, see
                #    [Identifying
                #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
                # * `LOCATION_ID` is the canonical ID for the job's location.
                #    The list of available locations can be obtained by calling
                #    ListLocations.
                #    For more information, see https://cloud.google.com/about/locations/.
                # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
                #    hyphens (-), or underscores (_). The maximum length is 500 characters.
            "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
            "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
                # retry of a previously failed attempt or the next execution time
                # according to the schedule.
            "userUpdateTime": "A String", # Output only. The creation time of the job.
            "schedule": "A String", # Required, except when used with UpdateJob.
                #
                # Describes the schedule on which the job will be executed.
                #
                # The schedule can be either of the following types:
                #
                # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
                # * English-like
                # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
                #
                # As a general rule, execution `n + 1` of a job will not begin
                # until execution `n` has finished. Cloud Scheduler will never
                # allow two simultaneously outstanding executions. For example,
                # this implies that if the `n+1`th execution is scheduled to run at
                # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
                # execution will not start until `16:15`.
                # A scheduled start time will be delayed if the previous
                # execution has not ended when its scheduled time occurs.
                #
                # If retry_count > 0 and a job attempt fails,
                # the job will be tried a total of retry_count
                # times, with exponential backoff, until the next scheduled start
                # time.
            "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
                # this deadline then the request is cancelled and the attempt is marked as a
                # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
                # execution logs. Cloud Scheduler will retry the job according
                # to the RetryConfig.
                #
                # The allowed duration for this deadline is:
                # * For HTTP targets, between 15 seconds and 30 minutes.
                # * For App Engine HTTP targets, between 15
                #   seconds and 24 hours.
            "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
                # the given Pub/Sub topic.
              "attributes": { # Attributes for PubsubMessage.
                  #
                  # Pubsub message must contain either non-empty data, or at least one
                  # attribute.
                "a_key": "A String",
              },
              "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
                  # be published when a job is delivered. The topic name must be in the
                  # same format as required by PubSub's
                  # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
                  # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
                  #
                  # The topic must be in the same project as the Cloud Scheduler job.
              "data": "A String", # The message payload for PubsubMessage.
                  #
                  # Pubsub message must contain either non-empty data, or at least one
                  # attribute.
            },
            "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
                # an HTTP request via an http_method such as HTTP
                # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
                # response code in the range [200 - 299]. A failure to receive a response
                # constitutes a failed execution. For a redirected request, the response
                # returned by the redirected request is considered.
              "headers": { # The user can specify HTTP request headers to send with the job's
                  # HTTP request. This map contains the header field names and
                  # values. Repeated headers are not supported, but a header value can
                  # contain commas. These headers represent a subset of the headers
                  # that will accompany the job's HTTP request. Some HTTP request
                  # headers will be ignored or replaced. A partial list of headers that
                  # will be ignored or replaced is below:
                  # - Host: This will be computed by Cloud Scheduler and derived from
                  # uri.
                  # * `Content-Length`: This will be computed by Cloud Scheduler.
                  # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
                  # * `X-Google-*`: Google internal use only.
                  # * `X-AppEngine-*`: Google internal use only.
                  #
                  # The total size of headers must be less than 80KB.
                "a_key": "A String",
              },
              "oidcToken": { # Contains information needed for generating an # If specified, an
                  # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
                  # token will be generated and attached as an `Authorization` header in the
                  # HTTP request.
                  #
                  # This type of authorization can be used for many scenarios, including
                  # calling Cloud Run, or endpoints where you intend to validate the token
                  # yourself.
                  # [OpenID Connect
                  # token](https://developers.google.com/identity/protocols/OpenIDConnect).
                  # This type of authorization can be used for many scenarios, including
                  # calling Cloud Run, or endpoints where you intend to validate the token
                  # yourself.
                "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                    # specified in target will be used.
                "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                    # to be used for generating OIDC token.
                    # The service account must be within the same project as the job. The caller
                    # must have iam.serviceAccounts.actAs permission for the service account.
              },
              "httpMethod": "A String", # Which HTTP method to use for the request.
              "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
                  # method is POST, PUT, or PATCH. It is an error to set body on a job with an
                  # incompatible HttpMethod.
              "oauthToken": { # Contains information needed for generating an # If specified, an
                  # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
                  # will be generated and attached as an `Authorization` header in the HTTP
                  # request.
                  #
                  # This type of authorization should generally only be used when calling
                  # Google APIs hosted on *.googleapis.com.
                  # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
                  # This type of authorization should generally only be used when calling Google
                  # APIs hosted on *.googleapis.com.
                "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                    # to be used for generating OAuth token.
                    # The service account must be within the same project as the job. The caller
                    # must have iam.serviceAccounts.actAs permission for the service account.
                "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                    # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                    # will be used.
              },
              "uri": "A String", # Required. The full URI path that the request will be sent to. This string
                  # must begin with either "http://" or "https://". Some examples of
                  # valid values for uri are:
                  # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
                  # encode some characters for safety and compatibility. The maximum allowed
                  # URL length is 2083 characters after encoding.
            },
            "timeZone": "A String", # Specifies the time zone to be used in interpreting
                # schedule. The value of this field must be a time
                # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
                #
                # Note that some time zones include a provision for
                # daylight savings time. The rules for daylight saving time are
                # determined by the chosen tz. For UTC use the string "utc". If a
                # time zone is not specified, the default will be in UTC (also known
                # as GMT).
          },
        ],
        "nextPageToken": "A String", # A token to retrieve next page of results. Pass this value in the
            # page_token field in the subsequent call to
            # ListJobs to retrieve the next page of results.
            # If this is empty it indicates that there are no more results
            # through which to paginate.
            #
            # The page token is valid for only 2 hours.
      }

`list_next(previous_request, previous_response)`

    Retrieves the next page of results.

    Args:
      previous_request: The request for the previous page. (required)
      previous_response: The response from the request for the previous page. (required)

    Returns:
      A request object that you can call 'execute()' on to request the next
      page. Returns None if there are no more items in the collection.

`patch(name, body=None, updateMask=None, x__xgafv=None)`

    Updates a job.

    If successful, the updated Job is returned. If the job does
    not exist, `NOT_FOUND` is returned.

    If UpdateJob does not successfully return, it is possible for the
    job to be in an Job.State.UPDATE_FAILED state. A job in this state may
    not be executed. If this happens, retry the UpdateJob request
    until a successful response is received.

    Args:
      name: string, Optionally caller-specified in CreateJob, after
    which it becomes output only.

    The job name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.

    * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
       hyphens (-), colons (:), or periods (.).
       For more information, see
       [Identifying
       projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
    * `LOCATION_ID` is the canonical ID for the job's location.
       The list of available locations can be obtained by calling
       ListLocations.
       For more information, see https://cloud.google.com/about/locations/.
    * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
       hyphens (-), or underscores (_). The maximum length is 500 characters. (required)
      body: object, The request body.
        The object takes the form of:

    { # Configuration for a job.
        # The maximum allowed size for a job is 100KB.
      "description": "A String", # Optionally caller-specified in CreateJob or
          # UpdateJob.
          #
          # A human-readable description for the job. This string must not contain
          # more than 500 characters.
      "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
          # of an HTTP request via an http_method such
          # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
          # HTTP response code in the range [200 - 299]. Error 503 is
          # considered an App Engine system error instead of an application
          # error. Requests returning error 503 will be retried regardless of
          # retry configuration and not counted against retry counts. Any other
          # response code, or a failure to receive a response before the
          # deadline, constitutes a failed attempt.
        "headers": { # HTTP request headers.
            #
            # This map contains the header field names and values. Headers can be set
            # when the job is created.
            #
            # Cloud Scheduler sets some headers to default values:
            #
            # * `User-Agent`: By default, this header is
            #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
            #   This header can be modified, but Cloud Scheduler will append
            #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
            #   modified `User-Agent`.
            # * `X-CloudScheduler`: This header will be set to true.
            #
            # If the job has an body, Cloud Scheduler sets
            # the following headers:
            #
            # * `Content-Type`: By default, the `Content-Type` header is set to
            #   `"application/octet-stream"`. The default can be overridden by explictly
            #   setting `Content-Type` to a particular media type when the job is
            #   created.
            #   For example, `Content-Type` can be set to `"application/json"`.
            # * `Content-Length`: This is computed by Cloud Scheduler. This value is
            #   output only. It cannot be changed.
            #
            # The headers below are output only. They cannot be set or overridden:
            #
            # * `X-Google-*`: For Google internal use only.
            # * `X-AppEngine-*`: For Google internal use only.
            #
            # In addition, some App Engine headers, which contain
            # job-specific information, are also be sent to the job handler.
          "a_key": "A String",
        },
        "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
            #
            # For more information about services, versions, and instances see
            # [An Overview of App
            # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
            # [Microservices Architecture on Google App
            # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
            # [App Engine Standard request
            # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
            # and [App Engine Flex request
            # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "instance": "A String", # App instance.
              #
              # By default, the job is sent to an instance which is available when
              # the job is attempted.
              #
              # Requests can only be sent to a specific instance if
              # [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).
              # App Engine Flex does not support instances. For more information, see
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
          "version": "A String", # App version.
              #
              # By default, the job is sent to the version which is the default
              # version when the job is attempted.
          "host": "A String", # Output only. The host that the job is sent to.
              #
              # For more information about how App Engine requests are routed, see
              # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
              #
              # The host is constructed as:
              #
              #
              # * `host = [application_domain_name]`</br>
              #   `| [service] + '.' + [application_domain_name]`</br>
              #   `| [version] + '.' + [application_domain_name]`</br>
              #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
              #   `| [instance] + '.' + [application_domain_name]`</br>
              #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
              #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
              #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
              #
              # * `application_domain_name` = The domain name of the app, for
              #   example <app-id>.appspot.com, which is associated with the
              #   job's project ID.
              #
              # * `service =` service
              #
              # * `version =` version
              #
              # * `version_dot_service =`
              #   version `+ '.' +`
              #   service
              #
              # * `instance =` instance
              #
              # * `instance_dot_service =`
              #   instance `+ '.' +`
              #   service
              #
              # * `instance_dot_version =`
              #   instance `+ '.' +`
              #   version
              #
              # * `instance_dot_version_dot_service =`
              #   instance `+ '.' +`
              #   version `+ '.' +`
              #   service
              #
              #
              # If service is empty, then the job will be sent
              # to the service which is the default service when the job is attempted.
              #
              # If version is empty, then the job will be sent
              # to the version which is the default version when the job is attempted.
              #
              # If instance is empty, then the job will be
              # sent to an instance which is available when the job is attempted.
              #
              # If service,
              # version, or
              # instance is invalid, then the job will be sent
              # to the default version of the default service when the job is attempted.
        },
        "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
            # permitted.
        "body": "A String", # Body.
            #
            # HTTP request body. A request body is allowed only if the HTTP method is
            # POST or PUT. It will result in invalid argument error to set a body on a
            # job with an incompatible HttpMethod.
        "relativeUri": "A String", # The relative URI.
            #
            # The relative URL must begin with "/" and must be a valid HTTP relative URL.
            # It can contain a path, query string arguments, and `#` fragments.
            # If the relative URL is empty, then the root path "/" will be used.
            # No spaces are allowed, and the maximum length allowed is 2083 characters.
      },
      "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
          # different programming environments, including REST APIs and RPC APIs. It is
          # used by [gRPC](https://github.com/grpc). Each `Status` message contains
          # three pieces of data: error code, error message, and error details.
          #
          # You can find out more about this error model and how to work with it in the
          # [API Design Guide](https://cloud.google.com/apis/design/errors).
        "message": "A String", # A developer-facing error message, which should be in English. Any
            # user-facing error message should be localized and sent in the
            # google.rpc.Status.details field, or localized by the client.
        "details": [ # A list of messages that carry the error details.  There is a common set of
            # message types for APIs to use.
          {
            "a_key": "", # Properties of the object. Contains field @type with type URL.
          },
        ],
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      },
      "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
          #
          # By default, if a job does not complete successfully (meaning that
          # an acknowledgement is not received from the handler, then it will be retried
          # with exponential backoff according to the settings in RetryConfig.
        "maxDoublings": 42, # The time between retries will double `max_doublings` times.
            #
            # A job's retry interval starts at
            # min_backoff_duration, then doubles
            # `max_doublings` times, then increases linearly, and finally
            # retries at intervals of
            # max_backoff_duration up to
            # retry_count times.
            #
            # For example, if min_backoff_duration is
            # 10s, max_backoff_duration is 300s, and
            # `max_doublings` is 3, then the a job will first be retried in 10s. The
            # retry interval will double three times, and then increase linearly by
            # 2^3 * 10s.  Finally, the job will retry at intervals of
            # max_backoff_duration until the job has
            # been attempted retry_count times. Thus, the
            # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
            #
            # The default value of this field is 5.
        "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
            # it fails.
            #
            # The default value of this field is 5 seconds.
        "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
            # it fails.
            #
            # The default value of this field is 1 hour.
        "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
            # execution was first attempted. If specified with
            # retry_count, the job will be retried until both
            # limits are reached.
            #
            # The default value for max_retry_duration is zero, which means retry
            # duration is unlimited.
        "retryCount": 42, # The number of attempts that the system will make to run a job using the
            # exponential backoff procedure described by
            # max_doublings.
            #
            # The default value of retry_count is zero.
            #
            # If retry_count is zero, a job attempt will *not* be retried if
            # it fails. Instead the Cloud Scheduler system will wait for the
            # next scheduled execution time.
            #
            # If retry_count is set to a non-zero number then Cloud Scheduler
            # will retry failed attempts, using exponential backoff,
            # retry_count times, or until the next scheduled execution time,
            # whichever comes first.
            #
            # Values greater than 5 and negative values are not allowed.
      },
      "state": "A String", # Output only. State of the job.
      "name": "A String", # Optionally caller-specified in CreateJob, after
          # which it becomes output only.
          #
          # The job name. For example:
          # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
          #
          # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
          #    hyphens (-), colons (:), or periods (.).
          #    For more information, see
          #    [Identifying
          #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
          # * `LOCATION_ID` is the canonical ID for the job's location.
          #    The list of available locations can be obtained by calling
          #    ListLocations.
          #    For more information, see https://cloud.google.com/about/locations/.
          # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
          #    hyphens (-), or underscores (_). The maximum length is 500 characters.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
      "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
          # retry of a previously failed attempt or the next execution time
          # according to the schedule.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "schedule": "A String", # Required, except when used with UpdateJob.
          #
          # Describes the schedule on which the job will be executed.
          #
          # The schedule can be either of the following types:
          #
          # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
          # * English-like
          # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
          #
          # As a general rule, execution `n + 1` of a job will not begin
          # until execution `n` has finished. Cloud Scheduler will never
          # allow two simultaneously outstanding executions. For example,
          # this implies that if the `n+1`th execution is scheduled to run at
          # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
          # execution will not start until `16:15`.
          # A scheduled start time will be delayed if the previous
          # execution has not ended when its scheduled time occurs.
          #
          # If retry_count > 0 and a job attempt fails,
          # the job will be tried a total of retry_count
          # times, with exponential backoff, until the next scheduled start
          # time.
      "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
          # this deadline then the request is cancelled and the attempt is marked as a
          # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
          # execution logs. Cloud Scheduler will retry the job according
          # to the RetryConfig.
          #
          # The allowed duration for this deadline is:
          # * For HTTP targets, between 15 seconds and 30 minutes.
          # * For App Engine HTTP targets, between 15
          #   seconds and 24 hours.
      "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
          # the given Pub/Sub topic.
        "attributes": { # Attributes for PubsubMessage.
            #
            # Pubsub message must contain either non-empty data, or at least one
            # attribute.
          "a_key": "A String",
        },
        "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
            # be published when a job is delivered. The topic name must be in the
            # same format as required by PubSub's
            # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
            # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
            #
            # The topic must be in the same project as the Cloud Scheduler job.
        "data": "A String", # The message payload for PubsubMessage.
            #
            # Pubsub message must contain either non-empty data, or at least one
            # attribute.
      },
      "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
          # an HTTP request via an http_method such as HTTP
          # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
          # response code in the range [200 - 299]. A failure to receive a response
          # constitutes a failed execution. For a redirected request, the response
          # returned by the redirected request is considered.
        "headers": { # The user can specify HTTP request headers to send with the job's
            # HTTP request. This map contains the header field names and
            # values. Repeated headers are not supported, but a header value can
            # contain commas. These headers represent a subset of the headers
            # that will accompany the job's HTTP request. Some HTTP request
            # headers will be ignored or replaced. A partial list of headers that
            # will be ignored or replaced is below:
            # - Host: This will be computed by Cloud Scheduler and derived from
            # uri.
            # * `Content-Length`: This will be computed by Cloud Scheduler.
            # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
            # * `X-Google-*`: Google internal use only.
            # * `X-AppEngine-*`: Google internal use only.
            #
            # The total size of headers must be less than 80KB.
          "a_key": "A String",
        },
        "oidcToken": { # Contains information needed for generating an # If specified, an
            # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
            # token will be generated and attached as an `Authorization` header in the
            # HTTP request.
            #
            # This type of authorization can be used for many scenarios, including
            # calling Cloud Run, or endpoints where you intend to validate the token
            # yourself.
            # [OpenID Connect
            # token](https://developers.google.com/identity/protocols/OpenIDConnect).
            # This type of authorization can be used for many scenarios, including
            # calling Cloud Run, or endpoints where you intend to validate the token
            # yourself.
          "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
              # specified in target will be used.
          "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
              # to be used for generating OIDC token.
              # The service account must be within the same project as the job. The caller
              # must have iam.serviceAccounts.actAs permission for the service account.
        },
        "httpMethod": "A String", # Which HTTP method to use for the request.
        "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
            # method is POST, PUT, or PATCH. It is an error to set body on a job with an
            # incompatible HttpMethod.
        "oauthToken": { # Contains information needed for generating an # If specified, an
            # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
            # will be generated and attached as an `Authorization` header in the HTTP
            # request.
            #
            # This type of authorization should generally only be used when calling
            # Google APIs hosted on *.googleapis.com.
            # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
            # This type of authorization should generally only be used when calling Google
            # APIs hosted on *.googleapis.com.
          "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
              # to be used for generating OAuth token.
              # The service account must be within the same project as the job. The caller
              # must have iam.serviceAccounts.actAs permission for the service account.
          "scope": "A String", # OAuth scope to be used for generating OAuth access token.
              # If not specified, "https://www.googleapis.com/auth/cloud-platform"
              # will be used.
        },
        "uri": "A String", # Required. The full URI path that the request will be sent to. This string
            # must begin with either "http://" or "https://". Some examples of
            # valid values for uri are:
            # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
            # encode some characters for safety and compatibility. The maximum allowed
            # URL length is 2083 characters after encoding.
      },
      "timeZone": "A String", # Specifies the time zone to be used in interpreting
          # schedule. The value of this field must be a time
          # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
          #
          # Note that some time zones include a provision for
          # daylight savings time. The rules for daylight saving time are
          # determined by the chosen tz. For UTC use the string "utc". If a
          # time zone is not specified, the default will be in UTC (also known
          # as GMT).
    }

      updateMask: string, A  mask used to specify which fields of the job are being updated.
      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for a job.
          # The maximum allowed size for a job is 100KB.
        "description": "A String", # Optionally caller-specified in CreateJob or
            # UpdateJob.
            #
            # A human-readable description for the job. This string must not contain
            # more than 500 characters.
        "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
            # of an HTTP request via an http_method such
            # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
            # HTTP response code in the range [200 - 299]. Error 503 is
            # considered an App Engine system error instead of an application
            # error. Requests returning error 503 will be retried regardless of
            # retry configuration and not counted against retry counts. Any other
            # response code, or a failure to receive a response before the
            # deadline, constitutes a failed attempt.
          "headers": { # HTTP request headers.
              #
              # This map contains the header field names and values. Headers can be set
              # when the job is created.
              #
              # Cloud Scheduler sets some headers to default values:
              #
              # * `User-Agent`: By default, this header is
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
              #   This header can be modified, but Cloud Scheduler will append
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
              #   modified `User-Agent`.
              # * `X-CloudScheduler`: This header will be set to true.
              #
              # If the job has an body, Cloud Scheduler sets
              # the following headers:
              #
              # * `Content-Type`: By default, the `Content-Type` header is set to
              #   `"application/octet-stream"`. The default can be overridden by explictly
              #   setting `Content-Type` to a particular media type when the job is
              #   created.
              #   For example, `Content-Type` can be set to `"application/json"`.
              # * `Content-Length`: This is computed by Cloud Scheduler. This value is
              #   output only. It cannot be changed.
              #
              # The headers below are output only. They cannot be set or overridden:
              #
              # * `X-Google-*`: For Google internal use only.
              # * `X-AppEngine-*`: For Google internal use only.
              #
              # In addition, some App Engine headers, which contain
              # job-specific information, are also be sent to the job handler.
            "a_key": "A String",
          },
          "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
              #
              # For more information about services, versions, and instances see
              # [An Overview of App
              # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
              # [Microservices Architecture on Google App
              # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "service": "A String", # App service.
                #
                # By default, the job is sent to the service which is the default
                # service when the job is attempted.
            "instance": "A String", # App instance.
                #
                # By default, the job is sent to an instance which is available when
                # the job is attempted.
                #
                # Requests can only be sent to a specific instance if
                # [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).
                # App Engine Flex does not support instances. For more information, see
                # [App Engine Standard request
                # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                # and [App Engine Flex request
                # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "version": "A String", # App version.
                #
                # By default, the job is sent to the version which is the default
                # version when the job is attempted.
            "host": "A String", # Output only. The host that the job is sent to.
                #
                # For more information about how App Engine requests are routed, see
                # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                #
                # The host is constructed as:
                #
                #
                # * `host = [application_domain_name]`</br>
                #   `| [service] + '.' + [application_domain_name]`</br>
                #   `| [version] + '.' + [application_domain_name]`</br>
                #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                #   `| [instance] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                #
                # * `application_domain_name` = The domain name of the app, for
                #   example <app-id>.appspot.com, which is associated with the
                #   job's project ID.
                #
                # * `service =` service
                #
                # * `version =` version
                #
                # * `version_dot_service =`
                #   version `+ '.' +`
                #   service
                #
                # * `instance =` instance
                #
                # * `instance_dot_service =`
                #   instance `+ '.' +`
                #   service
                #
                # * `instance_dot_version =`
                #   instance `+ '.' +`
                #   version
                #
                # * `instance_dot_version_dot_service =`
                #   instance `+ '.' +`
                #   version `+ '.' +`
                #   service
                #
                #
                # If service is empty, then the job will be sent
                # to the service which is the default service when the job is attempted.
                #
                # If version is empty, then the job will be sent
                # to the version which is the default version when the job is attempted.
                #
                # If instance is empty, then the job will be
                # sent to an instance which is available when the job is attempted.
                #
                # If service,
                # version, or
                # instance is invalid, then the job will be sent
                # to the default version of the default service when the job is attempted.
          },
          "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
              # permitted.
          "body": "A String", # Body.
              #
              # HTTP request body. A request body is allowed only if the HTTP method is
              # POST or PUT. It will result in invalid argument error to set a body on a
              # job with an incompatible HttpMethod.
          "relativeUri": "A String", # The relative URI.
              #
              # The relative URL must begin with "/" and must be a valid HTTP relative URL.
              # It can contain a path, query string arguments, and `#` fragments.
              # If the relative URL is empty, then the root path "/" will be used.
              # No spaces are allowed, and the maximum length allowed is 2083 characters.
        },
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
            #
            # By default, if a job does not complete successfully (meaning that
            # an acknowledgement is not received from the handler, then it will be retried
            # with exponential backoff according to the settings in RetryConfig.
          "maxDoublings": 42, # The time between retries will double `max_doublings` times.
              #
              # A job's retry interval starts at
              # min_backoff_duration, then doubles
              # `max_doublings` times, then increases linearly, and finally
              # retries at intervals of
              # max_backoff_duration up to
              # retry_count times.
              #
              # For example, if min_backoff_duration is
              # 10s, max_backoff_duration is 300s, and
              # `max_doublings` is 3, then the a job will first be retried in 10s. The
              # retry interval will double three times, and then increase linearly by
              # 2^3 * 10s.  Finally, the job will retry at intervals of
              # max_backoff_duration until the job has
              # been attempted retry_count times. Thus, the
              # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
              #
              # The default value of this field is 5.
          "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 5 seconds.
          "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 1 hour.
          "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
              # execution was first attempted. If specified with
              # retry_count, the job will be retried until both
              # limits are reached.
              #
              # The default value for max_retry_duration is zero, which means retry
              # duration is unlimited.
          "retryCount": 42, # The number of attempts that the system will make to run a job using the
              # exponential backoff procedure described by
              # max_doublings.
              #
              # The default value of retry_count is zero.
              #
              # If retry_count is zero, a job attempt will *not* be retried if
              # it fails. Instead the Cloud Scheduler system will wait for the
              # next scheduled execution time.
              #
              # If retry_count is set to a non-zero number then Cloud Scheduler
              # will retry failed attempts, using exponential backoff,
              # retry_count times, or until the next scheduled execution time,
              # whichever comes first.
              #
              # Values greater than 5 and negative values are not allowed.
        },
        "state": "A String", # Output only. State of the job.
        "name": "A String", # Optionally caller-specified in CreateJob, after
            # which it becomes output only.
            #
            # The job name. For example:
            # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
            #
            # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), colons (:), or periods (.).
            #    For more information, see
            #    [Identifying
            #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
            # * `LOCATION_ID` is the canonical ID for the job's location.
            #    The list of available locations can be obtained by calling
            #    ListLocations.
            #    For more information, see https://cloud.google.com/about/locations/.
            # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), or underscores (_). The maximum length is 500 characters.
        "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
            # retry of a previously failed attempt or the next execution time
            # according to the schedule.
        "userUpdateTime": "A String", # Output only. The creation time of the job.
        "schedule": "A String", # Required, except when used with UpdateJob.
            #
            # Describes the schedule on which the job will be executed.
            #
            # The schedule can be either of the following types:
            #
            # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
            # * English-like
            # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
            #
            # As a general rule, execution `n + 1` of a job will not begin
            # until execution `n` has finished. Cloud Scheduler will never
            # allow two simultaneously outstanding executions. For example,
            # this implies that if the `n+1`th execution is scheduled to run at
            # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
            # execution will not start until `16:15`.
            # A scheduled start time will be delayed if the previous
            # execution has not ended when its scheduled time occurs.
            #
            # If retry_count > 0 and a job attempt fails,
            # the job will be tried a total of retry_count
            # times, with exponential backoff, until the next scheduled start
            # time.
        "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
            # this deadline then the request is cancelled and the attempt is marked as a
            # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
            # execution logs. Cloud Scheduler will retry the job according
            # to the RetryConfig.
            #
            # The allowed duration for this deadline is:
            # * For HTTP targets, between 15 seconds and 30 minutes.
            # * For App Engine HTTP targets, between 15
            #   seconds and 24 hours.
        "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
            # the given Pub/Sub topic.
          "attributes": { # Attributes for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
            "a_key": "A String",
          },
          "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
              # be published when a job is delivered. The topic name must be in the
              # same format as required by PubSub's
              # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
              # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
              #
              # The topic must be in the same project as the Cloud Scheduler job.
          "data": "A String", # The message payload for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
        },
        "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
            # an HTTP request via an http_method such as HTTP
            # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
            # response code in the range [200 - 299]. A failure to receive a response
            # constitutes a failed execution. For a redirected request, the response
            # returned by the redirected request is considered.
          "headers": { # The user can specify HTTP request headers to send with the job's
              # HTTP request. This map contains the header field names and
              # values. Repeated headers are not supported, but a header value can
              # contain commas. These headers represent a subset of the headers
              # that will accompany the job's HTTP request. Some HTTP request
              # headers will be ignored or replaced. A partial list of headers that
              # will be ignored or replaced is below:
              # - Host: This will be computed by Cloud Scheduler and derived from
              # uri.
              # * `Content-Length`: This will be computed by Cloud Scheduler.
              # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
              # * `X-Google-*`: Google internal use only.
              # * `X-AppEngine-*`: Google internal use only.
              #
              # The total size of headers must be less than 80KB.
            "a_key": "A String",
          },
          "oidcToken": { # Contains information needed for generating an # If specified, an
              # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
              # token will be generated and attached as an `Authorization` header in the
              # HTTP request.
              #
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
              # [OpenID Connect
              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
            "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                # specified in target will be used.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OIDC token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
          },
          "httpMethod": "A String", # Which HTTP method to use for the request.
          "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
              # method is POST, PUT, or PATCH. It is an error to set body on a job with an
              # incompatible HttpMethod.
          "oauthToken": { # Contains information needed for generating an # If specified, an
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
              # will be generated and attached as an `Authorization` header in the HTTP
              # request.
              #
              # This type of authorization should generally only be used when calling
              # Google APIs hosted on *.googleapis.com.
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
              # This type of authorization should generally only be used when calling Google
              # APIs hosted on *.googleapis.com.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OAuth token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
            "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                # will be used.
          },
          "uri": "A String", # Required. The full URI path that the request will be sent to. This string
              # must begin with either "http://" or "https://". Some examples of
              # valid values for uri are:
              # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
              # encode some characters for safety and compatibility. The maximum allowed
              # URL length is 2083 characters after encoding.
        },
        "timeZone": "A String", # Specifies the time zone to be used in interpreting
            # schedule. The value of this field must be a time
            # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
            #
            # Note that some time zones include a provision for
            # daylight savings time. The rules for daylight saving time are
            # determined by the chosen tz. For UTC use the string "utc". If a
            # time zone is not specified, the default will be in UTC (also known
            # as GMT).
      }

`pause(name, body=None, x__xgafv=None)`

    Pauses a job.

    If a job is paused then the system will stop executing the job
    until it is re-enabled via ResumeJob. The
    state of the job is stored in state; if paused it
    will be set to Job.State.PAUSED. A job must be in Job.State.ENABLED
    to be paused.

    Args:
      name: string, Required. The job name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for PauseJob.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for a job.
          # The maximum allowed size for a job is 100KB.
        "description": "A String", # Optionally caller-specified in CreateJob or
            # UpdateJob.
            #
            # A human-readable description for the job. This string must not contain
            # more than 500 characters.
        "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
            # of an HTTP request via an http_method such
            # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
            # HTTP response code in the range [200 - 299]. Error 503 is
            # considered an App Engine system error instead of an application
            # error. Requests returning error 503 will be retried regardless of
            # retry configuration and not counted against retry counts. Any other
            # response code, or a failure to receive a response before the
            # deadline, constitutes a failed attempt.
          "headers": { # HTTP request headers.
              #
              # This map contains the header field names and values. Headers can be set
              # when the job is created.
              #
              # Cloud Scheduler sets some headers to default values:
              #
              # * `User-Agent`: By default, this header is
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
              #   This header can be modified, but Cloud Scheduler will append
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
              #   modified `User-Agent`.
              # * `X-CloudScheduler`: This header will be set to true.
              #
              # If the job has an body, Cloud Scheduler sets
              # the following headers:
              #
              # * `Content-Type`: By default, the `Content-Type` header is set to
              #   `"application/octet-stream"`. The default can be overridden by explictly
              #   setting `Content-Type` to a particular media type when the job is
              #   created.
              #   For example, `Content-Type` can be set to `"application/json"`.
              # * `Content-Length`: This is computed by Cloud Scheduler. This value is
              #   output only. It cannot be changed.
              #
              # The headers below are output only. They cannot be set or overridden:
              #
              # * `X-Google-*`: For Google internal use only.
              # * `X-AppEngine-*`: For Google internal use only.
              #
              # In addition, some App Engine headers, which contain
              # job-specific information, are also be sent to the job handler.
            "a_key": "A String",
          },
          "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
              #
              # For more information about services, versions, and instances see
              # [An Overview of App
              # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
              # [Microservices Architecture on Google App
              # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "service": "A String", # App service.
                #
                # By default, the job is sent to the service which is the default
                # service when the job is attempted.
            "instance": "A String", # App instance.
                #
                # By default, the job is sent to an instance which is available when
                # the job is attempted.
                #
                # Requests can only be sent to a specific instance if
                # [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).
                # App Engine Flex does not support instances. For more information, see
                # [App Engine Standard request
                # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                # and [App Engine Flex request
                # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "version": "A String", # App version.
                #
                # By default, the job is sent to the version which is the default
                # version when the job is attempted.
            "host": "A String", # Output only. The host that the job is sent to.
                #
                # For more information about how App Engine requests are routed, see
                # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                #
                # The host is constructed as:
                #
                #
                # * `host = [application_domain_name]`</br>
                #   `| [service] + '.' + [application_domain_name]`</br>
                #   `| [version] + '.' + [application_domain_name]`</br>
                #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                #   `| [instance] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                #
                # * `application_domain_name` = The domain name of the app, for
                #   example <app-id>.appspot.com, which is associated with the
                #   job's project ID.
                #
                # * `service =` service
                #
                # * `version =` version
                #
                # * `version_dot_service =`
                #   version `+ '.' +`
                #   service
                #
                # * `instance =` instance
                #
                # * `instance_dot_service =`
                #   instance `+ '.' +`
                #   service
                #
                # * `instance_dot_version =`
                #   instance `+ '.' +`
                #   version
                #
                # * `instance_dot_version_dot_service =`
                #   instance `+ '.' +`
                #   version `+ '.' +`
                #   service
                #
                #
                # If service is empty, then the job will be sent
                # to the service which is the default service when the job is attempted.
                #
                # If version is empty, then the job will be sent
                # to the version which is the default version when the job is attempted.
                #
                # If instance is empty, then the job will be
                # sent to an instance which is available when the job is attempted.
                #
                # If service,
                # version, or
                # instance is invalid, then the job will be sent
                # to the default version of the default service when the job is attempted.
          },
          "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
              # permitted.
          "body": "A String", # Body.
              #
              # HTTP request body. A request body is allowed only if the HTTP method is
              # POST or PUT. It will result in invalid argument error to set a body on a
              # job with an incompatible HttpMethod.
          "relativeUri": "A String", # The relative URI.
              #
              # The relative URL must begin with "/" and must be a valid HTTP relative URL.
              # It can contain a path, query string arguments, and `#` fragments.
              # If the relative URL is empty, then the root path "/" will be used.
              # No spaces are allowed, and the maximum length allowed is 2083 characters.
        },
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
            #
            # By default, if a job does not complete successfully (meaning that
            # an acknowledgement is not received from the handler, then it will be retried
            # with exponential backoff according to the settings in RetryConfig.
          "maxDoublings": 42, # The time between retries will double `max_doublings` times.
              #
              # A job's retry interval starts at
              # min_backoff_duration, then doubles
              # `max_doublings` times, then increases linearly, and finally
              # retries at intervals of
              # max_backoff_duration up to
              # retry_count times.
              #
              # For example, if min_backoff_duration is
              # 10s, max_backoff_duration is 300s, and
              # `max_doublings` is 3, then the a job will first be retried in 10s. The
              # retry interval will double three times, and then increase linearly by
              # 2^3 * 10s.  Finally, the job will retry at intervals of
              # max_backoff_duration until the job has
              # been attempted retry_count times. Thus, the
              # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
              #
              # The default value of this field is 5.
          "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 5 seconds.
          "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 1 hour.
          "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
              # execution was first attempted. If specified with
              # retry_count, the job will be retried until both
              # limits are reached.
              #
              # The default value for max_retry_duration is zero, which means retry
              # duration is unlimited.
          "retryCount": 42, # The number of attempts that the system will make to run a job using the
              # exponential backoff procedure described by
              # max_doublings.
              #
              # The default value of retry_count is zero.
              #
              # If retry_count is zero, a job attempt will *not* be retried if
              # it fails. Instead the Cloud Scheduler system will wait for the
              # next scheduled execution time.
              #
              # If retry_count is set to a non-zero number then Cloud Scheduler
              # will retry failed attempts, using exponential backoff,
              # retry_count times, or until the next scheduled execution time,
              # whichever comes first.
              #
              # Values greater than 5 and negative values are not allowed.
        },
        "state": "A String", # Output only. State of the job.
        "name": "A String", # Optionally caller-specified in CreateJob, after
            # which it becomes output only.
            #
            # The job name. For example:
            # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
            #
            # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), colons (:), or periods (.).
            #    For more information, see
            #    [Identifying
            #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
            # * `LOCATION_ID` is the canonical ID for the job's location.
            #    The list of available locations can be obtained by calling
            #    ListLocations.
            #    For more information, see https://cloud.google.com/about/locations/.
            # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), or underscores (_). The maximum length is 500 characters.
        "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
            # retry of a previously failed attempt or the next execution time
            # according to the schedule.
        "userUpdateTime": "A String", # Output only. The creation time of the job.
        "schedule": "A String", # Required, except when used with UpdateJob.
            #
            # Describes the schedule on which the job will be executed.
            #
            # The schedule can be either of the following types:
            #
            # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
            # * English-like
            # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
            #
            # As a general rule, execution `n + 1` of a job will not begin
            # until execution `n` has finished. Cloud Scheduler will never
            # allow two simultaneously outstanding executions. For example,
            # this implies that if the `n+1`th execution is scheduled to run at
            # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
            # execution will not start until `16:15`.
            # A scheduled start time will be delayed if the previous
            # execution has not ended when its scheduled time occurs.
            #
            # If retry_count > 0 and a job attempt fails,
            # the job will be tried a total of retry_count
            # times, with exponential backoff, until the next scheduled start
            # time.
        "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
            # this deadline then the request is cancelled and the attempt is marked as a
            # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
            # execution logs. Cloud Scheduler will retry the job according
            # to the RetryConfig.
            #
            # The allowed duration for this deadline is:
            # * For HTTP targets, between 15 seconds and 30 minutes.
            # * For App Engine HTTP targets, between 15
            #   seconds and 24 hours.
        "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
            # the given Pub/Sub topic.
          "attributes": { # Attributes for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
            "a_key": "A String",
          },
          "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
              # be published when a job is delivered. The topic name must be in the
              # same format as required by PubSub's
              # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
              # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
              #
              # The topic must be in the same project as the Cloud Scheduler job.
          "data": "A String", # The message payload for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
        },
        "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
            # an HTTP request via an http_method such as HTTP
            # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
            # response code in the range [200 - 299]. A failure to receive a response
            # constitutes a failed execution. For a redirected request, the response
            # returned by the redirected request is considered.
          "headers": { # The user can specify HTTP request headers to send with the job's
              # HTTP request. This map contains the header field names and
              # values. Repeated headers are not supported, but a header value can
              # contain commas. These headers represent a subset of the headers
              # that will accompany the job's HTTP request. Some HTTP request
              # headers will be ignored or replaced. A partial list of headers that
              # will be ignored or replaced is below:
              # - Host: This will be computed by Cloud Scheduler and derived from
              # uri.
              # * `Content-Length`: This will be computed by Cloud Scheduler.
              # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
              # * `X-Google-*`: Google internal use only.
              # * `X-AppEngine-*`: Google internal use only.
              #
              # The total size of headers must be less than 80KB.
            "a_key": "A String",
          },
          "oidcToken": { # Contains information needed for generating an # If specified, an
              # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
              # token will be generated and attached as an `Authorization` header in the
              # HTTP request.
              #
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
              # [OpenID Connect
              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
            "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                # specified in target will be used.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OIDC token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
          },
          "httpMethod": "A String", # Which HTTP method to use for the request.
          "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
              # method is POST, PUT, or PATCH. It is an error to set body on a job with an
              # incompatible HttpMethod.
          "oauthToken": { # Contains information needed for generating an # If specified, an
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
              # will be generated and attached as an `Authorization` header in the HTTP
              # request.
              #
              # This type of authorization should generally only be used when calling
              # Google APIs hosted on *.googleapis.com.
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
              # This type of authorization should generally only be used when calling Google
              # APIs hosted on *.googleapis.com.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OAuth token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
            "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                # will be used.
          },
          "uri": "A String", # Required. The full URI path that the request will be sent to. This string
              # must begin with either "http://" or "https://". Some examples of
              # valid values for uri are:
              # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
              # encode some characters for safety and compatibility. The maximum allowed
              # URL length is 2083 characters after encoding.
        },
        "timeZone": "A String", # Specifies the time zone to be used in interpreting
            # schedule. The value of this field must be a time
            # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
            #
            # Note that some time zones include a provision for
            # daylight savings time. The rules for daylight saving time are
            # determined by the chosen tz. For UTC use the string "utc". If a
            # time zone is not specified, the default will be in UTC (also known
            # as GMT).
      }

`resume(name, body=None, x__xgafv=None)`

    Resume a job.

    This method reenables a job after it has been Job.State.PAUSED. The
    state of a job is stored in Job.state; after calling this method it
    will be set to Job.State.ENABLED. A job must be in
    Job.State.PAUSED to be resumed.

    Args:
      name: string, Required. The job name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for ResumeJob.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for a job.
          # The maximum allowed size for a job is 100KB.
        "description": "A String", # Optionally caller-specified in CreateJob or
            # UpdateJob.
            #
            # A human-readable description for the job. This string must not contain
            # more than 500 characters.
        "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
            # of an HTTP request via an http_method such
            # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
            # HTTP response code in the range [200 - 299]. Error 503 is
            # considered an App Engine system error instead of an application
            # error. Requests returning error 503 will be retried regardless of
            # retry configuration and not counted against retry counts. Any other
            # response code, or a failure to receive a response before the
            # deadline, constitutes a failed attempt.
          "headers": { # HTTP request headers.
              #
              # This map contains the header field names and values. Headers can be set
              # when the job is created.
              #
              # Cloud Scheduler sets some headers to default values:
              #
              # * `User-Agent`: By default, this header is
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
              #   This header can be modified, but Cloud Scheduler will append
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
              #   modified `User-Agent`.
              # * `X-CloudScheduler`: This header will be set to true.
              #
              # If the job has an body, Cloud Scheduler sets
              # the following headers:
              #
              # * `Content-Type`: By default, the `Content-Type` header is set to
              #   `"application/octet-stream"`. The default can be overridden by explictly
              #   setting `Content-Type` to a particular media type when the job is
              #   created.
              #   For example, `Content-Type` can be set to `"application/json"`.
              # * `Content-Length`: This is computed by Cloud Scheduler. This value is
              #   output only. It cannot be changed.
              #
              # The headers below are output only. They cannot be set or overridden:
              #
              # * `X-Google-*`: For Google internal use only.
              # * `X-AppEngine-*`: For Google internal use only.
              #
              # In addition, some App Engine headers, which contain
              # job-specific information, are also be sent to the job handler.
            "a_key": "A String",
          },
          "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
              #
              # For more information about services, versions, and instances see
              # [An Overview of App
              # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
              # [Microservices Architecture on Google App
              # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "service": "A String", # App service.
                #
                # By default, the job is sent to the service which is the default
                # service when the job is attempted.
            "instance": "A String", # App instance.
                #
                # By default, the job is sent to an instance which is available when
                # the job is attempted.
                #
                # Requests can only be sent to a specific instance if
                # [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).
                # App Engine Flex does not support instances. For more information, see
                # [App Engine Standard request
                # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                # and [App Engine Flex request
                # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "version": "A String", # App version.
                #
                # By default, the job is sent to the version which is the default
                # version when the job is attempted.
            "host": "A String", # Output only. The host that the job is sent to.
                #
                # For more information about how App Engine requests are routed, see
                # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                #
                # The host is constructed as:
                #
                #
                # * `host = [application_domain_name]`</br>
                #   `| [service] + '.' + [application_domain_name]`</br>
                #   `| [version] + '.' + [application_domain_name]`</br>
                #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                #   `| [instance] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                #
                # * `application_domain_name` = The domain name of the app, for
                #   example <app-id>.appspot.com, which is associated with the
                #   job's project ID.
                #
                # * `service =` service
                #
                # * `version =` version
                #
                # * `version_dot_service =`
                #   version `+ '.' +`
                #   service
                #
                # * `instance =` instance
                #
                # * `instance_dot_service =`
                #   instance `+ '.' +`
                #   service
                #
                # * `instance_dot_version =`
                #   instance `+ '.' +`
                #   version
                #
                # * `instance_dot_version_dot_service =`
                #   instance `+ '.' +`
                #   version `+ '.' +`
                #   service
                #
                #
                # If service is empty, then the job will be sent
                # to the service which is the default service when the job is attempted.
                #
                # If version is empty, then the job will be sent
                # to the version which is the default version when the job is attempted.
                #
                # If instance is empty, then the job will be
                # sent to an instance which is available when the job is attempted.
                #
                # If service,
                # version, or
                # instance is invalid, then the job will be sent
                # to the default version of the default service when the job is attempted.
          },
          "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
              # permitted.
          "body": "A String", # Body.
              #
              # HTTP request body. A request body is allowed only if the HTTP method is
              # POST or PUT. It will result in invalid argument error to set a body on a
              # job with an incompatible HttpMethod.
          "relativeUri": "A String", # The relative URI.
              #
              # The relative URL must begin with "/" and must be a valid HTTP relative URL.
              # It can contain a path, query string arguments, and `#` fragments.
              # If the relative URL is empty, then the root path "/" will be used.
              # No spaces are allowed, and the maximum length allowed is 2083 characters.
        },
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
            #
            # By default, if a job does not complete successfully (meaning that
            # an acknowledgement is not received from the handler, then it will be retried
            # with exponential backoff according to the settings in RetryConfig.
          "maxDoublings": 42, # The time between retries will double `max_doublings` times.
              #
              # A job's retry interval starts at
              # min_backoff_duration, then doubles
              # `max_doublings` times, then increases linearly, and finally
              # retries at intervals of
              # max_backoff_duration up to
              # retry_count times.
              #
              # For example, if min_backoff_duration is
              # 10s, max_backoff_duration is 300s, and
              # `max_doublings` is 3, then the a job will first be retried in 10s. The
              # retry interval will double three times, and then increase linearly by
              # 2^3 * 10s.  Finally, the job will retry at intervals of
              # max_backoff_duration until the job has
              # been attempted retry_count times. Thus, the
              # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
              #
              # The default value of this field is 5.
          "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 5 seconds.
          "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 1 hour.
          "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
              # execution was first attempted. If specified with
              # retry_count, the job will be retried until both
              # limits are reached.
              #
              # The default value for max_retry_duration is zero, which means retry
              # duration is unlimited.
          "retryCount": 42, # The number of attempts that the system will make to run a job using the
              # exponential backoff procedure described by
              # max_doublings.
              #
              # The default value of retry_count is zero.
              #
              # If retry_count is zero, a job attempt will *not* be retried if
              # it fails. Instead the Cloud Scheduler system will wait for the
              # next scheduled execution time.
              #
              # If retry_count is set to a non-zero number then Cloud Scheduler
              # will retry failed attempts, using exponential backoff,
              # retry_count times, or until the next scheduled execution time,
              # whichever comes first.
              #
              # Values greater than 5 and negative values are not allowed.
        },
        "state": "A String", # Output only. State of the job.
        "name": "A String", # Optionally caller-specified in CreateJob, after
            # which it becomes output only.
            #
            # The job name. For example:
            # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
            #
            # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), colons (:), or periods (.).
            #    For more information, see
            #    [Identifying
            #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
            # * `LOCATION_ID` is the canonical ID for the job's location.
            #    The list of available locations can be obtained by calling
            #    ListLocations.
            #    For more information, see https://cloud.google.com/about/locations/.
            # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), or underscores (_). The maximum length is 500 characters.
        "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
            # retry of a previously failed attempt or the next execution time
            # according to the schedule.
        "userUpdateTime": "A String", # Output only. The creation time of the job.
        "schedule": "A String", # Required, except when used with UpdateJob.
            #
            # Describes the schedule on which the job will be executed.
            #
            # The schedule can be either of the following types:
            #
            # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
            # * English-like
            # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
            #
            # As a general rule, execution `n + 1` of a job will not begin
            # until execution `n` has finished. Cloud Scheduler will never
            # allow two simultaneously outstanding executions. For example,
            # this implies that if the `n+1`th execution is scheduled to run at
            # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
            # execution will not start until `16:15`.
            # A scheduled start time will be delayed if the previous
            # execution has not ended when its scheduled time occurs.
            #
            # If retry_count > 0 and a job attempt fails,
            # the job will be tried a total of retry_count
            # times, with exponential backoff, until the next scheduled start
            # time.
        "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
            # this deadline then the request is cancelled and the attempt is marked as a
            # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
            # execution logs. Cloud Scheduler will retry the job according
            # to the RetryConfig.
            #
            # The allowed duration for this deadline is:
            # * For HTTP targets, between 15 seconds and 30 minutes.
            # * For App Engine HTTP targets, between 15
            #   seconds and 24 hours.
        "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
            # the given Pub/Sub topic.
          "attributes": { # Attributes for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
            "a_key": "A String",
          },
          "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
              # be published when a job is delivered. The topic name must be in the
              # same format as required by PubSub's
              # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
              # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
              #
              # The topic must be in the same project as the Cloud Scheduler job.
          "data": "A String", # The message payload for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
        },
        "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
            # an HTTP request via an http_method such as HTTP
            # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
            # response code in the range [200 - 299]. A failure to receive a response
            # constitutes a failed execution. For a redirected request, the response
            # returned by the redirected request is considered.
          "headers": { # The user can specify HTTP request headers to send with the job's
              # HTTP request. This map contains the header field names and
              # values. Repeated headers are not supported, but a header value can
              # contain commas. These headers represent a subset of the headers
              # that will accompany the job's HTTP request. Some HTTP request
              # headers will be ignored or replaced. A partial list of headers that
              # will be ignored or replaced is below:
              # - Host: This will be computed by Cloud Scheduler and derived from
              # uri.
              # * `Content-Length`: This will be computed by Cloud Scheduler.
              # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
              # * `X-Google-*`: Google internal use only.
              # * `X-AppEngine-*`: Google internal use only.
              #
              # The total size of headers must be less than 80KB.
            "a_key": "A String",
          },
          "oidcToken": { # Contains information needed for generating an # If specified, an
              # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
              # token will be generated and attached as an `Authorization` header in the
              # HTTP request.
              #
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
              # [OpenID Connect
              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
            "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                # specified in target will be used.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OIDC token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
          },
          "httpMethod": "A String", # Which HTTP method to use for the request.
          "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
              # method is POST, PUT, or PATCH. It is an error to set body on a job with an
              # incompatible HttpMethod.
          "oauthToken": { # Contains information needed for generating an # If specified, an
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
              # will be generated and attached as an `Authorization` header in the HTTP
              # request.
              #
              # This type of authorization should generally only be used when calling
              # Google APIs hosted on *.googleapis.com.
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
              # This type of authorization should generally only be used when calling Google
              # APIs hosted on *.googleapis.com.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OAuth token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
            "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                # will be used.
          },
          "uri": "A String", # Required. The full URI path that the request will be sent to. This string
              # must begin with either "http://" or "https://". Some examples of
              # valid values for uri are:
              # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
              # encode some characters for safety and compatibility. The maximum allowed
              # URL length is 2083 characters after encoding.
        },
        "timeZone": "A String", # Specifies the time zone to be used in interpreting
            # schedule. The value of this field must be a time
            # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
            #
            # Note that some time zones include a provision for
            # daylight savings time. The rules for daylight saving time are
            # determined by the chosen tz. For UTC use the string "utc". If a
            # time zone is not specified, the default will be in UTC (also known
            # as GMT).
      }

`run(name, body=None, x__xgafv=None)`

    Forces a job to run now.

    When this method is called, Cloud Scheduler will dispatch the job, even
    if the job is already running.

    Args:
      name: string, Required. The job name. For example:
    `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`. (required)
      body: object, The request body.
        The object takes the form of:

    { # Request message for forcing a job to run now using
          # RunJob.
      }

      x__xgafv: string, V1 error format.
        Allowed values
          1 - v1 error format
          2 - v2 error format

    Returns:
      An object of the form:

        { # Configuration for a job.
          # The maximum allowed size for a job is 100KB.
        "description": "A String", # Optionally caller-specified in CreateJob or
            # UpdateJob.
            #
            # A human-readable description for the job. This string must not contain
            # more than 500 characters.
        "appEngineHttpTarget": { # App Engine target. The job will be pushed to a job handler by means # App Engine HTTP target.
            # of an HTTP request via an http_method such
            # as HTTP POST, HTTP GET, etc. The job is acknowledged by means of an
            # HTTP response code in the range [200 - 299]. Error 503 is
            # considered an App Engine system error instead of an application
            # error. Requests returning error 503 will be retried regardless of
            # retry configuration and not counted against retry counts. Any other
            # response code, or a failure to receive a response before the
            # deadline, constitutes a failed attempt.
          "headers": { # HTTP request headers.
              #
              # This map contains the header field names and values. Headers can be set
              # when the job is created.
              #
              # Cloud Scheduler sets some headers to default values:
              #
              # * `User-Agent`: By default, this header is
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"`.
              #   This header can be modified, but Cloud Scheduler will append
              #   `"AppEngine-Google; (+http://code.google.com/appengine)"` to the
              #   modified `User-Agent`.
              # * `X-CloudScheduler`: This header will be set to true.
              #
              # If the job has an body, Cloud Scheduler sets
              # the following headers:
              #
              # * `Content-Type`: By default, the `Content-Type` header is set to
              #   `"application/octet-stream"`. The default can be overridden by explictly
              #   setting `Content-Type` to a particular media type when the job is
              #   created.
              #   For example, `Content-Type` can be set to `"application/json"`.
              # * `Content-Length`: This is computed by Cloud Scheduler. This value is
              #   output only. It cannot be changed.
              #
              # The headers below are output only. They cannot be set or overridden:
              #
              # * `X-Google-*`: For Google internal use only.
              # * `X-AppEngine-*`: For Google internal use only.
              #
              # In addition, some App Engine headers, which contain
              # job-specific information, are also be sent to the job handler.
            "a_key": "A String",
          },
          "appEngineRouting": { # App Engine Routing. # App Engine Routing setting for the job.
              #
              # For more information about services, versions, and instances see
              # [An Overview of App
              # Engine](https://cloud.google.com/appengine/docs/python/an-overview-of-app-engine),
              # [Microservices Architecture on Google App
              # Engine](https://cloud.google.com/appengine/docs/python/microservices-on-app-engine),
              # [App Engine Standard request
              # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed),
              # and [App Engine Flex request
              # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "service": "A String", # App service.
                #
                # By default, the job is sent to the service which is the default
                # service when the job is attempted.
            "instance": "A String", # App instance.
                #
                # By default, the job is sent to an instance which is available when
                # the job is attempted.
                #
                # Requests can only be sent to a specific instance if
                # [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).
                # App Engine Flex does not support instances. For more information, see
                # [App Engine Standard request
                # routing](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed)
                # and [App Engine Flex request
                # routing](https://cloud.google.com/appengine/docs/flexible/python/how-requests-are-routed).
            "version": "A String", # App version.
                #
                # By default, the job is sent to the version which is the default
                # version when the job is attempted.
            "host": "A String", # Output only. The host that the job is sent to.
                #
                # For more information about how App Engine requests are routed, see
                # [here](https://cloud.google.com/appengine/docs/standard/python/how-requests-are-routed).
                #
                # The host is constructed as:
                #
                #
                # * `host = [application_domain_name]`</br>
                #   `| [service] + '.' + [application_domain_name]`</br>
                #   `| [version] + '.' + [application_domain_name]`</br>
                #   `| [version_dot_service]+ '.' + [application_domain_name]`</br>
                #   `| [instance] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_service] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version] + '.' + [application_domain_name]`</br>
                #   `| [instance_dot_version_dot_service] + '.' + [application_domain_name]`
                #
                # * `application_domain_name` = The domain name of the app, for
                #   example <app-id>.appspot.com, which is associated with the
                #   job's project ID.
                #
                # * `service =` service
                #
                # * `version =` version
                #
                # * `version_dot_service =`
                #   version `+ '.' +`
                #   service
                #
                # * `instance =` instance
                #
                # * `instance_dot_service =`
                #   instance `+ '.' +`
                #   service
                #
                # * `instance_dot_version =`
                #   instance `+ '.' +`
                #   version
                #
                # * `instance_dot_version_dot_service =`
                #   instance `+ '.' +`
                #   version `+ '.' +`
                #   service
                #
                #
                # If service is empty, then the job will be sent
                # to the service which is the default service when the job is attempted.
                #
                # If version is empty, then the job will be sent
                # to the version which is the default version when the job is attempted.
                #
                # If instance is empty, then the job will be
                # sent to an instance which is available when the job is attempted.
                #
                # If service,
                # version, or
                # instance is invalid, then the job will be sent
                # to the default version of the default service when the job is attempted.
          },
          "httpMethod": "A String", # The HTTP method to use for the request. PATCH and OPTIONS are not
              # permitted.
          "body": "A String", # Body.
              #
              # HTTP request body. A request body is allowed only if the HTTP method is
              # POST or PUT. It will result in invalid argument error to set a body on a
              # job with an incompatible HttpMethod.
          "relativeUri": "A String", # The relative URI.
              #
              # The relative URL must begin with "/" and must be a valid HTTP relative URL.
              # It can contain a path, query string arguments, and `#` fragments.
              # If the relative URL is empty, then the root path "/" will be used.
              # No spaces are allowed, and the maximum length allowed is 2083 characters.
        },
        "status": { # The `Status` type defines a logical error model that is suitable for # Output only. The response from the target for the last attempted execution.
            # different programming environments, including REST APIs and RPC APIs. It is
            # used by [gRPC](https://github.com/grpc). Each `Status` message contains
            # three pieces of data: error code, error message, and error details.
            #
            # You can find out more about this error model and how to work with it in the
            # [API Design Guide](https://cloud.google.com/apis/design/errors).
          "message": "A String", # A developer-facing error message, which should be in English. Any
              # user-facing error message should be localized and sent in the
              # google.rpc.Status.details field, or localized by the client.
          "details": [ # A list of messages that carry the error details.  There is a common set of
              # message types for APIs to use.
            {
              "a_key": "", # Properties of the object. Contains field @type with type URL.
            },
          ],
          "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        },
        "retryConfig": { # Settings that determine the retry behavior. # Settings that determine the retry behavior.
            #
            # By default, if a job does not complete successfully (meaning that
            # an acknowledgement is not received from the handler, then it will be retried
            # with exponential backoff according to the settings in RetryConfig.
          "maxDoublings": 42, # The time between retries will double `max_doublings` times.
              #
              # A job's retry interval starts at
              # min_backoff_duration, then doubles
              # `max_doublings` times, then increases linearly, and finally
              # retries at intervals of
              # max_backoff_duration up to
              # retry_count times.
              #
              # For example, if min_backoff_duration is
              # 10s, max_backoff_duration is 300s, and
              # `max_doublings` is 3, then the a job will first be retried in 10s. The
              # retry interval will double three times, and then increase linearly by
              # 2^3 * 10s.  Finally, the job will retry at intervals of
              # max_backoff_duration until the job has
              # been attempted retry_count times. Thus, the
              # requests will retry at 10s, 20s, 40s, 80s, 160s, 240s, 300s, 300s, ....
              #
              # The default value of this field is 5.
          "minBackoffDuration": "A String", # The minimum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 5 seconds.
          "maxBackoffDuration": "A String", # The maximum amount of time to wait before retrying a job after
              # it fails.
              #
              # The default value of this field is 1 hour.
          "maxRetryDuration": "A String", # The time limit for retrying a failed job, measured from time when an
              # execution was first attempted. If specified with
              # retry_count, the job will be retried until both
              # limits are reached.
              #
              # The default value for max_retry_duration is zero, which means retry
              # duration is unlimited.
          "retryCount": 42, # The number of attempts that the system will make to run a job using the
              # exponential backoff procedure described by
              # max_doublings.
              #
              # The default value of retry_count is zero.
              #
              # If retry_count is zero, a job attempt will *not* be retried if
              # it fails. Instead the Cloud Scheduler system will wait for the
              # next scheduled execution time.
              #
              # If retry_count is set to a non-zero number then Cloud Scheduler
              # will retry failed attempts, using exponential backoff,
              # retry_count times, or until the next scheduled execution time,
              # whichever comes first.
              #
              # Values greater than 5 and negative values are not allowed.
        },
        "state": "A String", # Output only. State of the job.
        "name": "A String", # Optionally caller-specified in CreateJob, after
            # which it becomes output only.
            #
            # The job name. For example:
            # `projects/PROJECT_ID/locations/LOCATION_ID/jobs/JOB_ID`.
            #
            # * `PROJECT_ID` can contain letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), colons (:), or periods (.).
            #    For more information, see
            #    [Identifying
            #    projects](https://cloud.google.com/resource-manager/docs/creating-managing-projects#identifying_projects)
            # * `LOCATION_ID` is the canonical ID for the job's location.
            #    The list of available locations can be obtained by calling
            #    ListLocations.
            #    For more information, see https://cloud.google.com/about/locations/.
            # * `JOB_ID` can contain only letters ([A-Za-z]), numbers ([0-9]),
            #    hyphens (-), or underscores (_). The maximum length is 500 characters.
        "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        "scheduleTime": "A String", # Output only. The next time the job is scheduled. Note that this may be a
            # retry of a previously failed attempt or the next execution time
            # according to the schedule.
        "userUpdateTime": "A String", # Output only. The creation time of the job.
        "schedule": "A String", # Required, except when used with UpdateJob.
            #
            # Describes the schedule on which the job will be executed.
            #
            # The schedule can be either of the following types:
            #
            # * [Crontab](http://en.wikipedia.org/wiki/Cron#Overview)
            # * English-like
            # [schedule](https://cloud.google.com/scheduler/docs/configuring/cron-job-schedules)
            #
            # As a general rule, execution `n + 1` of a job will not begin
            # until execution `n` has finished. Cloud Scheduler will never
            # allow two simultaneously outstanding executions. For example,
            # this implies that if the `n+1`th execution is scheduled to run at
            # 16:00 but the `n`th execution takes until 16:15, the `n+1`th
            # execution will not start until `16:15`.
            # A scheduled start time will be delayed if the previous
            # execution has not ended when its scheduled time occurs.
            #
            # If retry_count > 0 and a job attempt fails,
            # the job will be tried a total of retry_count
            # times, with exponential backoff, until the next scheduled start
            # time.
        "attemptDeadline": "A String", # The deadline for job attempts. If the request handler does not respond by
            # this deadline then the request is cancelled and the attempt is marked as a
            # `DEADLINE_EXCEEDED` failure. The failed attempt can be viewed in
            # execution logs. Cloud Scheduler will retry the job according
            # to the RetryConfig.
            #
            # The allowed duration for this deadline is:
            # * For HTTP targets, between 15 seconds and 30 minutes.
            # * For App Engine HTTP targets, between 15
            #   seconds and 24 hours.
        "pubsubTarget": { # Pub/Sub target. The job will be delivered by publishing a message to # Pub/Sub target.
            # the given Pub/Sub topic.
          "attributes": { # Attributes for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
            "a_key": "A String",
          },
          "topicName": "A String", # Required. The name of the Cloud Pub/Sub topic to which messages will
              # be published when a job is delivered. The topic name must be in the
              # same format as required by PubSub's
              # [PublishRequest.name](https://cloud.google.com/pubsub/docs/reference/rpc/google.pubsub.v1#publishrequest),
              # for example `projects/PROJECT_ID/topics/TOPIC_ID`.
              #
              # The topic must be in the same project as the Cloud Scheduler job.
          "data": "A String", # The message payload for PubsubMessage.
              #
              # Pubsub message must contain either non-empty data, or at least one
              # attribute.
        },
        "httpTarget": { # Http target. The job will be pushed to the job handler by means of # HTTP target.
            # an HTTP request via an http_method such as HTTP
            # POST, HTTP GET, etc. The job is acknowledged by means of an HTTP
            # response code in the range [200 - 299]. A failure to receive a response
            # constitutes a failed execution. For a redirected request, the response
            # returned by the redirected request is considered.
          "headers": { # The user can specify HTTP request headers to send with the job's
              # HTTP request. This map contains the header field names and
              # values. Repeated headers are not supported, but a header value can
              # contain commas. These headers represent a subset of the headers
              # that will accompany the job's HTTP request. Some HTTP request
              # headers will be ignored or replaced. A partial list of headers that
              # will be ignored or replaced is below:
              # - Host: This will be computed by Cloud Scheduler and derived from
              # uri.
              # * `Content-Length`: This will be computed by Cloud Scheduler.
              # * `User-Agent`: This will be set to `"Google-Cloud-Scheduler"`.
              # * `X-Google-*`: Google internal use only.
              # * `X-AppEngine-*`: Google internal use only.
              #
              # The total size of headers must be less than 80KB.
            "a_key": "A String",
          },
          "oidcToken": { # Contains information needed for generating an # If specified, an
              # [OIDC](https://developers.google.com/identity/protocols/OpenIDConnect)
              # token will be generated and attached as an `Authorization` header in the
              # HTTP request.
              #
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
              # [OpenID Connect
              # token](https://developers.google.com/identity/protocols/OpenIDConnect).
              # This type of authorization can be used for many scenarios, including
              # calling Cloud Run, or endpoints where you intend to validate the token
              # yourself.
            "audience": "A String", # Audience to be used when generating OIDC token. If not specified, the URI
                # specified in target will be used.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OIDC token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
          },
          "httpMethod": "A String", # Which HTTP method to use for the request.
          "body": "A String", # HTTP request body. A request body is allowed only if the HTTP
              # method is POST, PUT, or PATCH. It is an error to set body on a job with an
              # incompatible HttpMethod.
          "oauthToken": { # Contains information needed for generating an # If specified, an
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2)
              # will be generated and attached as an `Authorization` header in the HTTP
              # request.
              #
              # This type of authorization should generally only be used when calling
              # Google APIs hosted on *.googleapis.com.
              # [OAuth token](https://developers.google.com/identity/protocols/OAuth2).
              # This type of authorization should generally only be used when calling Google
              # APIs hosted on *.googleapis.com.
            "serviceAccountEmail": "A String", # [Service account email](https://cloud.google.com/iam/docs/service-accounts)
                # to be used for generating OAuth token.
                # The service account must be within the same project as the job. The caller
                # must have iam.serviceAccounts.actAs permission for the service account.
            "scope": "A String", # OAuth scope to be used for generating OAuth access token.
                # If not specified, "https://www.googleapis.com/auth/cloud-platform"
                # will be used.
          },
          "uri": "A String", # Required. The full URI path that the request will be sent to. This string
              # must begin with either "http://" or "https://". Some examples of
              # valid values for uri are:
              # `http://acme.com` and `https://acme.com/sales:8080`. Cloud Scheduler will
              # encode some characters for safety and compatibility. The maximum allowed
              # URL length is 2083 characters after encoding.
        },
        "timeZone": "A String", # Specifies the time zone to be used in interpreting
            # schedule. The value of this field must be a time
            # zone name from the [tz database](http://en.wikipedia.org/wiki/Tz_database).
            #
            # Note that some time zones include a provision for
            # daylight savings time. The rules for daylight saving time are
            # determined by the chosen tz. For UTC use the string "utc". If a
            # time zone is not specified, the default will be in UTC (also known
            # as GMT).
      }