• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5  margin: 0;
6  padding: 0;
7  border: 0;
8  font-weight: inherit;
9  font-style: inherit;
10  font-size: 100%;
11  font-family: inherit;
12  vertical-align: baseline;
13}
14
15body {
16  font-size: 13px;
17  padding: 1em;
18}
19
20h1 {
21  font-size: 26px;
22  margin-bottom: 1em;
23}
24
25h2 {
26  font-size: 24px;
27  margin-bottom: 1em;
28}
29
30h3 {
31  font-size: 20px;
32  margin-bottom: 1em;
33  margin-top: 1em;
34}
35
36pre, code {
37  line-height: 1.5;
38  font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42  margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46  font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50  border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54  margin-top: 0.5em;
55}
56
57.firstline {
58  margin-left: 2 em;
59}
60
61.method  {
62  margin-top: 1em;
63  border: solid 1px #CCC;
64  padding: 1em;
65  background: #EEE;
66}
67
68.details {
69  font-weight: bold;
70  font-size: 14px;
71}
72
73</style>
74
75<h1><a href="jobs_v3p1beta1.html">Cloud Talent Solution API</a> . <a href="jobs_v3p1beta1.projects.html">projects</a> . <a href="jobs_v3p1beta1.projects.jobs.html">jobs</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78  <code><a href="#batchDelete">batchDelete(parent, body, x__xgafv=None)</a></code></p>
79<p class="firstline">Deletes a list of Jobs by filter.</p>
80<p class="toc_element">
81  <code><a href="#create">create(parent, body, x__xgafv=None)</a></code></p>
82<p class="firstline">Creates a new job.</p>
83<p class="toc_element">
84  <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
85<p class="firstline">Deletes the specified job.</p>
86<p class="toc_element">
87  <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
88<p class="firstline">Retrieves the specified job, whose status is OPEN or recently EXPIRED</p>
89<p class="toc_element">
90  <code><a href="#list">list(parent, pageSize=None, pageToken=None, x__xgafv=None, jobView=None, filter=None)</a></code></p>
91<p class="firstline">Lists jobs by filter.</p>
92<p class="toc_element">
93  <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
94<p class="firstline">Retrieves the next page of results.</p>
95<p class="toc_element">
96  <code><a href="#patch">patch(name, body, x__xgafv=None)</a></code></p>
97<p class="firstline">Updates specified job.</p>
98<p class="toc_element">
99  <code><a href="#search">search(parent, body, x__xgafv=None)</a></code></p>
100<p class="firstline">Searches for jobs using the provided SearchJobsRequest.</p>
101<p class="toc_element">
102  <code><a href="#searchForAlert">searchForAlert(parent, body, x__xgafv=None)</a></code></p>
103<p class="firstline">Searches for jobs using the provided SearchJobsRequest.</p>
104<p class="toc_element">
105  <code><a href="#searchForAlert_next">searchForAlert_next(previous_request, previous_response)</a></code></p>
106<p class="firstline">Retrieves the next page of results.</p>
107<p class="toc_element">
108  <code><a href="#search_next">search_next(previous_request, previous_response)</a></code></p>
109<p class="firstline">Retrieves the next page of results.</p>
110<h3>Method Details</h3>
111<div class="method">
112    <code class="details" id="batchDelete">batchDelete(parent, body, x__xgafv=None)</code>
113  <pre>Deletes a list of Jobs by filter.
114
115Args:
116  parent: string, Required.
117
118The resource name of the project under which the job is created.
119
120The format is "projects/{project_id}", for example,
121"projects/api-test-project". (required)
122  body: object, The request body. (required)
123    The object takes the form of:
124
125{ # Input only.
126      #
127      # Batch delete jobs request.
128    "filter": "A String", # Required.
129        #
130        # The filter string specifies the jobs to be deleted.
131        #
132        # Supported operator: =, AND
133        #
134        # The fields eligible for filtering are:
135        #
136        # * `companyName` (Required)
137        # * `requisitionId` (Required)
138        #
139        # Sample Query: companyName = "projects/api-test-project/companies/123" AND
140        # requisitionId = "req-1"
141  }
142
143  x__xgafv: string, V1 error format.
144    Allowed values
145      1 - v1 error format
146      2 - v2 error format
147
148Returns:
149  An object of the form:
150
151    { # A generic empty message that you can re-use to avoid defining duplicated
152      # empty messages in your APIs. A typical example is to use it as the request
153      # or the response type of an API method. For instance:
154      #
155      #     service Foo {
156      #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
157      #     }
158      #
159      # The JSON representation for `Empty` is empty JSON object `{}`.
160  }</pre>
161</div>
162
163<div class="method">
164    <code class="details" id="create">create(parent, body, x__xgafv=None)</code>
165  <pre>Creates a new job.
166
167Typically, the job becomes searchable within 10 seconds, but it may take
168up to 5 minutes.
169
170Args:
171  parent: string, Required.
172
173The resource name of the project under which the job is created.
174
175The format is "projects/{project_id}", for example,
176"projects/api-test-project". (required)
177  body: object, The request body. (required)
178    The object takes the form of:
179
180{ # Input only.
181      #
182      # Create job request.
183    "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Required.
184        #
185        # The Job to be created.
186        # or "job requisition"). A job belongs to a Company, which is the hiring
187        # entity responsible for the job.
188      "languageCode": "A String", # Optional.
189          #
190          # The language of the posting. This field is distinct from
191          # any requirements for fluency that are associated with the job.
192          #
193          # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
194          # For more information, see
195          # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
196          # class="external" target="_blank" }.
197          #
198          # If this field is unspecified and Job.description is present, detected
199          # language code based on Job.description is assigned, otherwise
200          # defaults to 'en_US'.
201      "addresses": [ # Optional but strongly recommended for the best service experience.
202          #
203          # Location(s) where the employer is looking to hire for this job posting.
204          #
205          # Specifying the full street address(es) of the hiring location enables
206          # better API results, especially job searches by commute time.
207          #
208          # At most 50 locations are allowed for best search performance. If a job has
209          # more locations, it is suggested to split it into multiple jobs with unique
210          # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
211          # multiple jobs with the same company_name, language_code and
212          # requisition_id are not allowed. If the original requisition_id must
213          # be preserved, a custom field should be used for storage. It is also
214          # suggested to group the locations that close to each other in the same job
215          # for better search experience.
216          #
217          # The maximum number of allowed characters is 500.
218        "A String",
219      ],
220      "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
221      "promotionValue": 42, # Optional.
222          #
223          # A promotion value of the job, as determined by the client.
224          # The value determines the sort order of the jobs returned when searching for
225          # jobs using the featured jobs search call, with higher promotional values
226          # being returned first and ties being resolved by relevance sort. Only the
227          # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
228          #
229          # Default value is 0, and negative values are treated as 0.
230      "employmentTypes": [ # Optional.
231          #
232          # The employment type(s) of a job, for example,
233          # full time or
234          # part time.
235        "A String",
236      ],
237      "jobEndTime": "A String", # Optional.
238          #
239          # The end timestamp of the job. Typically this field is used for contracting
240          # engagements. Invalid timestamps are ignored.
241      "description": "A String", # Required.
242          #
243          # The description of the job, which typically includes a multi-paragraph
244          # description of the company and related information. Separate fields are
245          # provided on the job object for responsibilities,
246          # qualifications, and other job characteristics. Use of
247          # these separate job fields is recommended.
248          #
249          # This field accepts and sanitizes HTML input, and also accepts
250          # bold, italic, ordered list, and unordered list markup tags.
251          #
252          # The maximum number of allowed characters is 100,000.
253      "postingExpireTime": "A String", # Optional but strongly recommended for the best service
254          # experience.
255          #
256          # The expiration timestamp of the job. After this timestamp, the
257          # job is marked as expired, and it no longer appears in search results. The
258          # expired job can't be deleted or listed by the DeleteJob and
259          # ListJobs APIs, but it can be retrieved with the GetJob API or
260          # updated with the UpdateJob API. An expired job can be updated and
261          # opened again by using a future expiration timestamp. Updating an expired
262          # job fails if there is another existing open job with same company_name,
263          # language_code and requisition_id.
264          #
265          # The expired jobs are retained in our system for 90 days. However, the
266          # overall expired job count cannot exceed 3 times the maximum of open jobs
267          # count over the past week, otherwise jobs with earlier expire time are
268          # cleaned first. Expired jobs are no longer accessible after they are cleaned
269          # out.
270          #
271          # Invalid timestamps are ignored, and treated as expire time not provided.
272          #
273          # Timestamp before the instant request is made is considered valid, the job
274          # will be treated as expired immediately.
275          #
276          # If this value is not provided at the time of job creation or is invalid,
277          # the job posting expires after 30 days from the job's creation time. For
278          # example, if the job was created on 2017/01/01 13:00AM UTC with an
279          # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
280          #
281          # If this value is not provided on job update, it depends on the field masks
282          # set by UpdateJobRequest.update_mask. If the field masks include
283          # expiry_time, or the masks are empty meaning that every field is
284          # updated, the job posting expires after 30 days from the job's last
285          # update time. Otherwise the expiration date isn't updated.
286      "title": "A String", # Required.
287          #
288          # The title of the job, such as "Software Engineer"
289          #
290          # The maximum number of allowed characters is 500.
291      "responsibilities": "A String", # Optional.
292          #
293          # A description of job responsibilities. The use of this field is
294          # recommended as an alternative to using the more general description
295          # field.
296          #
297          # This field accepts and sanitizes HTML input, and also accepts
298          # bold, italic, ordered list, and unordered list markup tags.
299          #
300          # The maximum number of allowed characters is 10,000.
301      "jobStartTime": "A String", # Optional.
302          #
303          # The start timestamp of the job in UTC time zone. Typically this field
304          # is used for contracting engagements. Invalid timestamps are ignored.
305      "compensationInfo": { # Job compensation details. # Optional.
306          #
307          # Job compensation information.
308        "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
309            # all compensation entries' CompensationEntry.compensation times
310            # CompensationEntry.expected_units_per_year.
311            #
312            # See CompensationEntry for explanation on compensation annualization.
313          "minCompensation": { # Represents an amount of money with its currency type. # Optional.
314              #
315              # The minimum amount of compensation. If left empty, the value is set
316              # to zero and the currency code is set to match the
317              # currency code of max_compensation.
318            "nanos": 42, # Number of nano (10^-9) units of the amount.
319                # The value must be between -999,999,999 and +999,999,999 inclusive.
320                # If `units` is positive, `nanos` must be positive or zero.
321                # If `units` is zero, `nanos` can be positive, zero, or negative.
322                # If `units` is negative, `nanos` must be negative or zero.
323                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
324            "units": "A String", # The whole units of the amount.
325                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
326            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
327          },
328          "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
329              #
330              # The maximum amount of compensation. If left empty, the value is set
331              # to a maximal compensation value and the currency code is set to
332              # match the currency code of
333              # min_compensation.
334            "nanos": 42, # Number of nano (10^-9) units of the amount.
335                # The value must be between -999,999,999 and +999,999,999 inclusive.
336                # If `units` is positive, `nanos` must be positive or zero.
337                # If `units` is zero, `nanos` can be positive, zero, or negative.
338                # If `units` is negative, `nanos` must be negative or zero.
339                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
340            "units": "A String", # The whole units of the amount.
341                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
342            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
343          },
344        },
345        "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
346            # base compensation entry's CompensationEntry.compensation times
347            # CompensationEntry.expected_units_per_year.
348            #
349            # See CompensationEntry for explanation on compensation annualization.
350          "minCompensation": { # Represents an amount of money with its currency type. # Optional.
351              #
352              # The minimum amount of compensation. If left empty, the value is set
353              # to zero and the currency code is set to match the
354              # currency code of max_compensation.
355            "nanos": 42, # Number of nano (10^-9) units of the amount.
356                # The value must be between -999,999,999 and +999,999,999 inclusive.
357                # If `units` is positive, `nanos` must be positive or zero.
358                # If `units` is zero, `nanos` can be positive, zero, or negative.
359                # If `units` is negative, `nanos` must be negative or zero.
360                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
361            "units": "A String", # The whole units of the amount.
362                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
363            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
364          },
365          "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
366              #
367              # The maximum amount of compensation. If left empty, the value is set
368              # to a maximal compensation value and the currency code is set to
369              # match the currency code of
370              # min_compensation.
371            "nanos": 42, # Number of nano (10^-9) units of the amount.
372                # The value must be between -999,999,999 and +999,999,999 inclusive.
373                # If `units` is positive, `nanos` must be positive or zero.
374                # If `units` is zero, `nanos` can be positive, zero, or negative.
375                # If `units` is negative, `nanos` must be negative or zero.
376                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
377            "units": "A String", # The whole units of the amount.
378                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
379            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
380          },
381        },
382        "entries": [ # Optional.
383            #
384            # Job compensation information.
385            #
386            # At most one entry can be of type
387            # CompensationInfo.CompensationType.BASE, which is
388            # referred as ** base compensation entry ** for the job.
389          { # A compensation entry that represents one component of compensation, such
390              # as base pay, bonus, or other compensation type.
391              #
392              # Annualization: One compensation entry can be annualized if
393              # - it contains valid amount or range.
394              # - and its expected_units_per_year is set or can be derived.
395              # Its annualized range is determined as (amount or range) times
396              # expected_units_per_year.
397            "description": "A String", # Optional.
398                #
399                # Compensation description.  For example, could
400                # indicate equity terms or provide additional context to an estimated
401                # bonus.
402            "amount": { # Represents an amount of money with its currency type. # Optional.
403                #
404                # Compensation amount.
405              "nanos": 42, # Number of nano (10^-9) units of the amount.
406                  # The value must be between -999,999,999 and +999,999,999 inclusive.
407                  # If `units` is positive, `nanos` must be positive or zero.
408                  # If `units` is zero, `nanos` can be positive, zero, or negative.
409                  # If `units` is negative, `nanos` must be negative or zero.
410                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
411              "units": "A String", # The whole units of the amount.
412                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
413              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
414            },
415            "expectedUnitsPerYear": 3.14, # Optional.
416                #
417                # Expected number of units paid each year. If not specified, when
418                # Job.employment_types is FULLTIME, a default value is inferred
419                # based on unit. Default values:
420                # - HOURLY: 2080
421                # - DAILY: 260
422                # - WEEKLY: 52
423                # - MONTHLY: 12
424                # - ANNUAL: 1
425            "range": { # Compensation range. # Optional.
426                #
427                # Compensation range.
428              "minCompensation": { # Represents an amount of money with its currency type. # Optional.
429                  #
430                  # The minimum amount of compensation. If left empty, the value is set
431                  # to zero and the currency code is set to match the
432                  # currency code of max_compensation.
433                "nanos": 42, # Number of nano (10^-9) units of the amount.
434                    # The value must be between -999,999,999 and +999,999,999 inclusive.
435                    # If `units` is positive, `nanos` must be positive or zero.
436                    # If `units` is zero, `nanos` can be positive, zero, or negative.
437                    # If `units` is negative, `nanos` must be negative or zero.
438                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
439                "units": "A String", # The whole units of the amount.
440                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
441                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
442              },
443              "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
444                  #
445                  # The maximum amount of compensation. If left empty, the value is set
446                  # to a maximal compensation value and the currency code is set to
447                  # match the currency code of
448                  # min_compensation.
449                "nanos": 42, # Number of nano (10^-9) units of the amount.
450                    # The value must be between -999,999,999 and +999,999,999 inclusive.
451                    # If `units` is positive, `nanos` must be positive or zero.
452                    # If `units` is zero, `nanos` can be positive, zero, or negative.
453                    # If `units` is negative, `nanos` must be negative or zero.
454                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
455                "units": "A String", # The whole units of the amount.
456                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
457                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
458              },
459            },
460            "type": "A String", # Optional.
461                #
462                # Compensation type.
463                #
464                # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
465            "unit": "A String", # Optional.
466                #
467                # Frequency of the specified amount.
468                #
469                # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
470          },
471        ],
472      },
473      "department": "A String", # Optional.
474          #
475          # The department or functional area within the company with the open
476          # position.
477          #
478          # The maximum number of allowed characters is 255.
479      "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
480      "requisitionId": "A String", # Required.
481          #
482          # The requisition ID, also referred to as the posting ID, assigned by the
483          # client to identify a job. This field is intended to be used by clients
484          # for client identification and tracking of postings. A job is not allowed
485          # to be created if there is another job with the same [company_name],
486          # language_code and requisition_id.
487          #
488          # The maximum number of allowed characters is 255.
489      "postingPublishTime": "A String", # Optional.
490          #
491          # The timestamp this job posting was most recently published. The default
492          # value is the time the request arrives at the server. Invalid timestamps are
493          # ignored.
494      "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
495          #
496          # Job application information.
497        "instruction": "A String", # Optional but at least one of uris,
498            # emails or instruction must be
499            # specified.
500            #
501            # Use this field to provide instructions, such as "Mail your application
502            # to ...", that a candidate can follow to apply for the job.
503            #
504            # This field accepts and sanitizes HTML input, and also accepts
505            # bold, italic, ordered list, and unordered list markup tags.
506            #
507            # The maximum number of allowed characters is 3,000.
508        "uris": [ # Optional but at least one of uris,
509            # emails or instruction must be
510            # specified.
511            #
512            # Use this URI field to direct an applicant to a website, for example to
513            # link to an online application form.
514            #
515            # The maximum number of allowed characters for each entry is 2,000.
516          "A String",
517        ],
518        "emails": [ # Optional but at least one of uris,
519            # emails or instruction must be
520            # specified.
521            #
522            # Use this field to specify email address(es) to which resumes or
523            # applications can be sent.
524            #
525            # The maximum number of allowed characters for each entry is 255.
526          "A String",
527        ],
528      },
529      "companyName": "A String", # Required.
530          #
531          # The resource name of the company listing the job, such as
532          # "projects/api-test-project/companies/foo".
533      "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
534          #
535          # Derived details about the job posting.
536        "jobCategories": [ # Job categories derived from Job.title and Job.description.
537          "A String",
538        ],
539        "locations": [ # Structured locations of the job, resolved from Job.addresses.
540            #
541            # locations are exactly matched to Job.addresses in the same
542            # order.
543          { # Output only.
544              #
545              # A resource that represents a location with full geographic information.
546            "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
547                # location bounding box in which a circle with the specified radius
548                # centered from LatLng covers the area associated with the job location.
549                # For example, currently, "Mountain View, CA, USA" has a radius of
550                # 6.17 miles.
551            "locationType": "A String", # The type of a location, which corresponds to the address lines field of
552                # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
553                # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
554                # LocationType#LOCALITY.
555            "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
556                # of doubles representing degrees latitude and degrees longitude. Unless
557                # specified otherwise, this must conform to the
558                # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
559                # standard</a>. Values must be within normalized ranges.
560              "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
561              "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
562            },
563            "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
564                # such as postal delivery and payments addresses. Given a postal address,
565                # a postal service can deliver items to a premises, P.O. Box, or other
566                # delivery location.
567                # Given a postal address, a postal service can deliver items to a premise, P.O.
568                # Box or similar.
569                # It is not intended to model geographical locations (roads, towns,
570                # mountains).
571                #
572                # In typical usage an address would be created via user input or from importing
573                # existing data, depending on the type of process.
574                #
575                # Advice on address input / editing:
576                #  - Use an i18n-ready address widget such as
577                #    https://github.com/googlei18n/libaddressinput)
578                # - Users should not be presented with UI elements for input or editing of
579                #   fields outside countries where that field is used.
580                #
581                # For more guidance on how to use this schema, please see:
582                # https://support.google.com/business/answer/6397478
583              "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
584                  # known). This is often the UI language of the input form or is expected
585                  # to match one of the languages used in the address' country/region, or their
586                  # transliterated equivalents.
587                  # This can affect formatting in certain countries, but is not critical
588                  # to the correctness of the data and will never affect any validation or
589                  # other non-formatting related operations.
590                  #
591                  # If this value is not known, it should be omitted (rather than specifying a
592                  # possibly incorrect default).
593                  #
594                  # Examples: "zh-Hant", "ja", "ja-Latn", "en".
595              "recipients": [ # Optional. The recipient at the address.
596                  # This field may, under certain circumstances, contain multiline information.
597                  # For example, it might contain "care of" information.
598                "A String",
599              ],
600              "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
601                  # Examples: US city, IT comune, UK post town.
602                  # In regions of the world where localities are not well defined or do not fit
603                  # into this structure well, leave locality empty and use address_lines.
604              "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
605                  # in most regions. Where it is used, the value is either a string like
606                  # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
607                  # alone, representing the "sector code" (Jamaica), "delivery area indicator"
608                  # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
609              "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
610                  # is never inferred and it is up to the user to ensure the value is
611                  # correct. See http://cldr.unicode.org/ and
612                  # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
613                  # for details. Example: "CH" for Switzerland.
614              "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
615                  # addresses of a country or region.
616                  # For example, this can be a state, a province, an oblast, or a prefecture.
617                  # Specifically, for Spain this is the province and not the autonomous
618                  # community (e.g. "Barcelona" and not "Catalonia").
619                  # Many countries don't use an administrative area in postal addresses. E.g.
620                  # in Switzerland this should be left unpopulated.
621              "addressLines": [ # Unstructured address lines describing the lower levels of an address.
622                  #
623                  # Because values in address_lines do not have type information and may
624                  # sometimes contain multiple values in a single field (e.g.
625                  # "Austin, TX"), it is important that the line order is clear. The order of
626                  # address lines should be "envelope order" for the country/region of the
627                  # address. In places where this can vary (e.g. Japan), address_language is
628                  # used to make it explicit (e.g. "ja" for large-to-small ordering and
629                  # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
630                  # an address can be selected based on the language.
631                  #
632                  # The minimum permitted structural representation of an address consists
633                  # of a region_code with all remaining information placed in the
634                  # address_lines. It would be possible to format such an address very
635                  # approximately without geocoding, but no semantic reasoning could be
636                  # made about any of the address components until it was at least
637                  # partially resolved.
638                  #
639                  # Creating an address only containing a region_code and address_lines, and
640                  # then geocoding is the recommended way to handle completely unstructured
641                  # addresses (as opposed to guessing which parts of the address should be
642                  # localities or administrative areas).
643                "A String",
644              ],
645              "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
646                  # postal codes to be present, but where they are used, they may trigger
647                  # additional validation with other parts of the address (e.g. state/zip
648                  # validation in the U.S.A.).
649              "organization": "A String", # Optional. The name of the organization at the address.
650              "sublocality": "A String", # Optional. Sublocality of the address.
651                  # For example, this can be neighborhoods, boroughs, districts.
652              "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
653                  # the latest revision.
654                  #
655                  # All new revisions **must** be backward compatible with old revisions.
656            },
657          },
658        ],
659      },
660      "qualifications": "A String", # Optional.
661          #
662          # A description of the qualifications required to perform the
663          # job. The use of this field is recommended
664          # as an alternative to using the more general description field.
665          #
666          # This field accepts and sanitizes HTML input, and also accepts
667          # bold, italic, ordered list, and unordered list markup tags.
668          #
669          # The maximum number of allowed characters is 10,000.
670      "jobBenefits": [ # Optional.
671          #
672          # The benefits included with the job.
673        "A String",
674      ],
675      "incentives": "A String", # Optional.
676          #
677          # A description of bonus, commission, and other compensation
678          # incentives associated with the job not including salary or pay.
679          #
680          # The maximum number of allowed characters is 10,000.
681      "visibility": "A String", # Optional.
682          #
683          # The visibility of the job.
684          #
685          # Defaults to Visibility.ACCOUNT_ONLY if not specified.
686      "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
687      "postingRegion": "A String", # Optional.
688          #
689          # The job PostingRegion (for example, state, country) throughout which
690          # the job is available. If this field is set, a
691          # LocationFilter in a search query within the job region
692          # finds this job posting if an exact location match isn't specified.
693          # If this field is set to PostingRegion.NATION or
694          # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
695          # to the same location level as this field is strongly recommended.
696      "name": "A String", # Required during job update.
697          #
698          # The resource name for the job. This is generated by the service when a
699          # job is created.
700          #
701          # The format is "projects/{project_id}/jobs/{job_id}",
702          # for example, "projects/api-test-project/jobs/1234".
703          #
704          # Use of this field in job queries and API calls is preferred over the use of
705          # requisition_id since this value is unique.
706      "processingOptions": { # Input only. # Optional.
707          #
708          # Options for job processing.
709          #
710          # Options for job processing.
711        "htmlSanitization": "A String", # Optional.
712            #
713            # Option for job HTML content sanitization. Applied fields are:
714            #
715            # * description
716            # * applicationInfo.instruction
717            # * incentives
718            # * qualifications
719            # * responsibilities
720            #
721            # HTML tags in these fields may be stripped if sanitiazation is not
722            # disabled.
723            #
724            # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
725        "disableStreetAddressResolution": True or False, # Optional.
726            #
727            # If set to `true`, the service does not attempt to resolve a
728            # more precise address for the job.
729      },
730      "degreeTypes": [ # Optional.
731          #
732          # The desired education degrees for the job, such as Bachelors, Masters.
733        "A String",
734      ],
735      "customAttributes": { # Optional.
736          #
737          # A map of fields to hold both filterable and non-filterable custom job
738          # attributes that are not covered by the provided structured fields.
739          #
740          # The keys of the map are strings up to 64 bytes and must match the
741          # pattern: a-zA-Z*. For example, key0LikeThis or
742          # KEY_1_LIKE_THIS.
743          #
744          # At most 100 filterable and at most 100 unfilterable keys are supported.
745          # For filterable `string_values`, across all keys at most 200 values are
746          # allowed, with each string no more than 255 characters. For unfilterable
747          # `string_values`, the maximum total size of `string_values` across all keys
748          # is 50KB.
749        "a_key": { # Custom attribute values that are either filterable or non-filterable.
750          "filterable": True or False, # Optional.
751              #
752              # If the `filterable` flag is true, custom field values are searchable.
753              # If false, values are not searchable.
754              #
755              # Default is false.
756          "stringValues": [ # Optional but exactly one of string_values or long_values must
757              # be specified.
758              #
759              # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
760              # `CASE_INSENSITIVE_MATCH`) search.
761              # For filterable `string_value`s, a maximum total number of 200 values
762              # is allowed, with each `string_value` has a byte size of no more than
763              # 255B. For unfilterable `string_values`, the maximum total byte size of
764              # unfilterable `string_values` is 50KB.
765              #
766              # Empty string is not allowed.
767            "A String",
768          ],
769          "longValues": [ # Optional but exactly one of string_values or long_values must
770              # be specified.
771              #
772              # This field is used to perform number range search.
773              # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
774              #
775              # Currently at most 1 long_values is supported.
776            "A String",
777          ],
778        },
779      },
780      "jobLevel": "A String", # Optional.
781          #
782          # The experience level associated with the job, such as "Entry Level".
783    },
784  }
785
786  x__xgafv: string, V1 error format.
787    Allowed values
788      1 - v1 error format
789      2 - v2 error format
790
791Returns:
792  An object of the form:
793
794    { # A Job resource represents a job posting (also referred to as a "job listing"
795      # or "job requisition"). A job belongs to a Company, which is the hiring
796      # entity responsible for the job.
797    "languageCode": "A String", # Optional.
798        #
799        # The language of the posting. This field is distinct from
800        # any requirements for fluency that are associated with the job.
801        #
802        # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
803        # For more information, see
804        # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
805        # class="external" target="_blank" }.
806        #
807        # If this field is unspecified and Job.description is present, detected
808        # language code based on Job.description is assigned, otherwise
809        # defaults to 'en_US'.
810    "addresses": [ # Optional but strongly recommended for the best service experience.
811        #
812        # Location(s) where the employer is looking to hire for this job posting.
813        #
814        # Specifying the full street address(es) of the hiring location enables
815        # better API results, especially job searches by commute time.
816        #
817        # At most 50 locations are allowed for best search performance. If a job has
818        # more locations, it is suggested to split it into multiple jobs with unique
819        # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
820        # multiple jobs with the same company_name, language_code and
821        # requisition_id are not allowed. If the original requisition_id must
822        # be preserved, a custom field should be used for storage. It is also
823        # suggested to group the locations that close to each other in the same job
824        # for better search experience.
825        #
826        # The maximum number of allowed characters is 500.
827      "A String",
828    ],
829    "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
830    "promotionValue": 42, # Optional.
831        #
832        # A promotion value of the job, as determined by the client.
833        # The value determines the sort order of the jobs returned when searching for
834        # jobs using the featured jobs search call, with higher promotional values
835        # being returned first and ties being resolved by relevance sort. Only the
836        # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
837        #
838        # Default value is 0, and negative values are treated as 0.
839    "employmentTypes": [ # Optional.
840        #
841        # The employment type(s) of a job, for example,
842        # full time or
843        # part time.
844      "A String",
845    ],
846    "jobEndTime": "A String", # Optional.
847        #
848        # The end timestamp of the job. Typically this field is used for contracting
849        # engagements. Invalid timestamps are ignored.
850    "description": "A String", # Required.
851        #
852        # The description of the job, which typically includes a multi-paragraph
853        # description of the company and related information. Separate fields are
854        # provided on the job object for responsibilities,
855        # qualifications, and other job characteristics. Use of
856        # these separate job fields is recommended.
857        #
858        # This field accepts and sanitizes HTML input, and also accepts
859        # bold, italic, ordered list, and unordered list markup tags.
860        #
861        # The maximum number of allowed characters is 100,000.
862    "postingExpireTime": "A String", # Optional but strongly recommended for the best service
863        # experience.
864        #
865        # The expiration timestamp of the job. After this timestamp, the
866        # job is marked as expired, and it no longer appears in search results. The
867        # expired job can't be deleted or listed by the DeleteJob and
868        # ListJobs APIs, but it can be retrieved with the GetJob API or
869        # updated with the UpdateJob API. An expired job can be updated and
870        # opened again by using a future expiration timestamp. Updating an expired
871        # job fails if there is another existing open job with same company_name,
872        # language_code and requisition_id.
873        #
874        # The expired jobs are retained in our system for 90 days. However, the
875        # overall expired job count cannot exceed 3 times the maximum of open jobs
876        # count over the past week, otherwise jobs with earlier expire time are
877        # cleaned first. Expired jobs are no longer accessible after they are cleaned
878        # out.
879        #
880        # Invalid timestamps are ignored, and treated as expire time not provided.
881        #
882        # Timestamp before the instant request is made is considered valid, the job
883        # will be treated as expired immediately.
884        #
885        # If this value is not provided at the time of job creation or is invalid,
886        # the job posting expires after 30 days from the job's creation time. For
887        # example, if the job was created on 2017/01/01 13:00AM UTC with an
888        # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
889        #
890        # If this value is not provided on job update, it depends on the field masks
891        # set by UpdateJobRequest.update_mask. If the field masks include
892        # expiry_time, or the masks are empty meaning that every field is
893        # updated, the job posting expires after 30 days from the job's last
894        # update time. Otherwise the expiration date isn't updated.
895    "title": "A String", # Required.
896        #
897        # The title of the job, such as "Software Engineer"
898        #
899        # The maximum number of allowed characters is 500.
900    "responsibilities": "A String", # Optional.
901        #
902        # A description of job responsibilities. The use of this field is
903        # recommended as an alternative to using the more general description
904        # field.
905        #
906        # This field accepts and sanitizes HTML input, and also accepts
907        # bold, italic, ordered list, and unordered list markup tags.
908        #
909        # The maximum number of allowed characters is 10,000.
910    "jobStartTime": "A String", # Optional.
911        #
912        # The start timestamp of the job in UTC time zone. Typically this field
913        # is used for contracting engagements. Invalid timestamps are ignored.
914    "compensationInfo": { # Job compensation details. # Optional.
915        #
916        # Job compensation information.
917      "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
918          # all compensation entries' CompensationEntry.compensation times
919          # CompensationEntry.expected_units_per_year.
920          #
921          # See CompensationEntry for explanation on compensation annualization.
922        "minCompensation": { # Represents an amount of money with its currency type. # Optional.
923            #
924            # The minimum amount of compensation. If left empty, the value is set
925            # to zero and the currency code is set to match the
926            # currency code of max_compensation.
927          "nanos": 42, # Number of nano (10^-9) units of the amount.
928              # The value must be between -999,999,999 and +999,999,999 inclusive.
929              # If `units` is positive, `nanos` must be positive or zero.
930              # If `units` is zero, `nanos` can be positive, zero, or negative.
931              # If `units` is negative, `nanos` must be negative or zero.
932              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
933          "units": "A String", # The whole units of the amount.
934              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
935          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
936        },
937        "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
938            #
939            # The maximum amount of compensation. If left empty, the value is set
940            # to a maximal compensation value and the currency code is set to
941            # match the currency code of
942            # min_compensation.
943          "nanos": 42, # Number of nano (10^-9) units of the amount.
944              # The value must be between -999,999,999 and +999,999,999 inclusive.
945              # If `units` is positive, `nanos` must be positive or zero.
946              # If `units` is zero, `nanos` can be positive, zero, or negative.
947              # If `units` is negative, `nanos` must be negative or zero.
948              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
949          "units": "A String", # The whole units of the amount.
950              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
951          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
952        },
953      },
954      "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
955          # base compensation entry's CompensationEntry.compensation times
956          # CompensationEntry.expected_units_per_year.
957          #
958          # See CompensationEntry for explanation on compensation annualization.
959        "minCompensation": { # Represents an amount of money with its currency type. # Optional.
960            #
961            # The minimum amount of compensation. If left empty, the value is set
962            # to zero and the currency code is set to match the
963            # currency code of max_compensation.
964          "nanos": 42, # Number of nano (10^-9) units of the amount.
965              # The value must be between -999,999,999 and +999,999,999 inclusive.
966              # If `units` is positive, `nanos` must be positive or zero.
967              # If `units` is zero, `nanos` can be positive, zero, or negative.
968              # If `units` is negative, `nanos` must be negative or zero.
969              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
970          "units": "A String", # The whole units of the amount.
971              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
972          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
973        },
974        "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
975            #
976            # The maximum amount of compensation. If left empty, the value is set
977            # to a maximal compensation value and the currency code is set to
978            # match the currency code of
979            # min_compensation.
980          "nanos": 42, # Number of nano (10^-9) units of the amount.
981              # The value must be between -999,999,999 and +999,999,999 inclusive.
982              # If `units` is positive, `nanos` must be positive or zero.
983              # If `units` is zero, `nanos` can be positive, zero, or negative.
984              # If `units` is negative, `nanos` must be negative or zero.
985              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
986          "units": "A String", # The whole units of the amount.
987              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
988          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
989        },
990      },
991      "entries": [ # Optional.
992          #
993          # Job compensation information.
994          #
995          # At most one entry can be of type
996          # CompensationInfo.CompensationType.BASE, which is
997          # referred as ** base compensation entry ** for the job.
998        { # A compensation entry that represents one component of compensation, such
999            # as base pay, bonus, or other compensation type.
1000            #
1001            # Annualization: One compensation entry can be annualized if
1002            # - it contains valid amount or range.
1003            # - and its expected_units_per_year is set or can be derived.
1004            # Its annualized range is determined as (amount or range) times
1005            # expected_units_per_year.
1006          "description": "A String", # Optional.
1007              #
1008              # Compensation description.  For example, could
1009              # indicate equity terms or provide additional context to an estimated
1010              # bonus.
1011          "amount": { # Represents an amount of money with its currency type. # Optional.
1012              #
1013              # Compensation amount.
1014            "nanos": 42, # Number of nano (10^-9) units of the amount.
1015                # The value must be between -999,999,999 and +999,999,999 inclusive.
1016                # If `units` is positive, `nanos` must be positive or zero.
1017                # If `units` is zero, `nanos` can be positive, zero, or negative.
1018                # If `units` is negative, `nanos` must be negative or zero.
1019                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1020            "units": "A String", # The whole units of the amount.
1021                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1022            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1023          },
1024          "expectedUnitsPerYear": 3.14, # Optional.
1025              #
1026              # Expected number of units paid each year. If not specified, when
1027              # Job.employment_types is FULLTIME, a default value is inferred
1028              # based on unit. Default values:
1029              # - HOURLY: 2080
1030              # - DAILY: 260
1031              # - WEEKLY: 52
1032              # - MONTHLY: 12
1033              # - ANNUAL: 1
1034          "range": { # Compensation range. # Optional.
1035              #
1036              # Compensation range.
1037            "minCompensation": { # Represents an amount of money with its currency type. # Optional.
1038                #
1039                # The minimum amount of compensation. If left empty, the value is set
1040                # to zero and the currency code is set to match the
1041                # currency code of max_compensation.
1042              "nanos": 42, # Number of nano (10^-9) units of the amount.
1043                  # The value must be between -999,999,999 and +999,999,999 inclusive.
1044                  # If `units` is positive, `nanos` must be positive or zero.
1045                  # If `units` is zero, `nanos` can be positive, zero, or negative.
1046                  # If `units` is negative, `nanos` must be negative or zero.
1047                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1048              "units": "A String", # The whole units of the amount.
1049                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1050              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1051            },
1052            "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
1053                #
1054                # The maximum amount of compensation. If left empty, the value is set
1055                # to a maximal compensation value and the currency code is set to
1056                # match the currency code of
1057                # min_compensation.
1058              "nanos": 42, # Number of nano (10^-9) units of the amount.
1059                  # The value must be between -999,999,999 and +999,999,999 inclusive.
1060                  # If `units` is positive, `nanos` must be positive or zero.
1061                  # If `units` is zero, `nanos` can be positive, zero, or negative.
1062                  # If `units` is negative, `nanos` must be negative or zero.
1063                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1064              "units": "A String", # The whole units of the amount.
1065                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1066              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1067            },
1068          },
1069          "type": "A String", # Optional.
1070              #
1071              # Compensation type.
1072              #
1073              # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
1074          "unit": "A String", # Optional.
1075              #
1076              # Frequency of the specified amount.
1077              #
1078              # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
1079        },
1080      ],
1081    },
1082    "department": "A String", # Optional.
1083        #
1084        # The department or functional area within the company with the open
1085        # position.
1086        #
1087        # The maximum number of allowed characters is 255.
1088    "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
1089    "requisitionId": "A String", # Required.
1090        #
1091        # The requisition ID, also referred to as the posting ID, assigned by the
1092        # client to identify a job. This field is intended to be used by clients
1093        # for client identification and tracking of postings. A job is not allowed
1094        # to be created if there is another job with the same [company_name],
1095        # language_code and requisition_id.
1096        #
1097        # The maximum number of allowed characters is 255.
1098    "postingPublishTime": "A String", # Optional.
1099        #
1100        # The timestamp this job posting was most recently published. The default
1101        # value is the time the request arrives at the server. Invalid timestamps are
1102        # ignored.
1103    "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
1104        #
1105        # Job application information.
1106      "instruction": "A String", # Optional but at least one of uris,
1107          # emails or instruction must be
1108          # specified.
1109          #
1110          # Use this field to provide instructions, such as "Mail your application
1111          # to ...", that a candidate can follow to apply for the job.
1112          #
1113          # This field accepts and sanitizes HTML input, and also accepts
1114          # bold, italic, ordered list, and unordered list markup tags.
1115          #
1116          # The maximum number of allowed characters is 3,000.
1117      "uris": [ # Optional but at least one of uris,
1118          # emails or instruction must be
1119          # specified.
1120          #
1121          # Use this URI field to direct an applicant to a website, for example to
1122          # link to an online application form.
1123          #
1124          # The maximum number of allowed characters for each entry is 2,000.
1125        "A String",
1126      ],
1127      "emails": [ # Optional but at least one of uris,
1128          # emails or instruction must be
1129          # specified.
1130          #
1131          # Use this field to specify email address(es) to which resumes or
1132          # applications can be sent.
1133          #
1134          # The maximum number of allowed characters for each entry is 255.
1135        "A String",
1136      ],
1137    },
1138    "companyName": "A String", # Required.
1139        #
1140        # The resource name of the company listing the job, such as
1141        # "projects/api-test-project/companies/foo".
1142    "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
1143        #
1144        # Derived details about the job posting.
1145      "jobCategories": [ # Job categories derived from Job.title and Job.description.
1146        "A String",
1147      ],
1148      "locations": [ # Structured locations of the job, resolved from Job.addresses.
1149          #
1150          # locations are exactly matched to Job.addresses in the same
1151          # order.
1152        { # Output only.
1153            #
1154            # A resource that represents a location with full geographic information.
1155          "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
1156              # location bounding box in which a circle with the specified radius
1157              # centered from LatLng covers the area associated with the job location.
1158              # For example, currently, "Mountain View, CA, USA" has a radius of
1159              # 6.17 miles.
1160          "locationType": "A String", # The type of a location, which corresponds to the address lines field of
1161              # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
1162              # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
1163              # LocationType#LOCALITY.
1164          "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
1165              # of doubles representing degrees latitude and degrees longitude. Unless
1166              # specified otherwise, this must conform to the
1167              # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
1168              # standard</a>. Values must be within normalized ranges.
1169            "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
1170            "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
1171          },
1172          "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
1173              # such as postal delivery and payments addresses. Given a postal address,
1174              # a postal service can deliver items to a premises, P.O. Box, or other
1175              # delivery location.
1176              # Given a postal address, a postal service can deliver items to a premise, P.O.
1177              # Box or similar.
1178              # It is not intended to model geographical locations (roads, towns,
1179              # mountains).
1180              #
1181              # In typical usage an address would be created via user input or from importing
1182              # existing data, depending on the type of process.
1183              #
1184              # Advice on address input / editing:
1185              #  - Use an i18n-ready address widget such as
1186              #    https://github.com/googlei18n/libaddressinput)
1187              # - Users should not be presented with UI elements for input or editing of
1188              #   fields outside countries where that field is used.
1189              #
1190              # For more guidance on how to use this schema, please see:
1191              # https://support.google.com/business/answer/6397478
1192            "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
1193                # known). This is often the UI language of the input form or is expected
1194                # to match one of the languages used in the address' country/region, or their
1195                # transliterated equivalents.
1196                # This can affect formatting in certain countries, but is not critical
1197                # to the correctness of the data and will never affect any validation or
1198                # other non-formatting related operations.
1199                #
1200                # If this value is not known, it should be omitted (rather than specifying a
1201                # possibly incorrect default).
1202                #
1203                # Examples: "zh-Hant", "ja", "ja-Latn", "en".
1204            "recipients": [ # Optional. The recipient at the address.
1205                # This field may, under certain circumstances, contain multiline information.
1206                # For example, it might contain "care of" information.
1207              "A String",
1208            ],
1209            "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
1210                # Examples: US city, IT comune, UK post town.
1211                # In regions of the world where localities are not well defined or do not fit
1212                # into this structure well, leave locality empty and use address_lines.
1213            "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
1214                # in most regions. Where it is used, the value is either a string like
1215                # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
1216                # alone, representing the "sector code" (Jamaica), "delivery area indicator"
1217                # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
1218            "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
1219                # is never inferred and it is up to the user to ensure the value is
1220                # correct. See http://cldr.unicode.org/ and
1221                # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
1222                # for details. Example: "CH" for Switzerland.
1223            "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
1224                # addresses of a country or region.
1225                # For example, this can be a state, a province, an oblast, or a prefecture.
1226                # Specifically, for Spain this is the province and not the autonomous
1227                # community (e.g. "Barcelona" and not "Catalonia").
1228                # Many countries don't use an administrative area in postal addresses. E.g.
1229                # in Switzerland this should be left unpopulated.
1230            "addressLines": [ # Unstructured address lines describing the lower levels of an address.
1231                #
1232                # Because values in address_lines do not have type information and may
1233                # sometimes contain multiple values in a single field (e.g.
1234                # "Austin, TX"), it is important that the line order is clear. The order of
1235                # address lines should be "envelope order" for the country/region of the
1236                # address. In places where this can vary (e.g. Japan), address_language is
1237                # used to make it explicit (e.g. "ja" for large-to-small ordering and
1238                # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
1239                # an address can be selected based on the language.
1240                #
1241                # The minimum permitted structural representation of an address consists
1242                # of a region_code with all remaining information placed in the
1243                # address_lines. It would be possible to format such an address very
1244                # approximately without geocoding, but no semantic reasoning could be
1245                # made about any of the address components until it was at least
1246                # partially resolved.
1247                #
1248                # Creating an address only containing a region_code and address_lines, and
1249                # then geocoding is the recommended way to handle completely unstructured
1250                # addresses (as opposed to guessing which parts of the address should be
1251                # localities or administrative areas).
1252              "A String",
1253            ],
1254            "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
1255                # postal codes to be present, but where they are used, they may trigger
1256                # additional validation with other parts of the address (e.g. state/zip
1257                # validation in the U.S.A.).
1258            "organization": "A String", # Optional. The name of the organization at the address.
1259            "sublocality": "A String", # Optional. Sublocality of the address.
1260                # For example, this can be neighborhoods, boroughs, districts.
1261            "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
1262                # the latest revision.
1263                #
1264                # All new revisions **must** be backward compatible with old revisions.
1265          },
1266        },
1267      ],
1268    },
1269    "qualifications": "A String", # Optional.
1270        #
1271        # A description of the qualifications required to perform the
1272        # job. The use of this field is recommended
1273        # as an alternative to using the more general description field.
1274        #
1275        # This field accepts and sanitizes HTML input, and also accepts
1276        # bold, italic, ordered list, and unordered list markup tags.
1277        #
1278        # The maximum number of allowed characters is 10,000.
1279    "jobBenefits": [ # Optional.
1280        #
1281        # The benefits included with the job.
1282      "A String",
1283    ],
1284    "incentives": "A String", # Optional.
1285        #
1286        # A description of bonus, commission, and other compensation
1287        # incentives associated with the job not including salary or pay.
1288        #
1289        # The maximum number of allowed characters is 10,000.
1290    "visibility": "A String", # Optional.
1291        #
1292        # The visibility of the job.
1293        #
1294        # Defaults to Visibility.ACCOUNT_ONLY if not specified.
1295    "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
1296    "postingRegion": "A String", # Optional.
1297        #
1298        # The job PostingRegion (for example, state, country) throughout which
1299        # the job is available. If this field is set, a
1300        # LocationFilter in a search query within the job region
1301        # finds this job posting if an exact location match isn't specified.
1302        # If this field is set to PostingRegion.NATION or
1303        # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
1304        # to the same location level as this field is strongly recommended.
1305    "name": "A String", # Required during job update.
1306        #
1307        # The resource name for the job. This is generated by the service when a
1308        # job is created.
1309        #
1310        # The format is "projects/{project_id}/jobs/{job_id}",
1311        # for example, "projects/api-test-project/jobs/1234".
1312        #
1313        # Use of this field in job queries and API calls is preferred over the use of
1314        # requisition_id since this value is unique.
1315    "processingOptions": { # Input only. # Optional.
1316        #
1317        # Options for job processing.
1318        #
1319        # Options for job processing.
1320      "htmlSanitization": "A String", # Optional.
1321          #
1322          # Option for job HTML content sanitization. Applied fields are:
1323          #
1324          # * description
1325          # * applicationInfo.instruction
1326          # * incentives
1327          # * qualifications
1328          # * responsibilities
1329          #
1330          # HTML tags in these fields may be stripped if sanitiazation is not
1331          # disabled.
1332          #
1333          # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
1334      "disableStreetAddressResolution": True or False, # Optional.
1335          #
1336          # If set to `true`, the service does not attempt to resolve a
1337          # more precise address for the job.
1338    },
1339    "degreeTypes": [ # Optional.
1340        #
1341        # The desired education degrees for the job, such as Bachelors, Masters.
1342      "A String",
1343    ],
1344    "customAttributes": { # Optional.
1345        #
1346        # A map of fields to hold both filterable and non-filterable custom job
1347        # attributes that are not covered by the provided structured fields.
1348        #
1349        # The keys of the map are strings up to 64 bytes and must match the
1350        # pattern: a-zA-Z*. For example, key0LikeThis or
1351        # KEY_1_LIKE_THIS.
1352        #
1353        # At most 100 filterable and at most 100 unfilterable keys are supported.
1354        # For filterable `string_values`, across all keys at most 200 values are
1355        # allowed, with each string no more than 255 characters. For unfilterable
1356        # `string_values`, the maximum total size of `string_values` across all keys
1357        # is 50KB.
1358      "a_key": { # Custom attribute values that are either filterable or non-filterable.
1359        "filterable": True or False, # Optional.
1360            #
1361            # If the `filterable` flag is true, custom field values are searchable.
1362            # If false, values are not searchable.
1363            #
1364            # Default is false.
1365        "stringValues": [ # Optional but exactly one of string_values or long_values must
1366            # be specified.
1367            #
1368            # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
1369            # `CASE_INSENSITIVE_MATCH`) search.
1370            # For filterable `string_value`s, a maximum total number of 200 values
1371            # is allowed, with each `string_value` has a byte size of no more than
1372            # 255B. For unfilterable `string_values`, the maximum total byte size of
1373            # unfilterable `string_values` is 50KB.
1374            #
1375            # Empty string is not allowed.
1376          "A String",
1377        ],
1378        "longValues": [ # Optional but exactly one of string_values or long_values must
1379            # be specified.
1380            #
1381            # This field is used to perform number range search.
1382            # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
1383            #
1384            # Currently at most 1 long_values is supported.
1385          "A String",
1386        ],
1387      },
1388    },
1389    "jobLevel": "A String", # Optional.
1390        #
1391        # The experience level associated with the job, such as "Entry Level".
1392  }</pre>
1393</div>
1394
1395<div class="method">
1396    <code class="details" id="delete">delete(name, x__xgafv=None)</code>
1397  <pre>Deletes the specified job.
1398
1399Typically, the job becomes unsearchable within 10 seconds, but it may take
1400up to 5 minutes.
1401
1402Args:
1403  name: string, Required.
1404
1405The resource name of the job to be deleted.
1406
1407The format is "projects/{project_id}/jobs/{job_id}",
1408for example, "projects/api-test-project/jobs/1234". (required)
1409  x__xgafv: string, V1 error format.
1410    Allowed values
1411      1 - v1 error format
1412      2 - v2 error format
1413
1414Returns:
1415  An object of the form:
1416
1417    { # A generic empty message that you can re-use to avoid defining duplicated
1418      # empty messages in your APIs. A typical example is to use it as the request
1419      # or the response type of an API method. For instance:
1420      #
1421      #     service Foo {
1422      #       rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
1423      #     }
1424      #
1425      # The JSON representation for `Empty` is empty JSON object `{}`.
1426  }</pre>
1427</div>
1428
1429<div class="method">
1430    <code class="details" id="get">get(name, x__xgafv=None)</code>
1431  <pre>Retrieves the specified job, whose status is OPEN or recently EXPIRED
1432within the last 90 days.
1433
1434Args:
1435  name: string, Required.
1436
1437The resource name of the job to retrieve.
1438
1439The format is "projects/{project_id}/jobs/{job_id}",
1440for example, "projects/api-test-project/jobs/1234". (required)
1441  x__xgafv: string, V1 error format.
1442    Allowed values
1443      1 - v1 error format
1444      2 - v2 error format
1445
1446Returns:
1447  An object of the form:
1448
1449    { # A Job resource represents a job posting (also referred to as a "job listing"
1450      # or "job requisition"). A job belongs to a Company, which is the hiring
1451      # entity responsible for the job.
1452    "languageCode": "A String", # Optional.
1453        #
1454        # The language of the posting. This field is distinct from
1455        # any requirements for fluency that are associated with the job.
1456        #
1457        # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
1458        # For more information, see
1459        # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
1460        # class="external" target="_blank" }.
1461        #
1462        # If this field is unspecified and Job.description is present, detected
1463        # language code based on Job.description is assigned, otherwise
1464        # defaults to 'en_US'.
1465    "addresses": [ # Optional but strongly recommended for the best service experience.
1466        #
1467        # Location(s) where the employer is looking to hire for this job posting.
1468        #
1469        # Specifying the full street address(es) of the hiring location enables
1470        # better API results, especially job searches by commute time.
1471        #
1472        # At most 50 locations are allowed for best search performance. If a job has
1473        # more locations, it is suggested to split it into multiple jobs with unique
1474        # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
1475        # multiple jobs with the same company_name, language_code and
1476        # requisition_id are not allowed. If the original requisition_id must
1477        # be preserved, a custom field should be used for storage. It is also
1478        # suggested to group the locations that close to each other in the same job
1479        # for better search experience.
1480        #
1481        # The maximum number of allowed characters is 500.
1482      "A String",
1483    ],
1484    "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
1485    "promotionValue": 42, # Optional.
1486        #
1487        # A promotion value of the job, as determined by the client.
1488        # The value determines the sort order of the jobs returned when searching for
1489        # jobs using the featured jobs search call, with higher promotional values
1490        # being returned first and ties being resolved by relevance sort. Only the
1491        # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
1492        #
1493        # Default value is 0, and negative values are treated as 0.
1494    "employmentTypes": [ # Optional.
1495        #
1496        # The employment type(s) of a job, for example,
1497        # full time or
1498        # part time.
1499      "A String",
1500    ],
1501    "jobEndTime": "A String", # Optional.
1502        #
1503        # The end timestamp of the job. Typically this field is used for contracting
1504        # engagements. Invalid timestamps are ignored.
1505    "description": "A String", # Required.
1506        #
1507        # The description of the job, which typically includes a multi-paragraph
1508        # description of the company and related information. Separate fields are
1509        # provided on the job object for responsibilities,
1510        # qualifications, and other job characteristics. Use of
1511        # these separate job fields is recommended.
1512        #
1513        # This field accepts and sanitizes HTML input, and also accepts
1514        # bold, italic, ordered list, and unordered list markup tags.
1515        #
1516        # The maximum number of allowed characters is 100,000.
1517    "postingExpireTime": "A String", # Optional but strongly recommended for the best service
1518        # experience.
1519        #
1520        # The expiration timestamp of the job. After this timestamp, the
1521        # job is marked as expired, and it no longer appears in search results. The
1522        # expired job can't be deleted or listed by the DeleteJob and
1523        # ListJobs APIs, but it can be retrieved with the GetJob API or
1524        # updated with the UpdateJob API. An expired job can be updated and
1525        # opened again by using a future expiration timestamp. Updating an expired
1526        # job fails if there is another existing open job with same company_name,
1527        # language_code and requisition_id.
1528        #
1529        # The expired jobs are retained in our system for 90 days. However, the
1530        # overall expired job count cannot exceed 3 times the maximum of open jobs
1531        # count over the past week, otherwise jobs with earlier expire time are
1532        # cleaned first. Expired jobs are no longer accessible after they are cleaned
1533        # out.
1534        #
1535        # Invalid timestamps are ignored, and treated as expire time not provided.
1536        #
1537        # Timestamp before the instant request is made is considered valid, the job
1538        # will be treated as expired immediately.
1539        #
1540        # If this value is not provided at the time of job creation or is invalid,
1541        # the job posting expires after 30 days from the job's creation time. For
1542        # example, if the job was created on 2017/01/01 13:00AM UTC with an
1543        # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
1544        #
1545        # If this value is not provided on job update, it depends on the field masks
1546        # set by UpdateJobRequest.update_mask. If the field masks include
1547        # expiry_time, or the masks are empty meaning that every field is
1548        # updated, the job posting expires after 30 days from the job's last
1549        # update time. Otherwise the expiration date isn't updated.
1550    "title": "A String", # Required.
1551        #
1552        # The title of the job, such as "Software Engineer"
1553        #
1554        # The maximum number of allowed characters is 500.
1555    "responsibilities": "A String", # Optional.
1556        #
1557        # A description of job responsibilities. The use of this field is
1558        # recommended as an alternative to using the more general description
1559        # field.
1560        #
1561        # This field accepts and sanitizes HTML input, and also accepts
1562        # bold, italic, ordered list, and unordered list markup tags.
1563        #
1564        # The maximum number of allowed characters is 10,000.
1565    "jobStartTime": "A String", # Optional.
1566        #
1567        # The start timestamp of the job in UTC time zone. Typically this field
1568        # is used for contracting engagements. Invalid timestamps are ignored.
1569    "compensationInfo": { # Job compensation details. # Optional.
1570        #
1571        # Job compensation information.
1572      "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
1573          # all compensation entries' CompensationEntry.compensation times
1574          # CompensationEntry.expected_units_per_year.
1575          #
1576          # See CompensationEntry for explanation on compensation annualization.
1577        "minCompensation": { # Represents an amount of money with its currency type. # Optional.
1578            #
1579            # The minimum amount of compensation. If left empty, the value is set
1580            # to zero and the currency code is set to match the
1581            # currency code of max_compensation.
1582          "nanos": 42, # Number of nano (10^-9) units of the amount.
1583              # The value must be between -999,999,999 and +999,999,999 inclusive.
1584              # If `units` is positive, `nanos` must be positive or zero.
1585              # If `units` is zero, `nanos` can be positive, zero, or negative.
1586              # If `units` is negative, `nanos` must be negative or zero.
1587              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1588          "units": "A String", # The whole units of the amount.
1589              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1590          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1591        },
1592        "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
1593            #
1594            # The maximum amount of compensation. If left empty, the value is set
1595            # to a maximal compensation value and the currency code is set to
1596            # match the currency code of
1597            # min_compensation.
1598          "nanos": 42, # Number of nano (10^-9) units of the amount.
1599              # The value must be between -999,999,999 and +999,999,999 inclusive.
1600              # If `units` is positive, `nanos` must be positive or zero.
1601              # If `units` is zero, `nanos` can be positive, zero, or negative.
1602              # If `units` is negative, `nanos` must be negative or zero.
1603              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1604          "units": "A String", # The whole units of the amount.
1605              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1606          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1607        },
1608      },
1609      "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
1610          # base compensation entry's CompensationEntry.compensation times
1611          # CompensationEntry.expected_units_per_year.
1612          #
1613          # See CompensationEntry for explanation on compensation annualization.
1614        "minCompensation": { # Represents an amount of money with its currency type. # Optional.
1615            #
1616            # The minimum amount of compensation. If left empty, the value is set
1617            # to zero and the currency code is set to match the
1618            # currency code of max_compensation.
1619          "nanos": 42, # Number of nano (10^-9) units of the amount.
1620              # The value must be between -999,999,999 and +999,999,999 inclusive.
1621              # If `units` is positive, `nanos` must be positive or zero.
1622              # If `units` is zero, `nanos` can be positive, zero, or negative.
1623              # If `units` is negative, `nanos` must be negative or zero.
1624              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1625          "units": "A String", # The whole units of the amount.
1626              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1627          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1628        },
1629        "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
1630            #
1631            # The maximum amount of compensation. If left empty, the value is set
1632            # to a maximal compensation value and the currency code is set to
1633            # match the currency code of
1634            # min_compensation.
1635          "nanos": 42, # Number of nano (10^-9) units of the amount.
1636              # The value must be between -999,999,999 and +999,999,999 inclusive.
1637              # If `units` is positive, `nanos` must be positive or zero.
1638              # If `units` is zero, `nanos` can be positive, zero, or negative.
1639              # If `units` is negative, `nanos` must be negative or zero.
1640              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1641          "units": "A String", # The whole units of the amount.
1642              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1643          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1644        },
1645      },
1646      "entries": [ # Optional.
1647          #
1648          # Job compensation information.
1649          #
1650          # At most one entry can be of type
1651          # CompensationInfo.CompensationType.BASE, which is
1652          # referred as ** base compensation entry ** for the job.
1653        { # A compensation entry that represents one component of compensation, such
1654            # as base pay, bonus, or other compensation type.
1655            #
1656            # Annualization: One compensation entry can be annualized if
1657            # - it contains valid amount or range.
1658            # - and its expected_units_per_year is set or can be derived.
1659            # Its annualized range is determined as (amount or range) times
1660            # expected_units_per_year.
1661          "description": "A String", # Optional.
1662              #
1663              # Compensation description.  For example, could
1664              # indicate equity terms or provide additional context to an estimated
1665              # bonus.
1666          "amount": { # Represents an amount of money with its currency type. # Optional.
1667              #
1668              # Compensation amount.
1669            "nanos": 42, # Number of nano (10^-9) units of the amount.
1670                # The value must be between -999,999,999 and +999,999,999 inclusive.
1671                # If `units` is positive, `nanos` must be positive or zero.
1672                # If `units` is zero, `nanos` can be positive, zero, or negative.
1673                # If `units` is negative, `nanos` must be negative or zero.
1674                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1675            "units": "A String", # The whole units of the amount.
1676                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1677            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1678          },
1679          "expectedUnitsPerYear": 3.14, # Optional.
1680              #
1681              # Expected number of units paid each year. If not specified, when
1682              # Job.employment_types is FULLTIME, a default value is inferred
1683              # based on unit. Default values:
1684              # - HOURLY: 2080
1685              # - DAILY: 260
1686              # - WEEKLY: 52
1687              # - MONTHLY: 12
1688              # - ANNUAL: 1
1689          "range": { # Compensation range. # Optional.
1690              #
1691              # Compensation range.
1692            "minCompensation": { # Represents an amount of money with its currency type. # Optional.
1693                #
1694                # The minimum amount of compensation. If left empty, the value is set
1695                # to zero and the currency code is set to match the
1696                # currency code of max_compensation.
1697              "nanos": 42, # Number of nano (10^-9) units of the amount.
1698                  # The value must be between -999,999,999 and +999,999,999 inclusive.
1699                  # If `units` is positive, `nanos` must be positive or zero.
1700                  # If `units` is zero, `nanos` can be positive, zero, or negative.
1701                  # If `units` is negative, `nanos` must be negative or zero.
1702                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1703              "units": "A String", # The whole units of the amount.
1704                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1705              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1706            },
1707            "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
1708                #
1709                # The maximum amount of compensation. If left empty, the value is set
1710                # to a maximal compensation value and the currency code is set to
1711                # match the currency code of
1712                # min_compensation.
1713              "nanos": 42, # Number of nano (10^-9) units of the amount.
1714                  # The value must be between -999,999,999 and +999,999,999 inclusive.
1715                  # If `units` is positive, `nanos` must be positive or zero.
1716                  # If `units` is zero, `nanos` can be positive, zero, or negative.
1717                  # If `units` is negative, `nanos` must be negative or zero.
1718                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
1719              "units": "A String", # The whole units of the amount.
1720                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
1721              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
1722            },
1723          },
1724          "type": "A String", # Optional.
1725              #
1726              # Compensation type.
1727              #
1728              # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
1729          "unit": "A String", # Optional.
1730              #
1731              # Frequency of the specified amount.
1732              #
1733              # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
1734        },
1735      ],
1736    },
1737    "department": "A String", # Optional.
1738        #
1739        # The department or functional area within the company with the open
1740        # position.
1741        #
1742        # The maximum number of allowed characters is 255.
1743    "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
1744    "requisitionId": "A String", # Required.
1745        #
1746        # The requisition ID, also referred to as the posting ID, assigned by the
1747        # client to identify a job. This field is intended to be used by clients
1748        # for client identification and tracking of postings. A job is not allowed
1749        # to be created if there is another job with the same [company_name],
1750        # language_code and requisition_id.
1751        #
1752        # The maximum number of allowed characters is 255.
1753    "postingPublishTime": "A String", # Optional.
1754        #
1755        # The timestamp this job posting was most recently published. The default
1756        # value is the time the request arrives at the server. Invalid timestamps are
1757        # ignored.
1758    "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
1759        #
1760        # Job application information.
1761      "instruction": "A String", # Optional but at least one of uris,
1762          # emails or instruction must be
1763          # specified.
1764          #
1765          # Use this field to provide instructions, such as "Mail your application
1766          # to ...", that a candidate can follow to apply for the job.
1767          #
1768          # This field accepts and sanitizes HTML input, and also accepts
1769          # bold, italic, ordered list, and unordered list markup tags.
1770          #
1771          # The maximum number of allowed characters is 3,000.
1772      "uris": [ # Optional but at least one of uris,
1773          # emails or instruction must be
1774          # specified.
1775          #
1776          # Use this URI field to direct an applicant to a website, for example to
1777          # link to an online application form.
1778          #
1779          # The maximum number of allowed characters for each entry is 2,000.
1780        "A String",
1781      ],
1782      "emails": [ # Optional but at least one of uris,
1783          # emails or instruction must be
1784          # specified.
1785          #
1786          # Use this field to specify email address(es) to which resumes or
1787          # applications can be sent.
1788          #
1789          # The maximum number of allowed characters for each entry is 255.
1790        "A String",
1791      ],
1792    },
1793    "companyName": "A String", # Required.
1794        #
1795        # The resource name of the company listing the job, such as
1796        # "projects/api-test-project/companies/foo".
1797    "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
1798        #
1799        # Derived details about the job posting.
1800      "jobCategories": [ # Job categories derived from Job.title and Job.description.
1801        "A String",
1802      ],
1803      "locations": [ # Structured locations of the job, resolved from Job.addresses.
1804          #
1805          # locations are exactly matched to Job.addresses in the same
1806          # order.
1807        { # Output only.
1808            #
1809            # A resource that represents a location with full geographic information.
1810          "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
1811              # location bounding box in which a circle with the specified radius
1812              # centered from LatLng covers the area associated with the job location.
1813              # For example, currently, "Mountain View, CA, USA" has a radius of
1814              # 6.17 miles.
1815          "locationType": "A String", # The type of a location, which corresponds to the address lines field of
1816              # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
1817              # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
1818              # LocationType#LOCALITY.
1819          "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
1820              # of doubles representing degrees latitude and degrees longitude. Unless
1821              # specified otherwise, this must conform to the
1822              # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
1823              # standard</a>. Values must be within normalized ranges.
1824            "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
1825            "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
1826          },
1827          "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
1828              # such as postal delivery and payments addresses. Given a postal address,
1829              # a postal service can deliver items to a premises, P.O. Box, or other
1830              # delivery location.
1831              # Given a postal address, a postal service can deliver items to a premise, P.O.
1832              # Box or similar.
1833              # It is not intended to model geographical locations (roads, towns,
1834              # mountains).
1835              #
1836              # In typical usage an address would be created via user input or from importing
1837              # existing data, depending on the type of process.
1838              #
1839              # Advice on address input / editing:
1840              #  - Use an i18n-ready address widget such as
1841              #    https://github.com/googlei18n/libaddressinput)
1842              # - Users should not be presented with UI elements for input or editing of
1843              #   fields outside countries where that field is used.
1844              #
1845              # For more guidance on how to use this schema, please see:
1846              # https://support.google.com/business/answer/6397478
1847            "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
1848                # known). This is often the UI language of the input form or is expected
1849                # to match one of the languages used in the address' country/region, or their
1850                # transliterated equivalents.
1851                # This can affect formatting in certain countries, but is not critical
1852                # to the correctness of the data and will never affect any validation or
1853                # other non-formatting related operations.
1854                #
1855                # If this value is not known, it should be omitted (rather than specifying a
1856                # possibly incorrect default).
1857                #
1858                # Examples: "zh-Hant", "ja", "ja-Latn", "en".
1859            "recipients": [ # Optional. The recipient at the address.
1860                # This field may, under certain circumstances, contain multiline information.
1861                # For example, it might contain "care of" information.
1862              "A String",
1863            ],
1864            "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
1865                # Examples: US city, IT comune, UK post town.
1866                # In regions of the world where localities are not well defined or do not fit
1867                # into this structure well, leave locality empty and use address_lines.
1868            "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
1869                # in most regions. Where it is used, the value is either a string like
1870                # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
1871                # alone, representing the "sector code" (Jamaica), "delivery area indicator"
1872                # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
1873            "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
1874                # is never inferred and it is up to the user to ensure the value is
1875                # correct. See http://cldr.unicode.org/ and
1876                # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
1877                # for details. Example: "CH" for Switzerland.
1878            "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
1879                # addresses of a country or region.
1880                # For example, this can be a state, a province, an oblast, or a prefecture.
1881                # Specifically, for Spain this is the province and not the autonomous
1882                # community (e.g. "Barcelona" and not "Catalonia").
1883                # Many countries don't use an administrative area in postal addresses. E.g.
1884                # in Switzerland this should be left unpopulated.
1885            "addressLines": [ # Unstructured address lines describing the lower levels of an address.
1886                #
1887                # Because values in address_lines do not have type information and may
1888                # sometimes contain multiple values in a single field (e.g.
1889                # "Austin, TX"), it is important that the line order is clear. The order of
1890                # address lines should be "envelope order" for the country/region of the
1891                # address. In places where this can vary (e.g. Japan), address_language is
1892                # used to make it explicit (e.g. "ja" for large-to-small ordering and
1893                # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
1894                # an address can be selected based on the language.
1895                #
1896                # The minimum permitted structural representation of an address consists
1897                # of a region_code with all remaining information placed in the
1898                # address_lines. It would be possible to format such an address very
1899                # approximately without geocoding, but no semantic reasoning could be
1900                # made about any of the address components until it was at least
1901                # partially resolved.
1902                #
1903                # Creating an address only containing a region_code and address_lines, and
1904                # then geocoding is the recommended way to handle completely unstructured
1905                # addresses (as opposed to guessing which parts of the address should be
1906                # localities or administrative areas).
1907              "A String",
1908            ],
1909            "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
1910                # postal codes to be present, but where they are used, they may trigger
1911                # additional validation with other parts of the address (e.g. state/zip
1912                # validation in the U.S.A.).
1913            "organization": "A String", # Optional. The name of the organization at the address.
1914            "sublocality": "A String", # Optional. Sublocality of the address.
1915                # For example, this can be neighborhoods, boroughs, districts.
1916            "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
1917                # the latest revision.
1918                #
1919                # All new revisions **must** be backward compatible with old revisions.
1920          },
1921        },
1922      ],
1923    },
1924    "qualifications": "A String", # Optional.
1925        #
1926        # A description of the qualifications required to perform the
1927        # job. The use of this field is recommended
1928        # as an alternative to using the more general description field.
1929        #
1930        # This field accepts and sanitizes HTML input, and also accepts
1931        # bold, italic, ordered list, and unordered list markup tags.
1932        #
1933        # The maximum number of allowed characters is 10,000.
1934    "jobBenefits": [ # Optional.
1935        #
1936        # The benefits included with the job.
1937      "A String",
1938    ],
1939    "incentives": "A String", # Optional.
1940        #
1941        # A description of bonus, commission, and other compensation
1942        # incentives associated with the job not including salary or pay.
1943        #
1944        # The maximum number of allowed characters is 10,000.
1945    "visibility": "A String", # Optional.
1946        #
1947        # The visibility of the job.
1948        #
1949        # Defaults to Visibility.ACCOUNT_ONLY if not specified.
1950    "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
1951    "postingRegion": "A String", # Optional.
1952        #
1953        # The job PostingRegion (for example, state, country) throughout which
1954        # the job is available. If this field is set, a
1955        # LocationFilter in a search query within the job region
1956        # finds this job posting if an exact location match isn't specified.
1957        # If this field is set to PostingRegion.NATION or
1958        # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
1959        # to the same location level as this field is strongly recommended.
1960    "name": "A String", # Required during job update.
1961        #
1962        # The resource name for the job. This is generated by the service when a
1963        # job is created.
1964        #
1965        # The format is "projects/{project_id}/jobs/{job_id}",
1966        # for example, "projects/api-test-project/jobs/1234".
1967        #
1968        # Use of this field in job queries and API calls is preferred over the use of
1969        # requisition_id since this value is unique.
1970    "processingOptions": { # Input only. # Optional.
1971        #
1972        # Options for job processing.
1973        #
1974        # Options for job processing.
1975      "htmlSanitization": "A String", # Optional.
1976          #
1977          # Option for job HTML content sanitization. Applied fields are:
1978          #
1979          # * description
1980          # * applicationInfo.instruction
1981          # * incentives
1982          # * qualifications
1983          # * responsibilities
1984          #
1985          # HTML tags in these fields may be stripped if sanitiazation is not
1986          # disabled.
1987          #
1988          # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
1989      "disableStreetAddressResolution": True or False, # Optional.
1990          #
1991          # If set to `true`, the service does not attempt to resolve a
1992          # more precise address for the job.
1993    },
1994    "degreeTypes": [ # Optional.
1995        #
1996        # The desired education degrees for the job, such as Bachelors, Masters.
1997      "A String",
1998    ],
1999    "customAttributes": { # Optional.
2000        #
2001        # A map of fields to hold both filterable and non-filterable custom job
2002        # attributes that are not covered by the provided structured fields.
2003        #
2004        # The keys of the map are strings up to 64 bytes and must match the
2005        # pattern: a-zA-Z*. For example, key0LikeThis or
2006        # KEY_1_LIKE_THIS.
2007        #
2008        # At most 100 filterable and at most 100 unfilterable keys are supported.
2009        # For filterable `string_values`, across all keys at most 200 values are
2010        # allowed, with each string no more than 255 characters. For unfilterable
2011        # `string_values`, the maximum total size of `string_values` across all keys
2012        # is 50KB.
2013      "a_key": { # Custom attribute values that are either filterable or non-filterable.
2014        "filterable": True or False, # Optional.
2015            #
2016            # If the `filterable` flag is true, custom field values are searchable.
2017            # If false, values are not searchable.
2018            #
2019            # Default is false.
2020        "stringValues": [ # Optional but exactly one of string_values or long_values must
2021            # be specified.
2022            #
2023            # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
2024            # `CASE_INSENSITIVE_MATCH`) search.
2025            # For filterable `string_value`s, a maximum total number of 200 values
2026            # is allowed, with each `string_value` has a byte size of no more than
2027            # 255B. For unfilterable `string_values`, the maximum total byte size of
2028            # unfilterable `string_values` is 50KB.
2029            #
2030            # Empty string is not allowed.
2031          "A String",
2032        ],
2033        "longValues": [ # Optional but exactly one of string_values or long_values must
2034            # be specified.
2035            #
2036            # This field is used to perform number range search.
2037            # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
2038            #
2039            # Currently at most 1 long_values is supported.
2040          "A String",
2041        ],
2042      },
2043    },
2044    "jobLevel": "A String", # Optional.
2045        #
2046        # The experience level associated with the job, such as "Entry Level".
2047  }</pre>
2048</div>
2049
2050<div class="method">
2051    <code class="details" id="list">list(parent, pageSize=None, pageToken=None, x__xgafv=None, jobView=None, filter=None)</code>
2052  <pre>Lists jobs by filter.
2053
2054Args:
2055  parent: string, Required.
2056
2057The resource name of the project under which the job is created.
2058
2059The format is "projects/{project_id}", for example,
2060"projects/api-test-project". (required)
2061  pageSize: integer, Optional.
2062
2063The maximum number of jobs to be returned per page of results.
2064
2065If job_view is set to JobView.JOB_VIEW_ID_ONLY, the maximum allowed
2066page size is 1000. Otherwise, the maximum allowed page size is 100.
2067
2068Default is 100 if empty or a number < 1 is specified.
2069  pageToken: string, Optional.
2070
2071The starting point of a query result.
2072  x__xgafv: string, V1 error format.
2073    Allowed values
2074      1 - v1 error format
2075      2 - v2 error format
2076  jobView: string, Optional.
2077
2078The desired job attributes returned for jobs in the
2079search response. Defaults to JobView.JOB_VIEW_FULL if no value is
2080specified.
2081  filter: string, Required.
2082
2083The filter string specifies the jobs to be enumerated.
2084
2085Supported operator: =, AND
2086
2087The fields eligible for filtering are:
2088
2089* `companyName` (Required)
2090* `requisitionId` (Optional)
2091
2092Sample Query:
2093
2094* companyName = "projects/api-test-project/companies/123"
2095* companyName = "projects/api-test-project/companies/123" AND requisitionId
2096= "req-1"
2097
2098Returns:
2099  An object of the form:
2100
2101    { # Output only.
2102      #
2103      # List jobs response.
2104    "nextPageToken": "A String", # A token to retrieve the next page of results.
2105    "jobs": [ # The Jobs for a given company.
2106        #
2107        # The maximum number of items returned is based on the limit field
2108        # provided in the request.
2109      { # A Job resource represents a job posting (also referred to as a "job listing"
2110          # or "job requisition"). A job belongs to a Company, which is the hiring
2111          # entity responsible for the job.
2112        "languageCode": "A String", # Optional.
2113            #
2114            # The language of the posting. This field is distinct from
2115            # any requirements for fluency that are associated with the job.
2116            #
2117            # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
2118            # For more information, see
2119            # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
2120            # class="external" target="_blank" }.
2121            #
2122            # If this field is unspecified and Job.description is present, detected
2123            # language code based on Job.description is assigned, otherwise
2124            # defaults to 'en_US'.
2125        "addresses": [ # Optional but strongly recommended for the best service experience.
2126            #
2127            # Location(s) where the employer is looking to hire for this job posting.
2128            #
2129            # Specifying the full street address(es) of the hiring location enables
2130            # better API results, especially job searches by commute time.
2131            #
2132            # At most 50 locations are allowed for best search performance. If a job has
2133            # more locations, it is suggested to split it into multiple jobs with unique
2134            # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
2135            # multiple jobs with the same company_name, language_code and
2136            # requisition_id are not allowed. If the original requisition_id must
2137            # be preserved, a custom field should be used for storage. It is also
2138            # suggested to group the locations that close to each other in the same job
2139            # for better search experience.
2140            #
2141            # The maximum number of allowed characters is 500.
2142          "A String",
2143        ],
2144        "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
2145        "promotionValue": 42, # Optional.
2146            #
2147            # A promotion value of the job, as determined by the client.
2148            # The value determines the sort order of the jobs returned when searching for
2149            # jobs using the featured jobs search call, with higher promotional values
2150            # being returned first and ties being resolved by relevance sort. Only the
2151            # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
2152            #
2153            # Default value is 0, and negative values are treated as 0.
2154        "employmentTypes": [ # Optional.
2155            #
2156            # The employment type(s) of a job, for example,
2157            # full time or
2158            # part time.
2159          "A String",
2160        ],
2161        "jobEndTime": "A String", # Optional.
2162            #
2163            # The end timestamp of the job. Typically this field is used for contracting
2164            # engagements. Invalid timestamps are ignored.
2165        "description": "A String", # Required.
2166            #
2167            # The description of the job, which typically includes a multi-paragraph
2168            # description of the company and related information. Separate fields are
2169            # provided on the job object for responsibilities,
2170            # qualifications, and other job characteristics. Use of
2171            # these separate job fields is recommended.
2172            #
2173            # This field accepts and sanitizes HTML input, and also accepts
2174            # bold, italic, ordered list, and unordered list markup tags.
2175            #
2176            # The maximum number of allowed characters is 100,000.
2177        "postingExpireTime": "A String", # Optional but strongly recommended for the best service
2178            # experience.
2179            #
2180            # The expiration timestamp of the job. After this timestamp, the
2181            # job is marked as expired, and it no longer appears in search results. The
2182            # expired job can't be deleted or listed by the DeleteJob and
2183            # ListJobs APIs, but it can be retrieved with the GetJob API or
2184            # updated with the UpdateJob API. An expired job can be updated and
2185            # opened again by using a future expiration timestamp. Updating an expired
2186            # job fails if there is another existing open job with same company_name,
2187            # language_code and requisition_id.
2188            #
2189            # The expired jobs are retained in our system for 90 days. However, the
2190            # overall expired job count cannot exceed 3 times the maximum of open jobs
2191            # count over the past week, otherwise jobs with earlier expire time are
2192            # cleaned first. Expired jobs are no longer accessible after they are cleaned
2193            # out.
2194            #
2195            # Invalid timestamps are ignored, and treated as expire time not provided.
2196            #
2197            # Timestamp before the instant request is made is considered valid, the job
2198            # will be treated as expired immediately.
2199            #
2200            # If this value is not provided at the time of job creation or is invalid,
2201            # the job posting expires after 30 days from the job's creation time. For
2202            # example, if the job was created on 2017/01/01 13:00AM UTC with an
2203            # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
2204            #
2205            # If this value is not provided on job update, it depends on the field masks
2206            # set by UpdateJobRequest.update_mask. If the field masks include
2207            # expiry_time, or the masks are empty meaning that every field is
2208            # updated, the job posting expires after 30 days from the job's last
2209            # update time. Otherwise the expiration date isn't updated.
2210        "title": "A String", # Required.
2211            #
2212            # The title of the job, such as "Software Engineer"
2213            #
2214            # The maximum number of allowed characters is 500.
2215        "responsibilities": "A String", # Optional.
2216            #
2217            # A description of job responsibilities. The use of this field is
2218            # recommended as an alternative to using the more general description
2219            # field.
2220            #
2221            # This field accepts and sanitizes HTML input, and also accepts
2222            # bold, italic, ordered list, and unordered list markup tags.
2223            #
2224            # The maximum number of allowed characters is 10,000.
2225        "jobStartTime": "A String", # Optional.
2226            #
2227            # The start timestamp of the job in UTC time zone. Typically this field
2228            # is used for contracting engagements. Invalid timestamps are ignored.
2229        "compensationInfo": { # Job compensation details. # Optional.
2230            #
2231            # Job compensation information.
2232          "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
2233              # all compensation entries' CompensationEntry.compensation times
2234              # CompensationEntry.expected_units_per_year.
2235              #
2236              # See CompensationEntry for explanation on compensation annualization.
2237            "minCompensation": { # Represents an amount of money with its currency type. # Optional.
2238                #
2239                # The minimum amount of compensation. If left empty, the value is set
2240                # to zero and the currency code is set to match the
2241                # currency code of max_compensation.
2242              "nanos": 42, # Number of nano (10^-9) units of the amount.
2243                  # The value must be between -999,999,999 and +999,999,999 inclusive.
2244                  # If `units` is positive, `nanos` must be positive or zero.
2245                  # If `units` is zero, `nanos` can be positive, zero, or negative.
2246                  # If `units` is negative, `nanos` must be negative or zero.
2247                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2248              "units": "A String", # The whole units of the amount.
2249                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2250              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2251            },
2252            "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
2253                #
2254                # The maximum amount of compensation. If left empty, the value is set
2255                # to a maximal compensation value and the currency code is set to
2256                # match the currency code of
2257                # min_compensation.
2258              "nanos": 42, # Number of nano (10^-9) units of the amount.
2259                  # The value must be between -999,999,999 and +999,999,999 inclusive.
2260                  # If `units` is positive, `nanos` must be positive or zero.
2261                  # If `units` is zero, `nanos` can be positive, zero, or negative.
2262                  # If `units` is negative, `nanos` must be negative or zero.
2263                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2264              "units": "A String", # The whole units of the amount.
2265                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2266              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2267            },
2268          },
2269          "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
2270              # base compensation entry's CompensationEntry.compensation times
2271              # CompensationEntry.expected_units_per_year.
2272              #
2273              # See CompensationEntry for explanation on compensation annualization.
2274            "minCompensation": { # Represents an amount of money with its currency type. # Optional.
2275                #
2276                # The minimum amount of compensation. If left empty, the value is set
2277                # to zero and the currency code is set to match the
2278                # currency code of max_compensation.
2279              "nanos": 42, # Number of nano (10^-9) units of the amount.
2280                  # The value must be between -999,999,999 and +999,999,999 inclusive.
2281                  # If `units` is positive, `nanos` must be positive or zero.
2282                  # If `units` is zero, `nanos` can be positive, zero, or negative.
2283                  # If `units` is negative, `nanos` must be negative or zero.
2284                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2285              "units": "A String", # The whole units of the amount.
2286                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2287              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2288            },
2289            "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
2290                #
2291                # The maximum amount of compensation. If left empty, the value is set
2292                # to a maximal compensation value and the currency code is set to
2293                # match the currency code of
2294                # min_compensation.
2295              "nanos": 42, # Number of nano (10^-9) units of the amount.
2296                  # The value must be between -999,999,999 and +999,999,999 inclusive.
2297                  # If `units` is positive, `nanos` must be positive or zero.
2298                  # If `units` is zero, `nanos` can be positive, zero, or negative.
2299                  # If `units` is negative, `nanos` must be negative or zero.
2300                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2301              "units": "A String", # The whole units of the amount.
2302                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2303              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2304            },
2305          },
2306          "entries": [ # Optional.
2307              #
2308              # Job compensation information.
2309              #
2310              # At most one entry can be of type
2311              # CompensationInfo.CompensationType.BASE, which is
2312              # referred as ** base compensation entry ** for the job.
2313            { # A compensation entry that represents one component of compensation, such
2314                # as base pay, bonus, or other compensation type.
2315                #
2316                # Annualization: One compensation entry can be annualized if
2317                # - it contains valid amount or range.
2318                # - and its expected_units_per_year is set or can be derived.
2319                # Its annualized range is determined as (amount or range) times
2320                # expected_units_per_year.
2321              "description": "A String", # Optional.
2322                  #
2323                  # Compensation description.  For example, could
2324                  # indicate equity terms or provide additional context to an estimated
2325                  # bonus.
2326              "amount": { # Represents an amount of money with its currency type. # Optional.
2327                  #
2328                  # Compensation amount.
2329                "nanos": 42, # Number of nano (10^-9) units of the amount.
2330                    # The value must be between -999,999,999 and +999,999,999 inclusive.
2331                    # If `units` is positive, `nanos` must be positive or zero.
2332                    # If `units` is zero, `nanos` can be positive, zero, or negative.
2333                    # If `units` is negative, `nanos` must be negative or zero.
2334                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2335                "units": "A String", # The whole units of the amount.
2336                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2337                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2338              },
2339              "expectedUnitsPerYear": 3.14, # Optional.
2340                  #
2341                  # Expected number of units paid each year. If not specified, when
2342                  # Job.employment_types is FULLTIME, a default value is inferred
2343                  # based on unit. Default values:
2344                  # - HOURLY: 2080
2345                  # - DAILY: 260
2346                  # - WEEKLY: 52
2347                  # - MONTHLY: 12
2348                  # - ANNUAL: 1
2349              "range": { # Compensation range. # Optional.
2350                  #
2351                  # Compensation range.
2352                "minCompensation": { # Represents an amount of money with its currency type. # Optional.
2353                    #
2354                    # The minimum amount of compensation. If left empty, the value is set
2355                    # to zero and the currency code is set to match the
2356                    # currency code of max_compensation.
2357                  "nanos": 42, # Number of nano (10^-9) units of the amount.
2358                      # The value must be between -999,999,999 and +999,999,999 inclusive.
2359                      # If `units` is positive, `nanos` must be positive or zero.
2360                      # If `units` is zero, `nanos` can be positive, zero, or negative.
2361                      # If `units` is negative, `nanos` must be negative or zero.
2362                      # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2363                  "units": "A String", # The whole units of the amount.
2364                      # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2365                  "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2366                },
2367                "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
2368                    #
2369                    # The maximum amount of compensation. If left empty, the value is set
2370                    # to a maximal compensation value and the currency code is set to
2371                    # match the currency code of
2372                    # min_compensation.
2373                  "nanos": 42, # Number of nano (10^-9) units of the amount.
2374                      # The value must be between -999,999,999 and +999,999,999 inclusive.
2375                      # If `units` is positive, `nanos` must be positive or zero.
2376                      # If `units` is zero, `nanos` can be positive, zero, or negative.
2377                      # If `units` is negative, `nanos` must be negative or zero.
2378                      # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2379                  "units": "A String", # The whole units of the amount.
2380                      # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2381                  "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2382                },
2383              },
2384              "type": "A String", # Optional.
2385                  #
2386                  # Compensation type.
2387                  #
2388                  # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
2389              "unit": "A String", # Optional.
2390                  #
2391                  # Frequency of the specified amount.
2392                  #
2393                  # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
2394            },
2395          ],
2396        },
2397        "department": "A String", # Optional.
2398            #
2399            # The department or functional area within the company with the open
2400            # position.
2401            #
2402            # The maximum number of allowed characters is 255.
2403        "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
2404        "requisitionId": "A String", # Required.
2405            #
2406            # The requisition ID, also referred to as the posting ID, assigned by the
2407            # client to identify a job. This field is intended to be used by clients
2408            # for client identification and tracking of postings. A job is not allowed
2409            # to be created if there is another job with the same [company_name],
2410            # language_code and requisition_id.
2411            #
2412            # The maximum number of allowed characters is 255.
2413        "postingPublishTime": "A String", # Optional.
2414            #
2415            # The timestamp this job posting was most recently published. The default
2416            # value is the time the request arrives at the server. Invalid timestamps are
2417            # ignored.
2418        "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
2419            #
2420            # Job application information.
2421          "instruction": "A String", # Optional but at least one of uris,
2422              # emails or instruction must be
2423              # specified.
2424              #
2425              # Use this field to provide instructions, such as "Mail your application
2426              # to ...", that a candidate can follow to apply for the job.
2427              #
2428              # This field accepts and sanitizes HTML input, and also accepts
2429              # bold, italic, ordered list, and unordered list markup tags.
2430              #
2431              # The maximum number of allowed characters is 3,000.
2432          "uris": [ # Optional but at least one of uris,
2433              # emails or instruction must be
2434              # specified.
2435              #
2436              # Use this URI field to direct an applicant to a website, for example to
2437              # link to an online application form.
2438              #
2439              # The maximum number of allowed characters for each entry is 2,000.
2440            "A String",
2441          ],
2442          "emails": [ # Optional but at least one of uris,
2443              # emails or instruction must be
2444              # specified.
2445              #
2446              # Use this field to specify email address(es) to which resumes or
2447              # applications can be sent.
2448              #
2449              # The maximum number of allowed characters for each entry is 255.
2450            "A String",
2451          ],
2452        },
2453        "companyName": "A String", # Required.
2454            #
2455            # The resource name of the company listing the job, such as
2456            # "projects/api-test-project/companies/foo".
2457        "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
2458            #
2459            # Derived details about the job posting.
2460          "jobCategories": [ # Job categories derived from Job.title and Job.description.
2461            "A String",
2462          ],
2463          "locations": [ # Structured locations of the job, resolved from Job.addresses.
2464              #
2465              # locations are exactly matched to Job.addresses in the same
2466              # order.
2467            { # Output only.
2468                #
2469                # A resource that represents a location with full geographic information.
2470              "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
2471                  # location bounding box in which a circle with the specified radius
2472                  # centered from LatLng covers the area associated with the job location.
2473                  # For example, currently, "Mountain View, CA, USA" has a radius of
2474                  # 6.17 miles.
2475              "locationType": "A String", # The type of a location, which corresponds to the address lines field of
2476                  # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
2477                  # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
2478                  # LocationType#LOCALITY.
2479              "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
2480                  # of doubles representing degrees latitude and degrees longitude. Unless
2481                  # specified otherwise, this must conform to the
2482                  # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
2483                  # standard</a>. Values must be within normalized ranges.
2484                "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
2485                "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
2486              },
2487              "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
2488                  # such as postal delivery and payments addresses. Given a postal address,
2489                  # a postal service can deliver items to a premises, P.O. Box, or other
2490                  # delivery location.
2491                  # Given a postal address, a postal service can deliver items to a premise, P.O.
2492                  # Box or similar.
2493                  # It is not intended to model geographical locations (roads, towns,
2494                  # mountains).
2495                  #
2496                  # In typical usage an address would be created via user input or from importing
2497                  # existing data, depending on the type of process.
2498                  #
2499                  # Advice on address input / editing:
2500                  #  - Use an i18n-ready address widget such as
2501                  #    https://github.com/googlei18n/libaddressinput)
2502                  # - Users should not be presented with UI elements for input or editing of
2503                  #   fields outside countries where that field is used.
2504                  #
2505                  # For more guidance on how to use this schema, please see:
2506                  # https://support.google.com/business/answer/6397478
2507                "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
2508                    # known). This is often the UI language of the input form or is expected
2509                    # to match one of the languages used in the address' country/region, or their
2510                    # transliterated equivalents.
2511                    # This can affect formatting in certain countries, but is not critical
2512                    # to the correctness of the data and will never affect any validation or
2513                    # other non-formatting related operations.
2514                    #
2515                    # If this value is not known, it should be omitted (rather than specifying a
2516                    # possibly incorrect default).
2517                    #
2518                    # Examples: "zh-Hant", "ja", "ja-Latn", "en".
2519                "recipients": [ # Optional. The recipient at the address.
2520                    # This field may, under certain circumstances, contain multiline information.
2521                    # For example, it might contain "care of" information.
2522                  "A String",
2523                ],
2524                "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
2525                    # Examples: US city, IT comune, UK post town.
2526                    # In regions of the world where localities are not well defined or do not fit
2527                    # into this structure well, leave locality empty and use address_lines.
2528                "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
2529                    # in most regions. Where it is used, the value is either a string like
2530                    # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
2531                    # alone, representing the "sector code" (Jamaica), "delivery area indicator"
2532                    # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
2533                "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
2534                    # is never inferred and it is up to the user to ensure the value is
2535                    # correct. See http://cldr.unicode.org/ and
2536                    # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
2537                    # for details. Example: "CH" for Switzerland.
2538                "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
2539                    # addresses of a country or region.
2540                    # For example, this can be a state, a province, an oblast, or a prefecture.
2541                    # Specifically, for Spain this is the province and not the autonomous
2542                    # community (e.g. "Barcelona" and not "Catalonia").
2543                    # Many countries don't use an administrative area in postal addresses. E.g.
2544                    # in Switzerland this should be left unpopulated.
2545                "addressLines": [ # Unstructured address lines describing the lower levels of an address.
2546                    #
2547                    # Because values in address_lines do not have type information and may
2548                    # sometimes contain multiple values in a single field (e.g.
2549                    # "Austin, TX"), it is important that the line order is clear. The order of
2550                    # address lines should be "envelope order" for the country/region of the
2551                    # address. In places where this can vary (e.g. Japan), address_language is
2552                    # used to make it explicit (e.g. "ja" for large-to-small ordering and
2553                    # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
2554                    # an address can be selected based on the language.
2555                    #
2556                    # The minimum permitted structural representation of an address consists
2557                    # of a region_code with all remaining information placed in the
2558                    # address_lines. It would be possible to format such an address very
2559                    # approximately without geocoding, but no semantic reasoning could be
2560                    # made about any of the address components until it was at least
2561                    # partially resolved.
2562                    #
2563                    # Creating an address only containing a region_code and address_lines, and
2564                    # then geocoding is the recommended way to handle completely unstructured
2565                    # addresses (as opposed to guessing which parts of the address should be
2566                    # localities or administrative areas).
2567                  "A String",
2568                ],
2569                "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
2570                    # postal codes to be present, but where they are used, they may trigger
2571                    # additional validation with other parts of the address (e.g. state/zip
2572                    # validation in the U.S.A.).
2573                "organization": "A String", # Optional. The name of the organization at the address.
2574                "sublocality": "A String", # Optional. Sublocality of the address.
2575                    # For example, this can be neighborhoods, boroughs, districts.
2576                "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
2577                    # the latest revision.
2578                    #
2579                    # All new revisions **must** be backward compatible with old revisions.
2580              },
2581            },
2582          ],
2583        },
2584        "qualifications": "A String", # Optional.
2585            #
2586            # A description of the qualifications required to perform the
2587            # job. The use of this field is recommended
2588            # as an alternative to using the more general description field.
2589            #
2590            # This field accepts and sanitizes HTML input, and also accepts
2591            # bold, italic, ordered list, and unordered list markup tags.
2592            #
2593            # The maximum number of allowed characters is 10,000.
2594        "jobBenefits": [ # Optional.
2595            #
2596            # The benefits included with the job.
2597          "A String",
2598        ],
2599        "incentives": "A String", # Optional.
2600            #
2601            # A description of bonus, commission, and other compensation
2602            # incentives associated with the job not including salary or pay.
2603            #
2604            # The maximum number of allowed characters is 10,000.
2605        "visibility": "A String", # Optional.
2606            #
2607            # The visibility of the job.
2608            #
2609            # Defaults to Visibility.ACCOUNT_ONLY if not specified.
2610        "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
2611        "postingRegion": "A String", # Optional.
2612            #
2613            # The job PostingRegion (for example, state, country) throughout which
2614            # the job is available. If this field is set, a
2615            # LocationFilter in a search query within the job region
2616            # finds this job posting if an exact location match isn't specified.
2617            # If this field is set to PostingRegion.NATION or
2618            # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
2619            # to the same location level as this field is strongly recommended.
2620        "name": "A String", # Required during job update.
2621            #
2622            # The resource name for the job. This is generated by the service when a
2623            # job is created.
2624            #
2625            # The format is "projects/{project_id}/jobs/{job_id}",
2626            # for example, "projects/api-test-project/jobs/1234".
2627            #
2628            # Use of this field in job queries and API calls is preferred over the use of
2629            # requisition_id since this value is unique.
2630        "processingOptions": { # Input only. # Optional.
2631            #
2632            # Options for job processing.
2633            #
2634            # Options for job processing.
2635          "htmlSanitization": "A String", # Optional.
2636              #
2637              # Option for job HTML content sanitization. Applied fields are:
2638              #
2639              # * description
2640              # * applicationInfo.instruction
2641              # * incentives
2642              # * qualifications
2643              # * responsibilities
2644              #
2645              # HTML tags in these fields may be stripped if sanitiazation is not
2646              # disabled.
2647              #
2648              # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
2649          "disableStreetAddressResolution": True or False, # Optional.
2650              #
2651              # If set to `true`, the service does not attempt to resolve a
2652              # more precise address for the job.
2653        },
2654        "degreeTypes": [ # Optional.
2655            #
2656            # The desired education degrees for the job, such as Bachelors, Masters.
2657          "A String",
2658        ],
2659        "customAttributes": { # Optional.
2660            #
2661            # A map of fields to hold both filterable and non-filterable custom job
2662            # attributes that are not covered by the provided structured fields.
2663            #
2664            # The keys of the map are strings up to 64 bytes and must match the
2665            # pattern: a-zA-Z*. For example, key0LikeThis or
2666            # KEY_1_LIKE_THIS.
2667            #
2668            # At most 100 filterable and at most 100 unfilterable keys are supported.
2669            # For filterable `string_values`, across all keys at most 200 values are
2670            # allowed, with each string no more than 255 characters. For unfilterable
2671            # `string_values`, the maximum total size of `string_values` across all keys
2672            # is 50KB.
2673          "a_key": { # Custom attribute values that are either filterable or non-filterable.
2674            "filterable": True or False, # Optional.
2675                #
2676                # If the `filterable` flag is true, custom field values are searchable.
2677                # If false, values are not searchable.
2678                #
2679                # Default is false.
2680            "stringValues": [ # Optional but exactly one of string_values or long_values must
2681                # be specified.
2682                #
2683                # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
2684                # `CASE_INSENSITIVE_MATCH`) search.
2685                # For filterable `string_value`s, a maximum total number of 200 values
2686                # is allowed, with each `string_value` has a byte size of no more than
2687                # 255B. For unfilterable `string_values`, the maximum total byte size of
2688                # unfilterable `string_values` is 50KB.
2689                #
2690                # Empty string is not allowed.
2691              "A String",
2692            ],
2693            "longValues": [ # Optional but exactly one of string_values or long_values must
2694                # be specified.
2695                #
2696                # This field is used to perform number range search.
2697                # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
2698                #
2699                # Currently at most 1 long_values is supported.
2700              "A String",
2701            ],
2702          },
2703        },
2704        "jobLevel": "A String", # Optional.
2705            #
2706            # The experience level associated with the job, such as "Entry Level".
2707      },
2708    ],
2709    "metadata": { # Output only. # Additional information for the API invocation, such as the request
2710        # tracking id.
2711        #
2712        # Additional information returned to client, such as debugging information.
2713      "requestId": "A String", # A unique id associated with this call.
2714          # This id is logged for tracking purposes.
2715    },
2716  }</pre>
2717</div>
2718
2719<div class="method">
2720    <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
2721  <pre>Retrieves the next page of results.
2722
2723Args:
2724  previous_request: The request for the previous page. (required)
2725  previous_response: The response from the request for the previous page. (required)
2726
2727Returns:
2728  A request object that you can call 'execute()' on to request the next
2729  page. Returns None if there are no more items in the collection.
2730    </pre>
2731</div>
2732
2733<div class="method">
2734    <code class="details" id="patch">patch(name, body, x__xgafv=None)</code>
2735  <pre>Updates specified job.
2736
2737Typically, updated contents become visible in search results within 10
2738seconds, but it may take up to 5 minutes.
2739
2740Args:
2741  name: string, Required during job update.
2742
2743The resource name for the job. This is generated by the service when a
2744job is created.
2745
2746The format is "projects/{project_id}/jobs/{job_id}",
2747for example, "projects/api-test-project/jobs/1234".
2748
2749Use of this field in job queries and API calls is preferred over the use of
2750requisition_id since this value is unique. (required)
2751  body: object, The request body. (required)
2752    The object takes the form of:
2753
2754{ # Input only.
2755      #
2756      # Update job request.
2757    "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Required.
2758        #
2759        # The Job to be updated.
2760        # or "job requisition"). A job belongs to a Company, which is the hiring
2761        # entity responsible for the job.
2762      "languageCode": "A String", # Optional.
2763          #
2764          # The language of the posting. This field is distinct from
2765          # any requirements for fluency that are associated with the job.
2766          #
2767          # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
2768          # For more information, see
2769          # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
2770          # class="external" target="_blank" }.
2771          #
2772          # If this field is unspecified and Job.description is present, detected
2773          # language code based on Job.description is assigned, otherwise
2774          # defaults to 'en_US'.
2775      "addresses": [ # Optional but strongly recommended for the best service experience.
2776          #
2777          # Location(s) where the employer is looking to hire for this job posting.
2778          #
2779          # Specifying the full street address(es) of the hiring location enables
2780          # better API results, especially job searches by commute time.
2781          #
2782          # At most 50 locations are allowed for best search performance. If a job has
2783          # more locations, it is suggested to split it into multiple jobs with unique
2784          # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
2785          # multiple jobs with the same company_name, language_code and
2786          # requisition_id are not allowed. If the original requisition_id must
2787          # be preserved, a custom field should be used for storage. It is also
2788          # suggested to group the locations that close to each other in the same job
2789          # for better search experience.
2790          #
2791          # The maximum number of allowed characters is 500.
2792        "A String",
2793      ],
2794      "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
2795      "promotionValue": 42, # Optional.
2796          #
2797          # A promotion value of the job, as determined by the client.
2798          # The value determines the sort order of the jobs returned when searching for
2799          # jobs using the featured jobs search call, with higher promotional values
2800          # being returned first and ties being resolved by relevance sort. Only the
2801          # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
2802          #
2803          # Default value is 0, and negative values are treated as 0.
2804      "employmentTypes": [ # Optional.
2805          #
2806          # The employment type(s) of a job, for example,
2807          # full time or
2808          # part time.
2809        "A String",
2810      ],
2811      "jobEndTime": "A String", # Optional.
2812          #
2813          # The end timestamp of the job. Typically this field is used for contracting
2814          # engagements. Invalid timestamps are ignored.
2815      "description": "A String", # Required.
2816          #
2817          # The description of the job, which typically includes a multi-paragraph
2818          # description of the company and related information. Separate fields are
2819          # provided on the job object for responsibilities,
2820          # qualifications, and other job characteristics. Use of
2821          # these separate job fields is recommended.
2822          #
2823          # This field accepts and sanitizes HTML input, and also accepts
2824          # bold, italic, ordered list, and unordered list markup tags.
2825          #
2826          # The maximum number of allowed characters is 100,000.
2827      "postingExpireTime": "A String", # Optional but strongly recommended for the best service
2828          # experience.
2829          #
2830          # The expiration timestamp of the job. After this timestamp, the
2831          # job is marked as expired, and it no longer appears in search results. The
2832          # expired job can't be deleted or listed by the DeleteJob and
2833          # ListJobs APIs, but it can be retrieved with the GetJob API or
2834          # updated with the UpdateJob API. An expired job can be updated and
2835          # opened again by using a future expiration timestamp. Updating an expired
2836          # job fails if there is another existing open job with same company_name,
2837          # language_code and requisition_id.
2838          #
2839          # The expired jobs are retained in our system for 90 days. However, the
2840          # overall expired job count cannot exceed 3 times the maximum of open jobs
2841          # count over the past week, otherwise jobs with earlier expire time are
2842          # cleaned first. Expired jobs are no longer accessible after they are cleaned
2843          # out.
2844          #
2845          # Invalid timestamps are ignored, and treated as expire time not provided.
2846          #
2847          # Timestamp before the instant request is made is considered valid, the job
2848          # will be treated as expired immediately.
2849          #
2850          # If this value is not provided at the time of job creation or is invalid,
2851          # the job posting expires after 30 days from the job's creation time. For
2852          # example, if the job was created on 2017/01/01 13:00AM UTC with an
2853          # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
2854          #
2855          # If this value is not provided on job update, it depends on the field masks
2856          # set by UpdateJobRequest.update_mask. If the field masks include
2857          # expiry_time, or the masks are empty meaning that every field is
2858          # updated, the job posting expires after 30 days from the job's last
2859          # update time. Otherwise the expiration date isn't updated.
2860      "title": "A String", # Required.
2861          #
2862          # The title of the job, such as "Software Engineer"
2863          #
2864          # The maximum number of allowed characters is 500.
2865      "responsibilities": "A String", # Optional.
2866          #
2867          # A description of job responsibilities. The use of this field is
2868          # recommended as an alternative to using the more general description
2869          # field.
2870          #
2871          # This field accepts and sanitizes HTML input, and also accepts
2872          # bold, italic, ordered list, and unordered list markup tags.
2873          #
2874          # The maximum number of allowed characters is 10,000.
2875      "jobStartTime": "A String", # Optional.
2876          #
2877          # The start timestamp of the job in UTC time zone. Typically this field
2878          # is used for contracting engagements. Invalid timestamps are ignored.
2879      "compensationInfo": { # Job compensation details. # Optional.
2880          #
2881          # Job compensation information.
2882        "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
2883            # all compensation entries' CompensationEntry.compensation times
2884            # CompensationEntry.expected_units_per_year.
2885            #
2886            # See CompensationEntry for explanation on compensation annualization.
2887          "minCompensation": { # Represents an amount of money with its currency type. # Optional.
2888              #
2889              # The minimum amount of compensation. If left empty, the value is set
2890              # to zero and the currency code is set to match the
2891              # currency code of max_compensation.
2892            "nanos": 42, # Number of nano (10^-9) units of the amount.
2893                # The value must be between -999,999,999 and +999,999,999 inclusive.
2894                # If `units` is positive, `nanos` must be positive or zero.
2895                # If `units` is zero, `nanos` can be positive, zero, or negative.
2896                # If `units` is negative, `nanos` must be negative or zero.
2897                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2898            "units": "A String", # The whole units of the amount.
2899                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2900            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2901          },
2902          "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
2903              #
2904              # The maximum amount of compensation. If left empty, the value is set
2905              # to a maximal compensation value and the currency code is set to
2906              # match the currency code of
2907              # min_compensation.
2908            "nanos": 42, # Number of nano (10^-9) units of the amount.
2909                # The value must be between -999,999,999 and +999,999,999 inclusive.
2910                # If `units` is positive, `nanos` must be positive or zero.
2911                # If `units` is zero, `nanos` can be positive, zero, or negative.
2912                # If `units` is negative, `nanos` must be negative or zero.
2913                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2914            "units": "A String", # The whole units of the amount.
2915                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2916            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2917          },
2918        },
2919        "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
2920            # base compensation entry's CompensationEntry.compensation times
2921            # CompensationEntry.expected_units_per_year.
2922            #
2923            # See CompensationEntry for explanation on compensation annualization.
2924          "minCompensation": { # Represents an amount of money with its currency type. # Optional.
2925              #
2926              # The minimum amount of compensation. If left empty, the value is set
2927              # to zero and the currency code is set to match the
2928              # currency code of max_compensation.
2929            "nanos": 42, # Number of nano (10^-9) units of the amount.
2930                # The value must be between -999,999,999 and +999,999,999 inclusive.
2931                # If `units` is positive, `nanos` must be positive or zero.
2932                # If `units` is zero, `nanos` can be positive, zero, or negative.
2933                # If `units` is negative, `nanos` must be negative or zero.
2934                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2935            "units": "A String", # The whole units of the amount.
2936                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2937            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2938          },
2939          "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
2940              #
2941              # The maximum amount of compensation. If left empty, the value is set
2942              # to a maximal compensation value and the currency code is set to
2943              # match the currency code of
2944              # min_compensation.
2945            "nanos": 42, # Number of nano (10^-9) units of the amount.
2946                # The value must be between -999,999,999 and +999,999,999 inclusive.
2947                # If `units` is positive, `nanos` must be positive or zero.
2948                # If `units` is zero, `nanos` can be positive, zero, or negative.
2949                # If `units` is negative, `nanos` must be negative or zero.
2950                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2951            "units": "A String", # The whole units of the amount.
2952                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2953            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2954          },
2955        },
2956        "entries": [ # Optional.
2957            #
2958            # Job compensation information.
2959            #
2960            # At most one entry can be of type
2961            # CompensationInfo.CompensationType.BASE, which is
2962            # referred as ** base compensation entry ** for the job.
2963          { # A compensation entry that represents one component of compensation, such
2964              # as base pay, bonus, or other compensation type.
2965              #
2966              # Annualization: One compensation entry can be annualized if
2967              # - it contains valid amount or range.
2968              # - and its expected_units_per_year is set or can be derived.
2969              # Its annualized range is determined as (amount or range) times
2970              # expected_units_per_year.
2971            "description": "A String", # Optional.
2972                #
2973                # Compensation description.  For example, could
2974                # indicate equity terms or provide additional context to an estimated
2975                # bonus.
2976            "amount": { # Represents an amount of money with its currency type. # Optional.
2977                #
2978                # Compensation amount.
2979              "nanos": 42, # Number of nano (10^-9) units of the amount.
2980                  # The value must be between -999,999,999 and +999,999,999 inclusive.
2981                  # If `units` is positive, `nanos` must be positive or zero.
2982                  # If `units` is zero, `nanos` can be positive, zero, or negative.
2983                  # If `units` is negative, `nanos` must be negative or zero.
2984                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
2985              "units": "A String", # The whole units of the amount.
2986                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
2987              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
2988            },
2989            "expectedUnitsPerYear": 3.14, # Optional.
2990                #
2991                # Expected number of units paid each year. If not specified, when
2992                # Job.employment_types is FULLTIME, a default value is inferred
2993                # based on unit. Default values:
2994                # - HOURLY: 2080
2995                # - DAILY: 260
2996                # - WEEKLY: 52
2997                # - MONTHLY: 12
2998                # - ANNUAL: 1
2999            "range": { # Compensation range. # Optional.
3000                #
3001                # Compensation range.
3002              "minCompensation": { # Represents an amount of money with its currency type. # Optional.
3003                  #
3004                  # The minimum amount of compensation. If left empty, the value is set
3005                  # to zero and the currency code is set to match the
3006                  # currency code of max_compensation.
3007                "nanos": 42, # Number of nano (10^-9) units of the amount.
3008                    # The value must be between -999,999,999 and +999,999,999 inclusive.
3009                    # If `units` is positive, `nanos` must be positive or zero.
3010                    # If `units` is zero, `nanos` can be positive, zero, or negative.
3011                    # If `units` is negative, `nanos` must be negative or zero.
3012                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3013                "units": "A String", # The whole units of the amount.
3014                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3015                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3016              },
3017              "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
3018                  #
3019                  # The maximum amount of compensation. If left empty, the value is set
3020                  # to a maximal compensation value and the currency code is set to
3021                  # match the currency code of
3022                  # min_compensation.
3023                "nanos": 42, # Number of nano (10^-9) units of the amount.
3024                    # The value must be between -999,999,999 and +999,999,999 inclusive.
3025                    # If `units` is positive, `nanos` must be positive or zero.
3026                    # If `units` is zero, `nanos` can be positive, zero, or negative.
3027                    # If `units` is negative, `nanos` must be negative or zero.
3028                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3029                "units": "A String", # The whole units of the amount.
3030                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3031                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3032              },
3033            },
3034            "type": "A String", # Optional.
3035                #
3036                # Compensation type.
3037                #
3038                # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
3039            "unit": "A String", # Optional.
3040                #
3041                # Frequency of the specified amount.
3042                #
3043                # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
3044          },
3045        ],
3046      },
3047      "department": "A String", # Optional.
3048          #
3049          # The department or functional area within the company with the open
3050          # position.
3051          #
3052          # The maximum number of allowed characters is 255.
3053      "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
3054      "requisitionId": "A String", # Required.
3055          #
3056          # The requisition ID, also referred to as the posting ID, assigned by the
3057          # client to identify a job. This field is intended to be used by clients
3058          # for client identification and tracking of postings. A job is not allowed
3059          # to be created if there is another job with the same [company_name],
3060          # language_code and requisition_id.
3061          #
3062          # The maximum number of allowed characters is 255.
3063      "postingPublishTime": "A String", # Optional.
3064          #
3065          # The timestamp this job posting was most recently published. The default
3066          # value is the time the request arrives at the server. Invalid timestamps are
3067          # ignored.
3068      "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
3069          #
3070          # Job application information.
3071        "instruction": "A String", # Optional but at least one of uris,
3072            # emails or instruction must be
3073            # specified.
3074            #
3075            # Use this field to provide instructions, such as "Mail your application
3076            # to ...", that a candidate can follow to apply for the job.
3077            #
3078            # This field accepts and sanitizes HTML input, and also accepts
3079            # bold, italic, ordered list, and unordered list markup tags.
3080            #
3081            # The maximum number of allowed characters is 3,000.
3082        "uris": [ # Optional but at least one of uris,
3083            # emails or instruction must be
3084            # specified.
3085            #
3086            # Use this URI field to direct an applicant to a website, for example to
3087            # link to an online application form.
3088            #
3089            # The maximum number of allowed characters for each entry is 2,000.
3090          "A String",
3091        ],
3092        "emails": [ # Optional but at least one of uris,
3093            # emails or instruction must be
3094            # specified.
3095            #
3096            # Use this field to specify email address(es) to which resumes or
3097            # applications can be sent.
3098            #
3099            # The maximum number of allowed characters for each entry is 255.
3100          "A String",
3101        ],
3102      },
3103      "companyName": "A String", # Required.
3104          #
3105          # The resource name of the company listing the job, such as
3106          # "projects/api-test-project/companies/foo".
3107      "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
3108          #
3109          # Derived details about the job posting.
3110        "jobCategories": [ # Job categories derived from Job.title and Job.description.
3111          "A String",
3112        ],
3113        "locations": [ # Structured locations of the job, resolved from Job.addresses.
3114            #
3115            # locations are exactly matched to Job.addresses in the same
3116            # order.
3117          { # Output only.
3118              #
3119              # A resource that represents a location with full geographic information.
3120            "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
3121                # location bounding box in which a circle with the specified radius
3122                # centered from LatLng covers the area associated with the job location.
3123                # For example, currently, "Mountain View, CA, USA" has a radius of
3124                # 6.17 miles.
3125            "locationType": "A String", # The type of a location, which corresponds to the address lines field of
3126                # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
3127                # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
3128                # LocationType#LOCALITY.
3129            "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
3130                # of doubles representing degrees latitude and degrees longitude. Unless
3131                # specified otherwise, this must conform to the
3132                # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
3133                # standard</a>. Values must be within normalized ranges.
3134              "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
3135              "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
3136            },
3137            "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
3138                # such as postal delivery and payments addresses. Given a postal address,
3139                # a postal service can deliver items to a premises, P.O. Box, or other
3140                # delivery location.
3141                # Given a postal address, a postal service can deliver items to a premise, P.O.
3142                # Box or similar.
3143                # It is not intended to model geographical locations (roads, towns,
3144                # mountains).
3145                #
3146                # In typical usage an address would be created via user input or from importing
3147                # existing data, depending on the type of process.
3148                #
3149                # Advice on address input / editing:
3150                #  - Use an i18n-ready address widget such as
3151                #    https://github.com/googlei18n/libaddressinput)
3152                # - Users should not be presented with UI elements for input or editing of
3153                #   fields outside countries where that field is used.
3154                #
3155                # For more guidance on how to use this schema, please see:
3156                # https://support.google.com/business/answer/6397478
3157              "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
3158                  # known). This is often the UI language of the input form or is expected
3159                  # to match one of the languages used in the address' country/region, or their
3160                  # transliterated equivalents.
3161                  # This can affect formatting in certain countries, but is not critical
3162                  # to the correctness of the data and will never affect any validation or
3163                  # other non-formatting related operations.
3164                  #
3165                  # If this value is not known, it should be omitted (rather than specifying a
3166                  # possibly incorrect default).
3167                  #
3168                  # Examples: "zh-Hant", "ja", "ja-Latn", "en".
3169              "recipients": [ # Optional. The recipient at the address.
3170                  # This field may, under certain circumstances, contain multiline information.
3171                  # For example, it might contain "care of" information.
3172                "A String",
3173              ],
3174              "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
3175                  # Examples: US city, IT comune, UK post town.
3176                  # In regions of the world where localities are not well defined or do not fit
3177                  # into this structure well, leave locality empty and use address_lines.
3178              "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
3179                  # in most regions. Where it is used, the value is either a string like
3180                  # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
3181                  # alone, representing the "sector code" (Jamaica), "delivery area indicator"
3182                  # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
3183              "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
3184                  # is never inferred and it is up to the user to ensure the value is
3185                  # correct. See http://cldr.unicode.org/ and
3186                  # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
3187                  # for details. Example: "CH" for Switzerland.
3188              "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
3189                  # addresses of a country or region.
3190                  # For example, this can be a state, a province, an oblast, or a prefecture.
3191                  # Specifically, for Spain this is the province and not the autonomous
3192                  # community (e.g. "Barcelona" and not "Catalonia").
3193                  # Many countries don't use an administrative area in postal addresses. E.g.
3194                  # in Switzerland this should be left unpopulated.
3195              "addressLines": [ # Unstructured address lines describing the lower levels of an address.
3196                  #
3197                  # Because values in address_lines do not have type information and may
3198                  # sometimes contain multiple values in a single field (e.g.
3199                  # "Austin, TX"), it is important that the line order is clear. The order of
3200                  # address lines should be "envelope order" for the country/region of the
3201                  # address. In places where this can vary (e.g. Japan), address_language is
3202                  # used to make it explicit (e.g. "ja" for large-to-small ordering and
3203                  # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
3204                  # an address can be selected based on the language.
3205                  #
3206                  # The minimum permitted structural representation of an address consists
3207                  # of a region_code with all remaining information placed in the
3208                  # address_lines. It would be possible to format such an address very
3209                  # approximately without geocoding, but no semantic reasoning could be
3210                  # made about any of the address components until it was at least
3211                  # partially resolved.
3212                  #
3213                  # Creating an address only containing a region_code and address_lines, and
3214                  # then geocoding is the recommended way to handle completely unstructured
3215                  # addresses (as opposed to guessing which parts of the address should be
3216                  # localities or administrative areas).
3217                "A String",
3218              ],
3219              "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
3220                  # postal codes to be present, but where they are used, they may trigger
3221                  # additional validation with other parts of the address (e.g. state/zip
3222                  # validation in the U.S.A.).
3223              "organization": "A String", # Optional. The name of the organization at the address.
3224              "sublocality": "A String", # Optional. Sublocality of the address.
3225                  # For example, this can be neighborhoods, boroughs, districts.
3226              "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
3227                  # the latest revision.
3228                  #
3229                  # All new revisions **must** be backward compatible with old revisions.
3230            },
3231          },
3232        ],
3233      },
3234      "qualifications": "A String", # Optional.
3235          #
3236          # A description of the qualifications required to perform the
3237          # job. The use of this field is recommended
3238          # as an alternative to using the more general description field.
3239          #
3240          # This field accepts and sanitizes HTML input, and also accepts
3241          # bold, italic, ordered list, and unordered list markup tags.
3242          #
3243          # The maximum number of allowed characters is 10,000.
3244      "jobBenefits": [ # Optional.
3245          #
3246          # The benefits included with the job.
3247        "A String",
3248      ],
3249      "incentives": "A String", # Optional.
3250          #
3251          # A description of bonus, commission, and other compensation
3252          # incentives associated with the job not including salary or pay.
3253          #
3254          # The maximum number of allowed characters is 10,000.
3255      "visibility": "A String", # Optional.
3256          #
3257          # The visibility of the job.
3258          #
3259          # Defaults to Visibility.ACCOUNT_ONLY if not specified.
3260      "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
3261      "postingRegion": "A String", # Optional.
3262          #
3263          # The job PostingRegion (for example, state, country) throughout which
3264          # the job is available. If this field is set, a
3265          # LocationFilter in a search query within the job region
3266          # finds this job posting if an exact location match isn't specified.
3267          # If this field is set to PostingRegion.NATION or
3268          # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
3269          # to the same location level as this field is strongly recommended.
3270      "name": "A String", # Required during job update.
3271          #
3272          # The resource name for the job. This is generated by the service when a
3273          # job is created.
3274          #
3275          # The format is "projects/{project_id}/jobs/{job_id}",
3276          # for example, "projects/api-test-project/jobs/1234".
3277          #
3278          # Use of this field in job queries and API calls is preferred over the use of
3279          # requisition_id since this value is unique.
3280      "processingOptions": { # Input only. # Optional.
3281          #
3282          # Options for job processing.
3283          #
3284          # Options for job processing.
3285        "htmlSanitization": "A String", # Optional.
3286            #
3287            # Option for job HTML content sanitization. Applied fields are:
3288            #
3289            # * description
3290            # * applicationInfo.instruction
3291            # * incentives
3292            # * qualifications
3293            # * responsibilities
3294            #
3295            # HTML tags in these fields may be stripped if sanitiazation is not
3296            # disabled.
3297            #
3298            # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
3299        "disableStreetAddressResolution": True or False, # Optional.
3300            #
3301            # If set to `true`, the service does not attempt to resolve a
3302            # more precise address for the job.
3303      },
3304      "degreeTypes": [ # Optional.
3305          #
3306          # The desired education degrees for the job, such as Bachelors, Masters.
3307        "A String",
3308      ],
3309      "customAttributes": { # Optional.
3310          #
3311          # A map of fields to hold both filterable and non-filterable custom job
3312          # attributes that are not covered by the provided structured fields.
3313          #
3314          # The keys of the map are strings up to 64 bytes and must match the
3315          # pattern: a-zA-Z*. For example, key0LikeThis or
3316          # KEY_1_LIKE_THIS.
3317          #
3318          # At most 100 filterable and at most 100 unfilterable keys are supported.
3319          # For filterable `string_values`, across all keys at most 200 values are
3320          # allowed, with each string no more than 255 characters. For unfilterable
3321          # `string_values`, the maximum total size of `string_values` across all keys
3322          # is 50KB.
3323        "a_key": { # Custom attribute values that are either filterable or non-filterable.
3324          "filterable": True or False, # Optional.
3325              #
3326              # If the `filterable` flag is true, custom field values are searchable.
3327              # If false, values are not searchable.
3328              #
3329              # Default is false.
3330          "stringValues": [ # Optional but exactly one of string_values or long_values must
3331              # be specified.
3332              #
3333              # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
3334              # `CASE_INSENSITIVE_MATCH`) search.
3335              # For filterable `string_value`s, a maximum total number of 200 values
3336              # is allowed, with each `string_value` has a byte size of no more than
3337              # 255B. For unfilterable `string_values`, the maximum total byte size of
3338              # unfilterable `string_values` is 50KB.
3339              #
3340              # Empty string is not allowed.
3341            "A String",
3342          ],
3343          "longValues": [ # Optional but exactly one of string_values or long_values must
3344              # be specified.
3345              #
3346              # This field is used to perform number range search.
3347              # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
3348              #
3349              # Currently at most 1 long_values is supported.
3350            "A String",
3351          ],
3352        },
3353      },
3354      "jobLevel": "A String", # Optional.
3355          #
3356          # The experience level associated with the job, such as "Entry Level".
3357    },
3358    "updateMask": "A String", # Optional but strongly recommended to be provided for the best service
3359        # experience.
3360        #
3361        # If update_mask is provided, only the specified fields in
3362        # job are updated. Otherwise all the fields are updated.
3363        #
3364        # A field mask to restrict the fields that are updated. Only
3365        # top level fields of Job are supported.
3366  }
3367
3368  x__xgafv: string, V1 error format.
3369    Allowed values
3370      1 - v1 error format
3371      2 - v2 error format
3372
3373Returns:
3374  An object of the form:
3375
3376    { # A Job resource represents a job posting (also referred to as a "job listing"
3377      # or "job requisition"). A job belongs to a Company, which is the hiring
3378      # entity responsible for the job.
3379    "languageCode": "A String", # Optional.
3380        #
3381        # The language of the posting. This field is distinct from
3382        # any requirements for fluency that are associated with the job.
3383        #
3384        # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
3385        # For more information, see
3386        # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
3387        # class="external" target="_blank" }.
3388        #
3389        # If this field is unspecified and Job.description is present, detected
3390        # language code based on Job.description is assigned, otherwise
3391        # defaults to 'en_US'.
3392    "addresses": [ # Optional but strongly recommended for the best service experience.
3393        #
3394        # Location(s) where the employer is looking to hire for this job posting.
3395        #
3396        # Specifying the full street address(es) of the hiring location enables
3397        # better API results, especially job searches by commute time.
3398        #
3399        # At most 50 locations are allowed for best search performance. If a job has
3400        # more locations, it is suggested to split it into multiple jobs with unique
3401        # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
3402        # multiple jobs with the same company_name, language_code and
3403        # requisition_id are not allowed. If the original requisition_id must
3404        # be preserved, a custom field should be used for storage. It is also
3405        # suggested to group the locations that close to each other in the same job
3406        # for better search experience.
3407        #
3408        # The maximum number of allowed characters is 500.
3409      "A String",
3410    ],
3411    "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
3412    "promotionValue": 42, # Optional.
3413        #
3414        # A promotion value of the job, as determined by the client.
3415        # The value determines the sort order of the jobs returned when searching for
3416        # jobs using the featured jobs search call, with higher promotional values
3417        # being returned first and ties being resolved by relevance sort. Only the
3418        # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
3419        #
3420        # Default value is 0, and negative values are treated as 0.
3421    "employmentTypes": [ # Optional.
3422        #
3423        # The employment type(s) of a job, for example,
3424        # full time or
3425        # part time.
3426      "A String",
3427    ],
3428    "jobEndTime": "A String", # Optional.
3429        #
3430        # The end timestamp of the job. Typically this field is used for contracting
3431        # engagements. Invalid timestamps are ignored.
3432    "description": "A String", # Required.
3433        #
3434        # The description of the job, which typically includes a multi-paragraph
3435        # description of the company and related information. Separate fields are
3436        # provided on the job object for responsibilities,
3437        # qualifications, and other job characteristics. Use of
3438        # these separate job fields is recommended.
3439        #
3440        # This field accepts and sanitizes HTML input, and also accepts
3441        # bold, italic, ordered list, and unordered list markup tags.
3442        #
3443        # The maximum number of allowed characters is 100,000.
3444    "postingExpireTime": "A String", # Optional but strongly recommended for the best service
3445        # experience.
3446        #
3447        # The expiration timestamp of the job. After this timestamp, the
3448        # job is marked as expired, and it no longer appears in search results. The
3449        # expired job can't be deleted or listed by the DeleteJob and
3450        # ListJobs APIs, but it can be retrieved with the GetJob API or
3451        # updated with the UpdateJob API. An expired job can be updated and
3452        # opened again by using a future expiration timestamp. Updating an expired
3453        # job fails if there is another existing open job with same company_name,
3454        # language_code and requisition_id.
3455        #
3456        # The expired jobs are retained in our system for 90 days. However, the
3457        # overall expired job count cannot exceed 3 times the maximum of open jobs
3458        # count over the past week, otherwise jobs with earlier expire time are
3459        # cleaned first. Expired jobs are no longer accessible after they are cleaned
3460        # out.
3461        #
3462        # Invalid timestamps are ignored, and treated as expire time not provided.
3463        #
3464        # Timestamp before the instant request is made is considered valid, the job
3465        # will be treated as expired immediately.
3466        #
3467        # If this value is not provided at the time of job creation or is invalid,
3468        # the job posting expires after 30 days from the job's creation time. For
3469        # example, if the job was created on 2017/01/01 13:00AM UTC with an
3470        # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
3471        #
3472        # If this value is not provided on job update, it depends on the field masks
3473        # set by UpdateJobRequest.update_mask. If the field masks include
3474        # expiry_time, or the masks are empty meaning that every field is
3475        # updated, the job posting expires after 30 days from the job's last
3476        # update time. Otherwise the expiration date isn't updated.
3477    "title": "A String", # Required.
3478        #
3479        # The title of the job, such as "Software Engineer"
3480        #
3481        # The maximum number of allowed characters is 500.
3482    "responsibilities": "A String", # Optional.
3483        #
3484        # A description of job responsibilities. The use of this field is
3485        # recommended as an alternative to using the more general description
3486        # field.
3487        #
3488        # This field accepts and sanitizes HTML input, and also accepts
3489        # bold, italic, ordered list, and unordered list markup tags.
3490        #
3491        # The maximum number of allowed characters is 10,000.
3492    "jobStartTime": "A String", # Optional.
3493        #
3494        # The start timestamp of the job in UTC time zone. Typically this field
3495        # is used for contracting engagements. Invalid timestamps are ignored.
3496    "compensationInfo": { # Job compensation details. # Optional.
3497        #
3498        # Job compensation information.
3499      "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
3500          # all compensation entries' CompensationEntry.compensation times
3501          # CompensationEntry.expected_units_per_year.
3502          #
3503          # See CompensationEntry for explanation on compensation annualization.
3504        "minCompensation": { # Represents an amount of money with its currency type. # Optional.
3505            #
3506            # The minimum amount of compensation. If left empty, the value is set
3507            # to zero and the currency code is set to match the
3508            # currency code of max_compensation.
3509          "nanos": 42, # Number of nano (10^-9) units of the amount.
3510              # The value must be between -999,999,999 and +999,999,999 inclusive.
3511              # If `units` is positive, `nanos` must be positive or zero.
3512              # If `units` is zero, `nanos` can be positive, zero, or negative.
3513              # If `units` is negative, `nanos` must be negative or zero.
3514              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3515          "units": "A String", # The whole units of the amount.
3516              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3517          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3518        },
3519        "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
3520            #
3521            # The maximum amount of compensation. If left empty, the value is set
3522            # to a maximal compensation value and the currency code is set to
3523            # match the currency code of
3524            # min_compensation.
3525          "nanos": 42, # Number of nano (10^-9) units of the amount.
3526              # The value must be between -999,999,999 and +999,999,999 inclusive.
3527              # If `units` is positive, `nanos` must be positive or zero.
3528              # If `units` is zero, `nanos` can be positive, zero, or negative.
3529              # If `units` is negative, `nanos` must be negative or zero.
3530              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3531          "units": "A String", # The whole units of the amount.
3532              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3533          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3534        },
3535      },
3536      "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
3537          # base compensation entry's CompensationEntry.compensation times
3538          # CompensationEntry.expected_units_per_year.
3539          #
3540          # See CompensationEntry for explanation on compensation annualization.
3541        "minCompensation": { # Represents an amount of money with its currency type. # Optional.
3542            #
3543            # The minimum amount of compensation. If left empty, the value is set
3544            # to zero and the currency code is set to match the
3545            # currency code of max_compensation.
3546          "nanos": 42, # Number of nano (10^-9) units of the amount.
3547              # The value must be between -999,999,999 and +999,999,999 inclusive.
3548              # If `units` is positive, `nanos` must be positive or zero.
3549              # If `units` is zero, `nanos` can be positive, zero, or negative.
3550              # If `units` is negative, `nanos` must be negative or zero.
3551              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3552          "units": "A String", # The whole units of the amount.
3553              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3554          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3555        },
3556        "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
3557            #
3558            # The maximum amount of compensation. If left empty, the value is set
3559            # to a maximal compensation value and the currency code is set to
3560            # match the currency code of
3561            # min_compensation.
3562          "nanos": 42, # Number of nano (10^-9) units of the amount.
3563              # The value must be between -999,999,999 and +999,999,999 inclusive.
3564              # If `units` is positive, `nanos` must be positive or zero.
3565              # If `units` is zero, `nanos` can be positive, zero, or negative.
3566              # If `units` is negative, `nanos` must be negative or zero.
3567              # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3568          "units": "A String", # The whole units of the amount.
3569              # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3570          "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3571        },
3572      },
3573      "entries": [ # Optional.
3574          #
3575          # Job compensation information.
3576          #
3577          # At most one entry can be of type
3578          # CompensationInfo.CompensationType.BASE, which is
3579          # referred as ** base compensation entry ** for the job.
3580        { # A compensation entry that represents one component of compensation, such
3581            # as base pay, bonus, or other compensation type.
3582            #
3583            # Annualization: One compensation entry can be annualized if
3584            # - it contains valid amount or range.
3585            # - and its expected_units_per_year is set or can be derived.
3586            # Its annualized range is determined as (amount or range) times
3587            # expected_units_per_year.
3588          "description": "A String", # Optional.
3589              #
3590              # Compensation description.  For example, could
3591              # indicate equity terms or provide additional context to an estimated
3592              # bonus.
3593          "amount": { # Represents an amount of money with its currency type. # Optional.
3594              #
3595              # Compensation amount.
3596            "nanos": 42, # Number of nano (10^-9) units of the amount.
3597                # The value must be between -999,999,999 and +999,999,999 inclusive.
3598                # If `units` is positive, `nanos` must be positive or zero.
3599                # If `units` is zero, `nanos` can be positive, zero, or negative.
3600                # If `units` is negative, `nanos` must be negative or zero.
3601                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3602            "units": "A String", # The whole units of the amount.
3603                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3604            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3605          },
3606          "expectedUnitsPerYear": 3.14, # Optional.
3607              #
3608              # Expected number of units paid each year. If not specified, when
3609              # Job.employment_types is FULLTIME, a default value is inferred
3610              # based on unit. Default values:
3611              # - HOURLY: 2080
3612              # - DAILY: 260
3613              # - WEEKLY: 52
3614              # - MONTHLY: 12
3615              # - ANNUAL: 1
3616          "range": { # Compensation range. # Optional.
3617              #
3618              # Compensation range.
3619            "minCompensation": { # Represents an amount of money with its currency type. # Optional.
3620                #
3621                # The minimum amount of compensation. If left empty, the value is set
3622                # to zero and the currency code is set to match the
3623                # currency code of max_compensation.
3624              "nanos": 42, # Number of nano (10^-9) units of the amount.
3625                  # The value must be between -999,999,999 and +999,999,999 inclusive.
3626                  # If `units` is positive, `nanos` must be positive or zero.
3627                  # If `units` is zero, `nanos` can be positive, zero, or negative.
3628                  # If `units` is negative, `nanos` must be negative or zero.
3629                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3630              "units": "A String", # The whole units of the amount.
3631                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3632              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3633            },
3634            "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
3635                #
3636                # The maximum amount of compensation. If left empty, the value is set
3637                # to a maximal compensation value and the currency code is set to
3638                # match the currency code of
3639                # min_compensation.
3640              "nanos": 42, # Number of nano (10^-9) units of the amount.
3641                  # The value must be between -999,999,999 and +999,999,999 inclusive.
3642                  # If `units` is positive, `nanos` must be positive or zero.
3643                  # If `units` is zero, `nanos` can be positive, zero, or negative.
3644                  # If `units` is negative, `nanos` must be negative or zero.
3645                  # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
3646              "units": "A String", # The whole units of the amount.
3647                  # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
3648              "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
3649            },
3650          },
3651          "type": "A String", # Optional.
3652              #
3653              # Compensation type.
3654              #
3655              # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
3656          "unit": "A String", # Optional.
3657              #
3658              # Frequency of the specified amount.
3659              #
3660              # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
3661        },
3662      ],
3663    },
3664    "department": "A String", # Optional.
3665        #
3666        # The department or functional area within the company with the open
3667        # position.
3668        #
3669        # The maximum number of allowed characters is 255.
3670    "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
3671    "requisitionId": "A String", # Required.
3672        #
3673        # The requisition ID, also referred to as the posting ID, assigned by the
3674        # client to identify a job. This field is intended to be used by clients
3675        # for client identification and tracking of postings. A job is not allowed
3676        # to be created if there is another job with the same [company_name],
3677        # language_code and requisition_id.
3678        #
3679        # The maximum number of allowed characters is 255.
3680    "postingPublishTime": "A String", # Optional.
3681        #
3682        # The timestamp this job posting was most recently published. The default
3683        # value is the time the request arrives at the server. Invalid timestamps are
3684        # ignored.
3685    "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
3686        #
3687        # Job application information.
3688      "instruction": "A String", # Optional but at least one of uris,
3689          # emails or instruction must be
3690          # specified.
3691          #
3692          # Use this field to provide instructions, such as "Mail your application
3693          # to ...", that a candidate can follow to apply for the job.
3694          #
3695          # This field accepts and sanitizes HTML input, and also accepts
3696          # bold, italic, ordered list, and unordered list markup tags.
3697          #
3698          # The maximum number of allowed characters is 3,000.
3699      "uris": [ # Optional but at least one of uris,
3700          # emails or instruction must be
3701          # specified.
3702          #
3703          # Use this URI field to direct an applicant to a website, for example to
3704          # link to an online application form.
3705          #
3706          # The maximum number of allowed characters for each entry is 2,000.
3707        "A String",
3708      ],
3709      "emails": [ # Optional but at least one of uris,
3710          # emails or instruction must be
3711          # specified.
3712          #
3713          # Use this field to specify email address(es) to which resumes or
3714          # applications can be sent.
3715          #
3716          # The maximum number of allowed characters for each entry is 255.
3717        "A String",
3718      ],
3719    },
3720    "companyName": "A String", # Required.
3721        #
3722        # The resource name of the company listing the job, such as
3723        # "projects/api-test-project/companies/foo".
3724    "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
3725        #
3726        # Derived details about the job posting.
3727      "jobCategories": [ # Job categories derived from Job.title and Job.description.
3728        "A String",
3729      ],
3730      "locations": [ # Structured locations of the job, resolved from Job.addresses.
3731          #
3732          # locations are exactly matched to Job.addresses in the same
3733          # order.
3734        { # Output only.
3735            #
3736            # A resource that represents a location with full geographic information.
3737          "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
3738              # location bounding box in which a circle with the specified radius
3739              # centered from LatLng covers the area associated with the job location.
3740              # For example, currently, "Mountain View, CA, USA" has a radius of
3741              # 6.17 miles.
3742          "locationType": "A String", # The type of a location, which corresponds to the address lines field of
3743              # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
3744              # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
3745              # LocationType#LOCALITY.
3746          "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
3747              # of doubles representing degrees latitude and degrees longitude. Unless
3748              # specified otherwise, this must conform to the
3749              # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
3750              # standard</a>. Values must be within normalized ranges.
3751            "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
3752            "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
3753          },
3754          "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
3755              # such as postal delivery and payments addresses. Given a postal address,
3756              # a postal service can deliver items to a premises, P.O. Box, or other
3757              # delivery location.
3758              # Given a postal address, a postal service can deliver items to a premise, P.O.
3759              # Box or similar.
3760              # It is not intended to model geographical locations (roads, towns,
3761              # mountains).
3762              #
3763              # In typical usage an address would be created via user input or from importing
3764              # existing data, depending on the type of process.
3765              #
3766              # Advice on address input / editing:
3767              #  - Use an i18n-ready address widget such as
3768              #    https://github.com/googlei18n/libaddressinput)
3769              # - Users should not be presented with UI elements for input or editing of
3770              #   fields outside countries where that field is used.
3771              #
3772              # For more guidance on how to use this schema, please see:
3773              # https://support.google.com/business/answer/6397478
3774            "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
3775                # known). This is often the UI language of the input form or is expected
3776                # to match one of the languages used in the address' country/region, or their
3777                # transliterated equivalents.
3778                # This can affect formatting in certain countries, but is not critical
3779                # to the correctness of the data and will never affect any validation or
3780                # other non-formatting related operations.
3781                #
3782                # If this value is not known, it should be omitted (rather than specifying a
3783                # possibly incorrect default).
3784                #
3785                # Examples: "zh-Hant", "ja", "ja-Latn", "en".
3786            "recipients": [ # Optional. The recipient at the address.
3787                # This field may, under certain circumstances, contain multiline information.
3788                # For example, it might contain "care of" information.
3789              "A String",
3790            ],
3791            "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
3792                # Examples: US city, IT comune, UK post town.
3793                # In regions of the world where localities are not well defined or do not fit
3794                # into this structure well, leave locality empty and use address_lines.
3795            "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
3796                # in most regions. Where it is used, the value is either a string like
3797                # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
3798                # alone, representing the "sector code" (Jamaica), "delivery area indicator"
3799                # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
3800            "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
3801                # is never inferred and it is up to the user to ensure the value is
3802                # correct. See http://cldr.unicode.org/ and
3803                # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
3804                # for details. Example: "CH" for Switzerland.
3805            "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
3806                # addresses of a country or region.
3807                # For example, this can be a state, a province, an oblast, or a prefecture.
3808                # Specifically, for Spain this is the province and not the autonomous
3809                # community (e.g. "Barcelona" and not "Catalonia").
3810                # Many countries don't use an administrative area in postal addresses. E.g.
3811                # in Switzerland this should be left unpopulated.
3812            "addressLines": [ # Unstructured address lines describing the lower levels of an address.
3813                #
3814                # Because values in address_lines do not have type information and may
3815                # sometimes contain multiple values in a single field (e.g.
3816                # "Austin, TX"), it is important that the line order is clear. The order of
3817                # address lines should be "envelope order" for the country/region of the
3818                # address. In places where this can vary (e.g. Japan), address_language is
3819                # used to make it explicit (e.g. "ja" for large-to-small ordering and
3820                # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
3821                # an address can be selected based on the language.
3822                #
3823                # The minimum permitted structural representation of an address consists
3824                # of a region_code with all remaining information placed in the
3825                # address_lines. It would be possible to format such an address very
3826                # approximately without geocoding, but no semantic reasoning could be
3827                # made about any of the address components until it was at least
3828                # partially resolved.
3829                #
3830                # Creating an address only containing a region_code and address_lines, and
3831                # then geocoding is the recommended way to handle completely unstructured
3832                # addresses (as opposed to guessing which parts of the address should be
3833                # localities or administrative areas).
3834              "A String",
3835            ],
3836            "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
3837                # postal codes to be present, but where they are used, they may trigger
3838                # additional validation with other parts of the address (e.g. state/zip
3839                # validation in the U.S.A.).
3840            "organization": "A String", # Optional. The name of the organization at the address.
3841            "sublocality": "A String", # Optional. Sublocality of the address.
3842                # For example, this can be neighborhoods, boroughs, districts.
3843            "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
3844                # the latest revision.
3845                #
3846                # All new revisions **must** be backward compatible with old revisions.
3847          },
3848        },
3849      ],
3850    },
3851    "qualifications": "A String", # Optional.
3852        #
3853        # A description of the qualifications required to perform the
3854        # job. The use of this field is recommended
3855        # as an alternative to using the more general description field.
3856        #
3857        # This field accepts and sanitizes HTML input, and also accepts
3858        # bold, italic, ordered list, and unordered list markup tags.
3859        #
3860        # The maximum number of allowed characters is 10,000.
3861    "jobBenefits": [ # Optional.
3862        #
3863        # The benefits included with the job.
3864      "A String",
3865    ],
3866    "incentives": "A String", # Optional.
3867        #
3868        # A description of bonus, commission, and other compensation
3869        # incentives associated with the job not including salary or pay.
3870        #
3871        # The maximum number of allowed characters is 10,000.
3872    "visibility": "A String", # Optional.
3873        #
3874        # The visibility of the job.
3875        #
3876        # Defaults to Visibility.ACCOUNT_ONLY if not specified.
3877    "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
3878    "postingRegion": "A String", # Optional.
3879        #
3880        # The job PostingRegion (for example, state, country) throughout which
3881        # the job is available. If this field is set, a
3882        # LocationFilter in a search query within the job region
3883        # finds this job posting if an exact location match isn't specified.
3884        # If this field is set to PostingRegion.NATION or
3885        # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
3886        # to the same location level as this field is strongly recommended.
3887    "name": "A String", # Required during job update.
3888        #
3889        # The resource name for the job. This is generated by the service when a
3890        # job is created.
3891        #
3892        # The format is "projects/{project_id}/jobs/{job_id}",
3893        # for example, "projects/api-test-project/jobs/1234".
3894        #
3895        # Use of this field in job queries and API calls is preferred over the use of
3896        # requisition_id since this value is unique.
3897    "processingOptions": { # Input only. # Optional.
3898        #
3899        # Options for job processing.
3900        #
3901        # Options for job processing.
3902      "htmlSanitization": "A String", # Optional.
3903          #
3904          # Option for job HTML content sanitization. Applied fields are:
3905          #
3906          # * description
3907          # * applicationInfo.instruction
3908          # * incentives
3909          # * qualifications
3910          # * responsibilities
3911          #
3912          # HTML tags in these fields may be stripped if sanitiazation is not
3913          # disabled.
3914          #
3915          # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
3916      "disableStreetAddressResolution": True or False, # Optional.
3917          #
3918          # If set to `true`, the service does not attempt to resolve a
3919          # more precise address for the job.
3920    },
3921    "degreeTypes": [ # Optional.
3922        #
3923        # The desired education degrees for the job, such as Bachelors, Masters.
3924      "A String",
3925    ],
3926    "customAttributes": { # Optional.
3927        #
3928        # A map of fields to hold both filterable and non-filterable custom job
3929        # attributes that are not covered by the provided structured fields.
3930        #
3931        # The keys of the map are strings up to 64 bytes and must match the
3932        # pattern: a-zA-Z*. For example, key0LikeThis or
3933        # KEY_1_LIKE_THIS.
3934        #
3935        # At most 100 filterable and at most 100 unfilterable keys are supported.
3936        # For filterable `string_values`, across all keys at most 200 values are
3937        # allowed, with each string no more than 255 characters. For unfilterable
3938        # `string_values`, the maximum total size of `string_values` across all keys
3939        # is 50KB.
3940      "a_key": { # Custom attribute values that are either filterable or non-filterable.
3941        "filterable": True or False, # Optional.
3942            #
3943            # If the `filterable` flag is true, custom field values are searchable.
3944            # If false, values are not searchable.
3945            #
3946            # Default is false.
3947        "stringValues": [ # Optional but exactly one of string_values or long_values must
3948            # be specified.
3949            #
3950            # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
3951            # `CASE_INSENSITIVE_MATCH`) search.
3952            # For filterable `string_value`s, a maximum total number of 200 values
3953            # is allowed, with each `string_value` has a byte size of no more than
3954            # 255B. For unfilterable `string_values`, the maximum total byte size of
3955            # unfilterable `string_values` is 50KB.
3956            #
3957            # Empty string is not allowed.
3958          "A String",
3959        ],
3960        "longValues": [ # Optional but exactly one of string_values or long_values must
3961            # be specified.
3962            #
3963            # This field is used to perform number range search.
3964            # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
3965            #
3966            # Currently at most 1 long_values is supported.
3967          "A String",
3968        ],
3969      },
3970    },
3971    "jobLevel": "A String", # Optional.
3972        #
3973        # The experience level associated with the job, such as "Entry Level".
3974  }</pre>
3975</div>
3976
3977<div class="method">
3978    <code class="details" id="search">search(parent, body, x__xgafv=None)</code>
3979  <pre>Searches for jobs using the provided SearchJobsRequest.
3980
3981This call constrains the visibility of jobs
3982present in the database, and only returns jobs that the caller has
3983permission to search against.
3984
3985Args:
3986  parent: string, Required.
3987
3988The resource name of the project to search within.
3989
3990The format is "projects/{project_id}", for example,
3991"projects/api-test-project". (required)
3992  body: object, The request body. (required)
3993    The object takes the form of:
3994
3995{ # Input only.
3996      #
3997      # The Request body of the `SearchJobs` call.
3998    "orderBy": "A String", # Optional.
3999        #
4000        # The criteria determining how search results are sorted. Default is
4001        # "relevance desc".
4002        #
4003        # Supported options are:
4004        #
4005        # * "relevance desc": By relevance descending, as determined by the API
4006        # algorithms. Relevance thresholding of query results is only available
4007        # with this ordering.
4008        # * "posting`_`publish`_`time desc": By Job.posting_publish_time
4009        # descending.
4010        # * "posting`_`update`_`time desc": By Job.posting_update_time
4011        # descending.
4012        # * "title": By Job.title ascending.
4013        # * "title desc": By Job.title descending.
4014        # * "annualized`_`base`_`compensation": By job's
4015        # CompensationInfo.annualized_base_compensation_range ascending. Jobs
4016        # whose annualized base compensation is unspecified are put at the end of
4017        # search results.
4018        # * "annualized`_`base`_`compensation desc": By job's
4019        # CompensationInfo.annualized_base_compensation_range descending. Jobs
4020        # whose annualized base compensation is unspecified are put at the end of
4021        # search results.
4022        # * "annualized`_`total`_`compensation": By job's
4023        # CompensationInfo.annualized_total_compensation_range ascending. Jobs
4024        # whose annualized base compensation is unspecified are put at the end of
4025        # search results.
4026        # * "annualized`_`total`_`compensation desc": By job's
4027        # CompensationInfo.annualized_total_compensation_range descending. Jobs
4028        # whose annualized base compensation is unspecified are put at the end of
4029        # search results.
4030        # * "custom`_`ranking desc": By the relevance score adjusted to the
4031        # SearchJobsRequest.custom_ranking_info.ranking_expression with weight
4032        # factor assigned by
4033        # SearchJobsRequest.custom_ranking_info.importance_level in descending
4034        # order.
4035        # * "location`_`distance": By the distance between the location on jobs and
4036        #  locations specified in the
4037        # SearchJobsRequest.job_query.location_filters.
4038        # When this order is selected, the
4039        # SearchJobsRequest.job_query.location_filters must not be empty. When
4040        # a job has multiple locations, the location closest to one of the locations
4041        # specified in the location filter will be used to calculate location
4042        # distance. Distance is calculated by the distance between two lat/long
4043        # coordinates, with a precision of 10e-4 degrees (11.3 meters).
4044        # Jobs that don't have locations specified will be ranked below jobs having
4045        # locations.
4046        # Diversification strategy is still applied unless explicitly disabled in
4047        # SearchJobsRequest.diversification_level.
4048    "histogramFacets": { # Input only. # Optional.
4049        #
4050        # Histogram requests for jobs matching JobQuery.
4051        #
4052        # Histogram facets to be specified in SearchJobsRequest.
4053      "simpleHistogramFacets": [ # Optional.
4054          #
4055          # Specifies the simple type of histogram facets, for example,
4056          # `COMPANY_SIZE`, `EMPLOYMENT_TYPE` etc.
4057        "A String",
4058      ],
4059      "customAttributeHistogramFacets": [ # Optional.
4060          #
4061          # Specifies the custom attributes histogram requests.
4062          # Duplicate values of CustomAttributeHistogramRequest.key are not
4063          # allowed.
4064        { # Custom attributes histogram request. An error is thrown if neither
4065            # string_value_histogram or long_value_histogram_bucketing_option has
4066            # been defined.
4067          "stringValueHistogram": True or False, # Optional. If set to true, the response includes the histogram value for
4068              # each key as a string.
4069          "longValueHistogramBucketingOption": { # Input only. # Optional.
4070              #
4071              # Specifies buckets used to perform a range histogram on Job's
4072              # filterable long custom field values, or min/max value requirements.
4073              #
4074              # Use this field to specify bucketing option for the histogram search response.
4075            "bucketBounds": [ # Required.
4076                #
4077                # Two adjacent values form a histogram bucket. Values should be in
4078                # ascending order. For example, if [5, 10, 15] are provided, four buckets are
4079                # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
4080                # [buckets_bound is supported.
4081              3.14,
4082            ],
4083            "requiresMinMax": True or False, # Optional.
4084                #
4085                # If set to true, the histogram result includes minimum/maximum
4086                # value of the numeric field.
4087          },
4088          "key": "A String", # Required.
4089              #
4090              # Specifies the custom field key to perform a histogram on. If specified
4091              # without `long_value_histogram_bucketing_option`, histogram on string values
4092              # of the given `key` is triggered, otherwise histogram is performed on long
4093              # values.
4094        },
4095      ],
4096      "compensationHistogramFacets": [ # Optional.
4097          #
4098          # Specifies compensation field-based histogram requests.
4099          # Duplicate values of CompensationHistogramRequest.type are not allowed.
4100        { # Input only.
4101            #
4102            # Compensation based histogram request.
4103          "bucketingOption": { # Input only. # Required.
4104              #
4105              # Numeric histogram options, like buckets, whether include min or max value.
4106              #
4107              # Use this field to specify bucketing option for the histogram search response.
4108            "bucketBounds": [ # Required.
4109                #
4110                # Two adjacent values form a histogram bucket. Values should be in
4111                # ascending order. For example, if [5, 10, 15] are provided, four buckets are
4112                # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
4113                # [buckets_bound is supported.
4114              3.14,
4115            ],
4116            "requiresMinMax": True or False, # Optional.
4117                #
4118                # If set to true, the histogram result includes minimum/maximum
4119                # value of the numeric field.
4120          },
4121          "type": "A String", # Required.
4122              #
4123              # Type of the request, representing which field the histogramming should be
4124              # performed over. A single request can only specify one histogram of each
4125              # `CompensationHistogramRequestType`.
4126        },
4127      ],
4128    },
4129    "disableKeywordMatch": True or False, # Optional.
4130        #
4131        # Controls whether to disable exact keyword match on Job.job_title,
4132        # Job.description, Job.company_display_name, Job.locations,
4133        # Job.qualifications. When disable keyword match is turned off, a
4134        # keyword match returns jobs that do not match given category filters when
4135        # there are matching keywords. For example, the query "program manager," a
4136        # result is returned even if the job posting has the title "software
4137        # developer," which does not fall into "program manager" ontology, but does
4138        # have "program manager" appearing in its description.
4139        #
4140        # For queries like "cloud" that does not contain title or
4141        # location specific ontology, jobs with "cloud" keyword matches are returned
4142        # regardless of this flag's value.
4143        #
4144        # Please use Company.keyword_searchable_custom_fields or
4145        # Company.keyword_searchable_custom_attributes if company specific
4146        # globally matched custom field/attribute string values is needed. Enabling
4147        # keyword match improves recall of subsequent search requests.
4148        #
4149        # Defaults to false.
4150    "jobQuery": { # Input only. # Optional.
4151        #
4152        # Query used to search against jobs, such as keyword, location filters, etc.
4153        #
4154        # The query required to perform a search query.
4155      "excludedJobs": [ # Optional.
4156          #
4157          # This filter specifies a list of job names to be excluded during search.
4158          #
4159          # At most 400 excluded job names are allowed.
4160        "A String",
4161      ],
4162      "disableSpellCheck": True or False, # Optional.
4163          #
4164          # This flag controls the spell-check feature. If false, the
4165          # service attempts to correct a misspelled query,
4166          # for example, "enginee" is corrected to "engineer".
4167          #
4168          # Defaults to false: a spell check is performed.
4169      "customAttributeFilter": "A String", # Optional.
4170          #
4171          # This filter specifies a structured syntax to match against the
4172          # Job.custom_attributes marked as `filterable`.
4173          #
4174          # The syntax for this expression is a subset of SQL syntax.
4175          #
4176          # Supported operators are: `=`, `!=`, `<`, `<=`, `>`, and `>=` where the
4177          # left of the operator is a custom field key and the right of the operator
4178          # is a number or a quoted string. You must escape backslash (\\) and
4179          # quote (\") characters.
4180          #
4181          # Supported functions are `LOWER([field_name])` to
4182          # perform a case insensitive match and `EMPTY([field_name])` to filter on the
4183          # existence of a key.
4184          #
4185          # Boolean expressions (AND/OR/NOT) are supported up to 3 levels of
4186          # nesting (for example, "((A AND B AND C) OR NOT D) AND E"), a maximum of 100
4187          # comparisons or functions are allowed in the expression. The expression
4188          # must be < 3000 bytes in length.
4189          #
4190          # Sample Query:
4191          # `(LOWER(driving_license)="class \"a\"" OR EMPTY(driving_license)) AND
4192          # driving_years > 10`
4193      "employmentTypes": [ # Optional.
4194          #
4195          # The employment type filter specifies the employment type of jobs to
4196          # search against, such as EmploymentType.FULL_TIME.
4197          #
4198          # If a value is not specified, jobs in the search results includes any
4199          # employment type.
4200          #
4201          # If multiple values are specified, jobs in the search results include
4202          # any of the specified employment types.
4203        "A String",
4204      ],
4205      "query": "A String", # Optional.
4206          #
4207          # The query string that matches against the job title, description, and
4208          # location fields.
4209          #
4210          # The maximum number of allowed characters is 255.
4211      "publishTimeRange": { # Message representing a period of time between two timestamps. # Optional.
4212          #
4213          # Jobs published within a range specified by this filter are searched
4214          # against.
4215        "endTime": "A String", # End of the period.
4216        "startTime": "A String", # Begin of the period.
4217      },
4218      "commuteFilter": { # Input only. # Optional.
4219          #
4220          #  Allows filtering jobs by commute time with different travel methods (for
4221          #  example, driving or public transit). Note: This only works with COMMUTE
4222          #  MODE. When specified, [JobQuery.location_filters] is
4223          #  ignored.
4224          #
4225          #  Currently we don't support sorting by commute time.
4226          #
4227          # Parameters needed for commute search.
4228        "departureTime": { # Represents a time of day. The date and time zone are either not significant # Optional.
4229            #
4230            # The departure time used to calculate traffic impact, represented as
4231            # google.type.TimeOfDay in local time zone.
4232            #
4233            # Currently traffic model is restricted to hour level resolution.
4234            # or are specified elsewhere. An API may choose to allow leap seconds. Related
4235            # types are google.type.Date and `google.protobuf.Timestamp`.
4236          "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
4237          "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
4238              # allow the value 60 if it allows leap-seconds.
4239          "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
4240              # to allow the value "24:00:00" for scenarios like business closing time.
4241          "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
4242        },
4243        "roadTraffic": "A String", # Optional.
4244            #
4245            # Specifies the traffic density to use when calculating commute time.
4246        "startCoordinates": { # An object representing a latitude/longitude pair. This is expressed as a pair # Required.
4247            #
4248            # The latitude and longitude of the location from which to calculate the
4249            # commute time.
4250            # of doubles representing degrees latitude and degrees longitude. Unless
4251            # specified otherwise, this must conform to the
4252            # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
4253            # standard</a>. Values must be within normalized ranges.
4254          "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
4255          "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
4256        },
4257        "allowImpreciseAddresses": True or False, # Optional.
4258            # If true, jobs without "precise" addresses (street level addresses or GPS
4259            # coordinates) might also be returned. For city and coarser level addresses,
4260            # text matching is used. If this field is set to false or is not specified,
4261            # only jobs that include precise addresses are returned by Commute
4262            # Search.
4263            #
4264            # Note: If `allow_imprecise_addresses` is set to true, Commute Search is not
4265            # able to calculate accurate commute times to jobs with city level and
4266            # coarser address information. Jobs with imprecise addresses will return a
4267            # `travel_duration` time of 0 regardless of distance from the job seeker.
4268        "commuteMethod": "A String", # Required.
4269            #
4270            # The method of transportation for which to calculate the commute time.
4271        "travelDuration": "A String", # Required.
4272            #
4273            # The maximum travel time in seconds. The maximum allowed value is `3600s`
4274            # (one hour). Format is `123s`.
4275      },
4276      "jobCategories": [ # Optional.
4277          #
4278          # The category filter specifies the categories of jobs to search against.
4279          # See Category for more information.
4280          #
4281          # If a value is not specified, jobs from any category are searched against.
4282          #
4283          # If multiple values are specified, jobs from any of the specified
4284          # categories are searched against.
4285        "A String",
4286      ],
4287      "languageCodes": [ # Optional.
4288          #
4289          # This filter specifies the locale of jobs to search against,
4290          # for example, "en-US".
4291          #
4292          # If a value isn't specified, the search results can contain jobs in any
4293          # locale.
4294          #
4295          #
4296          # Language codes should be in BCP-47 format, such as "en-US" or "sr-Latn".
4297          # For more information, see
4298          # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
4299          #
4300          # At most 10 language code filters are allowed.
4301        "A String",
4302      ],
4303      "companyNames": [ # Optional.
4304          #
4305          # This filter specifies the company entities to search against.
4306          #
4307          # If a value isn't specified, jobs are searched for against all
4308          # companies.
4309          #
4310          # If multiple values are specified, jobs are searched against the
4311          # companies specified.
4312          #
4313          # The format is "projects/{project_id}/companies/{company_id}", for example,
4314          # "projects/api-test-project/companies/foo".
4315          #
4316          # At most 20 company filters are allowed.
4317        "A String",
4318      ],
4319      "companyDisplayNames": [ # Optional.
4320          #
4321          # This filter specifies the exact company display
4322          # name of the jobs to search against.
4323          #
4324          # If a value isn't specified, jobs within the search results are
4325          # associated with any company.
4326          #
4327          # If multiple values are specified, jobs within the search results may be
4328          # associated with any of the specified companies.
4329          #
4330          # At most 20 company display name filters are allowed.
4331        "A String",
4332      ],
4333      "locationFilters": [ # Optional.
4334          #
4335          # The location filter specifies geo-regions containing the jobs to
4336          # search against. See LocationFilter for more information.
4337          #
4338          # If a location value isn't specified, jobs fitting the other search
4339          # criteria are retrieved regardless of where they're located.
4340          #
4341          # If multiple values are specified, jobs are retrieved from any of the
4342          # specified locations. If different values are specified for the
4343          # LocationFilter.distance_in_miles parameter, the maximum provided
4344          # distance is used for all locations.
4345          #
4346          # At most 5 location filters are allowed.
4347        { # Input only.
4348            #
4349            # Geographic region of the search.
4350          "regionCode": "A String", # Optional.
4351              #
4352              # CLDR region code of the country/region of the address. This is used
4353              # to address ambiguity of the user-input location, for example, "Liverpool"
4354              # against "Liverpool, NY, US" or "Liverpool, UK".
4355              #
4356              # Set this field if all the jobs to search against are from a same region,
4357              # or jobs are world-wide, but the job seeker is from a specific region.
4358              #
4359              # See http://cldr.unicode.org/ and
4360              # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
4361              # for details. Example: "CH" for Switzerland.
4362          "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # Optional.
4363              #
4364              # The latitude and longitude of the geographic center from which to
4365              # search. This field's ignored if `address` is provided.
4366              # of doubles representing degrees latitude and degrees longitude. Unless
4367              # specified otherwise, this must conform to the
4368              # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
4369              # standard</a>. Values must be within normalized ranges.
4370            "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
4371            "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
4372          },
4373          "distanceInMiles": 3.14, # Optional.
4374              #
4375              #
4376              # The distance_in_miles is applied when the location being searched for is
4377              # identified as a city or smaller. When the location being searched for is a
4378              # state or larger, this field is ignored.
4379          "telecommutePreference": "A String", # Optional.
4380              #
4381              # Allows the client to return jobs without a
4382              # set location, specifically, telecommuting jobs (telecomuting is considered
4383              # by the service as a special location.
4384              # Job.posting_region indicates if a job permits telecommuting.
4385              # If this field is set to TelecommutePreference.TELECOMMUTE_ALLOWED,
4386              # telecommuting jobs are searched, and address and lat_lng are
4387              # ignored. If not set or set to
4388              # TelecommutePreference.TELECOMMUTE_EXCLUDED, telecommute job are not
4389              # searched.
4390              #
4391              # This filter can be used by itself to search exclusively for telecommuting
4392              # jobs, or it can be combined with another location
4393              # filter to search for a combination of job locations,
4394              # such as "Mountain View" or "telecommuting" jobs. However, when used in
4395              # combination with other location filters, telecommuting jobs can be
4396              # treated as less relevant than other jobs in the search response.
4397          "address": "A String", # Optional.
4398              #
4399              # The address name, such as "Mountain View" or "Bay Area".
4400        },
4401      ],
4402      "compensationFilter": { # Input only. # Optional.
4403          #
4404          # This search filter is applied only to
4405          # Job.compensation_info. For example, if the filter is specified
4406          # as "Hourly job with per-hour compensation > $15", only jobs meeting
4407          # these criteria are searched. If a filter isn't defined, all open jobs
4408          # are searched.
4409          #
4410          # Filter on job compensation type and amount.
4411        "units": [ # Required.
4412            #
4413            # Specify desired `base compensation entry's`
4414            # CompensationInfo.CompensationUnit.
4415          "A String",
4416        ],
4417        "range": { # Compensation range. # Optional.
4418            #
4419            # Compensation range.
4420          "minCompensation": { # Represents an amount of money with its currency type. # Optional.
4421              #
4422              # The minimum amount of compensation. If left empty, the value is set
4423              # to zero and the currency code is set to match the
4424              # currency code of max_compensation.
4425            "nanos": 42, # Number of nano (10^-9) units of the amount.
4426                # The value must be between -999,999,999 and +999,999,999 inclusive.
4427                # If `units` is positive, `nanos` must be positive or zero.
4428                # If `units` is zero, `nanos` can be positive, zero, or negative.
4429                # If `units` is negative, `nanos` must be negative or zero.
4430                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4431            "units": "A String", # The whole units of the amount.
4432                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4433            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4434          },
4435          "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
4436              #
4437              # The maximum amount of compensation. If left empty, the value is set
4438              # to a maximal compensation value and the currency code is set to
4439              # match the currency code of
4440              # min_compensation.
4441            "nanos": 42, # Number of nano (10^-9) units of the amount.
4442                # The value must be between -999,999,999 and +999,999,999 inclusive.
4443                # If `units` is positive, `nanos` must be positive or zero.
4444                # If `units` is zero, `nanos` can be positive, zero, or negative.
4445                # If `units` is negative, `nanos` must be negative or zero.
4446                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4447            "units": "A String", # The whole units of the amount.
4448                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4449            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4450          },
4451        },
4452        "type": "A String", # Required.
4453            #
4454            # Type of filter.
4455        "includeJobsWithUnspecifiedCompensationRange": True or False, # Optional.
4456            #
4457            # If set to true, jobs with unspecified compensation range fields are
4458            # included.
4459      },
4460    },
4461    "pageSize": 42, # Optional.
4462        #
4463        # A limit on the number of jobs returned in the search results.
4464        # Increasing this value above the default value of 10 can increase search
4465        # response time. The value can be between 1 and 100.
4466    "diversificationLevel": "A String", # Optional.
4467        #
4468        # Controls whether highly similar jobs are returned next to each other in
4469        # the search results. Jobs are identified as highly similar based on
4470        # their titles, job categories, and locations. Highly similar results are
4471        # clustered so that only one representative job of the cluster is
4472        # displayed to the job seeker higher up in the results, with the other jobs
4473        # being displayed lower down in the results.
4474        #
4475        # Defaults to DiversificationLevel.SIMPLE if no value
4476        # is specified.
4477    "customRankingInfo": { # Input only. # Optional.
4478        #
4479        # Controls over how job documents get ranked on top of existing relevance
4480        # score (determined by API algorithm).
4481        #
4482        # Custom ranking information for SearchJobsRequest.
4483      "rankingExpression": "A String", # Required.
4484          #
4485          # Controls over how job documents get ranked on top of existing relevance
4486          # score (determined by API algorithm). The product of ranking expression
4487          # and relevance score is used to determine job's final ranking position.
4488          #
4489          # The syntax for this expression is a subset of Google SQL syntax.
4490          #
4491          # Supported operators are: +, -, *, /, where the left and right side of
4492          # the operator is either a numeric Job.custom_attributes key,
4493          # integer/double value or an expression that can be evaluated to a number.
4494          #
4495          # Parenthesis are supported to adjust calculation precedence. The
4496          # expression must be < 100 characters in length.
4497          #
4498          # Sample ranking expression
4499          # (year + 25) * 0.25 - (freshness / 0.5)
4500      "importanceLevel": "A String", # Required.
4501          #
4502          # Controls over how important the score of
4503          # CustomRankingInfo.ranking_expression gets applied to job's final
4504          # ranking position.
4505          #
4506          # An error is thrown if not specified.
4507    },
4508    "enableBroadening": True or False, # Optional.
4509        #
4510        # Controls whether to broaden the search when it produces sparse results.
4511        # Broadened queries append results to the end of the matching results
4512        # list.
4513        #
4514        # Defaults to false.
4515    "searchMode": "A String", # Optional.
4516        #
4517        # Mode of a search.
4518        #
4519        # Defaults to SearchMode.JOB_SEARCH.
4520    "pageToken": "A String", # Optional.
4521        #
4522        # The token specifying the current offset within
4523        # search results. See SearchJobsResponse.next_page_token for
4524        # an explanation of how to obtain the next set of query results.
4525    "histogramQueries": [ # Optional.
4526        #
4527        # Expression based histogram requests for jobs matching JobQuery.
4528      { # Input Only.
4529          #
4530          # The histogram request.
4531        "histogramQuery": "A String", # An expression specifies a histogram request against matching resources
4532            # (for example, jobs) for searches.
4533            #
4534            # Expression syntax is a aggregation function call with histogram facets and
4535            # other options.
4536            #
4537            # Available aggregation function calls are:
4538            # * `count(string_histogram_facet)`: Count the number of matching entity, for
4539            #   each distinct attribute value.
4540            # * `count(numeric_histogram_facet, list of buckets)`: Count the number of
4541            #    matching entity within each bucket.
4542            #
4543            # Data types:
4544            #
4545            # * Histogram facet: facet names with format a-zA-Z+.
4546            # * String: string like "any string with backslash escape for quote(\")."
4547            # * Number: whole number and floating point number like 10, -1 and -0.01.
4548            # * List: list of elements with comma(,) separator surrounded by square
4549            # brackets. For example, [1, 2, 3] and ["one", "two", "three"].
4550            #
4551            # Built-in constants:
4552            #
4553            # * MIN (minimum number similar to java Double.MIN_VALUE)
4554            # * MAX (maximum number similar to java Double.MAX_VALUE)
4555            #
4556            # Built-in functions:
4557            #
4558            # * bucket(start, end[, label]): bucket built-in function creates a bucket
4559            # with range of start, end). Note that the end is exclusive. For example,
4560            # bucket(1, MAX, "positive number") or bucket(1, 10).
4561            #
4562            # Job histogram facets:
4563            #
4564            # * company_id: histogram by [Job.distributor_company_id.
4565            # * company_display_name: histogram by Job.company_display_name.
4566            # * employment_type: histogram by Job.employment_types. For example,
4567            # "FULL_TIME", "PART_TIME".
4568            # * company_size: histogram by CompanySize, for example, "SMALL",
4569            # "MEDIUM", "BIG".
4570            # * publish_time_in_month: histogram by the Job.publish_time in months.
4571            # Must specify list of numeric buckets in spec.
4572            # * publish_time_in_year: histogram by the Job.publish_time in years.
4573            # Must specify list of numeric buckets in spec.
4574            # * degree_type: histogram by the Job.degree_type. For example,
4575            # "Bachelors", "Masters".
4576            # * job_level: histogram by the Job.job_level. For example, "Entry
4577            # Level".
4578            # * country: histogram by the country code of jobs. For example, "US", "FR".
4579            # * admin1: histogram by the admin1 code of jobs, which is a global
4580            # placeholder referring to the state, province, or the particular term a
4581            # country uses to define the geographic structure below the country level.
4582            # For example, "CA", "IL".
4583            # * city: histogram by a combination of the "city name, admin1 code". For
4584            # example,  "Mountain View, CA", "New York, NY".
4585            # * admin1_country: histogram by a combination of the "admin1 code, country".
4586            # For example, "CA, US", "IL, US".
4587            # * city_coordinate: histogram by the city center's GPS coordinates (latitude
4588            # and longitude). For example, 37.4038522,-122.0987765. Since the coordinates
4589            # of a city center can change, customers may need to refresh them
4590            # periodically.
4591            # * locale: histogram by the Job.language_code. For example, "en-US",
4592            # "fr-FR".
4593            # * language: histogram by the language subtag of the Job.language_code.
4594            # For example, "en", "fr".
4595            # * category: histogram by the JobCategory. For example,
4596            # "COMPUTER_AND_IT", "HEALTHCARE".
4597            # * base_compensation_unit: histogram by the CompensationUnit of base
4598            # salary. For example, "WEEKLY", "MONTHLY".
4599            # * base_compensation: histogram by the base salary. Must specify list of
4600            # numeric buckets to group results by.
4601            # * annualized_base_compensation: histogram by the base annualized salary.
4602            # Must specify list of numeric buckets to group results by.
4603            # * annualized_total_compensation: histogram by the total annualized salary.
4604            # Must specify list of numeric buckets to group results by.
4605            # * string_custom_attribute: histogram by string Job.custom_attributes.
4606            # Values can be accessed via square bracket notations like
4607            # string_custom_attribute["key1"].
4608            # * numeric_custom_attribute: histogram by numeric Job.custom_attributes.
4609            # Values can be accessed via square bracket notations like
4610            # numeric_custom_attribute["key1"]. Must specify list of numeric buckets to
4611            # group results by.
4612            #
4613            # Example expressions:
4614            # * count(admin1)
4615            # * count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000),
4616            # bucket(100000, MAX)])
4617            # * count(string_custom_attribute["some-string-custom-attribute"])
4618            # * count(numeric_custom_attribute["some-numeric-custom-attribute"],
4619            # [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
4620      },
4621    ],
4622    "requestMetadata": { # Input only. # Required.
4623        #
4624        # The meta information collected about the job searcher, used to improve the
4625        # search quality of the service.. The identifiers, (such as `user_id`) are
4626        # provided by users, and must be unique and consistent.
4627        #
4628        # Meta information related to the job searcher or entity
4629        # conducting the job search. This information is used to improve the
4630        # performance of the service.
4631      "deviceInfo": { # Device information collected from the job seeker, candidate, or # Optional.
4632          #
4633          # The type of device used by the job seeker at the time of the call to the
4634          # service.
4635          # other entity conducting the job search. Providing this information improves
4636          # the quality of the search results across devices.
4637        "deviceType": "A String", # Optional.
4638            #
4639            # Type of the device.
4640        "id": "A String", # Optional.
4641            #
4642            # A device-specific ID. The ID must be a unique identifier that
4643            # distinguishes the device from other devices.
4644      },
4645      "domain": "A String", # Required.
4646          #
4647          # The client-defined scope or source of the service call, which typically
4648          # is the domain on
4649          # which the service has been implemented and is currently being run.
4650          #
4651          # For example, if the service is being run by client <em>Foo, Inc.</em>, on
4652          # job board www.foo.com and career site www.bar.com, then this field is
4653          # set to "foo.com" for use on the job board, and "bar.com" for use on the
4654          # career site.
4655          #
4656          # If this field isn't available for some reason, send "UNKNOWN".
4657          # Any improvements to the model for a particular tenant site rely on this
4658          # field being set correctly to a domain.
4659          #
4660          # The maximum number of allowed characters is 255.
4661      "userId": "A String", # Required.
4662          #
4663          # A unique user identification string, as determined by the client.
4664          # To have the strongest positive impact on search quality
4665          # make sure the client-level is unique.
4666          # Obfuscate this field for privacy concerns before
4667          # providing it to the service.
4668          #
4669          # If this field is not available for some reason, send "UNKNOWN". Note
4670          # that any improvements to the model for a particular tenant
4671          # site, rely on this field being set correctly to a unique user_id.
4672          #
4673          # The maximum number of allowed characters is 255.
4674      "sessionId": "A String", # Required.
4675          #
4676          # A unique session identification string. A session is defined as the
4677          # duration of an end user's interaction with the service over a certain
4678          # period.
4679          # Obfuscate this field for privacy concerns before
4680          # providing it to the service.
4681          #
4682          # If this field is not available for some reason, send "UNKNOWN". Note
4683          # that any improvements to the model for a particular tenant
4684          # site, rely on this field being set correctly to some unique session_id.
4685          #
4686          # The maximum number of allowed characters is 255.
4687    },
4688    "requirePreciseResultSize": True or False, # Optional.
4689        #
4690        # Controls if the search job request requires the return of a precise
4691        # count of the first 300 results. Setting this to `true` ensures
4692        # consistency in the number of results per page. Best practice is to set this
4693        # value to true if a client allows users to jump directly to a
4694        # non-sequential search results page.
4695        #
4696        # Enabling this flag may adversely impact performance.
4697        #
4698        # Defaults to false.
4699    "jobView": "A String", # Optional.
4700        #
4701        # The desired job attributes returned for jobs in the
4702        # search response. Defaults to JobView.SMALL if no value is specified.
4703    "offset": 42, # Optional.
4704        #
4705        # An integer that specifies the current offset (that is, starting result
4706        # location, amongst the jobs deemed by the API as relevant) in search
4707        # results. This field is only considered if page_token is unset.
4708        #
4709        # For example, 0 means to  return results starting from the first matching
4710        # job, and 10 means to return from the 11th job. This can be used for
4711        # pagination, (for example, pageSize = 10 and offset = 10 means to return
4712        # from the second page).
4713  }
4714
4715  x__xgafv: string, V1 error format.
4716    Allowed values
4717      1 - v1 error format
4718      2 - v2 error format
4719
4720Returns:
4721  An object of the form:
4722
4723    { # Output only.
4724      #
4725      # Response for SearchJob method.
4726    "nextPageToken": "A String", # The token that specifies the starting position of the next page of results.
4727        # This field is empty if there are no more results.
4728    "histogramQueryResults": [ # The histogram results that match with specified
4729        # SearchJobsRequest.histogram_queries.
4730      { # Output only.
4731          #
4732          # Histogram result that matches HistogramSpec specified in searches.
4733        "histogramQuery": "A String", # Requested histogram expression.
4734        "histogram": { # A map from the values of the facet associated with distinct values to the
4735            # number of matching entries with corresponding value.
4736            #
4737            # The key format is:
4738            # * (for string histogram) string values stored in the field.
4739            # * (for named numeric bucket) name specified in `bucket()` function, like
4740            #   for `bucket(0, MAX, "non-negative")`, the key will be `non-negative`.
4741            # * (for anonymous numeric bucket) range formatted as `<low>-<high>`, for
4742            # example, `0-1000`, `MIN-0`, and `0-MAX`.
4743          "a_key": "A String",
4744        },
4745      },
4746    ],
4747    "spellCorrection": { # Output only. # The spell checking result, and correction.
4748        #
4749        # Spell check result.
4750      "corrected": True or False, # Indicates if the query was corrected by the spell checker.
4751      "correctedText": "A String", # Correction output consisting of the corrected keyword string.
4752    },
4753    "estimatedTotalSize": 42, # An estimation of the number of jobs that match the specified query.
4754        #
4755        # This number is not guaranteed to be accurate. For accurate results,
4756        # see enable_precise_result_size.
4757    "totalSize": 42, # The precise result count, which is available only if the client set
4758        # enable_precise_result_size to `true`, or if the response
4759        # is the last page of results. Otherwise, the value is `-1`.
4760    "matchingJobs": [ # The Job entities that match the specified SearchJobsRequest.
4761      { # Output only.
4762          #
4763          # Job entry with metadata inside SearchJobsResponse.
4764        "searchTextSnippet": "A String", # Contains snippets of text from the Job.description and similar
4765            # fields that most closely match a search query's keywords, if available.
4766            # All HTML tags in the original fields are stripped when returned in this
4767            # field, and matching query keywords are enclosed in HTML bold tags.
4768        "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Job resource that matches the specified SearchJobsRequest.
4769            # or "job requisition"). A job belongs to a Company, which is the hiring
4770            # entity responsible for the job.
4771          "languageCode": "A String", # Optional.
4772              #
4773              # The language of the posting. This field is distinct from
4774              # any requirements for fluency that are associated with the job.
4775              #
4776              # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
4777              # For more information, see
4778              # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
4779              # class="external" target="_blank" }.
4780              #
4781              # If this field is unspecified and Job.description is present, detected
4782              # language code based on Job.description is assigned, otherwise
4783              # defaults to 'en_US'.
4784          "addresses": [ # Optional but strongly recommended for the best service experience.
4785              #
4786              # Location(s) where the employer is looking to hire for this job posting.
4787              #
4788              # Specifying the full street address(es) of the hiring location enables
4789              # better API results, especially job searches by commute time.
4790              #
4791              # At most 50 locations are allowed for best search performance. If a job has
4792              # more locations, it is suggested to split it into multiple jobs with unique
4793              # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
4794              # multiple jobs with the same company_name, language_code and
4795              # requisition_id are not allowed. If the original requisition_id must
4796              # be preserved, a custom field should be used for storage. It is also
4797              # suggested to group the locations that close to each other in the same job
4798              # for better search experience.
4799              #
4800              # The maximum number of allowed characters is 500.
4801            "A String",
4802          ],
4803          "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
4804          "promotionValue": 42, # Optional.
4805              #
4806              # A promotion value of the job, as determined by the client.
4807              # The value determines the sort order of the jobs returned when searching for
4808              # jobs using the featured jobs search call, with higher promotional values
4809              # being returned first and ties being resolved by relevance sort. Only the
4810              # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
4811              #
4812              # Default value is 0, and negative values are treated as 0.
4813          "employmentTypes": [ # Optional.
4814              #
4815              # The employment type(s) of a job, for example,
4816              # full time or
4817              # part time.
4818            "A String",
4819          ],
4820          "jobEndTime": "A String", # Optional.
4821              #
4822              # The end timestamp of the job. Typically this field is used for contracting
4823              # engagements. Invalid timestamps are ignored.
4824          "description": "A String", # Required.
4825              #
4826              # The description of the job, which typically includes a multi-paragraph
4827              # description of the company and related information. Separate fields are
4828              # provided on the job object for responsibilities,
4829              # qualifications, and other job characteristics. Use of
4830              # these separate job fields is recommended.
4831              #
4832              # This field accepts and sanitizes HTML input, and also accepts
4833              # bold, italic, ordered list, and unordered list markup tags.
4834              #
4835              # The maximum number of allowed characters is 100,000.
4836          "postingExpireTime": "A String", # Optional but strongly recommended for the best service
4837              # experience.
4838              #
4839              # The expiration timestamp of the job. After this timestamp, the
4840              # job is marked as expired, and it no longer appears in search results. The
4841              # expired job can't be deleted or listed by the DeleteJob and
4842              # ListJobs APIs, but it can be retrieved with the GetJob API or
4843              # updated with the UpdateJob API. An expired job can be updated and
4844              # opened again by using a future expiration timestamp. Updating an expired
4845              # job fails if there is another existing open job with same company_name,
4846              # language_code and requisition_id.
4847              #
4848              # The expired jobs are retained in our system for 90 days. However, the
4849              # overall expired job count cannot exceed 3 times the maximum of open jobs
4850              # count over the past week, otherwise jobs with earlier expire time are
4851              # cleaned first. Expired jobs are no longer accessible after they are cleaned
4852              # out.
4853              #
4854              # Invalid timestamps are ignored, and treated as expire time not provided.
4855              #
4856              # Timestamp before the instant request is made is considered valid, the job
4857              # will be treated as expired immediately.
4858              #
4859              # If this value is not provided at the time of job creation or is invalid,
4860              # the job posting expires after 30 days from the job's creation time. For
4861              # example, if the job was created on 2017/01/01 13:00AM UTC with an
4862              # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
4863              #
4864              # If this value is not provided on job update, it depends on the field masks
4865              # set by UpdateJobRequest.update_mask. If the field masks include
4866              # expiry_time, or the masks are empty meaning that every field is
4867              # updated, the job posting expires after 30 days from the job's last
4868              # update time. Otherwise the expiration date isn't updated.
4869          "title": "A String", # Required.
4870              #
4871              # The title of the job, such as "Software Engineer"
4872              #
4873              # The maximum number of allowed characters is 500.
4874          "responsibilities": "A String", # Optional.
4875              #
4876              # A description of job responsibilities. The use of this field is
4877              # recommended as an alternative to using the more general description
4878              # field.
4879              #
4880              # This field accepts and sanitizes HTML input, and also accepts
4881              # bold, italic, ordered list, and unordered list markup tags.
4882              #
4883              # The maximum number of allowed characters is 10,000.
4884          "jobStartTime": "A String", # Optional.
4885              #
4886              # The start timestamp of the job in UTC time zone. Typically this field
4887              # is used for contracting engagements. Invalid timestamps are ignored.
4888          "compensationInfo": { # Job compensation details. # Optional.
4889              #
4890              # Job compensation information.
4891            "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
4892                # all compensation entries' CompensationEntry.compensation times
4893                # CompensationEntry.expected_units_per_year.
4894                #
4895                # See CompensationEntry for explanation on compensation annualization.
4896              "minCompensation": { # Represents an amount of money with its currency type. # Optional.
4897                  #
4898                  # The minimum amount of compensation. If left empty, the value is set
4899                  # to zero and the currency code is set to match the
4900                  # currency code of max_compensation.
4901                "nanos": 42, # Number of nano (10^-9) units of the amount.
4902                    # The value must be between -999,999,999 and +999,999,999 inclusive.
4903                    # If `units` is positive, `nanos` must be positive or zero.
4904                    # If `units` is zero, `nanos` can be positive, zero, or negative.
4905                    # If `units` is negative, `nanos` must be negative or zero.
4906                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4907                "units": "A String", # The whole units of the amount.
4908                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4909                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4910              },
4911              "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
4912                  #
4913                  # The maximum amount of compensation. If left empty, the value is set
4914                  # to a maximal compensation value and the currency code is set to
4915                  # match the currency code of
4916                  # min_compensation.
4917                "nanos": 42, # Number of nano (10^-9) units of the amount.
4918                    # The value must be between -999,999,999 and +999,999,999 inclusive.
4919                    # If `units` is positive, `nanos` must be positive or zero.
4920                    # If `units` is zero, `nanos` can be positive, zero, or negative.
4921                    # If `units` is negative, `nanos` must be negative or zero.
4922                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4923                "units": "A String", # The whole units of the amount.
4924                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4925                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4926              },
4927            },
4928            "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
4929                # base compensation entry's CompensationEntry.compensation times
4930                # CompensationEntry.expected_units_per_year.
4931                #
4932                # See CompensationEntry for explanation on compensation annualization.
4933              "minCompensation": { # Represents an amount of money with its currency type. # Optional.
4934                  #
4935                  # The minimum amount of compensation. If left empty, the value is set
4936                  # to zero and the currency code is set to match the
4937                  # currency code of max_compensation.
4938                "nanos": 42, # Number of nano (10^-9) units of the amount.
4939                    # The value must be between -999,999,999 and +999,999,999 inclusive.
4940                    # If `units` is positive, `nanos` must be positive or zero.
4941                    # If `units` is zero, `nanos` can be positive, zero, or negative.
4942                    # If `units` is negative, `nanos` must be negative or zero.
4943                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4944                "units": "A String", # The whole units of the amount.
4945                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4946                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4947              },
4948              "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
4949                  #
4950                  # The maximum amount of compensation. If left empty, the value is set
4951                  # to a maximal compensation value and the currency code is set to
4952                  # match the currency code of
4953                  # min_compensation.
4954                "nanos": 42, # Number of nano (10^-9) units of the amount.
4955                    # The value must be between -999,999,999 and +999,999,999 inclusive.
4956                    # If `units` is positive, `nanos` must be positive or zero.
4957                    # If `units` is zero, `nanos` can be positive, zero, or negative.
4958                    # If `units` is negative, `nanos` must be negative or zero.
4959                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4960                "units": "A String", # The whole units of the amount.
4961                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4962                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4963              },
4964            },
4965            "entries": [ # Optional.
4966                #
4967                # Job compensation information.
4968                #
4969                # At most one entry can be of type
4970                # CompensationInfo.CompensationType.BASE, which is
4971                # referred as ** base compensation entry ** for the job.
4972              { # A compensation entry that represents one component of compensation, such
4973                  # as base pay, bonus, or other compensation type.
4974                  #
4975                  # Annualization: One compensation entry can be annualized if
4976                  # - it contains valid amount or range.
4977                  # - and its expected_units_per_year is set or can be derived.
4978                  # Its annualized range is determined as (amount or range) times
4979                  # expected_units_per_year.
4980                "description": "A String", # Optional.
4981                    #
4982                    # Compensation description.  For example, could
4983                    # indicate equity terms or provide additional context to an estimated
4984                    # bonus.
4985                "amount": { # Represents an amount of money with its currency type. # Optional.
4986                    #
4987                    # Compensation amount.
4988                  "nanos": 42, # Number of nano (10^-9) units of the amount.
4989                      # The value must be between -999,999,999 and +999,999,999 inclusive.
4990                      # If `units` is positive, `nanos` must be positive or zero.
4991                      # If `units` is zero, `nanos` can be positive, zero, or negative.
4992                      # If `units` is negative, `nanos` must be negative or zero.
4993                      # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
4994                  "units": "A String", # The whole units of the amount.
4995                      # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
4996                  "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
4997                },
4998                "expectedUnitsPerYear": 3.14, # Optional.
4999                    #
5000                    # Expected number of units paid each year. If not specified, when
5001                    # Job.employment_types is FULLTIME, a default value is inferred
5002                    # based on unit. Default values:
5003                    # - HOURLY: 2080
5004                    # - DAILY: 260
5005                    # - WEEKLY: 52
5006                    # - MONTHLY: 12
5007                    # - ANNUAL: 1
5008                "range": { # Compensation range. # Optional.
5009                    #
5010                    # Compensation range.
5011                  "minCompensation": { # Represents an amount of money with its currency type. # Optional.
5012                      #
5013                      # The minimum amount of compensation. If left empty, the value is set
5014                      # to zero and the currency code is set to match the
5015                      # currency code of max_compensation.
5016                    "nanos": 42, # Number of nano (10^-9) units of the amount.
5017                        # The value must be between -999,999,999 and +999,999,999 inclusive.
5018                        # If `units` is positive, `nanos` must be positive or zero.
5019                        # If `units` is zero, `nanos` can be positive, zero, or negative.
5020                        # If `units` is negative, `nanos` must be negative or zero.
5021                        # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
5022                    "units": "A String", # The whole units of the amount.
5023                        # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
5024                    "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
5025                  },
5026                  "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
5027                      #
5028                      # The maximum amount of compensation. If left empty, the value is set
5029                      # to a maximal compensation value and the currency code is set to
5030                      # match the currency code of
5031                      # min_compensation.
5032                    "nanos": 42, # Number of nano (10^-9) units of the amount.
5033                        # The value must be between -999,999,999 and +999,999,999 inclusive.
5034                        # If `units` is positive, `nanos` must be positive or zero.
5035                        # If `units` is zero, `nanos` can be positive, zero, or negative.
5036                        # If `units` is negative, `nanos` must be negative or zero.
5037                        # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
5038                    "units": "A String", # The whole units of the amount.
5039                        # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
5040                    "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
5041                  },
5042                },
5043                "type": "A String", # Optional.
5044                    #
5045                    # Compensation type.
5046                    #
5047                    # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
5048                "unit": "A String", # Optional.
5049                    #
5050                    # Frequency of the specified amount.
5051                    #
5052                    # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
5053              },
5054            ],
5055          },
5056          "department": "A String", # Optional.
5057              #
5058              # The department or functional area within the company with the open
5059              # position.
5060              #
5061              # The maximum number of allowed characters is 255.
5062          "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
5063          "requisitionId": "A String", # Required.
5064              #
5065              # The requisition ID, also referred to as the posting ID, assigned by the
5066              # client to identify a job. This field is intended to be used by clients
5067              # for client identification and tracking of postings. A job is not allowed
5068              # to be created if there is another job with the same [company_name],
5069              # language_code and requisition_id.
5070              #
5071              # The maximum number of allowed characters is 255.
5072          "postingPublishTime": "A String", # Optional.
5073              #
5074              # The timestamp this job posting was most recently published. The default
5075              # value is the time the request arrives at the server. Invalid timestamps are
5076              # ignored.
5077          "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
5078              #
5079              # Job application information.
5080            "instruction": "A String", # Optional but at least one of uris,
5081                # emails or instruction must be
5082                # specified.
5083                #
5084                # Use this field to provide instructions, such as "Mail your application
5085                # to ...", that a candidate can follow to apply for the job.
5086                #
5087                # This field accepts and sanitizes HTML input, and also accepts
5088                # bold, italic, ordered list, and unordered list markup tags.
5089                #
5090                # The maximum number of allowed characters is 3,000.
5091            "uris": [ # Optional but at least one of uris,
5092                # emails or instruction must be
5093                # specified.
5094                #
5095                # Use this URI field to direct an applicant to a website, for example to
5096                # link to an online application form.
5097                #
5098                # The maximum number of allowed characters for each entry is 2,000.
5099              "A String",
5100            ],
5101            "emails": [ # Optional but at least one of uris,
5102                # emails or instruction must be
5103                # specified.
5104                #
5105                # Use this field to specify email address(es) to which resumes or
5106                # applications can be sent.
5107                #
5108                # The maximum number of allowed characters for each entry is 255.
5109              "A String",
5110            ],
5111          },
5112          "companyName": "A String", # Required.
5113              #
5114              # The resource name of the company listing the job, such as
5115              # "projects/api-test-project/companies/foo".
5116          "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
5117              #
5118              # Derived details about the job posting.
5119            "jobCategories": [ # Job categories derived from Job.title and Job.description.
5120              "A String",
5121            ],
5122            "locations": [ # Structured locations of the job, resolved from Job.addresses.
5123                #
5124                # locations are exactly matched to Job.addresses in the same
5125                # order.
5126              { # Output only.
5127                  #
5128                  # A resource that represents a location with full geographic information.
5129                "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
5130                    # location bounding box in which a circle with the specified radius
5131                    # centered from LatLng covers the area associated with the job location.
5132                    # For example, currently, "Mountain View, CA, USA" has a radius of
5133                    # 6.17 miles.
5134                "locationType": "A String", # The type of a location, which corresponds to the address lines field of
5135                    # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
5136                    # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
5137                    # LocationType#LOCALITY.
5138                "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
5139                    # of doubles representing degrees latitude and degrees longitude. Unless
5140                    # specified otherwise, this must conform to the
5141                    # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
5142                    # standard</a>. Values must be within normalized ranges.
5143                  "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
5144                  "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
5145                },
5146                "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
5147                    # such as postal delivery and payments addresses. Given a postal address,
5148                    # a postal service can deliver items to a premises, P.O. Box, or other
5149                    # delivery location.
5150                    # Given a postal address, a postal service can deliver items to a premise, P.O.
5151                    # Box or similar.
5152                    # It is not intended to model geographical locations (roads, towns,
5153                    # mountains).
5154                    #
5155                    # In typical usage an address would be created via user input or from importing
5156                    # existing data, depending on the type of process.
5157                    #
5158                    # Advice on address input / editing:
5159                    #  - Use an i18n-ready address widget such as
5160                    #    https://github.com/googlei18n/libaddressinput)
5161                    # - Users should not be presented with UI elements for input or editing of
5162                    #   fields outside countries where that field is used.
5163                    #
5164                    # For more guidance on how to use this schema, please see:
5165                    # https://support.google.com/business/answer/6397478
5166                  "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
5167                      # known). This is often the UI language of the input form or is expected
5168                      # to match one of the languages used in the address' country/region, or their
5169                      # transliterated equivalents.
5170                      # This can affect formatting in certain countries, but is not critical
5171                      # to the correctness of the data and will never affect any validation or
5172                      # other non-formatting related operations.
5173                      #
5174                      # If this value is not known, it should be omitted (rather than specifying a
5175                      # possibly incorrect default).
5176                      #
5177                      # Examples: "zh-Hant", "ja", "ja-Latn", "en".
5178                  "recipients": [ # Optional. The recipient at the address.
5179                      # This field may, under certain circumstances, contain multiline information.
5180                      # For example, it might contain "care of" information.
5181                    "A String",
5182                  ],
5183                  "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
5184                      # Examples: US city, IT comune, UK post town.
5185                      # In regions of the world where localities are not well defined or do not fit
5186                      # into this structure well, leave locality empty and use address_lines.
5187                  "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
5188                      # in most regions. Where it is used, the value is either a string like
5189                      # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
5190                      # alone, representing the "sector code" (Jamaica), "delivery area indicator"
5191                      # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
5192                  "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
5193                      # is never inferred and it is up to the user to ensure the value is
5194                      # correct. See http://cldr.unicode.org/ and
5195                      # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
5196                      # for details. Example: "CH" for Switzerland.
5197                  "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
5198                      # addresses of a country or region.
5199                      # For example, this can be a state, a province, an oblast, or a prefecture.
5200                      # Specifically, for Spain this is the province and not the autonomous
5201                      # community (e.g. "Barcelona" and not "Catalonia").
5202                      # Many countries don't use an administrative area in postal addresses. E.g.
5203                      # in Switzerland this should be left unpopulated.
5204                  "addressLines": [ # Unstructured address lines describing the lower levels of an address.
5205                      #
5206                      # Because values in address_lines do not have type information and may
5207                      # sometimes contain multiple values in a single field (e.g.
5208                      # "Austin, TX"), it is important that the line order is clear. The order of
5209                      # address lines should be "envelope order" for the country/region of the
5210                      # address. In places where this can vary (e.g. Japan), address_language is
5211                      # used to make it explicit (e.g. "ja" for large-to-small ordering and
5212                      # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
5213                      # an address can be selected based on the language.
5214                      #
5215                      # The minimum permitted structural representation of an address consists
5216                      # of a region_code with all remaining information placed in the
5217                      # address_lines. It would be possible to format such an address very
5218                      # approximately without geocoding, but no semantic reasoning could be
5219                      # made about any of the address components until it was at least
5220                      # partially resolved.
5221                      #
5222                      # Creating an address only containing a region_code and address_lines, and
5223                      # then geocoding is the recommended way to handle completely unstructured
5224                      # addresses (as opposed to guessing which parts of the address should be
5225                      # localities or administrative areas).
5226                    "A String",
5227                  ],
5228                  "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
5229                      # postal codes to be present, but where they are used, they may trigger
5230                      # additional validation with other parts of the address (e.g. state/zip
5231                      # validation in the U.S.A.).
5232                  "organization": "A String", # Optional. The name of the organization at the address.
5233                  "sublocality": "A String", # Optional. Sublocality of the address.
5234                      # For example, this can be neighborhoods, boroughs, districts.
5235                  "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
5236                      # the latest revision.
5237                      #
5238                      # All new revisions **must** be backward compatible with old revisions.
5239                },
5240              },
5241            ],
5242          },
5243          "qualifications": "A String", # Optional.
5244              #
5245              # A description of the qualifications required to perform the
5246              # job. The use of this field is recommended
5247              # as an alternative to using the more general description field.
5248              #
5249              # This field accepts and sanitizes HTML input, and also accepts
5250              # bold, italic, ordered list, and unordered list markup tags.
5251              #
5252              # The maximum number of allowed characters is 10,000.
5253          "jobBenefits": [ # Optional.
5254              #
5255              # The benefits included with the job.
5256            "A String",
5257          ],
5258          "incentives": "A String", # Optional.
5259              #
5260              # A description of bonus, commission, and other compensation
5261              # incentives associated with the job not including salary or pay.
5262              #
5263              # The maximum number of allowed characters is 10,000.
5264          "visibility": "A String", # Optional.
5265              #
5266              # The visibility of the job.
5267              #
5268              # Defaults to Visibility.ACCOUNT_ONLY if not specified.
5269          "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
5270          "postingRegion": "A String", # Optional.
5271              #
5272              # The job PostingRegion (for example, state, country) throughout which
5273              # the job is available. If this field is set, a
5274              # LocationFilter in a search query within the job region
5275              # finds this job posting if an exact location match isn't specified.
5276              # If this field is set to PostingRegion.NATION or
5277              # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
5278              # to the same location level as this field is strongly recommended.
5279          "name": "A String", # Required during job update.
5280              #
5281              # The resource name for the job. This is generated by the service when a
5282              # job is created.
5283              #
5284              # The format is "projects/{project_id}/jobs/{job_id}",
5285              # for example, "projects/api-test-project/jobs/1234".
5286              #
5287              # Use of this field in job queries and API calls is preferred over the use of
5288              # requisition_id since this value is unique.
5289          "processingOptions": { # Input only. # Optional.
5290              #
5291              # Options for job processing.
5292              #
5293              # Options for job processing.
5294            "htmlSanitization": "A String", # Optional.
5295                #
5296                # Option for job HTML content sanitization. Applied fields are:
5297                #
5298                # * description
5299                # * applicationInfo.instruction
5300                # * incentives
5301                # * qualifications
5302                # * responsibilities
5303                #
5304                # HTML tags in these fields may be stripped if sanitiazation is not
5305                # disabled.
5306                #
5307                # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
5308            "disableStreetAddressResolution": True or False, # Optional.
5309                #
5310                # If set to `true`, the service does not attempt to resolve a
5311                # more precise address for the job.
5312          },
5313          "degreeTypes": [ # Optional.
5314              #
5315              # The desired education degrees for the job, such as Bachelors, Masters.
5316            "A String",
5317          ],
5318          "customAttributes": { # Optional.
5319              #
5320              # A map of fields to hold both filterable and non-filterable custom job
5321              # attributes that are not covered by the provided structured fields.
5322              #
5323              # The keys of the map are strings up to 64 bytes and must match the
5324              # pattern: a-zA-Z*. For example, key0LikeThis or
5325              # KEY_1_LIKE_THIS.
5326              #
5327              # At most 100 filterable and at most 100 unfilterable keys are supported.
5328              # For filterable `string_values`, across all keys at most 200 values are
5329              # allowed, with each string no more than 255 characters. For unfilterable
5330              # `string_values`, the maximum total size of `string_values` across all keys
5331              # is 50KB.
5332            "a_key": { # Custom attribute values that are either filterable or non-filterable.
5333              "filterable": True or False, # Optional.
5334                  #
5335                  # If the `filterable` flag is true, custom field values are searchable.
5336                  # If false, values are not searchable.
5337                  #
5338                  # Default is false.
5339              "stringValues": [ # Optional but exactly one of string_values or long_values must
5340                  # be specified.
5341                  #
5342                  # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
5343                  # `CASE_INSENSITIVE_MATCH`) search.
5344                  # For filterable `string_value`s, a maximum total number of 200 values
5345                  # is allowed, with each `string_value` has a byte size of no more than
5346                  # 255B. For unfilterable `string_values`, the maximum total byte size of
5347                  # unfilterable `string_values` is 50KB.
5348                  #
5349                  # Empty string is not allowed.
5350                "A String",
5351              ],
5352              "longValues": [ # Optional but exactly one of string_values or long_values must
5353                  # be specified.
5354                  #
5355                  # This field is used to perform number range search.
5356                  # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
5357                  #
5358                  # Currently at most 1 long_values is supported.
5359                "A String",
5360              ],
5361            },
5362          },
5363          "jobLevel": "A String", # Optional.
5364              #
5365              # The experience level associated with the job, such as "Entry Level".
5366        },
5367        "commuteInfo": { # Output only. # Commute information which is generated based on specified
5368            #  CommuteFilter.
5369            #
5370            # Commute details related to this job.
5371          "travelDuration": "A String", # The number of seconds required to travel to the job location from the
5372              # query location. A duration of 0 seconds indicates that the job is not
5373              # reachable within the requested duration, but was returned as part of an
5374              # expanded query.
5375          "jobLocation": { # Output only. # Location used as the destination in the commute calculation.
5376              #
5377              # A resource that represents a location with full geographic information.
5378            "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
5379                # location bounding box in which a circle with the specified radius
5380                # centered from LatLng covers the area associated with the job location.
5381                # For example, currently, "Mountain View, CA, USA" has a radius of
5382                # 6.17 miles.
5383            "locationType": "A String", # The type of a location, which corresponds to the address lines field of
5384                # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
5385                # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
5386                # LocationType#LOCALITY.
5387            "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
5388                # of doubles representing degrees latitude and degrees longitude. Unless
5389                # specified otherwise, this must conform to the
5390                # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
5391                # standard</a>. Values must be within normalized ranges.
5392              "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
5393              "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
5394            },
5395            "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
5396                # such as postal delivery and payments addresses. Given a postal address,
5397                # a postal service can deliver items to a premises, P.O. Box, or other
5398                # delivery location.
5399                # Given a postal address, a postal service can deliver items to a premise, P.O.
5400                # Box or similar.
5401                # It is not intended to model geographical locations (roads, towns,
5402                # mountains).
5403                #
5404                # In typical usage an address would be created via user input or from importing
5405                # existing data, depending on the type of process.
5406                #
5407                # Advice on address input / editing:
5408                #  - Use an i18n-ready address widget such as
5409                #    https://github.com/googlei18n/libaddressinput)
5410                # - Users should not be presented with UI elements for input or editing of
5411                #   fields outside countries where that field is used.
5412                #
5413                # For more guidance on how to use this schema, please see:
5414                # https://support.google.com/business/answer/6397478
5415              "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
5416                  # known). This is often the UI language of the input form or is expected
5417                  # to match one of the languages used in the address' country/region, or their
5418                  # transliterated equivalents.
5419                  # This can affect formatting in certain countries, but is not critical
5420                  # to the correctness of the data and will never affect any validation or
5421                  # other non-formatting related operations.
5422                  #
5423                  # If this value is not known, it should be omitted (rather than specifying a
5424                  # possibly incorrect default).
5425                  #
5426                  # Examples: "zh-Hant", "ja", "ja-Latn", "en".
5427              "recipients": [ # Optional. The recipient at the address.
5428                  # This field may, under certain circumstances, contain multiline information.
5429                  # For example, it might contain "care of" information.
5430                "A String",
5431              ],
5432              "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
5433                  # Examples: US city, IT comune, UK post town.
5434                  # In regions of the world where localities are not well defined or do not fit
5435                  # into this structure well, leave locality empty and use address_lines.
5436              "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
5437                  # in most regions. Where it is used, the value is either a string like
5438                  # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
5439                  # alone, representing the "sector code" (Jamaica), "delivery area indicator"
5440                  # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
5441              "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
5442                  # is never inferred and it is up to the user to ensure the value is
5443                  # correct. See http://cldr.unicode.org/ and
5444                  # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
5445                  # for details. Example: "CH" for Switzerland.
5446              "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
5447                  # addresses of a country or region.
5448                  # For example, this can be a state, a province, an oblast, or a prefecture.
5449                  # Specifically, for Spain this is the province and not the autonomous
5450                  # community (e.g. "Barcelona" and not "Catalonia").
5451                  # Many countries don't use an administrative area in postal addresses. E.g.
5452                  # in Switzerland this should be left unpopulated.
5453              "addressLines": [ # Unstructured address lines describing the lower levels of an address.
5454                  #
5455                  # Because values in address_lines do not have type information and may
5456                  # sometimes contain multiple values in a single field (e.g.
5457                  # "Austin, TX"), it is important that the line order is clear. The order of
5458                  # address lines should be "envelope order" for the country/region of the
5459                  # address. In places where this can vary (e.g. Japan), address_language is
5460                  # used to make it explicit (e.g. "ja" for large-to-small ordering and
5461                  # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
5462                  # an address can be selected based on the language.
5463                  #
5464                  # The minimum permitted structural representation of an address consists
5465                  # of a region_code with all remaining information placed in the
5466                  # address_lines. It would be possible to format such an address very
5467                  # approximately without geocoding, but no semantic reasoning could be
5468                  # made about any of the address components until it was at least
5469                  # partially resolved.
5470                  #
5471                  # Creating an address only containing a region_code and address_lines, and
5472                  # then geocoding is the recommended way to handle completely unstructured
5473                  # addresses (as opposed to guessing which parts of the address should be
5474                  # localities or administrative areas).
5475                "A String",
5476              ],
5477              "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
5478                  # postal codes to be present, but where they are used, they may trigger
5479                  # additional validation with other parts of the address (e.g. state/zip
5480                  # validation in the U.S.A.).
5481              "organization": "A String", # Optional. The name of the organization at the address.
5482              "sublocality": "A String", # Optional. Sublocality of the address.
5483                  # For example, this can be neighborhoods, boroughs, districts.
5484              "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
5485                  # the latest revision.
5486                  #
5487                  # All new revisions **must** be backward compatible with old revisions.
5488            },
5489          },
5490        },
5491        "jobSummary": "A String", # A summary of the job with core information that's displayed on the search
5492            # results listing page.
5493        "jobTitleSnippet": "A String", # Contains snippets of text from the Job.job_title field most
5494            # closely matching a search query's keywords, if available. The matching
5495            # query keywords are enclosed in HTML bold tags.
5496      },
5497    ],
5498    "histogramResults": { # Output only. # The histogram results that match specified
5499        # SearchJobsRequest.histogram_facets.
5500        #
5501        # Histogram results that match HistogramFacets specified in
5502        # SearchJobsRequest.
5503      "customAttributeHistogramResults": [ # Specifies histogram results for custom attributes that match
5504          # HistogramFacets.custom_attribute_histogram_facets.
5505        { # Output only.
5506            #
5507            # Custom attribute histogram result.
5508          "longValueHistogramResult": { # Output only. # Stores bucketed histogram counting result or min/max values for
5509              # custom attribute long values associated with `key`.
5510              #
5511              # Custom numeric bucketing result.
5512            "counts": [ # Count within each bucket. Its size is the length of
5513                # NumericBucketingOption.bucket_bounds plus 1.
5514              { # Represents count of jobs within one bucket.
5515                "count": 42, # Number of jobs whose numeric field value fall into `range`.
5516                "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
5517                    # that is, the count represents number of jobs in this range.
5518                  "to": 3.14, # Ending value of the bucket range.
5519                  "from": 3.14, # Starting value of the bucket range.
5520                },
5521              },
5522            ],
5523            "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
5524                # [NumericBucketingOption.requires_min_max] is set to true.
5525            "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
5526                # [NumericBucketingOption.requires_min_max] is set to true.
5527          },
5528          "stringValueHistogramResult": { # Stores a map from the values of string custom field associated
5529              # with `key` to the number of jobs with that value in this histogram result.
5530            "a_key": 42,
5531          },
5532          "key": "A String", # Stores the key of custom attribute the histogram is performed on.
5533        },
5534      ],
5535      "simpleHistogramResults": [ # Specifies histogram results that matches
5536          # HistogramFacets.simple_histogram_facets.
5537        { # Output only.
5538            #
5539            # Result of a histogram call. The response contains the histogram map for the
5540            # search type specified by HistogramResult.field.
5541            # The response is a map of each filter value to the corresponding count of
5542            # jobs for that filter.
5543          "values": { # A map from the values of field to the number of jobs with that value
5544              # in this search result.
5545              #
5546              # Key: search type (filter names, such as the companyName).
5547              #
5548              # Values: the count of jobs that match the filter for this search.
5549            "a_key": 42,
5550          },
5551          "searchType": "A String", # The Histogram search filters.
5552        },
5553      ],
5554      "compensationHistogramResults": [ # Specifies compensation field-based histogram results that match
5555          # HistogramFacets.compensation_histogram_requests.
5556        { # Output only.
5557            #
5558            # Compensation based histogram result.
5559          "type": "A String", # Type of the request, corresponding to
5560              # CompensationHistogramRequest.type.
5561          "result": { # Output only. # Histogram result.
5562              #
5563              # Custom numeric bucketing result.
5564            "counts": [ # Count within each bucket. Its size is the length of
5565                # NumericBucketingOption.bucket_bounds plus 1.
5566              { # Represents count of jobs within one bucket.
5567                "count": 42, # Number of jobs whose numeric field value fall into `range`.
5568                "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
5569                    # that is, the count represents number of jobs in this range.
5570                  "to": 3.14, # Ending value of the bucket range.
5571                  "from": 3.14, # Starting value of the bucket range.
5572                },
5573              },
5574            ],
5575            "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
5576                # [NumericBucketingOption.requires_min_max] is set to true.
5577            "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
5578                # [NumericBucketingOption.requires_min_max] is set to true.
5579          },
5580        },
5581      ],
5582    },
5583    "broadenedQueryJobsCount": 42, # If query broadening is enabled, we may append additional results from the
5584        # broadened query. This number indicates how many of the jobs returned in the
5585        # jobs field are from the broadened query. These results are always at the
5586        # end of the jobs list. In particular, a value of 0, or if the field isn't
5587        # set, all the jobs in the jobs list are from the original
5588        # (without broadening) query. If this field is non-zero, subsequent requests
5589        # with offset after this result set should contain all broadened results.
5590    "locationFilters": [ # The location filters that the service applied to the specified query. If
5591        # any filters are lat-lng based, the JobLocation.location_type is
5592        # JobLocation.LocationType#LOCATION_TYPE_UNSPECIFIED.
5593      { # Output only.
5594          #
5595          # A resource that represents a location with full geographic information.
5596        "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
5597            # location bounding box in which a circle with the specified radius
5598            # centered from LatLng covers the area associated with the job location.
5599            # For example, currently, "Mountain View, CA, USA" has a radius of
5600            # 6.17 miles.
5601        "locationType": "A String", # The type of a location, which corresponds to the address lines field of
5602            # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
5603            # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
5604            # LocationType#LOCALITY.
5605        "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
5606            # of doubles representing degrees latitude and degrees longitude. Unless
5607            # specified otherwise, this must conform to the
5608            # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
5609            # standard</a>. Values must be within normalized ranges.
5610          "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
5611          "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
5612        },
5613        "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
5614            # such as postal delivery and payments addresses. Given a postal address,
5615            # a postal service can deliver items to a premises, P.O. Box, or other
5616            # delivery location.
5617            # Given a postal address, a postal service can deliver items to a premise, P.O.
5618            # Box or similar.
5619            # It is not intended to model geographical locations (roads, towns,
5620            # mountains).
5621            #
5622            # In typical usage an address would be created via user input or from importing
5623            # existing data, depending on the type of process.
5624            #
5625            # Advice on address input / editing:
5626            #  - Use an i18n-ready address widget such as
5627            #    https://github.com/googlei18n/libaddressinput)
5628            # - Users should not be presented with UI elements for input or editing of
5629            #   fields outside countries where that field is used.
5630            #
5631            # For more guidance on how to use this schema, please see:
5632            # https://support.google.com/business/answer/6397478
5633          "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
5634              # known). This is often the UI language of the input form or is expected
5635              # to match one of the languages used in the address' country/region, or their
5636              # transliterated equivalents.
5637              # This can affect formatting in certain countries, but is not critical
5638              # to the correctness of the data and will never affect any validation or
5639              # other non-formatting related operations.
5640              #
5641              # If this value is not known, it should be omitted (rather than specifying a
5642              # possibly incorrect default).
5643              #
5644              # Examples: "zh-Hant", "ja", "ja-Latn", "en".
5645          "recipients": [ # Optional. The recipient at the address.
5646              # This field may, under certain circumstances, contain multiline information.
5647              # For example, it might contain "care of" information.
5648            "A String",
5649          ],
5650          "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
5651              # Examples: US city, IT comune, UK post town.
5652              # In regions of the world where localities are not well defined or do not fit
5653              # into this structure well, leave locality empty and use address_lines.
5654          "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
5655              # in most regions. Where it is used, the value is either a string like
5656              # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
5657              # alone, representing the "sector code" (Jamaica), "delivery area indicator"
5658              # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
5659          "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
5660              # is never inferred and it is up to the user to ensure the value is
5661              # correct. See http://cldr.unicode.org/ and
5662              # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
5663              # for details. Example: "CH" for Switzerland.
5664          "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
5665              # addresses of a country or region.
5666              # For example, this can be a state, a province, an oblast, or a prefecture.
5667              # Specifically, for Spain this is the province and not the autonomous
5668              # community (e.g. "Barcelona" and not "Catalonia").
5669              # Many countries don't use an administrative area in postal addresses. E.g.
5670              # in Switzerland this should be left unpopulated.
5671          "addressLines": [ # Unstructured address lines describing the lower levels of an address.
5672              #
5673              # Because values in address_lines do not have type information and may
5674              # sometimes contain multiple values in a single field (e.g.
5675              # "Austin, TX"), it is important that the line order is clear. The order of
5676              # address lines should be "envelope order" for the country/region of the
5677              # address. In places where this can vary (e.g. Japan), address_language is
5678              # used to make it explicit (e.g. "ja" for large-to-small ordering and
5679              # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
5680              # an address can be selected based on the language.
5681              #
5682              # The minimum permitted structural representation of an address consists
5683              # of a region_code with all remaining information placed in the
5684              # address_lines. It would be possible to format such an address very
5685              # approximately without geocoding, but no semantic reasoning could be
5686              # made about any of the address components until it was at least
5687              # partially resolved.
5688              #
5689              # Creating an address only containing a region_code and address_lines, and
5690              # then geocoding is the recommended way to handle completely unstructured
5691              # addresses (as opposed to guessing which parts of the address should be
5692              # localities or administrative areas).
5693            "A String",
5694          ],
5695          "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
5696              # postal codes to be present, but where they are used, they may trigger
5697              # additional validation with other parts of the address (e.g. state/zip
5698              # validation in the U.S.A.).
5699          "organization": "A String", # Optional. The name of the organization at the address.
5700          "sublocality": "A String", # Optional. Sublocality of the address.
5701              # For example, this can be neighborhoods, boroughs, districts.
5702          "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
5703              # the latest revision.
5704              #
5705              # All new revisions **must** be backward compatible with old revisions.
5706        },
5707      },
5708    ],
5709    "metadata": { # Output only. # Additional information for the API invocation, such as the request
5710        # tracking id.
5711        #
5712        # Additional information returned to client, such as debugging information.
5713      "requestId": "A String", # A unique id associated with this call.
5714          # This id is logged for tracking purposes.
5715    },
5716  }</pre>
5717</div>
5718
5719<div class="method">
5720    <code class="details" id="searchForAlert">searchForAlert(parent, body, x__xgafv=None)</code>
5721  <pre>Searches for jobs using the provided SearchJobsRequest.
5722
5723This API call is intended for the use case of targeting passive job
5724seekers (for example, job seekers who have signed up to receive email
5725alerts about potential job opportunities), and has different algorithmic
5726adjustments that are targeted to passive job seekers.
5727
5728This call constrains the visibility of jobs
5729present in the database, and only returns jobs the caller has
5730permission to search against.
5731
5732Args:
5733  parent: string, Required.
5734
5735The resource name of the project to search within.
5736
5737The format is "projects/{project_id}", for example,
5738"projects/api-test-project". (required)
5739  body: object, The request body. (required)
5740    The object takes the form of:
5741
5742{ # Input only.
5743      #
5744      # The Request body of the `SearchJobs` call.
5745    "orderBy": "A String", # Optional.
5746        #
5747        # The criteria determining how search results are sorted. Default is
5748        # "relevance desc".
5749        #
5750        # Supported options are:
5751        #
5752        # * "relevance desc": By relevance descending, as determined by the API
5753        # algorithms. Relevance thresholding of query results is only available
5754        # with this ordering.
5755        # * "posting`_`publish`_`time desc": By Job.posting_publish_time
5756        # descending.
5757        # * "posting`_`update`_`time desc": By Job.posting_update_time
5758        # descending.
5759        # * "title": By Job.title ascending.
5760        # * "title desc": By Job.title descending.
5761        # * "annualized`_`base`_`compensation": By job's
5762        # CompensationInfo.annualized_base_compensation_range ascending. Jobs
5763        # whose annualized base compensation is unspecified are put at the end of
5764        # search results.
5765        # * "annualized`_`base`_`compensation desc": By job's
5766        # CompensationInfo.annualized_base_compensation_range descending. Jobs
5767        # whose annualized base compensation is unspecified are put at the end of
5768        # search results.
5769        # * "annualized`_`total`_`compensation": By job's
5770        # CompensationInfo.annualized_total_compensation_range ascending. Jobs
5771        # whose annualized base compensation is unspecified are put at the end of
5772        # search results.
5773        # * "annualized`_`total`_`compensation desc": By job's
5774        # CompensationInfo.annualized_total_compensation_range descending. Jobs
5775        # whose annualized base compensation is unspecified are put at the end of
5776        # search results.
5777        # * "custom`_`ranking desc": By the relevance score adjusted to the
5778        # SearchJobsRequest.custom_ranking_info.ranking_expression with weight
5779        # factor assigned by
5780        # SearchJobsRequest.custom_ranking_info.importance_level in descending
5781        # order.
5782        # * "location`_`distance": By the distance between the location on jobs and
5783        #  locations specified in the
5784        # SearchJobsRequest.job_query.location_filters.
5785        # When this order is selected, the
5786        # SearchJobsRequest.job_query.location_filters must not be empty. When
5787        # a job has multiple locations, the location closest to one of the locations
5788        # specified in the location filter will be used to calculate location
5789        # distance. Distance is calculated by the distance between two lat/long
5790        # coordinates, with a precision of 10e-4 degrees (11.3 meters).
5791        # Jobs that don't have locations specified will be ranked below jobs having
5792        # locations.
5793        # Diversification strategy is still applied unless explicitly disabled in
5794        # SearchJobsRequest.diversification_level.
5795    "histogramFacets": { # Input only. # Optional.
5796        #
5797        # Histogram requests for jobs matching JobQuery.
5798        #
5799        # Histogram facets to be specified in SearchJobsRequest.
5800      "simpleHistogramFacets": [ # Optional.
5801          #
5802          # Specifies the simple type of histogram facets, for example,
5803          # `COMPANY_SIZE`, `EMPLOYMENT_TYPE` etc.
5804        "A String",
5805      ],
5806      "customAttributeHistogramFacets": [ # Optional.
5807          #
5808          # Specifies the custom attributes histogram requests.
5809          # Duplicate values of CustomAttributeHistogramRequest.key are not
5810          # allowed.
5811        { # Custom attributes histogram request. An error is thrown if neither
5812            # string_value_histogram or long_value_histogram_bucketing_option has
5813            # been defined.
5814          "stringValueHistogram": True or False, # Optional. If set to true, the response includes the histogram value for
5815              # each key as a string.
5816          "longValueHistogramBucketingOption": { # Input only. # Optional.
5817              #
5818              # Specifies buckets used to perform a range histogram on Job's
5819              # filterable long custom field values, or min/max value requirements.
5820              #
5821              # Use this field to specify bucketing option for the histogram search response.
5822            "bucketBounds": [ # Required.
5823                #
5824                # Two adjacent values form a histogram bucket. Values should be in
5825                # ascending order. For example, if [5, 10, 15] are provided, four buckets are
5826                # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
5827                # [buckets_bound is supported.
5828              3.14,
5829            ],
5830            "requiresMinMax": True or False, # Optional.
5831                #
5832                # If set to true, the histogram result includes minimum/maximum
5833                # value of the numeric field.
5834          },
5835          "key": "A String", # Required.
5836              #
5837              # Specifies the custom field key to perform a histogram on. If specified
5838              # without `long_value_histogram_bucketing_option`, histogram on string values
5839              # of the given `key` is triggered, otherwise histogram is performed on long
5840              # values.
5841        },
5842      ],
5843      "compensationHistogramFacets": [ # Optional.
5844          #
5845          # Specifies compensation field-based histogram requests.
5846          # Duplicate values of CompensationHistogramRequest.type are not allowed.
5847        { # Input only.
5848            #
5849            # Compensation based histogram request.
5850          "bucketingOption": { # Input only. # Required.
5851              #
5852              # Numeric histogram options, like buckets, whether include min or max value.
5853              #
5854              # Use this field to specify bucketing option for the histogram search response.
5855            "bucketBounds": [ # Required.
5856                #
5857                # Two adjacent values form a histogram bucket. Values should be in
5858                # ascending order. For example, if [5, 10, 15] are provided, four buckets are
5859                # created: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20
5860                # [buckets_bound is supported.
5861              3.14,
5862            ],
5863            "requiresMinMax": True or False, # Optional.
5864                #
5865                # If set to true, the histogram result includes minimum/maximum
5866                # value of the numeric field.
5867          },
5868          "type": "A String", # Required.
5869              #
5870              # Type of the request, representing which field the histogramming should be
5871              # performed over. A single request can only specify one histogram of each
5872              # `CompensationHistogramRequestType`.
5873        },
5874      ],
5875    },
5876    "disableKeywordMatch": True or False, # Optional.
5877        #
5878        # Controls whether to disable exact keyword match on Job.job_title,
5879        # Job.description, Job.company_display_name, Job.locations,
5880        # Job.qualifications. When disable keyword match is turned off, a
5881        # keyword match returns jobs that do not match given category filters when
5882        # there are matching keywords. For example, the query "program manager," a
5883        # result is returned even if the job posting has the title "software
5884        # developer," which does not fall into "program manager" ontology, but does
5885        # have "program manager" appearing in its description.
5886        #
5887        # For queries like "cloud" that does not contain title or
5888        # location specific ontology, jobs with "cloud" keyword matches are returned
5889        # regardless of this flag's value.
5890        #
5891        # Please use Company.keyword_searchable_custom_fields or
5892        # Company.keyword_searchable_custom_attributes if company specific
5893        # globally matched custom field/attribute string values is needed. Enabling
5894        # keyword match improves recall of subsequent search requests.
5895        #
5896        # Defaults to false.
5897    "jobQuery": { # Input only. # Optional.
5898        #
5899        # Query used to search against jobs, such as keyword, location filters, etc.
5900        #
5901        # The query required to perform a search query.
5902      "excludedJobs": [ # Optional.
5903          #
5904          # This filter specifies a list of job names to be excluded during search.
5905          #
5906          # At most 400 excluded job names are allowed.
5907        "A String",
5908      ],
5909      "disableSpellCheck": True or False, # Optional.
5910          #
5911          # This flag controls the spell-check feature. If false, the
5912          # service attempts to correct a misspelled query,
5913          # for example, "enginee" is corrected to "engineer".
5914          #
5915          # Defaults to false: a spell check is performed.
5916      "customAttributeFilter": "A String", # Optional.
5917          #
5918          # This filter specifies a structured syntax to match against the
5919          # Job.custom_attributes marked as `filterable`.
5920          #
5921          # The syntax for this expression is a subset of SQL syntax.
5922          #
5923          # Supported operators are: `=`, `!=`, `<`, `<=`, `>`, and `>=` where the
5924          # left of the operator is a custom field key and the right of the operator
5925          # is a number or a quoted string. You must escape backslash (\\) and
5926          # quote (\") characters.
5927          #
5928          # Supported functions are `LOWER([field_name])` to
5929          # perform a case insensitive match and `EMPTY([field_name])` to filter on the
5930          # existence of a key.
5931          #
5932          # Boolean expressions (AND/OR/NOT) are supported up to 3 levels of
5933          # nesting (for example, "((A AND B AND C) OR NOT D) AND E"), a maximum of 100
5934          # comparisons or functions are allowed in the expression. The expression
5935          # must be < 3000 bytes in length.
5936          #
5937          # Sample Query:
5938          # `(LOWER(driving_license)="class \"a\"" OR EMPTY(driving_license)) AND
5939          # driving_years > 10`
5940      "employmentTypes": [ # Optional.
5941          #
5942          # The employment type filter specifies the employment type of jobs to
5943          # search against, such as EmploymentType.FULL_TIME.
5944          #
5945          # If a value is not specified, jobs in the search results includes any
5946          # employment type.
5947          #
5948          # If multiple values are specified, jobs in the search results include
5949          # any of the specified employment types.
5950        "A String",
5951      ],
5952      "query": "A String", # Optional.
5953          #
5954          # The query string that matches against the job title, description, and
5955          # location fields.
5956          #
5957          # The maximum number of allowed characters is 255.
5958      "publishTimeRange": { # Message representing a period of time between two timestamps. # Optional.
5959          #
5960          # Jobs published within a range specified by this filter are searched
5961          # against.
5962        "endTime": "A String", # End of the period.
5963        "startTime": "A String", # Begin of the period.
5964      },
5965      "commuteFilter": { # Input only. # Optional.
5966          #
5967          #  Allows filtering jobs by commute time with different travel methods (for
5968          #  example, driving or public transit). Note: This only works with COMMUTE
5969          #  MODE. When specified, [JobQuery.location_filters] is
5970          #  ignored.
5971          #
5972          #  Currently we don't support sorting by commute time.
5973          #
5974          # Parameters needed for commute search.
5975        "departureTime": { # Represents a time of day. The date and time zone are either not significant # Optional.
5976            #
5977            # The departure time used to calculate traffic impact, represented as
5978            # google.type.TimeOfDay in local time zone.
5979            #
5980            # Currently traffic model is restricted to hour level resolution.
5981            # or are specified elsewhere. An API may choose to allow leap seconds. Related
5982            # types are google.type.Date and `google.protobuf.Timestamp`.
5983          "nanos": 42, # Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.
5984          "seconds": 42, # Seconds of minutes of the time. Must normally be from 0 to 59. An API may
5985              # allow the value 60 if it allows leap-seconds.
5986          "hours": 42, # Hours of day in 24 hour format. Should be from 0 to 23. An API may choose
5987              # to allow the value "24:00:00" for scenarios like business closing time.
5988          "minutes": 42, # Minutes of hour of day. Must be from 0 to 59.
5989        },
5990        "roadTraffic": "A String", # Optional.
5991            #
5992            # Specifies the traffic density to use when calculating commute time.
5993        "startCoordinates": { # An object representing a latitude/longitude pair. This is expressed as a pair # Required.
5994            #
5995            # The latitude and longitude of the location from which to calculate the
5996            # commute time.
5997            # of doubles representing degrees latitude and degrees longitude. Unless
5998            # specified otherwise, this must conform to the
5999            # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
6000            # standard</a>. Values must be within normalized ranges.
6001          "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
6002          "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
6003        },
6004        "allowImpreciseAddresses": True or False, # Optional.
6005            # If true, jobs without "precise" addresses (street level addresses or GPS
6006            # coordinates) might also be returned. For city and coarser level addresses,
6007            # text matching is used. If this field is set to false or is not specified,
6008            # only jobs that include precise addresses are returned by Commute
6009            # Search.
6010            #
6011            # Note: If `allow_imprecise_addresses` is set to true, Commute Search is not
6012            # able to calculate accurate commute times to jobs with city level and
6013            # coarser address information. Jobs with imprecise addresses will return a
6014            # `travel_duration` time of 0 regardless of distance from the job seeker.
6015        "commuteMethod": "A String", # Required.
6016            #
6017            # The method of transportation for which to calculate the commute time.
6018        "travelDuration": "A String", # Required.
6019            #
6020            # The maximum travel time in seconds. The maximum allowed value is `3600s`
6021            # (one hour). Format is `123s`.
6022      },
6023      "jobCategories": [ # Optional.
6024          #
6025          # The category filter specifies the categories of jobs to search against.
6026          # See Category for more information.
6027          #
6028          # If a value is not specified, jobs from any category are searched against.
6029          #
6030          # If multiple values are specified, jobs from any of the specified
6031          # categories are searched against.
6032        "A String",
6033      ],
6034      "languageCodes": [ # Optional.
6035          #
6036          # This filter specifies the locale of jobs to search against,
6037          # for example, "en-US".
6038          #
6039          # If a value isn't specified, the search results can contain jobs in any
6040          # locale.
6041          #
6042          #
6043          # Language codes should be in BCP-47 format, such as "en-US" or "sr-Latn".
6044          # For more information, see
6045          # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
6046          #
6047          # At most 10 language code filters are allowed.
6048        "A String",
6049      ],
6050      "companyNames": [ # Optional.
6051          #
6052          # This filter specifies the company entities to search against.
6053          #
6054          # If a value isn't specified, jobs are searched for against all
6055          # companies.
6056          #
6057          # If multiple values are specified, jobs are searched against the
6058          # companies specified.
6059          #
6060          # The format is "projects/{project_id}/companies/{company_id}", for example,
6061          # "projects/api-test-project/companies/foo".
6062          #
6063          # At most 20 company filters are allowed.
6064        "A String",
6065      ],
6066      "companyDisplayNames": [ # Optional.
6067          #
6068          # This filter specifies the exact company display
6069          # name of the jobs to search against.
6070          #
6071          # If a value isn't specified, jobs within the search results are
6072          # associated with any company.
6073          #
6074          # If multiple values are specified, jobs within the search results may be
6075          # associated with any of the specified companies.
6076          #
6077          # At most 20 company display name filters are allowed.
6078        "A String",
6079      ],
6080      "locationFilters": [ # Optional.
6081          #
6082          # The location filter specifies geo-regions containing the jobs to
6083          # search against. See LocationFilter for more information.
6084          #
6085          # If a location value isn't specified, jobs fitting the other search
6086          # criteria are retrieved regardless of where they're located.
6087          #
6088          # If multiple values are specified, jobs are retrieved from any of the
6089          # specified locations. If different values are specified for the
6090          # LocationFilter.distance_in_miles parameter, the maximum provided
6091          # distance is used for all locations.
6092          #
6093          # At most 5 location filters are allowed.
6094        { # Input only.
6095            #
6096            # Geographic region of the search.
6097          "regionCode": "A String", # Optional.
6098              #
6099              # CLDR region code of the country/region of the address. This is used
6100              # to address ambiguity of the user-input location, for example, "Liverpool"
6101              # against "Liverpool, NY, US" or "Liverpool, UK".
6102              #
6103              # Set this field if all the jobs to search against are from a same region,
6104              # or jobs are world-wide, but the job seeker is from a specific region.
6105              #
6106              # See http://cldr.unicode.org/ and
6107              # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
6108              # for details. Example: "CH" for Switzerland.
6109          "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # Optional.
6110              #
6111              # The latitude and longitude of the geographic center from which to
6112              # search. This field's ignored if `address` is provided.
6113              # of doubles representing degrees latitude and degrees longitude. Unless
6114              # specified otherwise, this must conform to the
6115              # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
6116              # standard</a>. Values must be within normalized ranges.
6117            "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
6118            "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
6119          },
6120          "distanceInMiles": 3.14, # Optional.
6121              #
6122              #
6123              # The distance_in_miles is applied when the location being searched for is
6124              # identified as a city or smaller. When the location being searched for is a
6125              # state or larger, this field is ignored.
6126          "telecommutePreference": "A String", # Optional.
6127              #
6128              # Allows the client to return jobs without a
6129              # set location, specifically, telecommuting jobs (telecomuting is considered
6130              # by the service as a special location.
6131              # Job.posting_region indicates if a job permits telecommuting.
6132              # If this field is set to TelecommutePreference.TELECOMMUTE_ALLOWED,
6133              # telecommuting jobs are searched, and address and lat_lng are
6134              # ignored. If not set or set to
6135              # TelecommutePreference.TELECOMMUTE_EXCLUDED, telecommute job are not
6136              # searched.
6137              #
6138              # This filter can be used by itself to search exclusively for telecommuting
6139              # jobs, or it can be combined with another location
6140              # filter to search for a combination of job locations,
6141              # such as "Mountain View" or "telecommuting" jobs. However, when used in
6142              # combination with other location filters, telecommuting jobs can be
6143              # treated as less relevant than other jobs in the search response.
6144          "address": "A String", # Optional.
6145              #
6146              # The address name, such as "Mountain View" or "Bay Area".
6147        },
6148      ],
6149      "compensationFilter": { # Input only. # Optional.
6150          #
6151          # This search filter is applied only to
6152          # Job.compensation_info. For example, if the filter is specified
6153          # as "Hourly job with per-hour compensation > $15", only jobs meeting
6154          # these criteria are searched. If a filter isn't defined, all open jobs
6155          # are searched.
6156          #
6157          # Filter on job compensation type and amount.
6158        "units": [ # Required.
6159            #
6160            # Specify desired `base compensation entry's`
6161            # CompensationInfo.CompensationUnit.
6162          "A String",
6163        ],
6164        "range": { # Compensation range. # Optional.
6165            #
6166            # Compensation range.
6167          "minCompensation": { # Represents an amount of money with its currency type. # Optional.
6168              #
6169              # The minimum amount of compensation. If left empty, the value is set
6170              # to zero and the currency code is set to match the
6171              # currency code of max_compensation.
6172            "nanos": 42, # Number of nano (10^-9) units of the amount.
6173                # The value must be between -999,999,999 and +999,999,999 inclusive.
6174                # If `units` is positive, `nanos` must be positive or zero.
6175                # If `units` is zero, `nanos` can be positive, zero, or negative.
6176                # If `units` is negative, `nanos` must be negative or zero.
6177                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6178            "units": "A String", # The whole units of the amount.
6179                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6180            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6181          },
6182          "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
6183              #
6184              # The maximum amount of compensation. If left empty, the value is set
6185              # to a maximal compensation value and the currency code is set to
6186              # match the currency code of
6187              # min_compensation.
6188            "nanos": 42, # Number of nano (10^-9) units of the amount.
6189                # The value must be between -999,999,999 and +999,999,999 inclusive.
6190                # If `units` is positive, `nanos` must be positive or zero.
6191                # If `units` is zero, `nanos` can be positive, zero, or negative.
6192                # If `units` is negative, `nanos` must be negative or zero.
6193                # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6194            "units": "A String", # The whole units of the amount.
6195                # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6196            "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6197          },
6198        },
6199        "type": "A String", # Required.
6200            #
6201            # Type of filter.
6202        "includeJobsWithUnspecifiedCompensationRange": True or False, # Optional.
6203            #
6204            # If set to true, jobs with unspecified compensation range fields are
6205            # included.
6206      },
6207    },
6208    "pageSize": 42, # Optional.
6209        #
6210        # A limit on the number of jobs returned in the search results.
6211        # Increasing this value above the default value of 10 can increase search
6212        # response time. The value can be between 1 and 100.
6213    "diversificationLevel": "A String", # Optional.
6214        #
6215        # Controls whether highly similar jobs are returned next to each other in
6216        # the search results. Jobs are identified as highly similar based on
6217        # their titles, job categories, and locations. Highly similar results are
6218        # clustered so that only one representative job of the cluster is
6219        # displayed to the job seeker higher up in the results, with the other jobs
6220        # being displayed lower down in the results.
6221        #
6222        # Defaults to DiversificationLevel.SIMPLE if no value
6223        # is specified.
6224    "customRankingInfo": { # Input only. # Optional.
6225        #
6226        # Controls over how job documents get ranked on top of existing relevance
6227        # score (determined by API algorithm).
6228        #
6229        # Custom ranking information for SearchJobsRequest.
6230      "rankingExpression": "A String", # Required.
6231          #
6232          # Controls over how job documents get ranked on top of existing relevance
6233          # score (determined by API algorithm). The product of ranking expression
6234          # and relevance score is used to determine job's final ranking position.
6235          #
6236          # The syntax for this expression is a subset of Google SQL syntax.
6237          #
6238          # Supported operators are: +, -, *, /, where the left and right side of
6239          # the operator is either a numeric Job.custom_attributes key,
6240          # integer/double value or an expression that can be evaluated to a number.
6241          #
6242          # Parenthesis are supported to adjust calculation precedence. The
6243          # expression must be < 100 characters in length.
6244          #
6245          # Sample ranking expression
6246          # (year + 25) * 0.25 - (freshness / 0.5)
6247      "importanceLevel": "A String", # Required.
6248          #
6249          # Controls over how important the score of
6250          # CustomRankingInfo.ranking_expression gets applied to job's final
6251          # ranking position.
6252          #
6253          # An error is thrown if not specified.
6254    },
6255    "enableBroadening": True or False, # Optional.
6256        #
6257        # Controls whether to broaden the search when it produces sparse results.
6258        # Broadened queries append results to the end of the matching results
6259        # list.
6260        #
6261        # Defaults to false.
6262    "searchMode": "A String", # Optional.
6263        #
6264        # Mode of a search.
6265        #
6266        # Defaults to SearchMode.JOB_SEARCH.
6267    "pageToken": "A String", # Optional.
6268        #
6269        # The token specifying the current offset within
6270        # search results. See SearchJobsResponse.next_page_token for
6271        # an explanation of how to obtain the next set of query results.
6272    "histogramQueries": [ # Optional.
6273        #
6274        # Expression based histogram requests for jobs matching JobQuery.
6275      { # Input Only.
6276          #
6277          # The histogram request.
6278        "histogramQuery": "A String", # An expression specifies a histogram request against matching resources
6279            # (for example, jobs) for searches.
6280            #
6281            # Expression syntax is a aggregation function call with histogram facets and
6282            # other options.
6283            #
6284            # Available aggregation function calls are:
6285            # * `count(string_histogram_facet)`: Count the number of matching entity, for
6286            #   each distinct attribute value.
6287            # * `count(numeric_histogram_facet, list of buckets)`: Count the number of
6288            #    matching entity within each bucket.
6289            #
6290            # Data types:
6291            #
6292            # * Histogram facet: facet names with format a-zA-Z+.
6293            # * String: string like "any string with backslash escape for quote(\")."
6294            # * Number: whole number and floating point number like 10, -1 and -0.01.
6295            # * List: list of elements with comma(,) separator surrounded by square
6296            # brackets. For example, [1, 2, 3] and ["one", "two", "three"].
6297            #
6298            # Built-in constants:
6299            #
6300            # * MIN (minimum number similar to java Double.MIN_VALUE)
6301            # * MAX (maximum number similar to java Double.MAX_VALUE)
6302            #
6303            # Built-in functions:
6304            #
6305            # * bucket(start, end[, label]): bucket built-in function creates a bucket
6306            # with range of start, end). Note that the end is exclusive. For example,
6307            # bucket(1, MAX, "positive number") or bucket(1, 10).
6308            #
6309            # Job histogram facets:
6310            #
6311            # * company_id: histogram by [Job.distributor_company_id.
6312            # * company_display_name: histogram by Job.company_display_name.
6313            # * employment_type: histogram by Job.employment_types. For example,
6314            # "FULL_TIME", "PART_TIME".
6315            # * company_size: histogram by CompanySize, for example, "SMALL",
6316            # "MEDIUM", "BIG".
6317            # * publish_time_in_month: histogram by the Job.publish_time in months.
6318            # Must specify list of numeric buckets in spec.
6319            # * publish_time_in_year: histogram by the Job.publish_time in years.
6320            # Must specify list of numeric buckets in spec.
6321            # * degree_type: histogram by the Job.degree_type. For example,
6322            # "Bachelors", "Masters".
6323            # * job_level: histogram by the Job.job_level. For example, "Entry
6324            # Level".
6325            # * country: histogram by the country code of jobs. For example, "US", "FR".
6326            # * admin1: histogram by the admin1 code of jobs, which is a global
6327            # placeholder referring to the state, province, or the particular term a
6328            # country uses to define the geographic structure below the country level.
6329            # For example, "CA", "IL".
6330            # * city: histogram by a combination of the "city name, admin1 code". For
6331            # example,  "Mountain View, CA", "New York, NY".
6332            # * admin1_country: histogram by a combination of the "admin1 code, country".
6333            # For example, "CA, US", "IL, US".
6334            # * city_coordinate: histogram by the city center's GPS coordinates (latitude
6335            # and longitude). For example, 37.4038522,-122.0987765. Since the coordinates
6336            # of a city center can change, customers may need to refresh them
6337            # periodically.
6338            # * locale: histogram by the Job.language_code. For example, "en-US",
6339            # "fr-FR".
6340            # * language: histogram by the language subtag of the Job.language_code.
6341            # For example, "en", "fr".
6342            # * category: histogram by the JobCategory. For example,
6343            # "COMPUTER_AND_IT", "HEALTHCARE".
6344            # * base_compensation_unit: histogram by the CompensationUnit of base
6345            # salary. For example, "WEEKLY", "MONTHLY".
6346            # * base_compensation: histogram by the base salary. Must specify list of
6347            # numeric buckets to group results by.
6348            # * annualized_base_compensation: histogram by the base annualized salary.
6349            # Must specify list of numeric buckets to group results by.
6350            # * annualized_total_compensation: histogram by the total annualized salary.
6351            # Must specify list of numeric buckets to group results by.
6352            # * string_custom_attribute: histogram by string Job.custom_attributes.
6353            # Values can be accessed via square bracket notations like
6354            # string_custom_attribute["key1"].
6355            # * numeric_custom_attribute: histogram by numeric Job.custom_attributes.
6356            # Values can be accessed via square bracket notations like
6357            # numeric_custom_attribute["key1"]. Must specify list of numeric buckets to
6358            # group results by.
6359            #
6360            # Example expressions:
6361            # * count(admin1)
6362            # * count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000),
6363            # bucket(100000, MAX)])
6364            # * count(string_custom_attribute["some-string-custom-attribute"])
6365            # * count(numeric_custom_attribute["some-numeric-custom-attribute"],
6366            # [bucket(MIN, 0, "negative"), bucket(0, MAX, "non-negative"])
6367      },
6368    ],
6369    "requestMetadata": { # Input only. # Required.
6370        #
6371        # The meta information collected about the job searcher, used to improve the
6372        # search quality of the service.. The identifiers, (such as `user_id`) are
6373        # provided by users, and must be unique and consistent.
6374        #
6375        # Meta information related to the job searcher or entity
6376        # conducting the job search. This information is used to improve the
6377        # performance of the service.
6378      "deviceInfo": { # Device information collected from the job seeker, candidate, or # Optional.
6379          #
6380          # The type of device used by the job seeker at the time of the call to the
6381          # service.
6382          # other entity conducting the job search. Providing this information improves
6383          # the quality of the search results across devices.
6384        "deviceType": "A String", # Optional.
6385            #
6386            # Type of the device.
6387        "id": "A String", # Optional.
6388            #
6389            # A device-specific ID. The ID must be a unique identifier that
6390            # distinguishes the device from other devices.
6391      },
6392      "domain": "A String", # Required.
6393          #
6394          # The client-defined scope or source of the service call, which typically
6395          # is the domain on
6396          # which the service has been implemented and is currently being run.
6397          #
6398          # For example, if the service is being run by client <em>Foo, Inc.</em>, on
6399          # job board www.foo.com and career site www.bar.com, then this field is
6400          # set to "foo.com" for use on the job board, and "bar.com" for use on the
6401          # career site.
6402          #
6403          # If this field isn't available for some reason, send "UNKNOWN".
6404          # Any improvements to the model for a particular tenant site rely on this
6405          # field being set correctly to a domain.
6406          #
6407          # The maximum number of allowed characters is 255.
6408      "userId": "A String", # Required.
6409          #
6410          # A unique user identification string, as determined by the client.
6411          # To have the strongest positive impact on search quality
6412          # make sure the client-level is unique.
6413          # Obfuscate this field for privacy concerns before
6414          # providing it to the service.
6415          #
6416          # If this field is not available for some reason, send "UNKNOWN". Note
6417          # that any improvements to the model for a particular tenant
6418          # site, rely on this field being set correctly to a unique user_id.
6419          #
6420          # The maximum number of allowed characters is 255.
6421      "sessionId": "A String", # Required.
6422          #
6423          # A unique session identification string. A session is defined as the
6424          # duration of an end user's interaction with the service over a certain
6425          # period.
6426          # Obfuscate this field for privacy concerns before
6427          # providing it to the service.
6428          #
6429          # If this field is not available for some reason, send "UNKNOWN". Note
6430          # that any improvements to the model for a particular tenant
6431          # site, rely on this field being set correctly to some unique session_id.
6432          #
6433          # The maximum number of allowed characters is 255.
6434    },
6435    "requirePreciseResultSize": True or False, # Optional.
6436        #
6437        # Controls if the search job request requires the return of a precise
6438        # count of the first 300 results. Setting this to `true` ensures
6439        # consistency in the number of results per page. Best practice is to set this
6440        # value to true if a client allows users to jump directly to a
6441        # non-sequential search results page.
6442        #
6443        # Enabling this flag may adversely impact performance.
6444        #
6445        # Defaults to false.
6446    "jobView": "A String", # Optional.
6447        #
6448        # The desired job attributes returned for jobs in the
6449        # search response. Defaults to JobView.SMALL if no value is specified.
6450    "offset": 42, # Optional.
6451        #
6452        # An integer that specifies the current offset (that is, starting result
6453        # location, amongst the jobs deemed by the API as relevant) in search
6454        # results. This field is only considered if page_token is unset.
6455        #
6456        # For example, 0 means to  return results starting from the first matching
6457        # job, and 10 means to return from the 11th job. This can be used for
6458        # pagination, (for example, pageSize = 10 and offset = 10 means to return
6459        # from the second page).
6460  }
6461
6462  x__xgafv: string, V1 error format.
6463    Allowed values
6464      1 - v1 error format
6465      2 - v2 error format
6466
6467Returns:
6468  An object of the form:
6469
6470    { # Output only.
6471      #
6472      # Response for SearchJob method.
6473    "nextPageToken": "A String", # The token that specifies the starting position of the next page of results.
6474        # This field is empty if there are no more results.
6475    "histogramQueryResults": [ # The histogram results that match with specified
6476        # SearchJobsRequest.histogram_queries.
6477      { # Output only.
6478          #
6479          # Histogram result that matches HistogramSpec specified in searches.
6480        "histogramQuery": "A String", # Requested histogram expression.
6481        "histogram": { # A map from the values of the facet associated with distinct values to the
6482            # number of matching entries with corresponding value.
6483            #
6484            # The key format is:
6485            # * (for string histogram) string values stored in the field.
6486            # * (for named numeric bucket) name specified in `bucket()` function, like
6487            #   for `bucket(0, MAX, "non-negative")`, the key will be `non-negative`.
6488            # * (for anonymous numeric bucket) range formatted as `<low>-<high>`, for
6489            # example, `0-1000`, `MIN-0`, and `0-MAX`.
6490          "a_key": "A String",
6491        },
6492      },
6493    ],
6494    "spellCorrection": { # Output only. # The spell checking result, and correction.
6495        #
6496        # Spell check result.
6497      "corrected": True or False, # Indicates if the query was corrected by the spell checker.
6498      "correctedText": "A String", # Correction output consisting of the corrected keyword string.
6499    },
6500    "estimatedTotalSize": 42, # An estimation of the number of jobs that match the specified query.
6501        #
6502        # This number is not guaranteed to be accurate. For accurate results,
6503        # see enable_precise_result_size.
6504    "totalSize": 42, # The precise result count, which is available only if the client set
6505        # enable_precise_result_size to `true`, or if the response
6506        # is the last page of results. Otherwise, the value is `-1`.
6507    "matchingJobs": [ # The Job entities that match the specified SearchJobsRequest.
6508      { # Output only.
6509          #
6510          # Job entry with metadata inside SearchJobsResponse.
6511        "searchTextSnippet": "A String", # Contains snippets of text from the Job.description and similar
6512            # fields that most closely match a search query's keywords, if available.
6513            # All HTML tags in the original fields are stripped when returned in this
6514            # field, and matching query keywords are enclosed in HTML bold tags.
6515        "job": { # A Job resource represents a job posting (also referred to as a "job listing" # Job resource that matches the specified SearchJobsRequest.
6516            # or "job requisition"). A job belongs to a Company, which is the hiring
6517            # entity responsible for the job.
6518          "languageCode": "A String", # Optional.
6519              #
6520              # The language of the posting. This field is distinct from
6521              # any requirements for fluency that are associated with the job.
6522              #
6523              # Language codes must be in BCP-47 format, such as "en-US" or "sr-Latn".
6524              # For more information, see
6525              # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:
6526              # class="external" target="_blank" }.
6527              #
6528              # If this field is unspecified and Job.description is present, detected
6529              # language code based on Job.description is assigned, otherwise
6530              # defaults to 'en_US'.
6531          "addresses": [ # Optional but strongly recommended for the best service experience.
6532              #
6533              # Location(s) where the employer is looking to hire for this job posting.
6534              #
6535              # Specifying the full street address(es) of the hiring location enables
6536              # better API results, especially job searches by commute time.
6537              #
6538              # At most 50 locations are allowed for best search performance. If a job has
6539              # more locations, it is suggested to split it into multiple jobs with unique
6540              # requisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as
6541              # multiple jobs with the same company_name, language_code and
6542              # requisition_id are not allowed. If the original requisition_id must
6543              # be preserved, a custom field should be used for storage. It is also
6544              # suggested to group the locations that close to each other in the same job
6545              # for better search experience.
6546              #
6547              # The maximum number of allowed characters is 500.
6548            "A String",
6549          ],
6550          "companyDisplayName": "A String", # Output only. Display name of the company listing the job.
6551          "promotionValue": 42, # Optional.
6552              #
6553              # A promotion value of the job, as determined by the client.
6554              # The value determines the sort order of the jobs returned when searching for
6555              # jobs using the featured jobs search call, with higher promotional values
6556              # being returned first and ties being resolved by relevance sort. Only the
6557              # jobs with a promotionValue >0 are returned in a FEATURED_JOB_SEARCH.
6558              #
6559              # Default value is 0, and negative values are treated as 0.
6560          "employmentTypes": [ # Optional.
6561              #
6562              # The employment type(s) of a job, for example,
6563              # full time or
6564              # part time.
6565            "A String",
6566          ],
6567          "jobEndTime": "A String", # Optional.
6568              #
6569              # The end timestamp of the job. Typically this field is used for contracting
6570              # engagements. Invalid timestamps are ignored.
6571          "description": "A String", # Required.
6572              #
6573              # The description of the job, which typically includes a multi-paragraph
6574              # description of the company and related information. Separate fields are
6575              # provided on the job object for responsibilities,
6576              # qualifications, and other job characteristics. Use of
6577              # these separate job fields is recommended.
6578              #
6579              # This field accepts and sanitizes HTML input, and also accepts
6580              # bold, italic, ordered list, and unordered list markup tags.
6581              #
6582              # The maximum number of allowed characters is 100,000.
6583          "postingExpireTime": "A String", # Optional but strongly recommended for the best service
6584              # experience.
6585              #
6586              # The expiration timestamp of the job. After this timestamp, the
6587              # job is marked as expired, and it no longer appears in search results. The
6588              # expired job can't be deleted or listed by the DeleteJob and
6589              # ListJobs APIs, but it can be retrieved with the GetJob API or
6590              # updated with the UpdateJob API. An expired job can be updated and
6591              # opened again by using a future expiration timestamp. Updating an expired
6592              # job fails if there is another existing open job with same company_name,
6593              # language_code and requisition_id.
6594              #
6595              # The expired jobs are retained in our system for 90 days. However, the
6596              # overall expired job count cannot exceed 3 times the maximum of open jobs
6597              # count over the past week, otherwise jobs with earlier expire time are
6598              # cleaned first. Expired jobs are no longer accessible after they are cleaned
6599              # out.
6600              #
6601              # Invalid timestamps are ignored, and treated as expire time not provided.
6602              #
6603              # Timestamp before the instant request is made is considered valid, the job
6604              # will be treated as expired immediately.
6605              #
6606              # If this value is not provided at the time of job creation or is invalid,
6607              # the job posting expires after 30 days from the job's creation time. For
6608              # example, if the job was created on 2017/01/01 13:00AM UTC with an
6609              # unspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.
6610              #
6611              # If this value is not provided on job update, it depends on the field masks
6612              # set by UpdateJobRequest.update_mask. If the field masks include
6613              # expiry_time, or the masks are empty meaning that every field is
6614              # updated, the job posting expires after 30 days from the job's last
6615              # update time. Otherwise the expiration date isn't updated.
6616          "title": "A String", # Required.
6617              #
6618              # The title of the job, such as "Software Engineer"
6619              #
6620              # The maximum number of allowed characters is 500.
6621          "responsibilities": "A String", # Optional.
6622              #
6623              # A description of job responsibilities. The use of this field is
6624              # recommended as an alternative to using the more general description
6625              # field.
6626              #
6627              # This field accepts and sanitizes HTML input, and also accepts
6628              # bold, italic, ordered list, and unordered list markup tags.
6629              #
6630              # The maximum number of allowed characters is 10,000.
6631          "jobStartTime": "A String", # Optional.
6632              #
6633              # The start timestamp of the job in UTC time zone. Typically this field
6634              # is used for contracting engagements. Invalid timestamps are ignored.
6635          "compensationInfo": { # Job compensation details. # Optional.
6636              #
6637              # Job compensation information.
6638            "annualizedTotalCompensationRange": { # Compensation range. # Output only. Annualized total compensation range. Computed as
6639                # all compensation entries' CompensationEntry.compensation times
6640                # CompensationEntry.expected_units_per_year.
6641                #
6642                # See CompensationEntry for explanation on compensation annualization.
6643              "minCompensation": { # Represents an amount of money with its currency type. # Optional.
6644                  #
6645                  # The minimum amount of compensation. If left empty, the value is set
6646                  # to zero and the currency code is set to match the
6647                  # currency code of max_compensation.
6648                "nanos": 42, # Number of nano (10^-9) units of the amount.
6649                    # The value must be between -999,999,999 and +999,999,999 inclusive.
6650                    # If `units` is positive, `nanos` must be positive or zero.
6651                    # If `units` is zero, `nanos` can be positive, zero, or negative.
6652                    # If `units` is negative, `nanos` must be negative or zero.
6653                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6654                "units": "A String", # The whole units of the amount.
6655                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6656                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6657              },
6658              "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
6659                  #
6660                  # The maximum amount of compensation. If left empty, the value is set
6661                  # to a maximal compensation value and the currency code is set to
6662                  # match the currency code of
6663                  # min_compensation.
6664                "nanos": 42, # Number of nano (10^-9) units of the amount.
6665                    # The value must be between -999,999,999 and +999,999,999 inclusive.
6666                    # If `units` is positive, `nanos` must be positive or zero.
6667                    # If `units` is zero, `nanos` can be positive, zero, or negative.
6668                    # If `units` is negative, `nanos` must be negative or zero.
6669                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6670                "units": "A String", # The whole units of the amount.
6671                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6672                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6673              },
6674            },
6675            "annualizedBaseCompensationRange": { # Compensation range. # Output only. Annualized base compensation range. Computed as
6676                # base compensation entry's CompensationEntry.compensation times
6677                # CompensationEntry.expected_units_per_year.
6678                #
6679                # See CompensationEntry for explanation on compensation annualization.
6680              "minCompensation": { # Represents an amount of money with its currency type. # Optional.
6681                  #
6682                  # The minimum amount of compensation. If left empty, the value is set
6683                  # to zero and the currency code is set to match the
6684                  # currency code of max_compensation.
6685                "nanos": 42, # Number of nano (10^-9) units of the amount.
6686                    # The value must be between -999,999,999 and +999,999,999 inclusive.
6687                    # If `units` is positive, `nanos` must be positive or zero.
6688                    # If `units` is zero, `nanos` can be positive, zero, or negative.
6689                    # If `units` is negative, `nanos` must be negative or zero.
6690                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6691                "units": "A String", # The whole units of the amount.
6692                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6693                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6694              },
6695              "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
6696                  #
6697                  # The maximum amount of compensation. If left empty, the value is set
6698                  # to a maximal compensation value and the currency code is set to
6699                  # match the currency code of
6700                  # min_compensation.
6701                "nanos": 42, # Number of nano (10^-9) units of the amount.
6702                    # The value must be between -999,999,999 and +999,999,999 inclusive.
6703                    # If `units` is positive, `nanos` must be positive or zero.
6704                    # If `units` is zero, `nanos` can be positive, zero, or negative.
6705                    # If `units` is negative, `nanos` must be negative or zero.
6706                    # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6707                "units": "A String", # The whole units of the amount.
6708                    # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6709                "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6710              },
6711            },
6712            "entries": [ # Optional.
6713                #
6714                # Job compensation information.
6715                #
6716                # At most one entry can be of type
6717                # CompensationInfo.CompensationType.BASE, which is
6718                # referred as ** base compensation entry ** for the job.
6719              { # A compensation entry that represents one component of compensation, such
6720                  # as base pay, bonus, or other compensation type.
6721                  #
6722                  # Annualization: One compensation entry can be annualized if
6723                  # - it contains valid amount or range.
6724                  # - and its expected_units_per_year is set or can be derived.
6725                  # Its annualized range is determined as (amount or range) times
6726                  # expected_units_per_year.
6727                "description": "A String", # Optional.
6728                    #
6729                    # Compensation description.  For example, could
6730                    # indicate equity terms or provide additional context to an estimated
6731                    # bonus.
6732                "amount": { # Represents an amount of money with its currency type. # Optional.
6733                    #
6734                    # Compensation amount.
6735                  "nanos": 42, # Number of nano (10^-9) units of the amount.
6736                      # The value must be between -999,999,999 and +999,999,999 inclusive.
6737                      # If `units` is positive, `nanos` must be positive or zero.
6738                      # If `units` is zero, `nanos` can be positive, zero, or negative.
6739                      # If `units` is negative, `nanos` must be negative or zero.
6740                      # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6741                  "units": "A String", # The whole units of the amount.
6742                      # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6743                  "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6744                },
6745                "expectedUnitsPerYear": 3.14, # Optional.
6746                    #
6747                    # Expected number of units paid each year. If not specified, when
6748                    # Job.employment_types is FULLTIME, a default value is inferred
6749                    # based on unit. Default values:
6750                    # - HOURLY: 2080
6751                    # - DAILY: 260
6752                    # - WEEKLY: 52
6753                    # - MONTHLY: 12
6754                    # - ANNUAL: 1
6755                "range": { # Compensation range. # Optional.
6756                    #
6757                    # Compensation range.
6758                  "minCompensation": { # Represents an amount of money with its currency type. # Optional.
6759                      #
6760                      # The minimum amount of compensation. If left empty, the value is set
6761                      # to zero and the currency code is set to match the
6762                      # currency code of max_compensation.
6763                    "nanos": 42, # Number of nano (10^-9) units of the amount.
6764                        # The value must be between -999,999,999 and +999,999,999 inclusive.
6765                        # If `units` is positive, `nanos` must be positive or zero.
6766                        # If `units` is zero, `nanos` can be positive, zero, or negative.
6767                        # If `units` is negative, `nanos` must be negative or zero.
6768                        # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6769                    "units": "A String", # The whole units of the amount.
6770                        # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6771                    "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6772                  },
6773                  "maxCompensation": { # Represents an amount of money with its currency type. # Optional.
6774                      #
6775                      # The maximum amount of compensation. If left empty, the value is set
6776                      # to a maximal compensation value and the currency code is set to
6777                      # match the currency code of
6778                      # min_compensation.
6779                    "nanos": 42, # Number of nano (10^-9) units of the amount.
6780                        # The value must be between -999,999,999 and +999,999,999 inclusive.
6781                        # If `units` is positive, `nanos` must be positive or zero.
6782                        # If `units` is zero, `nanos` can be positive, zero, or negative.
6783                        # If `units` is negative, `nanos` must be negative or zero.
6784                        # For example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.
6785                    "units": "A String", # The whole units of the amount.
6786                        # For example if `currencyCode` is `"USD"`, then 1 unit is one US dollar.
6787                    "currencyCode": "A String", # The 3-letter currency code defined in ISO 4217.
6788                  },
6789                },
6790                "type": "A String", # Optional.
6791                    #
6792                    # Compensation type.
6793                    #
6794                    # Default is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.
6795                "unit": "A String", # Optional.
6796                    #
6797                    # Frequency of the specified amount.
6798                    #
6799                    # Default is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.
6800              },
6801            ],
6802          },
6803          "department": "A String", # Optional.
6804              #
6805              # The department or functional area within the company with the open
6806              # position.
6807              #
6808              # The maximum number of allowed characters is 255.
6809          "postingUpdateTime": "A String", # Output only. The timestamp when this job posting was last updated.
6810          "requisitionId": "A String", # Required.
6811              #
6812              # The requisition ID, also referred to as the posting ID, assigned by the
6813              # client to identify a job. This field is intended to be used by clients
6814              # for client identification and tracking of postings. A job is not allowed
6815              # to be created if there is another job with the same [company_name],
6816              # language_code and requisition_id.
6817              #
6818              # The maximum number of allowed characters is 255.
6819          "postingPublishTime": "A String", # Optional.
6820              #
6821              # The timestamp this job posting was most recently published. The default
6822              # value is the time the request arrives at the server. Invalid timestamps are
6823              # ignored.
6824          "applicationInfo": { # Application related details of a job posting. # Required. At least one field within ApplicationInfo must be specified.
6825              #
6826              # Job application information.
6827            "instruction": "A String", # Optional but at least one of uris,
6828                # emails or instruction must be
6829                # specified.
6830                #
6831                # Use this field to provide instructions, such as "Mail your application
6832                # to ...", that a candidate can follow to apply for the job.
6833                #
6834                # This field accepts and sanitizes HTML input, and also accepts
6835                # bold, italic, ordered list, and unordered list markup tags.
6836                #
6837                # The maximum number of allowed characters is 3,000.
6838            "uris": [ # Optional but at least one of uris,
6839                # emails or instruction must be
6840                # specified.
6841                #
6842                # Use this URI field to direct an applicant to a website, for example to
6843                # link to an online application form.
6844                #
6845                # The maximum number of allowed characters for each entry is 2,000.
6846              "A String",
6847            ],
6848            "emails": [ # Optional but at least one of uris,
6849                # emails or instruction must be
6850                # specified.
6851                #
6852                # Use this field to specify email address(es) to which resumes or
6853                # applications can be sent.
6854                #
6855                # The maximum number of allowed characters for each entry is 255.
6856              "A String",
6857            ],
6858          },
6859          "companyName": "A String", # Required.
6860              #
6861              # The resource name of the company listing the job, such as
6862              # "projects/api-test-project/companies/foo".
6863          "derivedInfo": { # Output only. # Output only. Derived details about the job posting.
6864              #
6865              # Derived details about the job posting.
6866            "jobCategories": [ # Job categories derived from Job.title and Job.description.
6867              "A String",
6868            ],
6869            "locations": [ # Structured locations of the job, resolved from Job.addresses.
6870                #
6871                # locations are exactly matched to Job.addresses in the same
6872                # order.
6873              { # Output only.
6874                  #
6875                  # A resource that represents a location with full geographic information.
6876                "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
6877                    # location bounding box in which a circle with the specified radius
6878                    # centered from LatLng covers the area associated with the job location.
6879                    # For example, currently, "Mountain View, CA, USA" has a radius of
6880                    # 6.17 miles.
6881                "locationType": "A String", # The type of a location, which corresponds to the address lines field of
6882                    # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
6883                    # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
6884                    # LocationType#LOCALITY.
6885                "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
6886                    # of doubles representing degrees latitude and degrees longitude. Unless
6887                    # specified otherwise, this must conform to the
6888                    # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
6889                    # standard</a>. Values must be within normalized ranges.
6890                  "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
6891                  "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
6892                },
6893                "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
6894                    # such as postal delivery and payments addresses. Given a postal address,
6895                    # a postal service can deliver items to a premises, P.O. Box, or other
6896                    # delivery location.
6897                    # Given a postal address, a postal service can deliver items to a premise, P.O.
6898                    # Box or similar.
6899                    # It is not intended to model geographical locations (roads, towns,
6900                    # mountains).
6901                    #
6902                    # In typical usage an address would be created via user input or from importing
6903                    # existing data, depending on the type of process.
6904                    #
6905                    # Advice on address input / editing:
6906                    #  - Use an i18n-ready address widget such as
6907                    #    https://github.com/googlei18n/libaddressinput)
6908                    # - Users should not be presented with UI elements for input or editing of
6909                    #   fields outside countries where that field is used.
6910                    #
6911                    # For more guidance on how to use this schema, please see:
6912                    # https://support.google.com/business/answer/6397478
6913                  "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
6914                      # known). This is often the UI language of the input form or is expected
6915                      # to match one of the languages used in the address' country/region, or their
6916                      # transliterated equivalents.
6917                      # This can affect formatting in certain countries, but is not critical
6918                      # to the correctness of the data and will never affect any validation or
6919                      # other non-formatting related operations.
6920                      #
6921                      # If this value is not known, it should be omitted (rather than specifying a
6922                      # possibly incorrect default).
6923                      #
6924                      # Examples: "zh-Hant", "ja", "ja-Latn", "en".
6925                  "recipients": [ # Optional. The recipient at the address.
6926                      # This field may, under certain circumstances, contain multiline information.
6927                      # For example, it might contain "care of" information.
6928                    "A String",
6929                  ],
6930                  "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
6931                      # Examples: US city, IT comune, UK post town.
6932                      # In regions of the world where localities are not well defined or do not fit
6933                      # into this structure well, leave locality empty and use address_lines.
6934                  "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
6935                      # in most regions. Where it is used, the value is either a string like
6936                      # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
6937                      # alone, representing the "sector code" (Jamaica), "delivery area indicator"
6938                      # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
6939                  "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
6940                      # is never inferred and it is up to the user to ensure the value is
6941                      # correct. See http://cldr.unicode.org/ and
6942                      # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
6943                      # for details. Example: "CH" for Switzerland.
6944                  "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
6945                      # addresses of a country or region.
6946                      # For example, this can be a state, a province, an oblast, or a prefecture.
6947                      # Specifically, for Spain this is the province and not the autonomous
6948                      # community (e.g. "Barcelona" and not "Catalonia").
6949                      # Many countries don't use an administrative area in postal addresses. E.g.
6950                      # in Switzerland this should be left unpopulated.
6951                  "addressLines": [ # Unstructured address lines describing the lower levels of an address.
6952                      #
6953                      # Because values in address_lines do not have type information and may
6954                      # sometimes contain multiple values in a single field (e.g.
6955                      # "Austin, TX"), it is important that the line order is clear. The order of
6956                      # address lines should be "envelope order" for the country/region of the
6957                      # address. In places where this can vary (e.g. Japan), address_language is
6958                      # used to make it explicit (e.g. "ja" for large-to-small ordering and
6959                      # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
6960                      # an address can be selected based on the language.
6961                      #
6962                      # The minimum permitted structural representation of an address consists
6963                      # of a region_code with all remaining information placed in the
6964                      # address_lines. It would be possible to format such an address very
6965                      # approximately without geocoding, but no semantic reasoning could be
6966                      # made about any of the address components until it was at least
6967                      # partially resolved.
6968                      #
6969                      # Creating an address only containing a region_code and address_lines, and
6970                      # then geocoding is the recommended way to handle completely unstructured
6971                      # addresses (as opposed to guessing which parts of the address should be
6972                      # localities or administrative areas).
6973                    "A String",
6974                  ],
6975                  "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
6976                      # postal codes to be present, but where they are used, they may trigger
6977                      # additional validation with other parts of the address (e.g. state/zip
6978                      # validation in the U.S.A.).
6979                  "organization": "A String", # Optional. The name of the organization at the address.
6980                  "sublocality": "A String", # Optional. Sublocality of the address.
6981                      # For example, this can be neighborhoods, boroughs, districts.
6982                  "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
6983                      # the latest revision.
6984                      #
6985                      # All new revisions **must** be backward compatible with old revisions.
6986                },
6987              },
6988            ],
6989          },
6990          "qualifications": "A String", # Optional.
6991              #
6992              # A description of the qualifications required to perform the
6993              # job. The use of this field is recommended
6994              # as an alternative to using the more general description field.
6995              #
6996              # This field accepts and sanitizes HTML input, and also accepts
6997              # bold, italic, ordered list, and unordered list markup tags.
6998              #
6999              # The maximum number of allowed characters is 10,000.
7000          "jobBenefits": [ # Optional.
7001              #
7002              # The benefits included with the job.
7003            "A String",
7004          ],
7005          "incentives": "A String", # Optional.
7006              #
7007              # A description of bonus, commission, and other compensation
7008              # incentives associated with the job not including salary or pay.
7009              #
7010              # The maximum number of allowed characters is 10,000.
7011          "visibility": "A String", # Optional.
7012              #
7013              # The visibility of the job.
7014              #
7015              # Defaults to Visibility.ACCOUNT_ONLY if not specified.
7016          "postingCreateTime": "A String", # Output only. The timestamp when this job posting was created.
7017          "postingRegion": "A String", # Optional.
7018              #
7019              # The job PostingRegion (for example, state, country) throughout which
7020              # the job is available. If this field is set, a
7021              # LocationFilter in a search query within the job region
7022              # finds this job posting if an exact location match isn't specified.
7023              # If this field is set to PostingRegion.NATION or
7024              # PostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses
7025              # to the same location level as this field is strongly recommended.
7026          "name": "A String", # Required during job update.
7027              #
7028              # The resource name for the job. This is generated by the service when a
7029              # job is created.
7030              #
7031              # The format is "projects/{project_id}/jobs/{job_id}",
7032              # for example, "projects/api-test-project/jobs/1234".
7033              #
7034              # Use of this field in job queries and API calls is preferred over the use of
7035              # requisition_id since this value is unique.
7036          "processingOptions": { # Input only. # Optional.
7037              #
7038              # Options for job processing.
7039              #
7040              # Options for job processing.
7041            "htmlSanitization": "A String", # Optional.
7042                #
7043                # Option for job HTML content sanitization. Applied fields are:
7044                #
7045                # * description
7046                # * applicationInfo.instruction
7047                # * incentives
7048                # * qualifications
7049                # * responsibilities
7050                #
7051                # HTML tags in these fields may be stripped if sanitiazation is not
7052                # disabled.
7053                #
7054                # Defaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.
7055            "disableStreetAddressResolution": True or False, # Optional.
7056                #
7057                # If set to `true`, the service does not attempt to resolve a
7058                # more precise address for the job.
7059          },
7060          "degreeTypes": [ # Optional.
7061              #
7062              # The desired education degrees for the job, such as Bachelors, Masters.
7063            "A String",
7064          ],
7065          "customAttributes": { # Optional.
7066              #
7067              # A map of fields to hold both filterable and non-filterable custom job
7068              # attributes that are not covered by the provided structured fields.
7069              #
7070              # The keys of the map are strings up to 64 bytes and must match the
7071              # pattern: a-zA-Z*. For example, key0LikeThis or
7072              # KEY_1_LIKE_THIS.
7073              #
7074              # At most 100 filterable and at most 100 unfilterable keys are supported.
7075              # For filterable `string_values`, across all keys at most 200 values are
7076              # allowed, with each string no more than 255 characters. For unfilterable
7077              # `string_values`, the maximum total size of `string_values` across all keys
7078              # is 50KB.
7079            "a_key": { # Custom attribute values that are either filterable or non-filterable.
7080              "filterable": True or False, # Optional.
7081                  #
7082                  # If the `filterable` flag is true, custom field values are searchable.
7083                  # If false, values are not searchable.
7084                  #
7085                  # Default is false.
7086              "stringValues": [ # Optional but exactly one of string_values or long_values must
7087                  # be specified.
7088                  #
7089                  # This field is used to perform a string match (`CASE_SENSITIVE_MATCH` or
7090                  # `CASE_INSENSITIVE_MATCH`) search.
7091                  # For filterable `string_value`s, a maximum total number of 200 values
7092                  # is allowed, with each `string_value` has a byte size of no more than
7093                  # 255B. For unfilterable `string_values`, the maximum total byte size of
7094                  # unfilterable `string_values` is 50KB.
7095                  #
7096                  # Empty string is not allowed.
7097                "A String",
7098              ],
7099              "longValues": [ # Optional but exactly one of string_values or long_values must
7100                  # be specified.
7101                  #
7102                  # This field is used to perform number range search.
7103                  # (`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.
7104                  #
7105                  # Currently at most 1 long_values is supported.
7106                "A String",
7107              ],
7108            },
7109          },
7110          "jobLevel": "A String", # Optional.
7111              #
7112              # The experience level associated with the job, such as "Entry Level".
7113        },
7114        "commuteInfo": { # Output only. # Commute information which is generated based on specified
7115            #  CommuteFilter.
7116            #
7117            # Commute details related to this job.
7118          "travelDuration": "A String", # The number of seconds required to travel to the job location from the
7119              # query location. A duration of 0 seconds indicates that the job is not
7120              # reachable within the requested duration, but was returned as part of an
7121              # expanded query.
7122          "jobLocation": { # Output only. # Location used as the destination in the commute calculation.
7123              #
7124              # A resource that represents a location with full geographic information.
7125            "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
7126                # location bounding box in which a circle with the specified radius
7127                # centered from LatLng covers the area associated with the job location.
7128                # For example, currently, "Mountain View, CA, USA" has a radius of
7129                # 6.17 miles.
7130            "locationType": "A String", # The type of a location, which corresponds to the address lines field of
7131                # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
7132                # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
7133                # LocationType#LOCALITY.
7134            "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
7135                # of doubles representing degrees latitude and degrees longitude. Unless
7136                # specified otherwise, this must conform to the
7137                # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
7138                # standard</a>. Values must be within normalized ranges.
7139              "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
7140              "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
7141            },
7142            "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
7143                # such as postal delivery and payments addresses. Given a postal address,
7144                # a postal service can deliver items to a premises, P.O. Box, or other
7145                # delivery location.
7146                # Given a postal address, a postal service can deliver items to a premise, P.O.
7147                # Box or similar.
7148                # It is not intended to model geographical locations (roads, towns,
7149                # mountains).
7150                #
7151                # In typical usage an address would be created via user input or from importing
7152                # existing data, depending on the type of process.
7153                #
7154                # Advice on address input / editing:
7155                #  - Use an i18n-ready address widget such as
7156                #    https://github.com/googlei18n/libaddressinput)
7157                # - Users should not be presented with UI elements for input or editing of
7158                #   fields outside countries where that field is used.
7159                #
7160                # For more guidance on how to use this schema, please see:
7161                # https://support.google.com/business/answer/6397478
7162              "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
7163                  # known). This is often the UI language of the input form or is expected
7164                  # to match one of the languages used in the address' country/region, or their
7165                  # transliterated equivalents.
7166                  # This can affect formatting in certain countries, but is not critical
7167                  # to the correctness of the data and will never affect any validation or
7168                  # other non-formatting related operations.
7169                  #
7170                  # If this value is not known, it should be omitted (rather than specifying a
7171                  # possibly incorrect default).
7172                  #
7173                  # Examples: "zh-Hant", "ja", "ja-Latn", "en".
7174              "recipients": [ # Optional. The recipient at the address.
7175                  # This field may, under certain circumstances, contain multiline information.
7176                  # For example, it might contain "care of" information.
7177                "A String",
7178              ],
7179              "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
7180                  # Examples: US city, IT comune, UK post town.
7181                  # In regions of the world where localities are not well defined or do not fit
7182                  # into this structure well, leave locality empty and use address_lines.
7183              "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
7184                  # in most regions. Where it is used, the value is either a string like
7185                  # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
7186                  # alone, representing the "sector code" (Jamaica), "delivery area indicator"
7187                  # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
7188              "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
7189                  # is never inferred and it is up to the user to ensure the value is
7190                  # correct. See http://cldr.unicode.org/ and
7191                  # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
7192                  # for details. Example: "CH" for Switzerland.
7193              "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
7194                  # addresses of a country or region.
7195                  # For example, this can be a state, a province, an oblast, or a prefecture.
7196                  # Specifically, for Spain this is the province and not the autonomous
7197                  # community (e.g. "Barcelona" and not "Catalonia").
7198                  # Many countries don't use an administrative area in postal addresses. E.g.
7199                  # in Switzerland this should be left unpopulated.
7200              "addressLines": [ # Unstructured address lines describing the lower levels of an address.
7201                  #
7202                  # Because values in address_lines do not have type information and may
7203                  # sometimes contain multiple values in a single field (e.g.
7204                  # "Austin, TX"), it is important that the line order is clear. The order of
7205                  # address lines should be "envelope order" for the country/region of the
7206                  # address. In places where this can vary (e.g. Japan), address_language is
7207                  # used to make it explicit (e.g. "ja" for large-to-small ordering and
7208                  # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
7209                  # an address can be selected based on the language.
7210                  #
7211                  # The minimum permitted structural representation of an address consists
7212                  # of a region_code with all remaining information placed in the
7213                  # address_lines. It would be possible to format such an address very
7214                  # approximately without geocoding, but no semantic reasoning could be
7215                  # made about any of the address components until it was at least
7216                  # partially resolved.
7217                  #
7218                  # Creating an address only containing a region_code and address_lines, and
7219                  # then geocoding is the recommended way to handle completely unstructured
7220                  # addresses (as opposed to guessing which parts of the address should be
7221                  # localities or administrative areas).
7222                "A String",
7223              ],
7224              "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
7225                  # postal codes to be present, but where they are used, they may trigger
7226                  # additional validation with other parts of the address (e.g. state/zip
7227                  # validation in the U.S.A.).
7228              "organization": "A String", # Optional. The name of the organization at the address.
7229              "sublocality": "A String", # Optional. Sublocality of the address.
7230                  # For example, this can be neighborhoods, boroughs, districts.
7231              "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
7232                  # the latest revision.
7233                  #
7234                  # All new revisions **must** be backward compatible with old revisions.
7235            },
7236          },
7237        },
7238        "jobSummary": "A String", # A summary of the job with core information that's displayed on the search
7239            # results listing page.
7240        "jobTitleSnippet": "A String", # Contains snippets of text from the Job.job_title field most
7241            # closely matching a search query's keywords, if available. The matching
7242            # query keywords are enclosed in HTML bold tags.
7243      },
7244    ],
7245    "histogramResults": { # Output only. # The histogram results that match specified
7246        # SearchJobsRequest.histogram_facets.
7247        #
7248        # Histogram results that match HistogramFacets specified in
7249        # SearchJobsRequest.
7250      "customAttributeHistogramResults": [ # Specifies histogram results for custom attributes that match
7251          # HistogramFacets.custom_attribute_histogram_facets.
7252        { # Output only.
7253            #
7254            # Custom attribute histogram result.
7255          "longValueHistogramResult": { # Output only. # Stores bucketed histogram counting result or min/max values for
7256              # custom attribute long values associated with `key`.
7257              #
7258              # Custom numeric bucketing result.
7259            "counts": [ # Count within each bucket. Its size is the length of
7260                # NumericBucketingOption.bucket_bounds plus 1.
7261              { # Represents count of jobs within one bucket.
7262                "count": 42, # Number of jobs whose numeric field value fall into `range`.
7263                "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
7264                    # that is, the count represents number of jobs in this range.
7265                  "to": 3.14, # Ending value of the bucket range.
7266                  "from": 3.14, # Starting value of the bucket range.
7267                },
7268              },
7269            ],
7270            "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
7271                # [NumericBucketingOption.requires_min_max] is set to true.
7272            "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
7273                # [NumericBucketingOption.requires_min_max] is set to true.
7274          },
7275          "stringValueHistogramResult": { # Stores a map from the values of string custom field associated
7276              # with `key` to the number of jobs with that value in this histogram result.
7277            "a_key": 42,
7278          },
7279          "key": "A String", # Stores the key of custom attribute the histogram is performed on.
7280        },
7281      ],
7282      "simpleHistogramResults": [ # Specifies histogram results that matches
7283          # HistogramFacets.simple_histogram_facets.
7284        { # Output only.
7285            #
7286            # Result of a histogram call. The response contains the histogram map for the
7287            # search type specified by HistogramResult.field.
7288            # The response is a map of each filter value to the corresponding count of
7289            # jobs for that filter.
7290          "values": { # A map from the values of field to the number of jobs with that value
7291              # in this search result.
7292              #
7293              # Key: search type (filter names, such as the companyName).
7294              #
7295              # Values: the count of jobs that match the filter for this search.
7296            "a_key": 42,
7297          },
7298          "searchType": "A String", # The Histogram search filters.
7299        },
7300      ],
7301      "compensationHistogramResults": [ # Specifies compensation field-based histogram results that match
7302          # HistogramFacets.compensation_histogram_requests.
7303        { # Output only.
7304            #
7305            # Compensation based histogram result.
7306          "type": "A String", # Type of the request, corresponding to
7307              # CompensationHistogramRequest.type.
7308          "result": { # Output only. # Histogram result.
7309              #
7310              # Custom numeric bucketing result.
7311            "counts": [ # Count within each bucket. Its size is the length of
7312                # NumericBucketingOption.bucket_bounds plus 1.
7313              { # Represents count of jobs within one bucket.
7314                "count": 42, # Number of jobs whose numeric field value fall into `range`.
7315                "range": { # Represents starting and ending value of a range in double. # Bucket range on which histogram was performed for the numeric field,
7316                    # that is, the count represents number of jobs in this range.
7317                  "to": 3.14, # Ending value of the bucket range.
7318                  "from": 3.14, # Starting value of the bucket range.
7319                },
7320              },
7321            ],
7322            "maxValue": 3.14, # Stores the maximum value of the numeric field. Is populated only if
7323                # [NumericBucketingOption.requires_min_max] is set to true.
7324            "minValue": 3.14, # Stores the minimum value of the numeric field. Will be populated only if
7325                # [NumericBucketingOption.requires_min_max] is set to true.
7326          },
7327        },
7328      ],
7329    },
7330    "broadenedQueryJobsCount": 42, # If query broadening is enabled, we may append additional results from the
7331        # broadened query. This number indicates how many of the jobs returned in the
7332        # jobs field are from the broadened query. These results are always at the
7333        # end of the jobs list. In particular, a value of 0, or if the field isn't
7334        # set, all the jobs in the jobs list are from the original
7335        # (without broadening) query. If this field is non-zero, subsequent requests
7336        # with offset after this result set should contain all broadened results.
7337    "locationFilters": [ # The location filters that the service applied to the specified query. If
7338        # any filters are lat-lng based, the JobLocation.location_type is
7339        # JobLocation.LocationType#LOCATION_TYPE_UNSPECIFIED.
7340      { # Output only.
7341          #
7342          # A resource that represents a location with full geographic information.
7343        "radiusInMiles": 3.14, # Radius in miles of the job location. This value is derived from the
7344            # location bounding box in which a circle with the specified radius
7345            # centered from LatLng covers the area associated with the job location.
7346            # For example, currently, "Mountain View, CA, USA" has a radius of
7347            # 6.17 miles.
7348        "locationType": "A String", # The type of a location, which corresponds to the address lines field of
7349            # PostalAddress. For example, "Downtown, Atlanta, GA, USA" has a type of
7350            # LocationType#NEIGHBORHOOD, and "Kansas City, KS, USA" has a type of
7351            # LocationType#LOCALITY.
7352        "latLng": { # An object representing a latitude/longitude pair. This is expressed as a pair # An object representing a latitude/longitude pair.
7353            # of doubles representing degrees latitude and degrees longitude. Unless
7354            # specified otherwise, this must conform to the
7355            # <a href="http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf">WGS84
7356            # standard</a>. Values must be within normalized ranges.
7357          "latitude": 3.14, # The latitude in degrees. It must be in the range [-90.0, +90.0].
7358          "longitude": 3.14, # The longitude in degrees. It must be in the range [-180.0, +180.0].
7359        },
7360        "postalAddress": { # Represents a postal address, e.g. for postal delivery or payments addresses. # Postal address of the location that includes human readable information,
7361            # such as postal delivery and payments addresses. Given a postal address,
7362            # a postal service can deliver items to a premises, P.O. Box, or other
7363            # delivery location.
7364            # Given a postal address, a postal service can deliver items to a premise, P.O.
7365            # Box or similar.
7366            # It is not intended to model geographical locations (roads, towns,
7367            # mountains).
7368            #
7369            # In typical usage an address would be created via user input or from importing
7370            # existing data, depending on the type of process.
7371            #
7372            # Advice on address input / editing:
7373            #  - Use an i18n-ready address widget such as
7374            #    https://github.com/googlei18n/libaddressinput)
7375            # - Users should not be presented with UI elements for input or editing of
7376            #   fields outside countries where that field is used.
7377            #
7378            # For more guidance on how to use this schema, please see:
7379            # https://support.google.com/business/answer/6397478
7380          "languageCode": "A String", # Optional. BCP-47 language code of the contents of this address (if
7381              # known). This is often the UI language of the input form or is expected
7382              # to match one of the languages used in the address' country/region, or their
7383              # transliterated equivalents.
7384              # This can affect formatting in certain countries, but is not critical
7385              # to the correctness of the data and will never affect any validation or
7386              # other non-formatting related operations.
7387              #
7388              # If this value is not known, it should be omitted (rather than specifying a
7389              # possibly incorrect default).
7390              #
7391              # Examples: "zh-Hant", "ja", "ja-Latn", "en".
7392          "recipients": [ # Optional. The recipient at the address.
7393              # This field may, under certain circumstances, contain multiline information.
7394              # For example, it might contain "care of" information.
7395            "A String",
7396          ],
7397          "locality": "A String", # Optional. Generally refers to the city/town portion of the address.
7398              # Examples: US city, IT comune, UK post town.
7399              # In regions of the world where localities are not well defined or do not fit
7400              # into this structure well, leave locality empty and use address_lines.
7401          "sortingCode": "A String", # Optional. Additional, country-specific, sorting code. This is not used
7402              # in most regions. Where it is used, the value is either a string like
7403              # "CEDEX", optionally followed by a number (e.g. "CEDEX 7"), or just a number
7404              # alone, representing the "sector code" (Jamaica), "delivery area indicator"
7405              # (Malawi) or "post office indicator" (e.g. Côte d'Ivoire).
7406          "regionCode": "A String", # Required. CLDR region code of the country/region of the address. This
7407              # is never inferred and it is up to the user to ensure the value is
7408              # correct. See http://cldr.unicode.org/ and
7409              # http://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
7410              # for details. Example: "CH" for Switzerland.
7411          "administrativeArea": "A String", # Optional. Highest administrative subdivision which is used for postal
7412              # addresses of a country or region.
7413              # For example, this can be a state, a province, an oblast, or a prefecture.
7414              # Specifically, for Spain this is the province and not the autonomous
7415              # community (e.g. "Barcelona" and not "Catalonia").
7416              # Many countries don't use an administrative area in postal addresses. E.g.
7417              # in Switzerland this should be left unpopulated.
7418          "addressLines": [ # Unstructured address lines describing the lower levels of an address.
7419              #
7420              # Because values in address_lines do not have type information and may
7421              # sometimes contain multiple values in a single field (e.g.
7422              # "Austin, TX"), it is important that the line order is clear. The order of
7423              # address lines should be "envelope order" for the country/region of the
7424              # address. In places where this can vary (e.g. Japan), address_language is
7425              # used to make it explicit (e.g. "ja" for large-to-small ordering and
7426              # "ja-Latn" or "en" for small-to-large). This way, the most specific line of
7427              # an address can be selected based on the language.
7428              #
7429              # The minimum permitted structural representation of an address consists
7430              # of a region_code with all remaining information placed in the
7431              # address_lines. It would be possible to format such an address very
7432              # approximately without geocoding, but no semantic reasoning could be
7433              # made about any of the address components until it was at least
7434              # partially resolved.
7435              #
7436              # Creating an address only containing a region_code and address_lines, and
7437              # then geocoding is the recommended way to handle completely unstructured
7438              # addresses (as opposed to guessing which parts of the address should be
7439              # localities or administrative areas).
7440            "A String",
7441          ],
7442          "postalCode": "A String", # Optional. Postal code of the address. Not all countries use or require
7443              # postal codes to be present, but where they are used, they may trigger
7444              # additional validation with other parts of the address (e.g. state/zip
7445              # validation in the U.S.A.).
7446          "organization": "A String", # Optional. The name of the organization at the address.
7447          "sublocality": "A String", # Optional. Sublocality of the address.
7448              # For example, this can be neighborhoods, boroughs, districts.
7449          "revision": 42, # The schema revision of the `PostalAddress`. This must be set to 0, which is
7450              # the latest revision.
7451              #
7452              # All new revisions **must** be backward compatible with old revisions.
7453        },
7454      },
7455    ],
7456    "metadata": { # Output only. # Additional information for the API invocation, such as the request
7457        # tracking id.
7458        #
7459        # Additional information returned to client, such as debugging information.
7460      "requestId": "A String", # A unique id associated with this call.
7461          # This id is logged for tracking purposes.
7462    },
7463  }</pre>
7464</div>
7465
7466<div class="method">
7467    <code class="details" id="searchForAlert_next">searchForAlert_next(previous_request, previous_response)</code>
7468  <pre>Retrieves the next page of results.
7469
7470Args:
7471  previous_request: The request for the previous page. (required)
7472  previous_response: The response from the request for the previous page. (required)
7473
7474Returns:
7475  A request object that you can call 'execute()' on to request the next
7476  page. Returns None if there are no more items in the collection.
7477    </pre>
7478</div>
7479
7480<div class="method">
7481    <code class="details" id="search_next">search_next(previous_request, previous_response)</code>
7482  <pre>Retrieves the next page of results.
7483
7484Args:
7485  previous_request: The request for the previous page. (required)
7486  previous_response: The response from the request for the previous page. (required)
7487
7488Returns:
7489  A request object that you can call 'execute()' on to request the next
7490  page. Returns None if there are no more items in the collection.
7491    </pre>
7492</div>
7493
7494</body></html>