google-cloud-talent-v4beta1 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (95) hide show
  1. checksums.yaml +7 -0
  2. data/.yardopts +12 -0
  3. data/AUTHENTICATION.md +169 -0
  4. data/LICENSE.md +203 -0
  5. data/README.md +71 -0
  6. data/lib/google-cloud-talent-v4beta1.rb +21 -0
  7. data/lib/google/cloud/common_resources_pb.rb +15 -0
  8. data/lib/google/cloud/talent/v4beta1.rb +41 -0
  9. data/lib/google/cloud/talent/v4beta1/application_pb.rb +64 -0
  10. data/lib/google/cloud/talent/v4beta1/application_service.rb +50 -0
  11. data/lib/google/cloud/talent/v4beta1/application_service/client.rb +717 -0
  12. data/lib/google/cloud/talent/v4beta1/application_service/credentials.rb +52 -0
  13. data/lib/google/cloud/talent/v4beta1/application_service/paths.rb +155 -0
  14. data/lib/google/cloud/talent/v4beta1/application_service_pb.rb +56 -0
  15. data/lib/google/cloud/talent/v4beta1/application_service_services_pb.rb +54 -0
  16. data/lib/google/cloud/talent/v4beta1/batch_pb.rb +19 -0
  17. data/lib/google/cloud/talent/v4beta1/common_pb.rb +342 -0
  18. data/lib/google/cloud/talent/v4beta1/company_pb.rb +42 -0
  19. data/lib/google/cloud/talent/v4beta1/company_service.rb +49 -0
  20. data/lib/google/cloud/talent/v4beta1/company_service/client.rb +732 -0
  21. data/lib/google/cloud/talent/v4beta1/company_service/credentials.rb +52 -0
  22. data/lib/google/cloud/talent/v4beta1/company_service/paths.rb +105 -0
  23. data/lib/google/cloud/talent/v4beta1/company_service_pb.rb +57 -0
  24. data/lib/google/cloud/talent/v4beta1/company_service_services_pb.rb +54 -0
  25. data/lib/google/cloud/talent/v4beta1/completion.rb +49 -0
  26. data/lib/google/cloud/talent/v4beta1/completion/client.rb +407 -0
  27. data/lib/google/cloud/talent/v4beta1/completion/credentials.rb +52 -0
  28. data/lib/google/cloud/talent/v4beta1/completion/paths.rb +105 -0
  29. data/lib/google/cloud/talent/v4beta1/completion_service_pb.rb +57 -0
  30. data/lib/google/cloud/talent/v4beta1/completion_service_services_pb.rb +46 -0
  31. data/lib/google/cloud/talent/v4beta1/event_pb.rb +70 -0
  32. data/lib/google/cloud/talent/v4beta1/event_service.rb +49 -0
  33. data/lib/google/cloud/talent/v4beta1/event_service/client.rb +379 -0
  34. data/lib/google/cloud/talent/v4beta1/event_service/credentials.rb +52 -0
  35. data/lib/google/cloud/talent/v4beta1/event_service/paths.rb +64 -0
  36. data/lib/google/cloud/talent/v4beta1/event_service_pb.rb +28 -0
  37. data/lib/google/cloud/talent/v4beta1/event_service_services_pb.rb +51 -0
  38. data/lib/google/cloud/talent/v4beta1/filters_pb.rb +188 -0
  39. data/lib/google/cloud/talent/v4beta1/histogram_pb.rb +28 -0
  40. data/lib/google/cloud/talent/v4beta1/job_pb.rb +73 -0
  41. data/lib/google/cloud/talent/v4beta1/job_service.rb +50 -0
  42. data/lib/google/cloud/talent/v4beta1/job_service/client.rb +1660 -0
  43. data/lib/google/cloud/talent/v4beta1/job_service/credentials.rb +52 -0
  44. data/lib/google/cloud/talent/v4beta1/job_service/operations.rb +564 -0
  45. data/lib/google/cloud/talent/v4beta1/job_service/paths.rb +146 -0
  46. data/lib/google/cloud/talent/v4beta1/job_service_pb.rb +167 -0
  47. data/lib/google/cloud/talent/v4beta1/job_service_services_pb.rb +86 -0
  48. data/lib/google/cloud/talent/v4beta1/profile_pb.rb +214 -0
  49. data/lib/google/cloud/talent/v4beta1/profile_service.rb +50 -0
  50. data/lib/google/cloud/talent/v4beta1/profile_service/client.rb +992 -0
  51. data/lib/google/cloud/talent/v4beta1/profile_service/credentials.rb +52 -0
  52. data/lib/google/cloud/talent/v4beta1/profile_service/paths.rb +69 -0
  53. data/lib/google/cloud/talent/v4beta1/profile_service_pb.rb +92 -0
  54. data/lib/google/cloud/talent/v4beta1/profile_service_services_pb.rb +63 -0
  55. data/lib/google/cloud/talent/v4beta1/tenant_pb.rb +35 -0
  56. data/lib/google/cloud/talent/v4beta1/tenant_service.rb +49 -0
  57. data/lib/google/cloud/talent/v4beta1/tenant_service/client.rb +712 -0
  58. data/lib/google/cloud/talent/v4beta1/tenant_service/credentials.rb +52 -0
  59. data/lib/google/cloud/talent/v4beta1/tenant_service/paths.rb +64 -0
  60. data/lib/google/cloud/talent/v4beta1/tenant_service_pb.rb +56 -0
  61. data/lib/google/cloud/talent/v4beta1/tenant_service_services_pb.rb +53 -0
  62. data/lib/google/cloud/talent/v4beta1/version.rb +28 -0
  63. data/proto_docs/README.md +4 -0
  64. data/proto_docs/google/api/field_behavior.rb +59 -0
  65. data/proto_docs/google/api/resource.rb +247 -0
  66. data/proto_docs/google/cloud/talent/v4beta1/application.rb +169 -0
  67. data/proto_docs/google/cloud/talent/v4beta1/application_service.rb +122 -0
  68. data/proto_docs/google/cloud/talent/v4beta1/common.rb +1106 -0
  69. data/proto_docs/google/cloud/talent/v4beta1/company.rb +117 -0
  70. data/proto_docs/google/cloud/talent/v4beta1/company_service.rb +138 -0
  71. data/proto_docs/google/cloud/talent/v4beta1/completion_service.rb +143 -0
  72. data/proto_docs/google/cloud/talent/v4beta1/event.rb +237 -0
  73. data/proto_docs/google/cloud/talent/v4beta1/event_service.rb +43 -0
  74. data/proto_docs/google/cloud/talent/v4beta1/filters.rb +818 -0
  75. data/proto_docs/google/cloud/talent/v4beta1/histogram.rb +69 -0
  76. data/proto_docs/google/cloud/talent/v4beta1/job.rb +356 -0
  77. data/proto_docs/google/cloud/talent/v4beta1/job_service.rb +746 -0
  78. data/proto_docs/google/cloud/talent/v4beta1/profile.rb +811 -0
  79. data/proto_docs/google/cloud/talent/v4beta1/profile_service.rb +392 -0
  80. data/proto_docs/google/cloud/talent/v4beta1/tenant.rb +77 -0
  81. data/proto_docs/google/cloud/talent/v4beta1/tenant_service.rb +118 -0
  82. data/proto_docs/google/longrunning/operations.rb +150 -0
  83. data/proto_docs/google/protobuf/any.rb +138 -0
  84. data/proto_docs/google/protobuf/duration.rb +98 -0
  85. data/proto_docs/google/protobuf/empty.rb +36 -0
  86. data/proto_docs/google/protobuf/field_mask.rb +229 -0
  87. data/proto_docs/google/protobuf/timestamp.rb +120 -0
  88. data/proto_docs/google/protobuf/wrappers.rb +121 -0
  89. data/proto_docs/google/rpc/status.rb +46 -0
  90. data/proto_docs/google/type/date.rb +50 -0
  91. data/proto_docs/google/type/latlng.rb +38 -0
  92. data/proto_docs/google/type/money.rb +43 -0
  93. data/proto_docs/google/type/postal_address.rb +135 -0
  94. data/proto_docs/google/type/timeofday.rb +44 -0
  95. metadata +251 -0
