Regen all docs. (#700)
* Stop recursing if discovery == {}
* Generate docs with 'make docs'.
diff --git a/docs/dyn/jobs_v3.projects.jobs.html b/docs/dyn/jobs_v3.projects.jobs.html
new file mode 100644
index 0000000..6b5e7e8
--- /dev/null
+++ b/docs/dyn/jobs_v3.projects.jobs.html
@@ -0,0 +1,7150 @@
+<html><body>
+<style>
+
+body, h1, h2, h3, div, span, p, pre, a {
+ margin: 0;
+ padding: 0;
+ border: 0;
+ font-weight: inherit;
+ font-style: inherit;
+ font-size: 100%;
+ font-family: inherit;
+ vertical-align: baseline;
+}
+
+body {
+ font-size: 13px;
+ padding: 1em;
+}
+
+h1 {
+ font-size: 26px;
+ margin-bottom: 1em;
+}
+
+h2 {
+ font-size: 24px;
+ margin-bottom: 1em;
+}
+
+h3 {
+ font-size: 20px;
+ margin-bottom: 1em;
+ margin-top: 1em;
+}
+
+pre, code {
+ line-height: 1.5;
+ font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
+}
+
+pre {
+ margin-top: 0.5em;
+}
+
+h1, h2, h3, p {
+ font-family: Arial, sans serif;
+}
+
+h1, h2, h3 {
+ border-bottom: solid #CCC 1px;
+}
+
+.toc_element {
+ margin-top: 0.5em;
+}
+
+.firstline {
+ margin-left: 2 em;
+}
+
+.method {
+ margin-top: 1em;
+ border: solid 1px #CCC;
+ padding: 1em;
+ background: #EEE;
+}
+
+.details {
+ font-weight: bold;
+ font-size: 14px;
+}
+
+</style>
+
+<h1><a href="jobs_v3.html">Cloud Talent Solution API</a> . <a href="jobs_v3.projects.html">projects</a> . <a href="jobs_v3.projects.jobs.html">jobs</a></h1>
+<h2>Instance Methods</h2>
+<p class="toc_element">
+ <code><a href="#batchDelete">batchDelete(parent, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Deletes a list of Jobs by filter.</p>
+<p class="toc_element">
+ <code><a href="#create">create(parent, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Creates a new job.</p>
+<p class="toc_element">
+ <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
+<p class="firstline">Deletes the specified job.</p>
+<p class="toc_element">
+ <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
+<p class="firstline">Retrieves the specified job, whose status is OPEN or recently EXPIRED</p>
+<p class="toc_element">
+ <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None, jobView=None, filter=None)</a></code></p>
+<p class="firstline">Lists jobs by filter.</p>
+<p class="toc_element">
+ <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+ <code><a href="#patch">patch(name, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Updates specified job.</p>
+<p class="toc_element">
+ <code><a href="#search">search(parent, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Searches for jobs using the provided SearchJobsRequest.</p>
+<p class="toc_element">
+ <code><a href="#searchForAlert">searchForAlert(parent, body, x__xgafv=None)</a></code></p>
+<p class="firstline">Searches for jobs using the provided SearchJobsRequest.</p>
+<p class="toc_element">
+ <code><a href="#searchForAlert_next">searchForAlert_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<p class="toc_element">
+ <code><a href="#search_next">search_next(previous_request, previous_response)</a></code></p>
+<p class="firstline">Retrieves the next page of results.</p>
+<h3>Method Details</h3>
+<div class="method">
+ <code class="details" id="batchDelete">batchDelete(parent, body, x__xgafv=None)</code>
+ <pre>Deletes a list of Jobs by filter.
+
+Args:
+ parent: string, Required.
+
+The resource name of the project under which the job is created.
+
+The format is "projects/{project_id}", for example,
+"projects/api-test-project". (required)
+ body: object, The request body. (required)
+ The object takes the form of:
+
+{ # Input only.
+ #
+ # Batch delete jobs request.
+ "filter": "A String", # Required.
+ #
+ # The filter string specifies the jobs to be deleted.
+ #
+ # Supported operator: =, AND
+ #
+ # The fields eligible for filtering are:
+ #
+ # * `companyName` (Required)
+ # * `requisitionId` (Required)
+ #
+ # Sample Query: companyName = "projects/api-test-project/companies/123" AND
+ # requisitionId = "req-1"
+ }
+
+ 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 `{}`.
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="create">create(parent, body, x__xgafv=None)</code>
+ <pre>Creates a new job.
+
+Typically, the job becomes searchable within 10 seconds, but it may take
+up to 5 minutes.
+
+Args:
+ parent: string, Required.
+
+The resource name of the project under which the job is created.
+
+The format is "projects/{project_id}", for example,
+"projects/api-test-project". (required)
+ body: object, The request body. (required)
+ The object takes the form of:
+
+{ # Input only.
+ #
+ # Create job request.
+ "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Required.
+ #
+ # The Job to be created.
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ },
+ }
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A Job resource represents a job posting (also referred to as a "job listing"
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="delete">delete(name, x__xgafv=None)</code>
+ <pre>Deletes the specified job.
+
+Typically, the job becomes unsearchable within 10 seconds, but it may take
+up to 5 minutes.
+
+Args:
+ name: string, Required.
+
+The resource name of the job to be deleted.
+
+The format is "projects/{project_id}/jobs/{job_id}",
+for example, "projects/api-test-project/jobs/1234". (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 `{}`.
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="get">get(name, x__xgafv=None)</code>
+ <pre>Retrieves the specified job, whose status is OPEN or recently EXPIRED
+within the last 90 days.
+
+Args:
+ name: string, Required.
+
+The resource name of the job to retrieve.
+
+The format is "projects/{project_id}/jobs/{job_id}",
+for example, "projects/api-test-project/jobs/1234". (required)
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A Job resource represents a job posting (also referred to as a "job listing"
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="list">list(parent, pageSize=None, pageToken=None, x__xgafv=None, jobView=None, filter=None)</code>
+ <pre>Lists jobs by filter.
+
+Args:
+ parent: string, Required.
+
+The resource name of the project under which the job is created.
+
+The format is "projects/{project_id}", for example,
+"projects/api-test-project". (required)
+ pageSize: integer, Optional.
+
+The maximum number of jobs to be returned per page of results.
+
+If job_view is set to JobView.JOB_VIEW_ID_ONLY, the maximum allowed
+page size is 1000. Otherwise, the maximum allowed page size is 100.
+
+Default is 100 if empty or a number < 1 is specified.
+ pageToken: string, Optional.
+
+The starting point of a query result.
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+ jobView: string, Optional.
+
+The desired job attributes returned for jobs in the
+search response. Defaults to JobView.JOB_VIEW_FULL if no value is
+specified.
+ filter: string, Required.
+
+The filter string specifies the jobs to be enumerated.
+
+Supported operator: =, AND
+
+The fields eligible for filtering are:
+
+* `companyName` (Required)
+* `requisitionId` (Optional)
+
+Sample Query:
+
+* companyName = "projects/api-test-project/companies/123"
+* companyName = "projects/api-test-project/companies/123" AND requisitionId
+= "req-1"
+
+Returns:
+ An object of the form:
+
+ { # Output only.
+ #
+ # List jobs response.
+ "nextPageToken": "A String", # A token to retrieve the next page of results.
+ "jobs": [ # The Jobs for a given company.
+ #
+ # The maximum number of items returned is based on the limit field
+ # provided in the request.
+ { # A Job resource represents a job posting (also referred to as a "job listing"
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ },
+ ],
+ "metadata": { # Output only. # Additional information for the API invocation, such as the request
+ # tracking id.
+ #
+ # Additional information returned to client, such as debugging information.
+ "requestId": "A String", # A unique id associated with this call.
+ # This id is logged for tracking purposes.
+ },
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
+ <pre>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.
+ </pre>
+</div>
+
+<div class="method">
+ <code class="details" id="patch">patch(name, body, x__xgafv=None)</code>
+ <pre>Updates specified job.
+
+Typically, updated contents become visible in search results within 10
+seconds, but it may take up to 5 minutes.
+
+Args:
+ name: string, Required during job update.
+
+The resource name for the job. This is generated by the service when a
+job is created.
+
+The format is "projects/{project_id}/jobs/{job_id}",
+for example, "projects/api-test-project/jobs/1234".
+
+Use of this field in job queries and API calls is preferred over the use of
+requisition_id since this value is unique. (required)
+ body: object, The request body. (required)
+ The object takes the form of:
+
+{ # Input only.
+ #
+ # Update job request.
+ "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Required.
+ #
+ # The Job to be updated.
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ },
+ "updateMask": "A String", # Optional but strongly recommended to be provided for the best service
+ # experience.
+ #
+ # If update_mask is provided, only the specified fields in
+ # job are updated. Otherwise all the fields are updated.
+ #
+ # A field mask to restrict the fields that are updated. Only
+ # top level fields of Job are supported.
+ }
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # A Job resource represents a job posting (also referred to as a "job listing"
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="search">search(parent, body, x__xgafv=None)</code>
+ <pre>Searches for jobs using the provided SearchJobsRequest.
+
+This call constrains the visibility of jobs
+present in the database, and only returns jobs that the caller has
+permission to search against.
+
+Args:
+ parent: string, Required.
+
+The resource name of the project to search within.
+
+The format is "projects/{project_id}", for example,
+"projects/api-test-project". (required)
+ body: object, The request body. (required)
+ The object takes the form of:
+
+{ # Input only.
+ #
+ # The Request body of the `SearchJobs` call.
+ "orderBy": "A String", # Optional.
+ #
+ # The criteria determining how search results are sorted. Default is
+ # "relevance desc".
+ #
+ # Supported options are:
+ #
+ # * "relevance desc": By relevance descending, as determined by the API
+ # algorithms. Relevance thresholding of query results is only available
+ # with this ordering.
+ # * "posting`_`publish`_`time desc": By Job.posting_publish_time
+ # descending.
+ # * "posting`_`update`_`time desc": By Job.posting_update_time
+ # descending.
+ # * "title": By Job.title ascending.
+ # * "title desc": By Job.title descending.
+ # * "annualized`_`base`_`compensation": By job's
+ # CompensationInfo.annualized_base_compensation_range ascending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ # * "annualized`_`base`_`compensation desc": By job's
+ # CompensationInfo.annualized_base_compensation_range descending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ # * "annualized`_`total`_`compensation": By job's
+ # CompensationInfo.annualized_total_compensation_range ascending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ # * "annualized`_`total`_`compensation desc": By job's
+ # CompensationInfo.annualized_total_compensation_range descending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ "diversificationLevel": "A String", # Optional.
+ #
+ # Controls whether highly similar jobs are returned next to each other in
+ # the search results. Jobs are identified as highly similar based on
+ # their titles, job categories, and locations. Highly similar results are
+ # clustered so that only one representative job of the cluster is
+ # displayed to the job seeker higher up in the results, with the other jobs
+ # being displayed lower down in the results.
+ #
+ # Defaults to DiversificationLevel.SIMPLE if no value
+ # is specified.
+ "disableKeywordMatch": True or False, # Optional.
+ #
+ # Controls whether to disable exact keyword match on Job.job_title,
+ # Job.description, Job.company_display_name, Job.locations,
+ # Job.qualifications. When disable keyword match is turned off, a
+ # keyword match returns jobs that do not match given category filters when
+ # there are matching keywords. For example, the query "program manager," a
+ # result is returned even if the job posting has the title "software
+ # developer," which does not fall into "program manager" ontology, but does
+ # have "program manager" appearing in its description.
+ #
+ # For queries like "cloud" that does not contain title or
+ # location specific ontology, jobs with "cloud" keyword matches are returned
+ # regardless of this flag's value.
+ #
+ # Please use Company.keyword_searchable_custom_fields or
+ # Company.keyword_searchable_custom_attributes if company specific
+ # globally matched custom field/attribute string values is needed. Enabling
+ # keyword match improves recall of subsequent search requests.
+ #
+ # Defaults to false.
+ "jobQuery": { # Input only. # Optional.
+ #
+ # Query used to search against jobs, such as keyword, location filters, etc.
+ #
+ # The query required to perform a search query.
+ "disableSpellCheck": True or False, # Optional.
+ #
+ # This flag controls the spell-check feature. If false, the
+ # service attempts to correct a misspelled query,
+ # for example, "enginee" is corrected to "engineer".
+ #
+ # Defaults to false: a spell check is performed.
+ "customAttributeFilter": "A String", # Optional.
+ #
+ # This filter specifies a structured syntax to match against the
+ # Job.custom_attributes marked as `filterable`.
+ #
+ # The syntax for this expression is a subset of SQL syntax.
+ #
+ # Supported operators are: `=`, `!=`, `<`, `<=`, `>`, and `>=` where the
+ # left of the operator is a custom field key and the right of the operator
+ # is a number or a quoted string. You must escape backslash (\\) and
+ # quote (\") characters.
+ #
+ # Supported functions are `LOWER([field_name])` to
+ # perform a case insensitive match and `EMPTY([field_name])` to filter on the
+ # existence of a key.
+ #
+ # Boolean expressions (AND/OR/NOT) are supported up to 3 levels of
+ # nesting (for example, "((A AND B AND C) OR NOT D) AND E"), a maximum of 100
+ # comparisons or functions are allowed in the expression. The expression
+ # must be < 3000 bytes in length.
+ #
+ # Sample Query:
+ # `(LOWER(driving_license)="class \"a\"" OR EMPTY(driving_license)) AND
+ # driving_years > 10`
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type filter specifies the employment type of jobs to
+ # search against, such as EmploymentType.FULL_TIME.
+ #
+ # If a value is not specified, jobs in the search results includes any
+ # employment type.
+ #
+ # If multiple values are specified, jobs in the search results include
+ # any of the specified employment types.
+ "A String",
+ ],
+ "query": "A String", # Optional.
+ #
+ # The query string that matches against the job title, description, and
+ # location fields.
+ #
+ # The maximum number of allowed characters is 255.
+ "publishTimeRange": { # Message representing a period of time between two timestamps. # Optional.
+ #
+ # Jobs published within a range specified by this filter are searched
+ # against.
+ "endTime": "A String", # End of the period.
+ "startTime": "A String", # Begin of the period.
+ },
+ "commuteFilter": { # Input only. # Optional.
+ #
+ # Allows filtering jobs by commute time with different travel methods (for
+ # example, driving or public transit). Note: This only works with COMMUTE
+ # MODE. When specified, [JobQuery.location_filters] is
+ # ignored.
+ #
+ # Currently we don't support sorting by commute time.
+ #
+ # Parameters needed for commute search.
+ "roadTraffic": "A String", # Optional.
+ #
+ # Specifies the traffic density to use when calculating commute time.
+ "departureTime": { # Represents a time of day. The date and time zone are either not significant # Optional.
+ #
+ # The departure time used to calculate traffic impact, represented as
+ # google.type.TimeOfDay in local time zone.
+ #
+ # Currently traffic model is restricted to hour level resolution.
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
+ # types are google.type.Date and `google.protobuf.Timestamp`.
+ "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
+ # allow the value 60 if it allows leap-seconds.
+ "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
+ # to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
+ "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
+ },
+ "startCoordinates": { # An object representing a latitude/longitude pair. This is expressed as a pair # Required.
+ #
+ # The latitude and longitude of the location from which to calculate the
+ # commute time.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "allowImpreciseAddresses": True or False, # Optional.
+ # If true, jobs without "precise" addresses (street level addresses or GPS
+ # coordinates) might also be returned. For city and coarser level addresses,
+ # text matching is used. If this field is set to false or is not specified,
+ # only jobs that include precise addresses are returned by Commute
+ # Search.
+ #
+ # Note: If `allow_imprecise_addresses` is set to true, Commute Search is not
+ # able to calculate accurate commute times to jobs with city level and
+ # coarser address information. Jobs with imprecise addresses will return a
+ # `travel_duration` time of 0 regardless of distance from the job seeker.
+ "travelDuration": "A String", # Required.
+ #
+ # The maximum travel time in seconds. The maximum allowed value is `3600s`
+ # (one hour). Format is `123s`.
+ "commuteMethod": "A String", # Required.
+ #
+ # The method of transportation for which to calculate the commute time.
+ },
+ "jobCategories": [ # Optional.
+ #
+ # The category filter specifies the categories of jobs to search against.
+ # See Category for more information.
+ #
+ # If a value is not specified, jobs from any category are searched against.
+ #
+ # If multiple values are specified, jobs from any of the specified
+ # categories are searched against.
+ "A String",
+ ],
+ "languageCodes": [ # Optional.
+ #
+ # This filter specifies the locale of jobs to search against,
+ # for example, "en-US".
+ #
+ # If a value isn't specified, the search results can contain jobs in any
+ # locale.
+ #
+ #
+ # Language codes should be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
+ #
+ # At most 10 language code filters are allowed.
+ "A String",
+ ],
+ "companyNames": [ # Optional.
+ #
+ # This filter specifies the company entities to search against.
+ #
+ # If a value isn't specified, jobs are searched for against all
+ # companies.
+ #
+ # If multiple values are specified, jobs are searched against the
+ # companies specified.
+ #
+ # The format is "projects/{project_id}/companies/{company_id}", for example,
+ # "projects/api-test-project/companies/foo".
+ #
+ # At most 20 company filters are allowed.
+ "A String",
+ ],
+ "companyDisplayNames": [ # Optional.
+ #
+ # This filter specifies the exact company display
+ # name of the jobs to search against.
+ #
+ # If a value isn't specified, jobs within the search results are
+ # associated with any company.
+ #
+ # If multiple values are specified, jobs within the search results may be
+ # associated with any of the specified companies.
+ #
+ # At most 20 company display name filters are allowed.
+ "A String",
+ ],
+ "locationFilters": [ # Optional.
+ #
+ # The location filter specifies geo-regions containing the jobs to
+ # search against. See LocationFilter for more information.
+ #
+ # If a location value isn't specified, jobs fitting the other search
+ # criteria are retrieved regardless of where they're located.
+ #
+ # If multiple values are specified, jobs are retrieved from any of the
+ # specified locations. If different values are specified for the
+ # LocationFilter.distance_in_miles parameter, the maximum provided
+ # distance is used for all locations.
+ #
+ # At most 5 location filters are allowed.
+ { # Input only.
+ #
+ # Geographic region of the search.
+ "regionCode": "A String", # Optional.
+ #
+ # CLDR region code of the country/region of the address. This is used
+ # to address ambiguity of the user-input location, for example, "Liverpool"
+ # against "Liverpool, NY, US" or "Liverpool, UK".
+ #
+ # Set this field if all the jobs to search against are from a same region,
+ # or jobs are world-wide, but the job seeker is from a specific region.
+ #
+ # See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # Optional.
+ #
+ # The latitude and longitude of the geographic center from which to
+ # search. This field's ignored if `address` is provided.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "distanceInMiles": 3.14, # Optional.
+ #
+ #
+ # The distance_in_miles is applied when the location being searched for is
+ # identified as a city or smaller. When the location being searched for is a
+ # state or larger, this field is ignored.
+ "telecommutePreference": "A String", # Optional.
+ #
+ # Allows the client to return jobs without a
+ # set location, specifically, telecommuting jobs (telecomuting is considered
+ # by the service as a special location.
+ # Job.posting_region indicates if a job permits telecommuting.
+ # If this field is set to TelecommutePreference.TELECOMMUTE_ALLOWED,
+ # telecommuting jobs are searched, and address and lat_lng are
+ # ignored. If not set or set to
+ # TelecommutePreference.TELECOMMUTE_EXCLUDED, telecommute job are not
+ # searched.
+ #
+ # This filter can be used by itself to search exclusively for telecommuting
+ # jobs, or it can be combined with another location
+ # filter to search for a combination of job locations,
+ # such as "Mountain View" or "telecommuting" jobs. However, when used in
+ # combination with other location filters, telecommuting jobs can be
+ # treated as less relevant than other jobs in the search response.
+ "address": "A String", # Optional.
+ #
+ # The address name, such as "Mountain View" or "Bay Area".
+ },
+ ],
+ "compensationFilter": { # Input only. # Optional.
+ #
+ # This search filter is applied only to
+ # Job.compensation_info. For example, if the filter is specified
+ # as "Hourly job with per-hour compensation > $15", only jobs meeting
+ # these criteria are searched. If a filter isn't defined, all open jobs
+ # are searched.
+ #
+ # Filter on job compensation type and amount.
+ "units": [ # Required.
+ #
+ # Specify desired `base compensation entry's`
+ # CompensationInfo.CompensationUnit.
+ "A String",
+ ],
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "type": "A String", # Required.
+ #
+ # Type of filter.
+ "includeJobsWithUnspecifiedCompensationRange": True or False, # Optional.
+ #
+ # If set to true, jobs with unspecified compensation range fields are
+ # included.
+ },
+ },
+ "pageSize": 42, # Optional.
+ #
+ # A limit on the number of jobs returned in the search results.
+ # Increasing this value above the default value of 10 can increase search
+ # response time. The value can be between 1 and 100.
+ "histogramFacets": { # Input only. # Optional.
+ #
+ # Histogram requests for jobs matching JobQuery.
+ #
+ # Histogram facets to be specified in SearchJobsRequest.
+ "simpleHistogramFacets": [ # Optional.
+ #
+ # Specifies the simple type of histogram facets, for example,
+ # `COMPANY_SIZE`, `EMPLOYMENT_TYPE` etc.
+ "A String",
+ ],
+ "customAttributeHistogramFacets": [ # Optional.
+ #
+ # Specifies the custom attributes histogram requests.
+ # Duplicate values of CustomAttributeHistogramRequest.key are not
+ # allowed.
+ { # Custom attributes histogram request. An error is thrown if neither
+ # string_value_histogram or long_value_histogram_bucketing_option has
+ # been defined.
+ "stringValueHistogram": True or False, # Optional. If set to true, the response includes the histogram value for
+ # each key as a string.
+ "longValueHistogramBucketingOption": { # Input only. # Optional.
+ #
+ # Specifies buckets used to perform a range histogram on Job's
+ # filterable long custom field values, or min/max value requirements.
+ #
+ # Use this field to specify bucketing option for the histogram search response.
+ "bucketBounds": [ # Required.
+ #
+ # Two adjacent values form a histogram bucket. Values should be in
+ # ascending order. For example, if [5, 10, 15] are provided, four buckets are
+ # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
+ # [buckets_bound is supported.
+ 3.14,
+ ],
+ "requiresMinMax": True or False, # Optional.
+ #
+ # If set to true, the histogram result includes minimum/maximum
+ # value of the numeric field.
+ },
+ "key": "A String", # Required.
+ #
+ # Specifies the custom field key to perform a histogram on. If specified
+ # without `long_value_histogram_bucketing_option`, histogram on string values
+ # of the given `key` is triggered, otherwise histogram is performed on long
+ # values.
+ },
+ ],
+ "compensationHistogramFacets": [ # Optional.
+ #
+ # Specifies compensation field-based histogram requests.
+ # Duplicate values of CompensationHistogramRequest.type are not allowed.
+ { # Input only.
+ #
+ # Compensation based histogram request.
+ "bucketingOption": { # Input only. # Required.
+ #
+ # Numeric histogram options, like buckets, whether include min or max value.
+ #
+ # Use this field to specify bucketing option for the histogram search response.
+ "bucketBounds": [ # Required.
+ #
+ # Two adjacent values form a histogram bucket. Values should be in
+ # ascending order. For example, if [5, 10, 15] are provided, four buckets are
+ # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
+ # [buckets_bound is supported.
+ 3.14,
+ ],
+ "requiresMinMax": True or False, # Optional.
+ #
+ # If set to true, the histogram result includes minimum/maximum
+ # value of the numeric field.
+ },
+ "type": "A String", # Required.
+ #
+ # Type of the request, representing which field the histogramming should be
+ # performed over. A single request can only specify one histogram of each
+ # `CompensationHistogramRequestType`.
+ },
+ ],
+ },
+ "enableBroadening": True or False, # Optional.
+ #
+ # Controls whether to broaden the search when it produces sparse results.
+ # Broadened queries append results to the end of the matching results
+ # list.
+ #
+ # Defaults to false.
+ "searchMode": "A String", # Optional.
+ #
+ # Mode of a search.
+ #
+ # Defaults to SearchMode.JOB_SEARCH.
+ "pageToken": "A String", # Optional.
+ #
+ # The token specifying the current offset within
+ # search results. See SearchJobsResponse.next_page_token for
+ # an explanation of how to obtain the next set of query results.
+ "requestMetadata": { # Input only. # Required.
+ #
+ # The meta information collected about the job searcher, used to improve the
+ # search quality of the service.. The identifiers, (such as `user_id`) are
+ # provided by users, and must be unique and consistent.
+ #
+ # Meta information related to the job searcher or entity
+ # conducting the job search. This information is used to improve the
+ # performance of the service.
+ "userId": "A String", # Required.
+ #
+ # A unique user identification string, as determined by the client.
+ # To have the strongest positive impact on search quality
+ # make sure the client-level is unique.
+ # Obfuscate this field for privacy concerns before
+ # providing it to the service.
+ #
+ # If this field is not available for some reason, send "UNKNOWN". Note
+ # that any improvements to the model for a particular tenant
+ # site, rely on this field being set correctly to a unique user_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "sessionId": "A String", # Required.
+ #
+ # A unique session identification string. A session is defined as the
+ # duration of an end user's interaction with the service over a certain
+ # period.
+ # Obfuscate this field for privacy concerns before
+ # providing it to the service.
+ #
+ # If this field is not available for some reason, send "UNKNOWN". Note
+ # that any improvements to the model for a particular tenant
+ # site, rely on this field being set correctly to some unique session_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "deviceInfo": { # Device information collected from the job seeker, candidate, or # Optional.
+ #
+ # The type of device used by the job seeker at the time of the call to the
+ # service.
+ # other entity conducting the job search. Providing this information improves
+ # the quality of the search results across devices.
+ "deviceType": "A String", # Optional.
+ #
+ # Type of the device.
+ "id": "A String", # Optional.
+ #
+ # A device-specific ID. The ID must be a unique identifier that
+ # distinguishes the device from other devices.
+ },
+ "domain": "A String", # Required.
+ #
+ # The client-defined scope or source of the service call, which typically
+ # is the domain on
+ # which the service has been implemented and is currently being run.
+ #
+ # For example, if the service is being run by client <em>Foo, Inc.</em>, on
+ # job board www.foo.com and career site www.bar.com, then this field is
+ # set to "foo.com" for use on the job board, and "bar.com" for use on the
+ # career site.
+ #
+ # If this field isn't available for some reason, send "UNKNOWN".
+ # Any improvements to the model for a particular tenant site rely on this
+ # field being set correctly to a domain.
+ #
+ # The maximum number of allowed characters is 255.
+ },
+ "requirePreciseResultSize": True or False, # Optional.
+ #
+ # Controls if the search job request requires the return of a precise
+ # count of the first 300 results. Setting this to `true` ensures
+ # consistency in the number of results per page. Best practice is to set this
+ # value to true if a client allows users to jump directly to a
+ # non-sequential search results page.
+ #
+ # Enabling this flag may adversely impact performance.
+ #
+ # Defaults to false.
+ "jobView": "A String", # Optional.
+ #
+ # The desired job attributes returned for jobs in the
+ # search response. Defaults to JobView.SMALL if no value is specified.
+ "offset": 42, # Optional.
+ #
+ # An integer that specifies the current offset (that is, starting result
+ # location, amongst the jobs deemed by the API as relevant) in search
+ # results. This field is only considered if page_token is unset.
+ #
+ # For example, 0 means to return results starting from the first matching
+ # job, and 10 means to return from the 11th job. This can be used for
+ # pagination, (for example, pageSize = 10 and offset = 10 means to return
+ # from the second page).
+ }
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Output only.
+ #
+ # Response for SearchJob method.
+ "nextPageToken": "A String", # The token that specifies the starting position of the next page of results.
+ # This field is empty if there are no more results.
+ "spellCorrection": { # Output only. # The spell checking result, and correction.
+ #
+ # Spell check result.
+ "corrected": True or False, # Indicates if the query was corrected by the spell checker.
+ "correctedText": "A String", # Correction output consisting of the corrected keyword string.
+ },
+ "totalSize": 42, # The precise result count, which is available only if the client set
+ # enable_precise_result_size to `true`, or if the response
+ # is the last page of results. Otherwise, the value is `-1`.
+ "matchingJobs": [ # The Job entities that match the specified SearchJobsRequest.
+ { # Output only.
+ #
+ # Job entry with metadata inside SearchJobsResponse.
+ "searchTextSnippet": "A String", # Contains snippets of text from the Job.description and similar
+ # fields that most closely match a search query's keywords, if available.
+ # All HTML tags in the original fields are stripped when returned in this
+ # field, and matching query keywords are enclosed in HTML bold tags.
+ "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Job resource that matches the specified SearchJobsRequest.
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ },
+ "commuteInfo": { # Output only. # Commute information which is generated based on specified
+ # CommuteFilter.
+ #
+ # Commute details related to this job.
+ "travelDuration": "A String", # The number of seconds required to travel to the job location from the
+ # query location. A duration of 0 seconds indicates that the job is not
+ # reachable within the requested duration, but was returned as part of an
+ # expanded query.
+ "jobLocation": { # Output only. # Location used as the destination in the commute calculation.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ },
+ "jobSummary": "A String", # A summary of the job with core information that's displayed on the search
+ # results listing page.
+ "jobTitleSnippet": "A String", # Contains snippets of text from the Job.job_title field most
+ # closely matching a search query's keywords, if available. The matching
+ # query keywords are enclosed in HTML bold tags.
+ },
+ ],
+ "histogramResults": { # Output only. # The histogram results that match specified
+ # SearchJobsRequest.histogram_facets.
+ #
+ # Histogram results that match HistogramFacets specified in
+ # SearchJobsRequest.
+ "customAttributeHistogramResults": [ # Specifies histogram results for custom attributes that match
+ # HistogramFacets.custom_attribute_histogram_facets.
+ { # Output only.
+ #
+ # Custom attribute histogram result.
+ "longValueHistogramResult": { # Output only. # Stores bucketed histogram counting result or min/max values for
+ # custom attribute long values associated with `key`.
+ #
+ # Custom numeric bucketing result.
+ "counts": [ # Count within each bucket. Its size is the length of
+ # NumericBucketingOption.bucket_bounds plus 1.
+ { # Represents count of jobs within one bucket.
+ "count": 42, # Number of jobs whose numeric field value fall into `range`.
+ "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
+ # that is, the count represents number of jobs in this range.
+ "to": 3.14, # Ending value of the bucket range.
+ "from": 3.14, # Starting value of the bucket range.
+ },
+ },
+ ],
+ "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ },
+ "stringValueHistogramResult": { # Stores a map from the values of string custom field associated
+ # with `key` to the number of jobs with that value in this histogram result.
+ "a_key": 42,
+ },
+ "key": "A String", # Stores the key of custom attribute the histogram is performed on.
+ },
+ ],
+ "simpleHistogramResults": [ # Specifies histogram results that matches
+ # HistogramFacets.simple_histogram_facets.
+ { # Output only.
+ #
+ # Result of a histogram call. The response contains the histogram map for the
+ # search type specified by HistogramResult.field.
+ # The response is a map of each filter value to the corresponding count of
+ # jobs for that filter.
+ "values": { # A map from the values of field to the number of jobs with that value
+ # in this search result.
+ #
+ # Key: search type (filter names, such as the companyName).
+ #
+ # Values: the count of jobs that match the filter for this search.
+ "a_key": 42,
+ },
+ "searchType": "A String", # The Histogram search filters.
+ },
+ ],
+ "compensationHistogramResults": [ # Specifies compensation field-based histogram results that match
+ # HistogramFacets.compensation_histogram_requests.
+ { # Output only.
+ #
+ # Compensation based histogram result.
+ "type": "A String", # Type of the request, corresponding to
+ # CompensationHistogramRequest.type.
+ "result": { # Output only. # Histogram result.
+ #
+ # Custom numeric bucketing result.
+ "counts": [ # Count within each bucket. Its size is the length of
+ # NumericBucketingOption.bucket_bounds plus 1.
+ { # Represents count of jobs within one bucket.
+ "count": 42, # Number of jobs whose numeric field value fall into `range`.
+ "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
+ # that is, the count represents number of jobs in this range.
+ "to": 3.14, # Ending value of the bucket range.
+ "from": 3.14, # Starting value of the bucket range.
+ },
+ },
+ ],
+ "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ },
+ },
+ ],
+ },
+ "estimatedTotalSize": 42, # An estimation of the number of jobs that match the specified query.
+ #
+ # This number is not guaranteed to be accurate. For accurate results,
+ # see enable_precise_result_size.
+ "broadenedQueryJobsCount": 42, # If query broadening is enabled, we may append additional results from the
+ # broadened query. This number indicates how many of the jobs returned in the
+ # jobs field are from the broadened query. These results are always at the
+ # end of the jobs list. In particular, a value of 0, or if the field isn't
+ # set, all the jobs in the jobs list are from the original
+ # (without broadening) query. If this field is non-zero, subsequent requests
+ # with offset after this result set should contain all broadened results.
+ "locationFilters": [ # The location filters that the service applied to the specified query. If
+ # any filters are lat-lng based, the JobLocation.location_type is
+ # JobLocation.LocationType#LOCATION_TYPE_UNSPECIFIED.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ "metadata": { # Output only. # Additional information for the API invocation, such as the request
+ # tracking id.
+ #
+ # Additional information returned to client, such as debugging information.
+ "requestId": "A String", # A unique id associated with this call.
+ # This id is logged for tracking purposes.
+ },
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="searchForAlert">searchForAlert(parent, body, x__xgafv=None)</code>
+ <pre>Searches for jobs using the provided SearchJobsRequest.
+
+This API call is intended for the use case of targeting passive job
+seekers (for example, job seekers who have signed up to receive email
+alerts about potential job opportunities), and has different algorithmic
+adjustments that are targeted to passive job seekers.
+
+This call constrains the visibility of jobs
+present in the database, and only returns jobs the caller has
+permission to search against.
+
+Args:
+ parent: string, Required.
+
+The resource name of the project to search within.
+
+The format is "projects/{project_id}", for example,
+"projects/api-test-project". (required)
+ body: object, The request body. (required)
+ The object takes the form of:
+
+{ # Input only.
+ #
+ # The Request body of the `SearchJobs` call.
+ "orderBy": "A String", # Optional.
+ #
+ # The criteria determining how search results are sorted. Default is
+ # "relevance desc".
+ #
+ # Supported options are:
+ #
+ # * "relevance desc": By relevance descending, as determined by the API
+ # algorithms. Relevance thresholding of query results is only available
+ # with this ordering.
+ # * "posting`_`publish`_`time desc": By Job.posting_publish_time
+ # descending.
+ # * "posting`_`update`_`time desc": By Job.posting_update_time
+ # descending.
+ # * "title": By Job.title ascending.
+ # * "title desc": By Job.title descending.
+ # * "annualized`_`base`_`compensation": By job's
+ # CompensationInfo.annualized_base_compensation_range ascending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ # * "annualized`_`base`_`compensation desc": By job's
+ # CompensationInfo.annualized_base_compensation_range descending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ # * "annualized`_`total`_`compensation": By job's
+ # CompensationInfo.annualized_total_compensation_range ascending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ # * "annualized`_`total`_`compensation desc": By job's
+ # CompensationInfo.annualized_total_compensation_range descending. Jobs
+ # whose annualized base compensation is unspecified are put at the end of
+ # search results.
+ "diversificationLevel": "A String", # Optional.
+ #
+ # Controls whether highly similar jobs are returned next to each other in
+ # the search results. Jobs are identified as highly similar based on
+ # their titles, job categories, and locations. Highly similar results are
+ # clustered so that only one representative job of the cluster is
+ # displayed to the job seeker higher up in the results, with the other jobs
+ # being displayed lower down in the results.
+ #
+ # Defaults to DiversificationLevel.SIMPLE if no value
+ # is specified.
+ "disableKeywordMatch": True or False, # Optional.
+ #
+ # Controls whether to disable exact keyword match on Job.job_title,
+ # Job.description, Job.company_display_name, Job.locations,
+ # Job.qualifications. When disable keyword match is turned off, a
+ # keyword match returns jobs that do not match given category filters when
+ # there are matching keywords. For example, the query "program manager," a
+ # result is returned even if the job posting has the title "software
+ # developer," which does not fall into "program manager" ontology, but does
+ # have "program manager" appearing in its description.
+ #
+ # For queries like "cloud" that does not contain title or
+ # location specific ontology, jobs with "cloud" keyword matches are returned
+ # regardless of this flag's value.
+ #
+ # Please use Company.keyword_searchable_custom_fields or
+ # Company.keyword_searchable_custom_attributes if company specific
+ # globally matched custom field/attribute string values is needed. Enabling
+ # keyword match improves recall of subsequent search requests.
+ #
+ # Defaults to false.
+ "jobQuery": { # Input only. # Optional.
+ #
+ # Query used to search against jobs, such as keyword, location filters, etc.
+ #
+ # The query required to perform a search query.
+ "disableSpellCheck": True or False, # Optional.
+ #
+ # This flag controls the spell-check feature. If false, the
+ # service attempts to correct a misspelled query,
+ # for example, "enginee" is corrected to "engineer".
+ #
+ # Defaults to false: a spell check is performed.
+ "customAttributeFilter": "A String", # Optional.
+ #
+ # This filter specifies a structured syntax to match against the
+ # Job.custom_attributes marked as `filterable`.
+ #
+ # The syntax for this expression is a subset of SQL syntax.
+ #
+ # Supported operators are: `=`, `!=`, `<`, `<=`, `>`, and `>=` where the
+ # left of the operator is a custom field key and the right of the operator
+ # is a number or a quoted string. You must escape backslash (\\) and
+ # quote (\") characters.
+ #
+ # Supported functions are `LOWER([field_name])` to
+ # perform a case insensitive match and `EMPTY([field_name])` to filter on the
+ # existence of a key.
+ #
+ # Boolean expressions (AND/OR/NOT) are supported up to 3 levels of
+ # nesting (for example, "((A AND B AND C) OR NOT D) AND E"), a maximum of 100
+ # comparisons or functions are allowed in the expression. The expression
+ # must be < 3000 bytes in length.
+ #
+ # Sample Query:
+ # `(LOWER(driving_license)="class \"a\"" OR EMPTY(driving_license)) AND
+ # driving_years > 10`
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type filter specifies the employment type of jobs to
+ # search against, such as EmploymentType.FULL_TIME.
+ #
+ # If a value is not specified, jobs in the search results includes any
+ # employment type.
+ #
+ # If multiple values are specified, jobs in the search results include
+ # any of the specified employment types.
+ "A String",
+ ],
+ "query": "A String", # Optional.
+ #
+ # The query string that matches against the job title, description, and
+ # location fields.
+ #
+ # The maximum number of allowed characters is 255.
+ "publishTimeRange": { # Message representing a period of time between two timestamps. # Optional.
+ #
+ # Jobs published within a range specified by this filter are searched
+ # against.
+ "endTime": "A String", # End of the period.
+ "startTime": "A String", # Begin of the period.
+ },
+ "commuteFilter": { # Input only. # Optional.
+ #
+ # Allows filtering jobs by commute time with different travel methods (for
+ # example, driving or public transit). Note: This only works with COMMUTE
+ # MODE. When specified, [JobQuery.location_filters] is
+ # ignored.
+ #
+ # Currently we don't support sorting by commute time.
+ #
+ # Parameters needed for commute search.
+ "roadTraffic": "A String", # Optional.
+ #
+ # Specifies the traffic density to use when calculating commute time.
+ "departureTime": { # Represents a time of day. The date and time zone are either not significant # Optional.
+ #
+ # The departure time used to calculate traffic impact, represented as
+ # google.type.TimeOfDay in local time zone.
+ #
+ # Currently traffic model is restricted to hour level resolution.
+ # or are specified elsewhere. An API may choose to allow leap seconds. Related
+ # types are google.type.Date and `google.protobuf.Timestamp`.
+ "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
+ # allow the value 60 if it allows leap-seconds.
+ "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
+ # to allow the value "24:00:00" for scenarios like business closing time.
+ "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
+ "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
+ },
+ "startCoordinates": { # An object representing a latitude/longitude pair. This is expressed as a pair # Required.
+ #
+ # The latitude and longitude of the location from which to calculate the
+ # commute time.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "allowImpreciseAddresses": True or False, # Optional.
+ # If true, jobs without "precise" addresses (street level addresses or GPS
+ # coordinates) might also be returned. For city and coarser level addresses,
+ # text matching is used. If this field is set to false or is not specified,
+ # only jobs that include precise addresses are returned by Commute
+ # Search.
+ #
+ # Note: If `allow_imprecise_addresses` is set to true, Commute Search is not
+ # able to calculate accurate commute times to jobs with city level and
+ # coarser address information. Jobs with imprecise addresses will return a
+ # `travel_duration` time of 0 regardless of distance from the job seeker.
+ "travelDuration": "A String", # Required.
+ #
+ # The maximum travel time in seconds. The maximum allowed value is `3600s`
+ # (one hour). Format is `123s`.
+ "commuteMethod": "A String", # Required.
+ #
+ # The method of transportation for which to calculate the commute time.
+ },
+ "jobCategories": [ # Optional.
+ #
+ # The category filter specifies the categories of jobs to search against.
+ # See Category for more information.
+ #
+ # If a value is not specified, jobs from any category are searched against.
+ #
+ # If multiple values are specified, jobs from any of the specified
+ # categories are searched against.
+ "A String",
+ ],
+ "languageCodes": [ # Optional.
+ #
+ # This filter specifies the locale of jobs to search against,
+ # for example, "en-US".
+ #
+ # If a value isn't specified, the search results can contain jobs in any
+ # locale.
+ #
+ #
+ # Language codes should be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
+ #
+ # At most 10 language code filters are allowed.
+ "A String",
+ ],
+ "companyNames": [ # Optional.
+ #
+ # This filter specifies the company entities to search against.
+ #
+ # If a value isn't specified, jobs are searched for against all
+ # companies.
+ #
+ # If multiple values are specified, jobs are searched against the
+ # companies specified.
+ #
+ # The format is "projects/{project_id}/companies/{company_id}", for example,
+ # "projects/api-test-project/companies/foo".
+ #
+ # At most 20 company filters are allowed.
+ "A String",
+ ],
+ "companyDisplayNames": [ # Optional.
+ #
+ # This filter specifies the exact company display
+ # name of the jobs to search against.
+ #
+ # If a value isn't specified, jobs within the search results are
+ # associated with any company.
+ #
+ # If multiple values are specified, jobs within the search results may be
+ # associated with any of the specified companies.
+ #
+ # At most 20 company display name filters are allowed.
+ "A String",
+ ],
+ "locationFilters": [ # Optional.
+ #
+ # The location filter specifies geo-regions containing the jobs to
+ # search against. See LocationFilter for more information.
+ #
+ # If a location value isn't specified, jobs fitting the other search
+ # criteria are retrieved regardless of where they're located.
+ #
+ # If multiple values are specified, jobs are retrieved from any of the
+ # specified locations. If different values are specified for the
+ # LocationFilter.distance_in_miles parameter, the maximum provided
+ # distance is used for all locations.
+ #
+ # At most 5 location filters are allowed.
+ { # Input only.
+ #
+ # Geographic region of the search.
+ "regionCode": "A String", # Optional.
+ #
+ # CLDR region code of the country/region of the address. This is used
+ # to address ambiguity of the user-input location, for example, "Liverpool"
+ # against "Liverpool, NY, US" or "Liverpool, UK".
+ #
+ # Set this field if all the jobs to search against are from a same region,
+ # or jobs are world-wide, but the job seeker is from a specific region.
+ #
+ # See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # Optional.
+ #
+ # The latitude and longitude of the geographic center from which to
+ # search. This field's ignored if `address` is provided.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "distanceInMiles": 3.14, # Optional.
+ #
+ #
+ # The distance_in_miles is applied when the location being searched for is
+ # identified as a city or smaller. When the location being searched for is a
+ # state or larger, this field is ignored.
+ "telecommutePreference": "A String", # Optional.
+ #
+ # Allows the client to return jobs without a
+ # set location, specifically, telecommuting jobs (telecomuting is considered
+ # by the service as a special location.
+ # Job.posting_region indicates if a job permits telecommuting.
+ # If this field is set to TelecommutePreference.TELECOMMUTE_ALLOWED,
+ # telecommuting jobs are searched, and address and lat_lng are
+ # ignored. If not set or set to
+ # TelecommutePreference.TELECOMMUTE_EXCLUDED, telecommute job are not
+ # searched.
+ #
+ # This filter can be used by itself to search exclusively for telecommuting
+ # jobs, or it can be combined with another location
+ # filter to search for a combination of job locations,
+ # such as "Mountain View" or "telecommuting" jobs. However, when used in
+ # combination with other location filters, telecommuting jobs can be
+ # treated as less relevant than other jobs in the search response.
+ "address": "A String", # Optional.
+ #
+ # The address name, such as "Mountain View" or "Bay Area".
+ },
+ ],
+ "compensationFilter": { # Input only. # Optional.
+ #
+ # This search filter is applied only to
+ # Job.compensation_info. For example, if the filter is specified
+ # as "Hourly job with per-hour compensation > $15", only jobs meeting
+ # these criteria are searched. If a filter isn't defined, all open jobs
+ # are searched.
+ #
+ # Filter on job compensation type and amount.
+ "units": [ # Required.
+ #
+ # Specify desired `base compensation entry's`
+ # CompensationInfo.CompensationUnit.
+ "A String",
+ ],
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "type": "A String", # Required.
+ #
+ # Type of filter.
+ "includeJobsWithUnspecifiedCompensationRange": True or False, # Optional.
+ #
+ # If set to true, jobs with unspecified compensation range fields are
+ # included.
+ },
+ },
+ "pageSize": 42, # Optional.
+ #
+ # A limit on the number of jobs returned in the search results.
+ # Increasing this value above the default value of 10 can increase search
+ # response time. The value can be between 1 and 100.
+ "histogramFacets": { # Input only. # Optional.
+ #
+ # Histogram requests for jobs matching JobQuery.
+ #
+ # Histogram facets to be specified in SearchJobsRequest.
+ "simpleHistogramFacets": [ # Optional.
+ #
+ # Specifies the simple type of histogram facets, for example,
+ # `COMPANY_SIZE`, `EMPLOYMENT_TYPE` etc.
+ "A String",
+ ],
+ "customAttributeHistogramFacets": [ # Optional.
+ #
+ # Specifies the custom attributes histogram requests.
+ # Duplicate values of CustomAttributeHistogramRequest.key are not
+ # allowed.
+ { # Custom attributes histogram request. An error is thrown if neither
+ # string_value_histogram or long_value_histogram_bucketing_option has
+ # been defined.
+ "stringValueHistogram": True or False, # Optional. If set to true, the response includes the histogram value for
+ # each key as a string.
+ "longValueHistogramBucketingOption": { # Input only. # Optional.
+ #
+ # Specifies buckets used to perform a range histogram on Job's
+ # filterable long custom field values, or min/max value requirements.
+ #
+ # Use this field to specify bucketing option for the histogram search response.
+ "bucketBounds": [ # Required.
+ #
+ # Two adjacent values form a histogram bucket. Values should be in
+ # ascending order. For example, if [5, 10, 15] are provided, four buckets are
+ # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
+ # [buckets_bound is supported.
+ 3.14,
+ ],
+ "requiresMinMax": True or False, # Optional.
+ #
+ # If set to true, the histogram result includes minimum/maximum
+ # value of the numeric field.
+ },
+ "key": "A String", # Required.
+ #
+ # Specifies the custom field key to perform a histogram on. If specified
+ # without `long_value_histogram_bucketing_option`, histogram on string values
+ # of the given `key` is triggered, otherwise histogram is performed on long
+ # values.
+ },
+ ],
+ "compensationHistogramFacets": [ # Optional.
+ #
+ # Specifies compensation field-based histogram requests.
+ # Duplicate values of CompensationHistogramRequest.type are not allowed.
+ { # Input only.
+ #
+ # Compensation based histogram request.
+ "bucketingOption": { # Input only. # Required.
+ #
+ # Numeric histogram options, like buckets, whether include min or max value.
+ #
+ # Use this field to specify bucketing option for the histogram search response.
+ "bucketBounds": [ # Required.
+ #
+ # Two adjacent values form a histogram bucket. Values should be in
+ # ascending order. For example, if [5, 10, 15] are provided, four buckets are
+ # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
+ # [buckets_bound is supported.
+ 3.14,
+ ],
+ "requiresMinMax": True or False, # Optional.
+ #
+ # If set to true, the histogram result includes minimum/maximum
+ # value of the numeric field.
+ },
+ "type": "A String", # Required.
+ #
+ # Type of the request, representing which field the histogramming should be
+ # performed over. A single request can only specify one histogram of each
+ # `CompensationHistogramRequestType`.
+ },
+ ],
+ },
+ "enableBroadening": True or False, # Optional.
+ #
+ # Controls whether to broaden the search when it produces sparse results.
+ # Broadened queries append results to the end of the matching results
+ # list.
+ #
+ # Defaults to false.
+ "searchMode": "A String", # Optional.
+ #
+ # Mode of a search.
+ #
+ # Defaults to SearchMode.JOB_SEARCH.
+ "pageToken": "A String", # Optional.
+ #
+ # The token specifying the current offset within
+ # search results. See SearchJobsResponse.next_page_token for
+ # an explanation of how to obtain the next set of query results.
+ "requestMetadata": { # Input only. # Required.
+ #
+ # The meta information collected about the job searcher, used to improve the
+ # search quality of the service.. The identifiers, (such as `user_id`) are
+ # provided by users, and must be unique and consistent.
+ #
+ # Meta information related to the job searcher or entity
+ # conducting the job search. This information is used to improve the
+ # performance of the service.
+ "userId": "A String", # Required.
+ #
+ # A unique user identification string, as determined by the client.
+ # To have the strongest positive impact on search quality
+ # make sure the client-level is unique.
+ # Obfuscate this field for privacy concerns before
+ # providing it to the service.
+ #
+ # If this field is not available for some reason, send "UNKNOWN". Note
+ # that any improvements to the model for a particular tenant
+ # site, rely on this field being set correctly to a unique user_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "sessionId": "A String", # Required.
+ #
+ # A unique session identification string. A session is defined as the
+ # duration of an end user's interaction with the service over a certain
+ # period.
+ # Obfuscate this field for privacy concerns before
+ # providing it to the service.
+ #
+ # If this field is not available for some reason, send "UNKNOWN". Note
+ # that any improvements to the model for a particular tenant
+ # site, rely on this field being set correctly to some unique session_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "deviceInfo": { # Device information collected from the job seeker, candidate, or # Optional.
+ #
+ # The type of device used by the job seeker at the time of the call to the
+ # service.
+ # other entity conducting the job search. Providing this information improves
+ # the quality of the search results across devices.
+ "deviceType": "A String", # Optional.
+ #
+ # Type of the device.
+ "id": "A String", # Optional.
+ #
+ # A device-specific ID. The ID must be a unique identifier that
+ # distinguishes the device from other devices.
+ },
+ "domain": "A String", # Required.
+ #
+ # The client-defined scope or source of the service call, which typically
+ # is the domain on
+ # which the service has been implemented and is currently being run.
+ #
+ # For example, if the service is being run by client <em>Foo, Inc.</em>, on
+ # job board www.foo.com and career site www.bar.com, then this field is
+ # set to "foo.com" for use on the job board, and "bar.com" for use on the
+ # career site.
+ #
+ # If this field isn't available for some reason, send "UNKNOWN".
+ # Any improvements to the model for a particular tenant site rely on this
+ # field being set correctly to a domain.
+ #
+ # The maximum number of allowed characters is 255.
+ },
+ "requirePreciseResultSize": True or False, # Optional.
+ #
+ # Controls if the search job request requires the return of a precise
+ # count of the first 300 results. Setting this to `true` ensures
+ # consistency in the number of results per page. Best practice is to set this
+ # value to true if a client allows users to jump directly to a
+ # non-sequential search results page.
+ #
+ # Enabling this flag may adversely impact performance.
+ #
+ # Defaults to false.
+ "jobView": "A String", # Optional.
+ #
+ # The desired job attributes returned for jobs in the
+ # search response. Defaults to JobView.SMALL if no value is specified.
+ "offset": 42, # Optional.
+ #
+ # An integer that specifies the current offset (that is, starting result
+ # location, amongst the jobs deemed by the API as relevant) in search
+ # results. This field is only considered if page_token is unset.
+ #
+ # For example, 0 means to return results starting from the first matching
+ # job, and 10 means to return from the 11th job. This can be used for
+ # pagination, (for example, pageSize = 10 and offset = 10 means to return
+ # from the second page).
+ }
+
+ x__xgafv: string, V1 error format.
+ Allowed values
+ 1 - v1 error format
+ 2 - v2 error format
+
+Returns:
+ An object of the form:
+
+ { # Output only.
+ #
+ # Response for SearchJob method.
+ "nextPageToken": "A String", # The token that specifies the starting position of the next page of results.
+ # This field is empty if there are no more results.
+ "spellCorrection": { # Output only. # The spell checking result, and correction.
+ #
+ # Spell check result.
+ "corrected": True or False, # Indicates if the query was corrected by the spell checker.
+ "correctedText": "A String", # Correction output consisting of the corrected keyword string.
+ },
+ "totalSize": 42, # The precise result count, which is available only if the client set
+ # enable_precise_result_size to `true`, or if the response
+ # is the last page of results. Otherwise, the value is `-1`.
+ "matchingJobs": [ # The Job entities that match the specified SearchJobsRequest.
+ { # Output only.
+ #
+ # Job entry with metadata inside SearchJobsResponse.
+ "searchTextSnippet": "A String", # Contains snippets of text from the Job.description and similar
+ # fields that most closely match a search query's keywords, if available.
+ # All HTML tags in the original fields are stripped when returned in this
+ # field, and matching query keywords are enclosed in HTML bold tags.
+ "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Job resource that matches the specified SearchJobsRequest.
+ # or "job requisition"). A job belongs to a Company, which is the hiring
+ # entity responsible for the job.
+ "languageCode": "A String", # Optional.
+ #
+ # The language of the posting. This field is distinct from
+ # any requirements for fluency that are associated with the job.
+ #
+ # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
+ # For more information, see
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
+ # class="external" target="_blank" }.
+ #
+ # If this field is unspecified and Job.description is present, detected
+ # language code based on Job.description is assigned, otherwise
+ # defaults to 'en_US'.
+ "addresses": [ # Optional but strongly recommended for the best service experience.
+ #
+ # Location(s) where the employer is looking to hire for this job posting.
+ #
+ # Specifying the full street address(es) of the hiring location enables
+ # better API results, especially job searches by commute time.
+ #
+ # At most 50 locations are allowed for best search performance. If a job has
+ # more locations, it is suggested to split it into multiple jobs with unique
+ # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
+ # multiple jobs with the same company_name, language_code and
+ # requisition_id are not allowed. If the original requisition_id must
+ # be preserved, a custom field should be used for storage. It is also
+ # suggested to group the locations that close to each other in the same job
+ # for better search experience.
+ #
+ # The maximum number of allowed characters is 500.
+ "A String",
+ ],
+ "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
+ "promotionValue": 42, # Optional.
+ #
+ # A promotion value of the job, as determined by the client.
+ # The value determines the sort order of the jobs returned when searching for
+ # jobs using the featured jobs search call, with higher promotional values
+ # being returned first and ties being resolved by relevance sort. Only the
+ # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
+ #
+ # Default value is 0, and negative values are treated as 0.
+ "employmentTypes": [ # Optional.
+ #
+ # The employment type(s) of a job, for example,
+ # full time or
+ # part time.
+ "A String",
+ ],
+ "jobEndTime": "A String", # Optional.
+ #
+ # The end timestamp of the job. Typically this field is used for contracting
+ # engagements. Invalid timestamps are ignored.
+ "description": "A String", # Required.
+ #
+ # The description of the job, which typically includes a multi-paragraph
+ # description of the company and related information. Separate fields are
+ # provided on the job object for responsibilities,
+ # qualifications, and other job characteristics. Use of
+ # these separate job fields is recommended.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 100,000.
+ "postingExpireTime": "A String", # Optional but strongly recommended for the best service
+ # experience.
+ #
+ # The expiration timestamp of the job. After this timestamp, the
+ # job is marked as expired, and it no longer appears in search results. The
+ # expired job can't be deleted or listed by the DeleteJob and
+ # ListJobs APIs, but it can be retrieved with the GetJob API or
+ # updated with the UpdateJob API. An expired job can be updated and
+ # opened again by using a future expiration timestamp. Updating an expired
+ # job fails if there is another existing open job with same company_name,
+ # language_code and requisition_id.
+ #
+ # The expired jobs are retained in our system for 90 days. However, the
+ # overall expired job count cannot exceed 3 times the maximum of open jobs
+ # count over the past week, otherwise jobs with earlier expire time are
+ # cleaned first. Expired jobs are no longer accessible after they are cleaned
+ # out.
+ #
+ # Invalid timestamps are ignored, and treated as expire time not provided.
+ #
+ # Timestamp before the instant request is made is considered valid, the job
+ # will be treated as expired immediately.
+ #
+ # If this value is not provided at the time of job creation or is invalid,
+ # the job posting expires after 30 days from the job's creation time. For
+ # example, if the job was created on 2017/01/01 13:00AM UTC with an
+ # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
+ #
+ # If this value is not provided on job update, it depends on the field masks
+ # set by UpdateJobRequest.update_mask. If the field masks include
+ # expiry_time, or the masks are empty meaning that every field is
+ # updated, the job posting expires after 30 days from the job's last
+ # update time. Otherwise the expiration date isn't updated.
+ "title": "A String", # Required.
+ #
+ # The title of the job, such as "Software Engineer"
+ #
+ # The maximum number of allowed characters is 500.
+ "responsibilities": "A String", # Optional.
+ #
+ # A description of job responsibilities. The use of this field is
+ # recommended as an alternative to using the more general description
+ # field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobStartTime": "A String", # Optional.
+ #
+ # The start timestamp of the job in UTC time zone. Typically this field
+ # is used for contracting engagements. Invalid timestamps are ignored.
+ "compensationInfo": { # Job compensation details. # Optional.
+ #
+ # Job compensation information.
+ "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
+ # all compensation entries' CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
+ # base compensation entry's CompensationEntry.compensation times
+ # CompensationEntry.expected_units_per_year.
+ #
+ # See CompensationEntry for explanation on compensation annualization.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "entries": [ # Optional.
+ #
+ # Job compensation information.
+ #
+ # At most one entry can be of type
+ # CompensationInfo.CompensationType.BASE, which is
+ # referred as ** base compensation entry ** for the job.
+ { # A compensation entry that represents one component of compensation, such
+ # as base pay, bonus, or other compensation type.
+ #
+ # Annualization: One compensation entry can be annualized if
+ # - it contains valid amount or range.
+ # - and its expected_units_per_year is set or can be derived.
+ # Its annualized range is determined as (amount or range) times
+ # expected_units_per_year.
+ "description": "A String", # Optional.
+ #
+ # Compensation description. For example, could
+ # indicate equity terms or provide additional context to an estimated
+ # bonus.
+ "range": { # Compensation range. # Optional.
+ #
+ # Compensation range.
+ "minCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The minimum amount of compensation. If left empty, the value is set
+ # to zero and the currency code is set to match the
+ # currency code of max_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # The maximum amount of compensation. If left empty, the value is set
+ # to a maximal compensation value and the currency code is set to
+ # match the currency code of
+ # min_compensation.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ },
+ "expectedUnitsPerYear": 3.14, # Optional.
+ #
+ # Expected number of units paid each year. If not specified, when
+ # Job.employment_types is FULLTIME, a default value is inferred
+ # based on unit. Default values:
+ # - HOURLY: 2080
+ # - DAILY: 260
+ # - WEEKLY: 52
+ # - MONTHLY: 12
+ # - ANNUAL: 1
+ "amount": { # Represents an amount of money with its currency type. # Optional.
+ #
+ # Compensation amount.
+ "nanos": 42, # Number of nano (10^-9) units of the amount.
+ # The value must be between -999,999,999 and +999,999,999 inclusive.
+ # If `units` is positive, `nanos` must be positive or zero.
+ # If `units` is zero, `nanos` can be positive, zero, or negative.
+ # If `units` is negative, `nanos` must be negative or zero.
+ # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
+ "units": "A String", # The whole units of the amount.
+ # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
+ "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
+ },
+ "type": "A String", # Optional.
+ #
+ # Compensation type.
+ #
+ # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
+ "unit": "A String", # Optional.
+ #
+ # Frequency of the specified amount.
+ #
+ # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
+ },
+ ],
+ },
+ "department": "A String", # Optional.
+ #
+ # The department or functional area within the company with the open
+ # position.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
+ "requisitionId": "A String", # Required.
+ #
+ # The requisition ID, also referred to as the posting ID, assigned by the
+ # client to identify a job. This field is intended to be used by clients
+ # for client identification and tracking of postings. A job is not allowed
+ # to be created if there is another job with the same [company_name],
+ # language_code and requisition_id.
+ #
+ # The maximum number of allowed characters is 255.
+ "postingPublishTime": "A String", # Optional.
+ #
+ # The timestamp this job posting was most recently published. The default
+ # value is the time the request arrives at the server. Invalid timestamps are
+ # ignored.
+ "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
+ #
+ # Job application information.
+ "instruction": "A String", # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to provide instructions, such as "Mail your application
+ # to ...", that a candidate can follow to apply for the job.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 3,000.
+ "emails": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this field to specify email address(es) to which resumes or
+ # applications can be sent.
+ #
+ # The maximum number of allowed characters for each entry is 255.
+ "A String",
+ ],
+ "uris": [ # Optional but at least one of uris,
+ # emails or instruction must be
+ # specified.
+ #
+ # Use this URI field to direct an applicant to a website, for example to
+ # link to an online application form.
+ #
+ # The maximum number of allowed characters for each entry is 2,000.
+ "A String",
+ ],
+ },
+ "companyName": "A String", # Required.
+ #
+ # The resource name of the company listing the job, such as
+ # "projects/api-test-project/companies/foo".
+ "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
+ #
+ # Derived details about the job posting.
+ "jobCategories": [ # Job categories derived from Job.title and Job.description.
+ "A String",
+ ],
+ "locations": [ # Structured locations of the job, resolved from Job.addresses.
+ #
+ # locations are exactly matched to Job.addresses in the same
+ # order.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ },
+ "incentives": "A String", # Optional.
+ #
+ # A description of bonus, commission, and other compensation
+ # incentives associated with the job not including salary or pay.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "jobBenefits": [ # Optional.
+ #
+ # The benefits included with the job.
+ "A String",
+ ],
+ "qualifications": "A String", # Optional.
+ #
+ # A description of the qualifications required to perform the
+ # job. The use of this field is recommended
+ # as an alternative to using the more general description field.
+ #
+ # This field accepts and sanitizes HTML input, and also accepts
+ # bold, italic, ordered list, and unordered list markup tags.
+ #
+ # The maximum number of allowed characters is 10,000.
+ "visibility": "A String", # Optional.
+ #
+ # The visibility of the job.
+ #
+ # Defaults to Visibility.ACCOUNT_ONLY if not specified.
+ "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
+ "postingRegion": "A String", # Optional.
+ #
+ # The job PostingRegion (for example, state, country) throughout which
+ # the job is available. If this field is set, a
+ # LocationFilter in a search query within the job region
+ # finds this job posting if an exact location match isn't specified.
+ # If this field is set to PostingRegion.NATION or
+ # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
+ # to the same location level as this field is strongly recommended.
+ "name": "A String", # Required during job update.
+ #
+ # The resource name for the job. This is generated by the service when a
+ # job is created.
+ #
+ # The format is "projects/{project_id}/jobs/{job_id}",
+ # for example, "projects/api-test-project/jobs/1234".
+ #
+ # Use of this field in job queries and API calls is preferred over the use of
+ # requisition_id since this value is unique.
+ "processingOptions": { # Input only. # Optional.
+ #
+ # Options for job processing.
+ #
+ # Options for job processing.
+ "htmlSanitization": "A String", # Optional.
+ #
+ # Option for job HTML content sanitization. Applied fields are:
+ #
+ # * description
+ # * applicationInfo.instruction
+ # * incentives
+ # * qualifications
+ # * responsibilities
+ #
+ # HTML tags in these fields may be stripped if sanitiazation is not
+ # disabled.
+ #
+ # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
+ "disableStreetAddressResolution": True or False, # Optional.
+ #
+ # If set to `true`, the service does not attempt to resolve a
+ # more precise address for the job.
+ },
+ "degreeTypes": [ # Optional.
+ #
+ # The desired education degrees for the job, such as Bachelors, Masters.
+ "A String",
+ ],
+ "customAttributes": { # Optional.
+ #
+ # A map of fields to hold both filterable and non-filterable custom job
+ # attributes that are not covered by the provided structured fields.
+ #
+ # The keys of the map are strings up to 64 bytes and must match the
+ # pattern: a-zA-Z*. For example, key0LikeThis or
+ # KEY_1_LIKE_THIS.
+ #
+ # At most 100 filterable and at most 100 unfilterable keys are supported.
+ # For filterable `string_values`, across all keys at most 200 values are
+ # allowed, with each string no more than 255 characters. For unfilterable
+ # `string_values`, the maximum total size of `string_values` across all keys
+ # is 50KB.
+ "a_key": { # Custom attribute values that are either filterable or non-filterable.
+ "filterable": True or False, # Optional.
+ #
+ # If the `filterable` flag is true, custom field values are searchable.
+ # If false, values are not searchable.
+ #
+ # Default is false.
+ "stringValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
+ # `CASE_INSENSITIVE_MATCH`) search.
+ # For filterable `string_value`s, a maximum total number of 200 values
+ # is allowed, with each `string_value` has a byte size of no more than
+ # 255B. For unfilterable `string_values`, the maximum total byte size of
+ # unfilterable `string_values` is 50KB.
+ #
+ # Empty string is not allowed.
+ "A String",
+ ],
+ "longValues": [ # Optional but exactly one of string_values or long_values must
+ # be specified.
+ #
+ # This field is used to perform number range search.
+ # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
+ #
+ # Currently at most 1 long_values is supported.
+ "A String",
+ ],
+ },
+ },
+ "jobLevel": "A String", # Optional.
+ #
+ # The experience level associated with the job, such as "Entry Level".
+ },
+ "commuteInfo": { # Output only. # Commute information which is generated based on specified
+ # CommuteFilter.
+ #
+ # Commute details related to this job.
+ "travelDuration": "A String", # The number of seconds required to travel to the job location from the
+ # query location. A duration of 0 seconds indicates that the job is not
+ # reachable within the requested duration, but was returned as part of an
+ # expanded query.
+ "jobLocation": { # Output only. # Location used as the destination in the commute calculation.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ },
+ "jobSummary": "A String", # A summary of the job with core information that's displayed on the search
+ # results listing page.
+ "jobTitleSnippet": "A String", # Contains snippets of text from the Job.job_title field most
+ # closely matching a search query's keywords, if available. The matching
+ # query keywords are enclosed in HTML bold tags.
+ },
+ ],
+ "histogramResults": { # Output only. # The histogram results that match specified
+ # SearchJobsRequest.histogram_facets.
+ #
+ # Histogram results that match HistogramFacets specified in
+ # SearchJobsRequest.
+ "customAttributeHistogramResults": [ # Specifies histogram results for custom attributes that match
+ # HistogramFacets.custom_attribute_histogram_facets.
+ { # Output only.
+ #
+ # Custom attribute histogram result.
+ "longValueHistogramResult": { # Output only. # Stores bucketed histogram counting result or min/max values for
+ # custom attribute long values associated with `key`.
+ #
+ # Custom numeric bucketing result.
+ "counts": [ # Count within each bucket. Its size is the length of
+ # NumericBucketingOption.bucket_bounds plus 1.
+ { # Represents count of jobs within one bucket.
+ "count": 42, # Number of jobs whose numeric field value fall into `range`.
+ "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
+ # that is, the count represents number of jobs in this range.
+ "to": 3.14, # Ending value of the bucket range.
+ "from": 3.14, # Starting value of the bucket range.
+ },
+ },
+ ],
+ "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ },
+ "stringValueHistogramResult": { # Stores a map from the values of string custom field associated
+ # with `key` to the number of jobs with that value in this histogram result.
+ "a_key": 42,
+ },
+ "key": "A String", # Stores the key of custom attribute the histogram is performed on.
+ },
+ ],
+ "simpleHistogramResults": [ # Specifies histogram results that matches
+ # HistogramFacets.simple_histogram_facets.
+ { # Output only.
+ #
+ # Result of a histogram call. The response contains the histogram map for the
+ # search type specified by HistogramResult.field.
+ # The response is a map of each filter value to the corresponding count of
+ # jobs for that filter.
+ "values": { # A map from the values of field to the number of jobs with that value
+ # in this search result.
+ #
+ # Key: search type (filter names, such as the companyName).
+ #
+ # Values: the count of jobs that match the filter for this search.
+ "a_key": 42,
+ },
+ "searchType": "A String", # The Histogram search filters.
+ },
+ ],
+ "compensationHistogramResults": [ # Specifies compensation field-based histogram results that match
+ # HistogramFacets.compensation_histogram_requests.
+ { # Output only.
+ #
+ # Compensation based histogram result.
+ "type": "A String", # Type of the request, corresponding to
+ # CompensationHistogramRequest.type.
+ "result": { # Output only. # Histogram result.
+ #
+ # Custom numeric bucketing result.
+ "counts": [ # Count within each bucket. Its size is the length of
+ # NumericBucketingOption.bucket_bounds plus 1.
+ { # Represents count of jobs within one bucket.
+ "count": 42, # Number of jobs whose numeric field value fall into `range`.
+ "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
+ # that is, the count represents number of jobs in this range.
+ "to": 3.14, # Ending value of the bucket range.
+ "from": 3.14, # Starting value of the bucket range.
+ },
+ },
+ ],
+ "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
+ # [NumericBucketingOption.requires_min_max] is set to true.
+ },
+ },
+ ],
+ },
+ "estimatedTotalSize": 42, # An estimation of the number of jobs that match the specified query.
+ #
+ # This number is not guaranteed to be accurate. For accurate results,
+ # see enable_precise_result_size.
+ "broadenedQueryJobsCount": 42, # If query broadening is enabled, we may append additional results from the
+ # broadened query. This number indicates how many of the jobs returned in the
+ # jobs field are from the broadened query. These results are always at the
+ # end of the jobs list. In particular, a value of 0, or if the field isn't
+ # set, all the jobs in the jobs list are from the original
+ # (without broadening) query. If this field is non-zero, subsequent requests
+ # with offset after this result set should contain all broadened results.
+ "locationFilters": [ # The location filters that the service applied to the specified query. If
+ # any filters are lat-lng based, the JobLocation.location_type is
+ # JobLocation.LocationType#LOCATION_TYPE_UNSPECIFIED.
+ { # Output only.
+ #
+ # A resource that represents a location with full geographic information.
+ "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
+ # location bounding box in which a circle with the specified radius
+ # centered from LatLng covers the area associated with the job location.
+ # For example, currently, "Mountain View, CA, USA" has a radius of
+ # 6.17 miles.
+ "locationType": "A String", # The type of a location, which corresponds to the address lines field of
+ # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
+ # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
+ # LocationType#LOCALITY.
+ "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
+ # of doubles representing degrees latitude and degrees longitude. Unless
+ # specified otherwise, this must conform to the
+ # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
+ # standard</a>. Values must be within normalized ranges.
+ "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
+ "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
+ },
+ "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
+ # such as postal delivery and payments addresses. Given a postal address,
+ # a postal service can deliver items to a premises, P.O. Box, or other
+ # delivery location.
+ # Given a postal address, a postal service can deliver items to a premise, P.O.
+ # Box or similar.
+ # It is not intended to model geographical locations (roads, towns,
+ # mountains).
+ #
+ # In typical usage an address would be created via user input or from importing
+ # existing data, depending on the type of process.
+ #
+ # Advice on address input / editing:
+ # - Use an i18n-ready address widget such as
+ # https://github.com/googlei18n/libaddressinput)
+ # - Users should not be presented with UI elements for input or editing of
+ # fields outside countries where that field is used.
+ #
+ # For more guidance on how to use this schema, please see:
+ # https://support.google.com/business/answer/6397478
+ "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
+ # known). This is often the UI language of the input form or is expected
+ # to match one of the languages used in the address' country/region, or their
+ # transliterated equivalents.
+ # This can affect formatting in certain countries, but is not critical
+ # to the correctness of the data and will never affect any validation or
+ # other non-formatting related operations.
+ #
+ # If this value is not known, it should be omitted (rather than specifying a
+ # possibly incorrect default).
+ #
+ # Examples: "zh-Hant", "ja", "ja-Latn", "en".
+ "recipients": [ # Optional. The recipient at the address.
+ # This field may, under certain circumstances, contain multiline information.
+ # For example, it might contain "care of" information.
+ "A String",
+ ],
+ "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
+ # Examples: US city, IT comune, UK post town.
+ # In regions of the world where localities are not well defined or do not fit
+ # into this structure well, leave locality empty and use address_lines.
+ "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
+ # in most regions. Where it is used, the value is either a string like
+ # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
+ # alone, representing the "sector code" (Jamaica), "delivery area indicator"
+ # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
+ "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
+ # is never inferred and it is up to the user to ensure the value is
+ # correct. See http://cldr.unicode.org/ and
+ # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
+ # for details. Example: "CH" for Switzerland.
+ "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
+ # addresses of a country or region.
+ # For example, this can be a state, a province, an oblast, or a prefecture.
+ # Specifically, for Spain this is the province and not the autonomous
+ # community (e.g. "Barcelona" and not "Catalonia").
+ # Many countries don't use an administrative area in postal addresses. E.g.
+ # in Switzerland this should be left unpopulated.
+ "addressLines": [ # Unstructured address lines describing the lower levels of an address.
+ #
+ # Because values in address_lines do not have type information and may
+ # sometimes contain multiple values in a single field (e.g.
+ # "Austin, TX"), it is important that the line order is clear. The order of
+ # address lines should be "envelope order" for the country/region of the
+ # address. In places where this can vary (e.g. Japan), address_language is
+ # used to make it explicit (e.g. "ja" for large-to-small ordering and
+ # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
+ # an address can be selected based on the language.
+ #
+ # The minimum permitted structural representation of an address consists
+ # of a region_code with all remaining information placed in the
+ # address_lines. It would be possible to format such an address very
+ # approximately without geocoding, but no semantic reasoning could be
+ # made about any of the address components until it was at least
+ # partially resolved.
+ #
+ # Creating an address only containing a region_code and address_lines, and
+ # then geocoding is the recommended way to handle completely unstructured
+ # addresses (as opposed to guessing which parts of the address should be
+ # localities or administrative areas).
+ "A String",
+ ],
+ "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
+ # postal codes to be present, but where they are used, they may trigger
+ # additional validation with other parts of the address (e.g. state/zip
+ # validation in the U.S.A.).
+ "organization": "A String", # Optional. The name of the organization at the address.
+ "sublocality": "A String", # Optional. Sublocality of the address.
+ # For example, this can be neighborhoods, boroughs, districts.
+ "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
+ # the latest revision.
+ #
+ # All new revisions **must** be backward compatible with old revisions.
+ },
+ },
+ ],
+ "metadata": { # Output only. # Additional information for the API invocation, such as the request
+ # tracking id.
+ #
+ # Additional information returned to client, such as debugging information.
+ "requestId": "A String", # A unique id associated with this call.
+ # This id is logged for tracking purposes.
+ },
+ }</pre>
+</div>
+
+<div class="method">
+ <code class="details" id="searchForAlert_next">searchForAlert_next(previous_request, previous_response)</code>
+ <pre>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.
+ </pre>
+</div>
+
+<div class="method">
+ <code class="details" id="search_next">search_next(previous_request, previous_response)</code>
+ <pre>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.
+ </pre>
+</div>
+
+</body></html>
\ No newline at end of file