Cloud Scheduler API . projects . locations . jobs

Instance Methods

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

Creates a job.

delete(name, x__xgafv=None)

Deletes a job.

get(name, x__xgafv=None)

Gets a job.

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

Lists jobs.

list_next(previous_request, previous_response)

Retrieves the next page of results.

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

Updates a job.

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

Pauses a job.

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

Resume a job.

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

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.
    "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.
      "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.
      "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.
      "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).
        "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).
        "service": "A String", # App service.
            #
            # By default, the job is sent to the service which is the default
            # service when the job is attempted.
        "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.
    },
    "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.
    "userUpdateTime": "A String", # Output only. The creation time of the job.
    "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.
    "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.
    },
    "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.
    "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).
    "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.
      "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.
        "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.
        "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.
      },
      "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.
      "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.
      "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.
    },
    "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.
    "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.
      "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.
      "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.
      "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.
      "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.
      "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.
    },
    "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).
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "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.
        },
      ],
    },
    "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.
        # * For PubSub targets, this field is ignored.
    "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
  }

  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.
      "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.
        "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.
        "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.
        "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).
          "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).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "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.
      },
      "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.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "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.
      "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.
      },
      "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.
      "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).
      "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.
        "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.
          "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.
          "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.
        },
        "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.
        "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.
        "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.
      },
      "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.
      "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.
        "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.
        "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.
        "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.
        "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.
        "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.
      },
      "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).
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "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.
          },
        ],
      },
      "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.
          # * For PubSub targets, this field is ignored.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
    }
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.
      "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.
        "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.
        "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.
        "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).
          "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).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "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.
      },
      "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.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "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.
      "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.
      },
      "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.
      "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).
      "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.
        "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.
          "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.
          "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.
        },
        "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.
        "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.
        "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.
      },
      "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.
      "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.
        "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.
        "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.
        "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.
        "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.
        "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.
      },
      "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).
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "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.
          },
        ],
      },
      "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.
          # * For PubSub targets, this field is ignored.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
    }
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.
    "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.
    "jobs": [ # The list of jobs.
      { # Configuration for a job.
            # The maximum allowed size for a job is 100KB.
          "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.
            "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.
            "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.
            "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).
              "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).
              "service": "A String", # App service.
                  #
                  # By default, the job is sent to the service which is the default
                  # service when the job is attempted.
              "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.
          },
          "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.
          "userUpdateTime": "A String", # Output only. The creation time of the job.
          "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.
          "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.
          },
          "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.
          "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).
          "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.
            "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.
              "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.
              "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.
            },
            "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.
            "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.
            "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.
          },
          "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.
          "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.
            "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.
            "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.
            "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.
            "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.
            "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.
          },
          "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).
            "code": 42, # The status code, which should be an enum value of google.rpc.Code.
            "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.
              },
            ],
          },
          "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.
              # * For PubSub targets, this field is ignored.
          "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
        },
    ],
  }
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.
    "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.
      "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.
      "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.
      "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).
        "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).
        "service": "A String", # App service.
            #
            # By default, the job is sent to the service which is the default
            # service when the job is attempted.
        "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.
    },
    "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.
    "userUpdateTime": "A String", # Output only. The creation time of the job.
    "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.
    "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.
    },
    "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.
    "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).
    "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.
      "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.
        "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.
        "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.
      },
      "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.
      "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.
      "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.
    },
    "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.
    "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.
      "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.
      "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.
      "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.
      "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.
      "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.
    },
    "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).
      "code": 42, # The status code, which should be an enum value of google.rpc.Code.
      "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.
        },
      ],
    },
    "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.
        # * For PubSub targets, this field is ignored.
    "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
  }

  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.
      "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.
        "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.
        "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.
        "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).
          "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).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "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.
      },
      "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.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "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.
      "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.
      },
      "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.
      "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).
      "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.
        "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.
          "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.
          "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.
        },
        "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.
        "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.
        "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.
      },
      "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.
      "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.
        "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.
        "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.
        "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.
        "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.
        "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.
      },
      "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).
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "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.
          },
        ],
      },
      "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.
          # * For PubSub targets, this field is ignored.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
    }
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.
      "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.
        "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.
        "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.
        "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).
          "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).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "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.
      },
      "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.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "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.
      "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.
      },
      "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.
      "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).
      "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.
        "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.
          "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.
          "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.
        },
        "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.
        "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.
        "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.
      },
      "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.
      "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.
        "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.
        "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.
        "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.
        "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.
        "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.
      },
      "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).
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "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.
          },
        ],
      },
      "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.
          # * For PubSub targets, this field is ignored.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
    }
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.
      "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.
        "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.
        "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.
        "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).
          "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).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "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.
      },
      "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.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "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.
      "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.
      },
      "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.
      "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).
      "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.
        "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.
          "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.
          "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.
        },
        "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.
        "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.
        "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.
      },
      "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.
      "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.
        "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.
        "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.
        "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.
        "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.
        "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.
      },
      "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).
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "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.
          },
        ],
      },
      "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.
          # * For PubSub targets, this field is ignored.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
    }
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.
      "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.
        "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.
        "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.
        "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).
          "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).
          "service": "A String", # App service.
              #
              # By default, the job is sent to the service which is the default
              # service when the job is attempted.
          "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.
      },
      "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.
      "userUpdateTime": "A String", # Output only. The creation time of the job.
      "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.
      "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.
      },
      "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.
      "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).
      "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.
        "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.
          "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.
          "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.
        },
        "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.
        "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.
        "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.
      },
      "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.
      "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.
        "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.
        "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.
        "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.
        "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.
        "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.
      },
      "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).
        "code": 42, # The status code, which should be an enum value of google.rpc.Code.
        "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.
          },
        ],
      },
      "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.
          # * For PubSub targets, this field is ignored.
      "lastAttemptTime": "A String", # Output only. The time the last job attempt started.
    }