@@ -0,0 +1,43 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Talent
23
+ module V4beta1
24
+ # The report event request.
25
+ # @!attribute [rw] parent
26
+ # @return [String]
27
+ # Required. Resource name of the tenant under which the event is created.
28
+ #
29
+ # The format is "projects/\\{project_id}/tenants/\\{tenant_id}", for example,
30
+ # "projects/foo/tenant/bar". If tenant id is unspecified, a default tenant
31
+ # is created, for example, "projects/foo".
32
+ # @!attribute [rw] client_event
33
+ # @return [Google::Cloud::Talent::V4beta1::ClientEvent]
34
+ # Required. Events issued when end user interacts with customer's application that
35
+ # uses Cloud Talent Solution.
36
+ class CreateClientEventRequest
37
+ include Google::Protobuf::MessageExts
38
+ extend Google::Protobuf::MessageExts::ClassMethods
39
+ end
40
+ end
41
+ end
42
+ end
43
+ end
@@ -0,0 +1,818 @@
1
+ # frozen_string_literal: true
2
+
3
+ # Copyright 2020 Google LLC
4
+ #
5
+ # Licensed under the Apache License, Version 2.0 (the "License");
6
+ # you may not use this file except in compliance with the License.
7
+ # You may obtain a copy of the License at
8
+ #
9
+ # https://www.apache.org/licenses/LICENSE-2.0
10
+ #
11
+ # Unless required by applicable law or agreed to in writing, software
12
+ # distributed under the License is distributed on an "AS IS" BASIS,
13
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
14
+ # See the License for the specific language governing permissions and
15
+ # limitations under the License.
16
+
17
+ # Auto-generated by gapic-generator-ruby. DO NOT EDIT!
18
+
19
+
20
+ module Google
21
+ module Cloud
22
+ module Talent
23
+ module V4beta1
24
+ # The query required to perform a search query.
25
+ # @!attribute [rw] query
26
+ # @return [String]
27
+ # The query string that matches against the job title, description, and
28
+ # location fields.
29
+ #
30
+ # The maximum number of allowed characters is 255.
31
+ # @!attribute [rw] query_language_code
32
+ # @return [String]
33
+ # The language code of {Google::Cloud::Talent::V4beta1::JobQuery#query query}. For example, "en-US". This field helps to
34
+ # better interpret the query.
35
+ #
36
+ # If a value isn't specified, the query language code is automatically
37
+ # detected, which may not be accurate.
38
+ #
39
+ # Language code should be in BCP-47 format, such as "en-US" or "sr-Latn".
40
+ # For more information, see
41
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
42
+ # @!attribute [rw] companies
43
+ # @return [Array<String>]
44
+ # This filter specifies the company entities to search against.
45
+ #
46
+ # If a value isn't specified, jobs are searched for against all
47
+ # companies.
48
+ #
49
+ # If multiple values are specified, jobs are searched against the
50
+ # companies specified.
51
+ #
52
+ # The format is
53
+ # "projects/\\{project_id}/tenants/\\{tenant_id}/companies/\\{company_id}". For
54
+ # example, "projects/foo/tenants/bar/companies/baz".
55
+ #
56
+ # If tenant id is unspecified, the default tenant is used. For
57
+ # example, "projects/foo/companies/bar".
58
+ #
59
+ # At most 20 company filters are allowed.
60
+ # @!attribute [rw] location_filters
61
+ # @return [Array<Google::Cloud::Talent::V4beta1::LocationFilter>]
62
+ # The location filter specifies geo-regions containing the jobs to
63
+ # search against. See {Google::Cloud::Talent::V4beta1::LocationFilter LocationFilter} for more information.
64
+ #
65
+ # If a location value isn't specified, jobs fitting the other search
66
+ # criteria are retrieved regardless of where they're located.
67
+ #
68
+ # If multiple values are specified, jobs are retrieved from any of the
69
+ # specified locations. If different values are specified for the
70
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} parameter, the maximum provided
71
+ # distance is used for all locations.
72
+ #
73
+ # At most 5 location filters are allowed.
74
+ # @!attribute [rw] job_categories
75
+ # @return [Array<Google::Cloud::Talent::V4beta1::JobCategory>]
76
+ # The category filter specifies the categories of jobs to search against.
77
+ # See {Google::Cloud::Talent::V4beta1::JobCategory JobCategory} for more information.
78
+ #
79
+ # If a value isn't specified, jobs from any category are searched against.
80
+ #
81
+ # If multiple values are specified, jobs from any of the specified
82
+ # categories are searched against.
83
+ # @!attribute [rw] commute_filter
84
+ # @return [Google::Cloud::Talent::V4beta1::CommuteFilter]
85
+ # Allows filtering jobs by commute time with different travel methods (for
86
+ # example, driving or public transit).
87
+ #
88
+ # Note: This only works when you specify a {Google::Cloud::Talent::V4beta1::CommuteMethod CommuteMethod}. In this case,
89
+ # {Google::Cloud::Talent::V4beta1::JobQuery#location_filters location_filters} is ignored.
90
+ #
91
+ # Currently we don't support sorting by commute time.
92
+ # @!attribute [rw] company_display_names
93
+ # @return [Array<String>]
94
+ # This filter specifies the exact company {Google::Cloud::Talent::V4beta1::Company#display_name Company.display_name}
95
+ # of the jobs to search against.
96
+ #
97
+ # If a value isn't specified, jobs within the search results are
98
+ # associated with any company.
99
+ #
100
+ # If multiple values are specified, jobs within the search results may be
101
+ # associated with any of the specified companies.
102
+ #
103
+ # At most 20 company display name filters are allowed.
104
+ # @!attribute [rw] compensation_filter
105
+ # @return [Google::Cloud::Talent::V4beta1::CompensationFilter]
106
+ # This search filter is applied only to
107
+ # {Google::Cloud::Talent::V4beta1::Job#compensation_info Job.compensation_info}. For example, if the filter is specified
108
+ # as "Hourly job with per-hour compensation > $15", only jobs meeting
109
+ # these criteria are searched. If a filter isn't defined, all open jobs
110
+ # are searched.
111
+ # @!attribute [rw] custom_attribute_filter
112
+ # @return [String]
113
+ # This filter specifies a structured syntax to match against the
114
+ # {Google::Cloud::Talent::V4beta1::Job#custom_attributes Job.custom_attributes} marked as `filterable`.
115
+ #
116
+ # The syntax for this expression is a subset of SQL syntax.
117
+ #
118
+ # Supported operators are: `=`, `!=`, `<`, `<=`, `>`, and `>=` where the
119
+ # left of the operator is a custom field key and the right of the operator
120
+ # is a number or a quoted string. You must escape backslash (\\) and
121
+ # quote (\") characters.
122
+ #
123
+ # Supported functions are `LOWER([field_name])` to
124
+ # perform a case insensitive match and `EMPTY([field_name])` to filter on the
125
+ # existence of a key.
126
+ #
127
+ # Boolean expressions (AND/OR/NOT) are supported up to 3 levels of
128
+ # nesting (for example, "((A AND B AND C) OR NOT D) AND E"), a maximum of 100
129
+ # comparisons or functions are allowed in the expression. The expression
130
+ # must be < 6000 bytes in length.
131
+ #
132
+ # Sample Query:
133
+ # `(LOWER(driving_license)="class \"a\"" OR EMPTY(driving_license)) AND
134
+ # driving_years > 10`
135
+ # @!attribute [rw] disable_spell_check
136
+ # @return [Boolean]
137
+ # This flag controls the spell-check feature. If false, the
138
+ # service attempts to correct a misspelled query,
139
+ # for example, "enginee" is corrected to "engineer".
140
+ #
141
+ # Defaults to false: a spell check is performed.
142
+ # @!attribute [rw] employment_types
143
+ # @return [Array<Google::Cloud::Talent::V4beta1::EmploymentType>]
144
+ # The employment type filter specifies the employment type of jobs to
145
+ # search against, such as {Google::Cloud::Talent::V4beta1::EmploymentType::FULL_TIME EmploymentType.FULL_TIME}.
146
+ #
147
+ # If a value isn't specified, jobs in the search results includes any
148
+ # employment type.
149
+ #
150
+ # If multiple values are specified, jobs in the search results include
151
+ # any of the specified employment types.
152
+ # @!attribute [rw] language_codes
153
+ # @return [Array<String>]
154
+ # This filter specifies the locale of jobs to search against,
155
+ # for example, "en-US".
156
+ #
157
+ # If a value isn't specified, the search results can contain jobs in any
158
+ # locale.
159
+ #
160
+ #
161
+ # Language codes should be in BCP-47 format, such as "en-US" or "sr-Latn".
162
+ # For more information, see
163
+ # [Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).
164
+ #
165
+ # At most 10 language code filters are allowed.
166
+ # @!attribute [rw] publish_time_range
167
+ # @return [Google::Cloud::Talent::V4beta1::TimestampRange]
168
+ # Jobs published within a range specified by this filter are searched
169
+ # against.
170
+ # @!attribute [rw] excluded_jobs
171
+ # @return [Array<String>]
172
+ # This filter specifies a list of job names to be excluded during search.
173
+ #
174
+ # At most 400 excluded job names are allowed.
175
+ class JobQuery
176
+ include Google::Protobuf::MessageExts
177
+ extend Google::Protobuf::MessageExts::ClassMethods
178
+ end
179
+
180
+ # Filters to apply when performing the search query.
181
+ # @!attribute [rw] query
182
+ # @return [String]
183
+ # Keywords to match any text fields of profiles.
184
+ #
185
+ # For example, "software engineer in Palo Alto".
186
+ # @!attribute [rw] location_filters
187
+ # @return [Array<Google::Cloud::Talent::V4beta1::LocationFilter>]
188
+ # The location filter specifies geo-regions containing the profiles to
189
+ # search against.
190
+ #
191
+ # One of {Google::Cloud::Talent::V4beta1::LocationFilter#address LocationFilter.address} or {Google::Cloud::Talent::V4beta1::LocationFilter#lat_lng LocationFilter.lat_lng} must be
192
+ # provided or an error is thrown. If both {Google::Cloud::Talent::V4beta1::LocationFilter#address LocationFilter.address} and
193
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#lat_lng LocationFilter.lat_lng} are provided, an error is thrown.
194
+ #
195
+ # The following logic is used to determine which locations in
196
+ # the profile to filter against:
197
+ #
198
+ # 1. All of the profile's geocoded {Google::Cloud::Talent::V4beta1::Profile#addresses Profile.addresses} where
199
+ # {Google::Cloud::Talent::V4beta1::Address#usage Address.usage} is PERSONAL and {Google::Cloud::Talent::V4beta1::Address#current Address.current} is true.
200
+ #
201
+ # 2. If the above set of locations is empty, all of the profile's geocoded
202
+ # {Google::Cloud::Talent::V4beta1::Profile#addresses Profile.addresses} where {Google::Cloud::Talent::V4beta1::Address#usage Address.usage} is
203
+ # CONTACT_INFO_USAGE_UNSPECIFIED and {Google::Cloud::Talent::V4beta1::Address#current Address.current} is true.
204
+ #
205
+ # 3. If the above set of locations is empty, all of the profile's geocoded
206
+ # {Google::Cloud::Talent::V4beta1::Profile#addresses Profile.addresses} where {Google::Cloud::Talent::V4beta1::Address#usage Address.usage} is PERSONAL or
207
+ # CONTACT_INFO_USAGE_UNSPECIFIED and {Google::Cloud::Talent::V4beta1::Address#current Address.current} is not set.
208
+ #
209
+ # This means that any profiles without any {Google::Cloud::Talent::V4beta1::Profile#addresses Profile.addresses} that match
210
+ # any of the above criteria will not be included in a search with location
211
+ # filter. Furthermore, any {Google::Cloud::Talent::V4beta1::Profile#addresses Profile.addresses} where {Google::Cloud::Talent::V4beta1::Address#usage Address.usage} is
212
+ # WORK or SCHOOL or where {Google::Cloud::Talent::V4beta1::Address#current Address.current} is false are not considered for
213
+ # location filter.
214
+ #
215
+ # If a location filter isn't specified, profiles fitting the other search
216
+ # criteria are retrieved regardless of where they're located.
217
+ #
218
+ # If {Google::Cloud::Talent::V4beta1::LocationFilter#negated LocationFilter.negated} is specified, the result doesn't contain
219
+ # profiles from that location.
220
+ #
221
+ # If {Google::Cloud::Talent::V4beta1::LocationFilter#address LocationFilter.address} is provided, the
222
+ # {Google::Cloud::Talent::V4beta1::Location::LocationType LocationType}, center
223
+ # point (latitude and longitude), and radius are automatically detected by
224
+ # the Google Maps Geocoding API and included as well. If
225
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#address LocationFilter.address} cannot be geocoded, the filter
226
+ # falls back to keyword search.
227
+ #
228
+ # If the detected
229
+ # {Google::Cloud::Talent::V4beta1::Location::LocationType LocationType} is
230
+ # {Google::Cloud::Talent::V4beta1::Location::LocationType::SUB_ADMINISTRATIVE_AREA LocationType.SUB_ADMINISTRATIVE_AREA},
231
+ # {Google::Cloud::Talent::V4beta1::Location::LocationType::ADMINISTRATIVE_AREA LocationType.ADMINISTRATIVE_AREA},
232
+ # or
233
+ # {Google::Cloud::Talent::V4beta1::Location::LocationType::COUNTRY LocationType.COUNTRY},
234
+ # the filter is performed against the detected location name (using exact
235
+ # text matching). Otherwise, the filter is performed against the detected
236
+ # center point and a radius of detected location radius +
237
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles}.
238
+ #
239
+ # If {Google::Cloud::Talent::V4beta1::LocationFilter#address LocationFilter.address} is provided,
240
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} is the additional radius on top of the
241
+ # radius of the location geocoded from {Google::Cloud::Talent::V4beta1::LocationFilter#address LocationFilter.address}. If
242
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#lat_lng LocationFilter.lat_lng} is provided,
243
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} is the only radius that is used.
244
+ #
245
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} is 10 by default. Note that the value
246
+ # of {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} is 0 if it is unset, so the server
247
+ # does not differentiate {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} that is
248
+ # explicitly set to 0 and {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} that is not
249
+ # set. Which means that if {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} is explicitly
250
+ # set to 0, the server will use the default value of
251
+ # {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} which is 10. To work around this and
252
+ # effectively set {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} to 0, we recommend
253
+ # setting {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} to a very small decimal number
254
+ # (such as 0.00001).
255
+ #
256
+ # If {Google::Cloud::Talent::V4beta1::LocationFilter#distance_in_miles LocationFilter.distance_in_miles} is negative, an error is thrown.
257
+ # @!attribute [rw] job_title_filters
258
+ # @return [Array<Google::Cloud::Talent::V4beta1::JobTitleFilter>]
259
+ # Job title filter specifies job titles of profiles to match on.
260
+ #
261
+ # If a job title isn't specified, profiles with any titles are retrieved.
262
+ #
263
+ # If multiple values are specified, profiles are retrieved with any of the
264
+ # specified job titles.
265
+ #
266
+ # If {Google::Cloud::Talent::V4beta1::JobTitleFilter#negated JobTitleFilter.negated} is specified, the result won't contain
267
+ # profiles with the job titles.
268
+ #
269
+ # For example, search for profiles with a job title "Product Manager".
270
+ # @!attribute [rw] employer_filters
271
+ # @return [Array<Google::Cloud::Talent::V4beta1::EmployerFilter>]
272
+ # Employer filter specifies employers of profiles to match on.
273
+ #
274
+ # If an employer filter isn't specified, profiles with any employers are
275
+ # retrieved.
276
+ #
277
+ # If multiple employer filters are specified, profiles with any matching
278
+ # employers are retrieved.
279
+ #
280
+ # If {Google::Cloud::Talent::V4beta1::EmployerFilter#negated EmployerFilter.negated} is specified, the result won't contain
281
+ # profiles that match the employers.
282
+ #
283
+ # For example, search for profiles that have working experience at "Google
284
+ # LLC".
285
+ # @!attribute [rw] education_filters
286
+ # @return [Array<Google::Cloud::Talent::V4beta1::EducationFilter>]
287
+ # Education filter specifies education of profiles to match on.
288
+ #
289
+ # If an education filter isn't specified, profiles with any education are
290
+ # retrieved.
291
+ #
292
+ # If multiple education filters are specified, profiles that match any
293
+ # education filters are retrieved.
294
+ #
295
+ # If {Google::Cloud::Talent::V4beta1::EducationFilter#negated EducationFilter.negated} is specified, the result won't contain
296
+ # profiles that match the educations.
297
+ #
298
+ # For example, search for profiles with a master degree.
299
+ # @!attribute [rw] skill_filters
300
+ # @return [Array<Google::Cloud::Talent::V4beta1::SkillFilter>]
301
+ # Skill filter specifies skill of profiles to match on.
302
+ #
303
+ # If a skill filter isn't specified, profiles with any skills are retrieved.
304
+ #
305
+ # If multiple skill filters are specified, profiles that match any skill
306
+ # filters are retrieved.
307
+ #
308
+ # If {Google::Cloud::Talent::V4beta1::SkillFilter#negated SkillFilter.negated} is specified, the result won't contain profiles
309
+ # that match the skills.
310
+ #
311
+ # For example, search for profiles that have "Java" and "Python" in skill
312
+ # list.
313
+ # @!attribute [rw] work_experience_filter
314
+ # @return [Array<Google::Cloud::Talent::V4beta1::WorkExperienceFilter>]
315
+ # Work experience filter specifies the total working experience of profiles
316
+ # to match on.
317
+ #
318
+ # If a work experience filter isn't specified, profiles with any
319
+ # professional experience are retrieved.
320
+ #
321
+ # If multiple work experience filters are specified, profiles that match any
322
+ # work experience filters are retrieved.
323
+ #
324
+ # For example, search for profiles with 10 years of work experience.
325
+ # @!attribute [rw] time_filters
326
+ # @return [Array<Google::Cloud::Talent::V4beta1::TimeFilter>]
327
+ # Time filter specifies the create/update timestamp of the profiles to match
328
+ # on.
329
+ #
330
+ # For example, search for profiles created since "2018-1-1".
331
+ # @!attribute [rw] hirable_filter
332
+ # @return [Google::Protobuf::BoolValue]
333
+ # The hirable filter specifies the profile's hirable status to match on.
334
+ # @!attribute [rw] application_date_filters
335
+ # @return [Array<Google::Cloud::Talent::V4beta1::ApplicationDateFilter>]
336
+ # The application date filters specify application date ranges to match on.
337
+ # @!attribute [rw] application_outcome_notes_filters
338
+ # @return [Array<Google::Cloud::Talent::V4beta1::ApplicationOutcomeNotesFilter>]
339
+ # The application outcome notes filters specify the notes for the outcome of
340
+ # the job application.
341
+ # @!attribute [rw] application_job_filters
342
+ # @return [Array<Google::Cloud::Talent::V4beta1::ApplicationJobFilter>]
343
+ # The application job filters specify the job applied for in the application.
344
+ # @!attribute [rw] custom_attribute_filter
345
+ # @return [String]
346
+ # This filter specifies a structured syntax to match against the
347
+ # {Google::Cloud::Talent::V4beta1::Profile#custom_attributes Profile.custom_attributes} that are marked as `filterable`.
348
+ #
349
+ # The syntax for this expression is a subset of Google SQL syntax.
350
+ #
351
+ # String custom attributes: supported operators are =, != where the left of
352
+ # the operator is a custom field key and the right of the operator is a
353
+ # string (surrounded by quotes) value.
354
+ #
355
+ # Numeric custom attributes: Supported operators are '>', '<' or '='
356
+ # operators where the left of the operator is a custom field key and the
357
+ # right of the operator is a numeric value.
358
+ #
359
+ # Supported functions are LOWER(<field_name>) to
360
+ # perform case insensitive match and EMPTY(<field_name>) to filter on the
361
+ # existence of a key.
362
+ #
363
+ # Boolean expressions (AND/OR/NOT) are supported up to 3 levels of
364
+ # nesting (for example "((A AND B AND C) OR NOT D) AND E"), and there can be
365
+ # a maximum of 50 comparisons/functions in the expression. The expression
366
+ # must be < 2000 characters in length.
367
+ #
368
+ # Sample Query:
369
+ # (key1 = "TEST" OR LOWER(key1)="test" OR NOT EMPTY(key1))
370
+ # @!attribute [rw] candidate_availability_filter
371
+ # @return [Google::Cloud::Talent::V4beta1::CandidateAvailabilityFilter]
372
+ # Deprecated. Use availability_filters instead.
373
+ #
374
+ # The candidate availability filter which filters based on availability
375
+ # signals.
376
+ #
377
+ # Signal 1: Number of days since most recent job application. See
378
+ # [Availability.JobApplicationAvailabilitySignal][google.cloud.talent.v4beta1.Availability.JobApplicationAvailabilitySignal] for the details of this
379
+ # signal.
380
+ #
381
+ # Signal 2: Number of days since last profile update. See
382
+ # [Availability.ProfileUpdateAvailabilitySignal][google.cloud.talent.v4beta1.Availability.ProfileUpdateAvailabilitySignal]
383
+ # for the details of this signal.
384
+ #
385
+ # The candidate availability filter helps a recruiter understand if a
386
+ # specific candidate is likely to be actively seeking new job opportunities
387
+ # based on an aggregated set of signals. Specifically, the intent is NOT to
388
+ # indicate the candidate's potential qualification / interest / close ability
389
+ # for a specific job.
390
+ # @!attribute [rw] availability_filters
391
+ # @return [Array<Google::Cloud::Talent::V4beta1::AvailabilityFilter>]
392
+ # The availability filter which filters based on
393
+ # {Google::Cloud::Talent::V4beta1::Profile#availability_signals Profile.availability_signals}.
394
+ #
395
+ # The availability filter helps a recruiter understand if a
396
+ # specific candidate is likely to be actively seeking new job opportunities
397
+ # based on an aggregated set of signals. Specifically, the intent is NOT to
398
+ # indicate the candidate's potential qualification / interest / close ability
399
+ # for a specific job.
400
+ #
401
+ # There can be at most one {Google::Cloud::Talent::V4beta1::AvailabilityFilter AvailabilityFilter} per
402
+ # {Google::Cloud::Talent::V4beta1::AvailabilityFilter#signal_type signal_type}. If there are multiple
403
+ # {Google::Cloud::Talent::V4beta1::AvailabilityFilter AvailabilityFilter} for a {Google::Cloud::Talent::V4beta1::AvailabilityFilter#signal_type signal_type},
404
+ # an error is thrown.
405
+ # @!attribute [rw] person_name_filters
406
+ # @return [Array<Google::Cloud::Talent::V4beta1::PersonNameFilter>]
407
+ # Person name filter specifies person name of profiles to match on.
408
+ #
409
+ # If multiple person name filters are specified, profiles that match any
410
+ # person name filters are retrieved.
411
+ #
412
+ # For example, search for profiles of candidates with name "John Smith".
413
+ class ProfileQuery
414
+ include Google::Protobuf::MessageExts
415
+ extend Google::Protobuf::MessageExts::ClassMethods
416
+ end
417
+
418
+ # Geographic region of the search.
419
+ # @!attribute [rw] address
420
+ # @return [String]
421
+ # The address name, such as "Mountain View" or "Bay Area".
422
+ # @!attribute [rw] region_code
423
+ # @return [String]
424
+ # CLDR region code of the country/region of the address. This is used
425
+ # to address ambiguity of the user-input location, for example, "Liverpool"
426
+ # against "Liverpool, NY, US" or "Liverpool, UK".
427
+ #
428
+ # Set this field to bias location resolution toward a specific country
429
+ # or territory. If this field is not set, application behavior is biased
430
+ # toward the United States by default.
431
+ #
432
+ # See https://cldr.unicode.org/ and
433
+ # https://www.unicode.org/cldr/charts/30/supplemental/territory_information.html
434
+ # for details. Example: "CH" for Switzerland.
435
+ # Note that this filter is not applicable for Profile Search related queries.
436
+ # @!attribute [rw] lat_lng
437
+ # @return [Google::Type::LatLng]
438
+ # The latitude and longitude of the geographic center to search from. This
439
+ # field is ignored if `address` is provided.
440
+ # @!attribute [rw] distance_in_miles
441
+ # @return [Float]
442
+ # The distance_in_miles is applied when the location being searched for is
443
+ # identified as a city or smaller. This field is ignored if the location
444
+ # being searched for is a state or larger.
445
+ # @!attribute [rw] telecommute_preference
446
+ # @return [Google::Cloud::Talent::V4beta1::LocationFilter::TelecommutePreference]
447
+ # Allows the client to return jobs without a
448
+ # set location, specifically, telecommuting jobs (telecommuting is considered
449
+ # by the service as a special location.
450
+ # {Google::Cloud::Talent::V4beta1::Job#posting_region Job.posting_region} indicates if a job permits telecommuting.
451
+ # If this field is set to {Google::Cloud::Talent::V4beta1::LocationFilter::TelecommutePreference::TELECOMMUTE_ALLOWED TelecommutePreference.TELECOMMUTE_ALLOWED},
452
+ # telecommuting jobs are searched, and {Google::Cloud::Talent::V4beta1::LocationFilter#address address} and {Google::Cloud::Talent::V4beta1::LocationFilter#lat_lng lat_lng} are
453
+ # ignored. If not set or set to
454
+ # {Google::Cloud::Talent::V4beta1::LocationFilter::TelecommutePreference::TELECOMMUTE_EXCLUDED TelecommutePreference.TELECOMMUTE_EXCLUDED}, telecommute job are not
455
+ # searched.
456
+ #
457
+ # This filter can be used by itself to search exclusively for telecommuting
458
+ # jobs, or it can be combined with another location
459
+ # filter to search for a combination of job locations,
460
+ # such as "Mountain View" or "telecommuting" jobs. However, when used in
461
+ # combination with other location filters, telecommuting jobs can be
462
+ # treated as less relevant than other jobs in the search response.
463
+ #
464
+ # This field is only used for job search requests.
465
+ # @!attribute [rw] negated
466
+ # @return [Boolean]
467
+ # Whether to apply negation to the filter so profiles matching the filter
468
+ # are excluded.
469
+ #
470
+ # Currently only supported in profile search.
471
+ class LocationFilter
472
+ include Google::Protobuf::MessageExts
473
+ extend Google::Protobuf::MessageExts::ClassMethods
474
+
475
+ # Specify whether to include telecommute jobs.
476
+ module TelecommutePreference
477
+ # Default value if the telecommute preference isn't specified.
478
+ TELECOMMUTE_PREFERENCE_UNSPECIFIED = 0
479
+
480
+ # Exclude telecommute jobs.
481
+ TELECOMMUTE_EXCLUDED = 1
482
+
483
+ # Allow telecommute jobs.
484
+ TELECOMMUTE_ALLOWED = 2
485
+ end
486
+ end
487
+
488
+ # Filter on job compensation type and amount.
489
+ # @!attribute [rw] type
490
+ # @return [Google::Cloud::Talent::V4beta1::CompensationFilter::FilterType]
491
+ # Required. Type of filter.
492
+ # @!attribute [rw] units
493
+ # @return [Array<Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationUnit>]
494
+ # Required. Specify desired `base compensation entry's`
495
+ # {Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationUnit CompensationInfo.CompensationUnit}.
496
+ # @!attribute [rw] range
497
+ # @return [Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationRange]
498
+ # Compensation range.
499
+ # @!attribute [rw] include_jobs_with_unspecified_compensation_range
500
+ # @return [Boolean]
501
+ # If set to true, jobs with unspecified compensation range fields are
502
+ # included.
503
+ class CompensationFilter
504
+ include Google::Protobuf::MessageExts
505
+ extend Google::Protobuf::MessageExts::ClassMethods
506
+
507
+ # Specify the type of filtering.
508
+ module FilterType
509
+ # Filter type unspecified. Position holder, INVALID, should never be used.
510
+ FILTER_TYPE_UNSPECIFIED = 0
511
+
512
+ # Filter by `base compensation entry's` unit. A job is a match if and
513
+ # only if the job contains a base CompensationEntry and the base
514
+ # CompensationEntry's unit matches provided {Google::Cloud::Talent::V4beta1::CompensationFilter#units units}.
515
+ # Populate one or more {Google::Cloud::Talent::V4beta1::CompensationFilter#units units}.
516
+ #
517
+ # See {Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationEntry CompensationInfo.CompensationEntry} for definition of
518
+ # base compensation entry.
519
+ UNIT_ONLY = 1
520
+
521
+ # Filter by `base compensation entry's` unit and amount / range. A job
522
+ # is a match if and only if the job contains a base CompensationEntry, and
523
+ # the base entry's unit matches provided
524
+ # {Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationUnit CompensationUnit} and
525
+ # amount or range overlaps with provided
526
+ # {Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationRange CompensationRange}.
527
+ #
528
+ # See {Google::Cloud::Talent::V4beta1::CompensationInfo::CompensationEntry CompensationInfo.CompensationEntry} for definition of
529
+ # base compensation entry.
530
+ #
531
+ # Set exactly one {Google::Cloud::Talent::V4beta1::CompensationFilter#units units} and populate {Google::Cloud::Talent::V4beta1::CompensationFilter#range range}.
532
+ UNIT_AND_AMOUNT = 2
533
+
534
+ # Filter by annualized base compensation amount and `base compensation
535
+ # entry's` unit. Populate [range][google.cloud.talent.v4beta1.CompensationFilter.range] and zero or more [units][google.cloud.talent.v4beta1.CompensationFilter.units].
536
+ ANNUALIZED_BASE_AMOUNT = 3
537
+
538
+ # Filter by annualized total compensation amount and `base compensation
539
+ # entry's` unit . Populate [range][google.cloud.talent.v4beta1.CompensationFilter.range] and zero or more [units][google.cloud.talent.v4beta1.CompensationFilter.units].
540
+ ANNUALIZED_TOTAL_AMOUNT = 4
541
+ end
542
+ end
543
+
544
+ # Parameters needed for commute search.
545
+ # @!attribute [rw] commute_method
546
+ # @return [Google::Cloud::Talent::V4beta1::CommuteMethod]
547
+ # Required. The method of transportation to calculate the commute time for.
548
+ # @!attribute [rw] start_coordinates
549
+ # @return [Google::Type::LatLng]
550
+ # Required. The latitude and longitude of the location to calculate the
551
+ # commute time from.
552
+ # @!attribute [rw] travel_duration
553
+ # @return [Google::Protobuf::Duration]
554
+ # Required. The maximum travel time in seconds. The maximum allowed value is `3600s`
555
+ # (one hour). Format is `123s`.
556
+ # @!attribute [rw] allow_imprecise_addresses
557
+ # @return [Boolean]
558
+ # If `true`, jobs without street level addresses may also be returned.
559
+ # For city level addresses, the city center is used. For state and coarser
560
+ # level addresses, text matching is used.
561
+ # If this field is set to `false` or isn't specified, only jobs that include
562
+ # street level addresses will be returned by commute search.
563
+ # @!attribute [rw] road_traffic
564
+ # @return [Google::Cloud::Talent::V4beta1::CommuteFilter::RoadTraffic]
565
+ # Specifies the traffic density to use when calculating commute time.
566
+ # @!attribute [rw] departure_time
567
+ # @return [Google::Type::TimeOfDay]
568
+ # The departure time used to calculate traffic impact, represented as
569
+ # {Google::Type::TimeOfDay google.type.TimeOfDay} in local time zone.
570
+ #
571
+ # Currently traffic model is restricted to hour level resolution.
572
+ class CommuteFilter
573
+ include Google::Protobuf::MessageExts
574
+ extend Google::Protobuf::MessageExts::ClassMethods
575
+
576
+ # The traffic density to use when calculating commute time.
577
+ module RoadTraffic
578
+ # Road traffic situation isn't specified.
579
+ ROAD_TRAFFIC_UNSPECIFIED = 0
580
+
581
+ # Optimal commute time without considering any traffic impact.
582
+ TRAFFIC_FREE = 1
583
+
584
+ # Commute time calculation takes in account the peak traffic impact.
585
+ BUSY_HOUR = 2
586
+ end
587
+ end
588
+
589
+ # Job title of the search.
590
+ # @!attribute [rw] job_title
591
+ # @return [String]
592
+ # Required. The job title. For example, "Software engineer", or "Product manager".
593
+ # @!attribute [rw] negated
594
+ # @return [Boolean]
595
+ # Whether to apply negation to the filter so profiles matching the filter
596
+ # are excluded.
597
+ class JobTitleFilter
598
+ include Google::Protobuf::MessageExts
599
+ extend Google::Protobuf::MessageExts::ClassMethods
600
+ end
601
+
602
+ # Skill filter of the search.
603
+ # @!attribute [rw] skill
604
+ # @return [String]
605
+ # Required. The skill name. For example, "java", "j2ee", and so on.
606
+ # @!attribute [rw] negated
607
+ # @return [Boolean]
608
+ # Whether to apply negation to the filter so profiles matching the filter
609
+ # are excluded.
610
+ class SkillFilter
611
+ include Google::Protobuf::MessageExts
612
+ extend Google::Protobuf::MessageExts::ClassMethods
613
+ end
614
+
615
+ # Employer filter of the search.
616
+ # @!attribute [rw] employer
617
+ # @return [String]
618
+ # Required. The name of the employer, for example "Google", "Alphabet".
619
+ # @!attribute [rw] mode
620
+ # @return [Google::Cloud::Talent::V4beta1::EmployerFilter::EmployerFilterMode]
621
+ # Define set of {Google::Cloud::Talent::V4beta1::EmploymentRecord EmploymentRecord}s to search against.
622
+ #
623
+ # Defaults to {Google::Cloud::Talent::V4beta1::EmployerFilter::EmployerFilterMode::ALL_EMPLOYMENT_RECORDS EmployerFilterMode.ALL_EMPLOYMENT_RECORDS}.
624
+ # @!attribute [rw] negated
625
+ # @return [Boolean]
626
+ # Whether to apply negation to the filter so profiles matching the filter
627
+ # is excluded.
628
+ class EmployerFilter
629
+ include Google::Protobuf::MessageExts
630
+ extend Google::Protobuf::MessageExts::ClassMethods
631
+
632
+ # Enum indicating which set of {Google::Cloud::Talent::V4beta1::Profile#employment_records Profile.employment_records} to search
633
+ # against.
634
+ module EmployerFilterMode
635
+ # Default value.
636
+ EMPLOYER_FILTER_MODE_UNSPECIFIED = 0
637
+
638
+ # Apply to all employers in {Google::Cloud::Talent::V4beta1::Profile#employment_records Profile.employment_records}.
639
+ ALL_EMPLOYMENT_RECORDS = 1
640
+
641
+ # Apply only to current employer in {Google::Cloud::Talent::V4beta1::Profile#employment_records Profile.employment_records}.
642
+ CURRENT_EMPLOYMENT_RECORDS_ONLY = 2
643
+
644
+ # Apply only to past (not current) employers in
645
+ # {Google::Cloud::Talent::V4beta1::Profile#employment_records Profile.employment_records}.
646
+ PAST_EMPLOYMENT_RECORDS_ONLY = 3
647
+ end
648
+ end
649
+
650
+ # Education filter of the search.
651
+ # @!attribute [rw] school
652
+ # @return [String]
653
+ # The school name. For example "MIT", "University of California, Berkeley".
654
+ # @!attribute [rw] field_of_study
655
+ # @return [String]
656
+ # The field of study. This is to search against value provided in
657
+ # {Google::Cloud::Talent::V4beta1::Degree#fields_of_study Degree.fields_of_study}.
658
+ # For example "Computer Science", "Mathematics".
659
+ # @!attribute [rw] degree_type
660
+ # @return [Google::Cloud::Talent::V4beta1::DegreeType]
661
+ # Education degree in ISCED code. Each value in degree covers a specific
662
+ # level of education, without any expansion to upper nor lower levels of
663
+ # education degree.
664
+ # @!attribute [rw] negated
665
+ # @return [Boolean]
666
+ # Whether to apply negation to the filter so profiles matching the filter
667
+ # is excluded.
668
+ class EducationFilter
669
+ include Google::Protobuf::MessageExts
670
+ extend Google::Protobuf::MessageExts::ClassMethods
671
+ end
672
+
673
+ # Work experience filter.
674
+ #
675
+ # This filter is used to search for profiles with working experience length
676
+ # between {Google::Cloud::Talent::V4beta1::WorkExperienceFilter#min_experience min_experience} and {Google::Cloud::Talent::V4beta1::WorkExperienceFilter#max_experience max_experience}.
677
+ # @!attribute [rw] min_experience
678
+ # @return [Google::Protobuf::Duration]
679
+ # The minimum duration of the work experience (inclusive).
680
+ # @!attribute [rw] max_experience
681
+ # @return [Google::Protobuf::Duration]
682
+ # The maximum duration of the work experience (exclusive).
683
+ class WorkExperienceFilter
684
+ include Google::Protobuf::MessageExts
685
+ extend Google::Protobuf::MessageExts::ClassMethods
686
+ end
687
+
688
+ # Application Date Range Filter.
689
+ #
690
+ # The API matches profiles with {Google::Cloud::Talent::V4beta1::Application#application_date Application.application_date} between
691
+ # start date and end date (both boundaries are inclusive). The filter is
692
+ # ignored if both {Google::Cloud::Talent::V4beta1::ApplicationDateFilter#start_date start_date} and {Google::Cloud::Talent::V4beta1::ApplicationDateFilter#end_date end_date} are missing.
693
+ # @!attribute [rw] start_date
694
+ # @return [Google::Type::Date]
695
+ # Start date. If it's missing, The API matches profiles with application date
696
+ # not after the end date.
697
+ # @!attribute [rw] end_date
698
+ # @return [Google::Type::Date]
699
+ # End date. If it's missing, The API matches profiles with application date
700
+ # not before the start date.
701
+ class ApplicationDateFilter
702
+ include Google::Protobuf::MessageExts
703
+ extend Google::Protobuf::MessageExts::ClassMethods
704
+ end
705
+
706
+ # Outcome Notes Filter.
707
+ # @!attribute [rw] outcome_notes
708
+ # @return [String]
709
+ # Required. User entered or selected outcome reason. The API does an exact match on the
710
+ # {Google::Cloud::Talent::V4beta1::Application#outcome_notes Application.outcome_notes} in profiles.
711
+ # @!attribute [rw] negated
712
+ # @return [Boolean]
713
+ # If true, The API excludes all candidates with any
714
+ # {Google::Cloud::Talent::V4beta1::Application#outcome_notes Application.outcome_notes} matching the outcome reason specified in
715
+ # the filter.
716
+ class ApplicationOutcomeNotesFilter
717
+ include Google::Protobuf::MessageExts
718
+ extend Google::Protobuf::MessageExts::ClassMethods
719
+ end
720
+
721
+ # Filter on the job information of Application.
722
+ # @!attribute [rw] job_requisition_id
723
+ # @return [String]
724
+ # The job requisition id in the application. The API does an exact match on
725
+ # the {Google::Cloud::Talent::V4beta1::Job#requisition_id Job.requisition_id} of {Google::Cloud::Talent::V4beta1::Application#job Application.job} in profiles.
726
+ # @!attribute [rw] job_title
727
+ # @return [String]
728
+ # The job title in the application. The API does an exact match on the
729
+ # {Google::Cloud::Talent::V4beta1::Job#title Job.title} of {Google::Cloud::Talent::V4beta1::Application#job Application.job} in profiles.
730
+ # @!attribute [rw] negated
731
+ # @return [Boolean]
732
+ # If true, the API excludes all profiles with any {Google::Cloud::Talent::V4beta1::Application#job Application.job}
733
+ # matching the filters.
734
+ class ApplicationJobFilter
735
+ include Google::Protobuf::MessageExts
736
+ extend Google::Protobuf::MessageExts::ClassMethods
737
+ end
738
+
739
+ # Filter on create timestamp or update timestamp of profiles.
740
+ # @!attribute [rw] start_time
741
+ # @return [Google::Protobuf::Timestamp]
742
+ # Start timestamp, matching profiles with the start time. If this field
743
+ # missing, The API matches profiles with create / update timestamp before the
744
+ # end timestamp.
745
+ # @!attribute [rw] end_time
746
+ # @return [Google::Protobuf::Timestamp]
747
+ # End timestamp, matching profiles with the end time. If this field
748
+ # missing, The API matches profiles with create / update timestamp after the
749
+ # start timestamp.
750
+ # @!attribute [rw] time_field
751
+ # @return [Google::Cloud::Talent::V4beta1::TimeFilter::TimeField]
752
+ # Specifies which time field to filter profiles.
753
+ #
754
+ # Defaults to {Google::Cloud::Talent::V4beta1::TimeFilter::TimeField::CREATE_TIME TimeField.CREATE_TIME}.
755
+ class TimeFilter
756
+ include Google::Protobuf::MessageExts
757
+ extend Google::Protobuf::MessageExts::ClassMethods
758
+
759
+ # Time fields can be used in TimeFilter.
760
+ module TimeField
761
+ # Default value.
762
+ TIME_FIELD_UNSPECIFIED = 0
763
+
764
+ # Earliest profile create time.
765
+ CREATE_TIME = 1
766
+
767
+ # Latest profile update time.
768
+ UPDATE_TIME = 2
769
+ end
770
+ end
771
+
772
+ # Deprecated. Use AvailabilityFilter instead.
773
+ #
774
+ # Filter on availability signals.
775
+ # @!attribute [rw] negated
776
+ # @return [Boolean]
777
+ # It is false by default. If true, API excludes all the potential available
778
+ # profiles.
779
+ class CandidateAvailabilityFilter
780
+ include Google::Protobuf::MessageExts
781
+ extend Google::Protobuf::MessageExts::ClassMethods
782
+ end
783
+
784
+ # Filter on availability signals.
785
+ # @!attribute [rw] signal_type
786
+ # @return [Google::Cloud::Talent::V4beta1::AvailabilitySignalType]
787
+ # Required. Type of signal to apply filter on.
788
+ # @!attribute [rw] range
789
+ # @return [Google::Cloud::Talent::V4beta1::TimestampRange]
790
+ # Required. Range of times to filter candidate signals by.
791
+ # @!attribute [rw] required
792
+ # @return [Boolean]
793
+ # If multiple {Google::Cloud::Talent::V4beta1::AvailabilityFilter AvailabilityFilter} are provided, the default
794
+ # behavior is to OR all filters, but if this field is set to true, this
795
+ # particular {Google::Cloud::Talent::V4beta1::AvailabilityFilter AvailabilityFilter} will be AND'ed against other
796
+ # {Google::Cloud::Talent::V4beta1::AvailabilityFilter AvailabilityFilter}.
797
+ class AvailabilityFilter
798
+ include Google::Protobuf::MessageExts
799
+ extend Google::Protobuf::MessageExts::ClassMethods
800
+ end
801
+
802
+ # Filter on person name.
803
+ # @!attribute [rw] person_name
804
+ # @return [String]
805
+ # Required. The person name. For example, "John Smith".
806
+ #
807
+ # Can be any combination of [PersonName.structured_name.given_name][],
808
+ # [PersonName.structured_name.middle_initial][],
809
+ # [PersonName.structured_name.family_name][], and
810
+ # {Google::Cloud::Talent::V4beta1::PersonName#formatted_name PersonName.formatted_name}.
811
+ class PersonNameFilter
812
+ include Google::Protobuf::MessageExts
813
+ extend Google::Protobuf::MessageExts::ClassMethods
814
+ end
815
+ end
816
+ end
817
+ end
818
+ end