event.proto 7.9 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171
  1. // Copyright 2020 Google LLC
  2. //
  3. // Licensed under the Apache License, Version 2.0 (the "License");
  4. // you may not use this file except in compliance with the License.
  5. // You may obtain a copy of the License at
  6. //
  7. // http://www.apache.org/licenses/LICENSE-2.0
  8. //
  9. // Unless required by applicable law or agreed to in writing, software
  10. // distributed under the License is distributed on an "AS IS" BASIS,
  11. // WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  12. // See the License for the specific language governing permissions and
  13. // limitations under the License.
  14. syntax = "proto3";
  15. package google.cloud.talent.v4;
  16. import "google/api/field_behavior.proto";
  17. import "google/protobuf/timestamp.proto";
  18. import "google/api/annotations.proto";
  19. option go_package = "google.golang.org/genproto/googleapis/cloud/talent/v4;talent";
  20. option java_multiple_files = true;
  21. option java_outer_classname = "EventProto";
  22. option java_package = "com.google.cloud.talent.v4";
  23. option objc_class_prefix = "CTS";
  24. // An event issued when an end user interacts with the application that
  25. // implements Cloud Talent Solution. Providing this information improves the
  26. // quality of results for the API clients, enabling the
  27. // service to perform optimally. The number of events sent must be consistent
  28. // with other calls, such as job searches, issued to the service by the client.
  29. message ClientEvent {
  30. // Strongly recommended for the best service experience.
  31. //
  32. // A unique ID generated in the API responses. It can be found in
  33. // [ResponseMetadata.request_id][google.cloud.talent.v4.ResponseMetadata.request_id].
  34. string request_id = 1;
  35. // Required. A unique identifier, generated by the client application.
  36. string event_id = 2 [(google.api.field_behavior) = REQUIRED];
  37. // Required. The timestamp of the event.
  38. google.protobuf.Timestamp create_time = 4 [(google.api.field_behavior) = REQUIRED];
  39. // Required.
  40. //
  41. // The detail information of a specific event type.
  42. oneof event {
  43. // An event issued when a job seeker interacts with the application that
  44. // implements Cloud Talent Solution.
  45. JobEvent job_event = 5;
  46. }
  47. // Notes about the event provided by recruiters or other users, for example,
  48. // feedback on why a job was bookmarked.
  49. string event_notes = 9;
  50. }
  51. // An event issued when a job seeker interacts with the application that
  52. // implements Cloud Talent Solution.
  53. message JobEvent {
  54. // An enumeration of an event attributed to the behavior of the end user,
  55. // such as a job seeker.
  56. enum JobEventType {
  57. // The event is unspecified by other provided values.
  58. JOB_EVENT_TYPE_UNSPECIFIED = 0;
  59. // The job seeker or other entity interacting with the service has
  60. // had a job rendered in their view, such as in a list of search results in
  61. // a compressed or clipped format. This event is typically associated with
  62. // the viewing of a jobs list on a single page by a job seeker.
  63. IMPRESSION = 1;
  64. // The job seeker, or other entity interacting with the service, has
  65. // viewed the details of a job, including the full description. This
  66. // event doesn't apply to the viewing a snippet of a job appearing as a
  67. // part of the job search results. Viewing a snippet is associated with an
  68. // [impression][google.cloud.talent.v4.JobEvent.JobEventType.IMPRESSION]).
  69. VIEW = 2;
  70. // The job seeker or other entity interacting with the service
  71. // performed an action to view a job and was redirected to a different
  72. // website for job.
  73. VIEW_REDIRECT = 3;
  74. // The job seeker or other entity interacting with the service
  75. // began the process or demonstrated the intention of applying for a job.
  76. APPLICATION_START = 4;
  77. // The job seeker or other entity interacting with the service
  78. // submitted an application for a job.
  79. APPLICATION_FINISH = 5;
  80. // The job seeker or other entity interacting with the service
  81. // submitted an application for a job with a single click without
  82. // entering information. If a job seeker performs this action, send only
  83. // this event to the service. Do not also send
  84. // [JobEventType.APPLICATION_START][google.cloud.talent.v4.JobEvent.JobEventType.APPLICATION_START] or [JobEventType.APPLICATION_FINISH][google.cloud.talent.v4.JobEvent.JobEventType.APPLICATION_FINISH]
  85. // events.
  86. APPLICATION_QUICK_SUBMISSION = 6;
  87. // The job seeker or other entity interacting with the service
  88. // performed an action to apply to a job and was redirected to a different
  89. // website to complete the application.
  90. APPLICATION_REDIRECT = 7;
  91. // The job seeker or other entity interacting with the service began the
  92. // process or demonstrated the intention of applying for a job from the
  93. // search results page without viewing the details of the job posting.
  94. // If sending this event, JobEventType.VIEW event shouldn't be sent.
  95. APPLICATION_START_FROM_SEARCH = 8;
  96. // The job seeker, or other entity interacting with the service, performs an
  97. // action with a single click from the search results page to apply to a job
  98. // (without viewing the details of the job posting), and is redirected
  99. // to a different website to complete the application. If a candidate
  100. // performs this action, send only this event to the service. Do not also
  101. // send [JobEventType.APPLICATION_START][google.cloud.talent.v4.JobEvent.JobEventType.APPLICATION_START],
  102. // [JobEventType.APPLICATION_FINISH][google.cloud.talent.v4.JobEvent.JobEventType.APPLICATION_FINISH] or [JobEventType.VIEW][google.cloud.talent.v4.JobEvent.JobEventType.VIEW] events.
  103. APPLICATION_REDIRECT_FROM_SEARCH = 9;
  104. // This event should be used when a company submits an application
  105. // on behalf of a job seeker. This event is intended for use by staffing
  106. // agencies attempting to place candidates.
  107. APPLICATION_COMPANY_SUBMIT = 10;
  108. // The job seeker or other entity interacting with the service demonstrated
  109. // an interest in a job by bookmarking or saving it.
  110. BOOKMARK = 11;
  111. // The job seeker or other entity interacting with the service was
  112. // sent a notification, such as an email alert or device notification,
  113. // containing one or more jobs listings generated by the service.
  114. NOTIFICATION = 12;
  115. // The job seeker or other entity interacting with the service was
  116. // employed by the hiring entity (employer). Send this event
  117. // only if the job seeker was hired through an application that was
  118. // initiated by a search conducted through the Cloud Talent Solution
  119. // service.
  120. HIRED = 13;
  121. // A recruiter or staffing agency submitted an application on behalf of the
  122. // candidate after interacting with the service to identify a suitable job
  123. // posting.
  124. SENT_CV = 14;
  125. // The entity interacting with the service (for example, the job seeker),
  126. // was granted an initial interview by the hiring entity (employer). This
  127. // event should only be sent if the job seeker was granted an interview as
  128. // part of an application that was initiated by a search conducted through /
  129. // recommendation provided by the Cloud Talent Solution service.
  130. INTERVIEW_GRANTED = 15;
  131. }
  132. // Required. The type of the event (see [JobEventType][google.cloud.talent.v4.JobEvent.JobEventType]).
  133. JobEventType type = 1 [(google.api.field_behavior) = REQUIRED];
  134. // Required. The [job name(s)][google.cloud.talent.v4.Job.name] associated with this event.
  135. // For example, if this is an [impression][google.cloud.talent.v4.JobEvent.JobEventType.IMPRESSION] event,
  136. // this field contains the identifiers of all jobs shown to the job seeker.
  137. // If this was a [view][google.cloud.talent.v4.JobEvent.JobEventType.VIEW] event, this field contains the
  138. // identifier of the viewed job.
  139. //
  140. // The format is
  141. // "projects/{project_id}/tenants/{tenant_id}/jobs/{job_id}", for
  142. // example, "projects/foo/tenants/bar/jobs/baz".
  143. repeated string jobs = 2 [(google.api.field_behavior) = REQUIRED];
  144. }