ClientEvent

An event issued when an end user interacts with the application that implements Cloud Talent Solution. Providing this information improves the quality of results for the API clients, enabling the service to perform optimally. The number of events sent must be consistent with other calls, such as job searches, issued to the service by the client.

JSON representation
{
  "requestId": string,
  "eventId": string,
  "createTime": string,
  "eventNotes": string,

  // Union field event can be only one of the following:
  "jobEvent": {
    object (JobEvent)
  },
  "profileEvent": {
    object (ProfileEvent)
  }
  // End of list of possible types for union field event.
}
Fields
requestId

string

Optional but highly recommended.

A unique ID generated in the API responses. It can be found in ResponseMetadata.request_id.

eventId

string

Required. A unique identifier, generated by the client application.

createTime

string (Timestamp format)

Required. The timestamp of the event.

eventNotes

string

Optional. Notes about the event provided by recruiters or other users, for example, feedback on why a profile was bookmarked.

Union field event. Required.

The detail information of a specific event type. event can be only one of the following:

jobEvent

object (JobEvent)

An event issued when a job seeker interacts with the application that implements Cloud Talent Solution.

profileEvent

object (ProfileEvent)

An event issued when a profile searcher interacts with the application that implements Cloud Talent Solution.

JobEvent

An event issued when a job seeker interacts with the application that implements Cloud Talent Solution.

JSON representation
{
  "type": enum (JobEventType),
  "jobs": [
    string
  ],
  "profile": string
}
Fields
type

enum (JobEventType)

Required. The type of the event (see JobEventType).

jobs[]

string

Required. The job name(s) associated with this event. For example, if this is an impression event, this field contains the identifiers of all jobs shown to the job seeker. If this was a view event, this field contains the identifier of the viewed job.

The format is "projects/{project_id}/tenants/{tenantId}/jobs/{job_id}", for example, "projects/api-test-project/tenants/foo/jobs/1234".

profile

string

Optional. The profile name associated with this client event.

The format is "projects/{project_id}/tenants/{tenantId}/profiles/{profile_id}", for example, "projects/api-test-project/tenants/foo/profiles/bar".

JobEventType

An enumeration of an event attributed to the behavior of the end user, such as a job seeker.

Enums
JOB_EVENT_TYPE_UNSPECIFIED The event is unspecified by other provided values.
IMPRESSION The job seeker or other entity interacting with the service has had a job rendered in their view, such as in a list of search results in a compressed or clipped format. This event is typically associated with the viewing of a jobs list on a single page by a job seeker.
VIEW The job seeker, or other entity interacting with the service, has viewed the details of a job, including the full description. This event doesn't apply to the viewing a snippet of a job appearing as a part of the job search results. Viewing a snippet is associated with an impression).
VIEW_REDIRECT The job seeker or other entity interacting with the service performed an action to view a job and was redirected to a different website for job.
APPLICATION_START The job seeker or other entity interacting with the service began the process or demonstrated the intention of applying for a job.
APPLICATION_FINISH The job seeker or other entity interacting with the service submitted an application for a job.
APPLICATION_QUICK_SUBMISSION The job seeker or other entity interacting with the service submitted an application for a job with a single click without entering information. If a job seeker performs this action, send only this event to the service. Do not also send JobEventType.APPLICATION_START or JobEventType.APPLICATION_FINISH events.
APPLICATION_REDIRECT The job seeker or other entity interacting with the service performed an action to apply to a job and was redirected to a different website to complete the application.
APPLICATION_COMPANY_SUBMIT This event should be used when a company submits an application on behalf of a job seeker. This event is intended for use by staffing agencies attempting to place candidates.
BOOKMARK The job seeker or other entity interacting with the service demonstrated an interest in a job by bookmarking or saving it.
NOTIFICATION The job seeker or other entity interacting with the service was sent a notification, such as an email alert or device notification, containing one or more jobs listings generated by the service.
HIRED The job seeker or other entity interacting with the service was employed by the hiring entity (employer). Send this event only if the job seeker was hired through an application that was initiated by a search conducted through the Cloud Talent Solution service.
SENT_CV A recruiter or staffing agency submitted an application on behalf of the candidate after interacting with the service to identify a suitable job posting.
INTERVIEW_GRANTED The entity interacting with the service (for example, the job seeker), was granted an initial interview by the hiring entity (employer). This event should only be sent if the job seeker was granted an interview as part of an application that was initiated by a search conducted through / recommendation provided by the Cloud Talent Solution service.

ProfileEvent

An event issued when a profile searcher interacts with the application that implements Cloud Talent Solution.

JSON representation
{
  "type": enum (ProfileEventType),
  "profiles": [
    string
  ],
  "jobs": [
    string
  ]
}
Fields
type

enum (ProfileEventType)

Required. Type of event.

profiles[]

string

Required. The profile name(s) associated with this client event.

The format is "projects/{project_id}/tenants/{tenantId}/profiles/{profile_id}", for example, "projects/api-test-project/tenants/foo/profiles/bar".

jobs[]

string

Optional. The job name(s) associated with this client event. Leave it empty if the event isn't associated with a job.

The format is "projects/{project_id}/tenants/{tenantId}/jobs/{job_id}", for example, "projects/api-test-project/tenants/foo/jobs/1234".

ProfileEventType

The enum represents types of client events for a candidate profile.

Enums
PROFILE_EVENT_TYPE_UNSPECIFIED Default value.
IMPRESSION

Send this event when a ProfileEvent.profiles meets all of the following criteria: * Was sent as a part of a result set for a CTS API call. * Was rendered in the end user's UI (that is, the ProfileEvent.recruiter). * That UI rendering was displayed in the end user's viewport for >=3 seconds.

In other words, send this event when the end user of the CTS service actually saw a resulting profile in their viewport.

To understand how to use this event, consider an example:

  • The customer's UI for interacting with CTS result sets is accessed by the end user through a web browser.
  • The UI calls for a page size of 15 candidates (that is, 15 candidates are rendered on each page of results).
  • However, the UI design calls for only 5 candidates to be shown at any given time in the viewport (that is, the end user can only see 5 results at any given time and needs to scroll up or down to view all 15 results).

To render each page of results, the customer will send a request to CTS with a page size = 15.

  • User loads page #1 of results.
  • User scrolls down to expose results #1 - #5 and dwells on this view for 30 seconds.
  • Send an IMPRESSION event for result 1, 2, 3, 4, 5.
  • User scrolls down a bit, exposing results #2 - #6 in the viewport and dwells on this view for 5 minutes.
  • Send an IMPRESSION event for result 6.
  • User scrolls to the bottom of the page, with results #7 - #15 shown in the viewport for ~5 seconds each.
  • Specifically, NO IMPRESSION events are sent for result 7, 8, 9, 10, 11, 12, 13, 14, 15.
  • User clicks to the next page and loads page #2 of results.
  • Within 2 seconds, user scrolls to expose results #20 - #24 in the viewport and dwells on this view for 20 mins.
  • Send an IMPRESSION event for result 20, 21, 22, 23, 24
  • User closes their browser window.
VIEW

The VIEW event allows CTS to understand if a candidate's profile was viewed by an end user (that is, recruiter) of the system for >=3 seconds. This is critical to tracking product metrics and should be sent for every profile VIEW that happens in the customer's system.

VIEW events should be sent whether an end user views a candidate's profile as a result of seeing that profile in the result set of a CTS API request or whether the end user views the profile for some other reason (that is, clicks to the candidate's profile in the ATS, and so on).

For a VIEW that happens as a result of seeing the profile in a CTS API request's result set, the ClientEvent.request_id should be populated. If the VIEW happens for some other reason, the requestId should not be populated.

This event requires a valid recruiter and one valid ID in profiles.

To understand how to use this event, consider 2 examples in which a VIEW event should be sent: * End user makes a request to the CTS API for a result set. * Results for the request are shown to the end user. * End user clicks on one of the candidates that are shown as part of the results. * A VIEW event with the ClientEvent.request_id of the API call in the first step of this example is sent.

  • End user browses to a candidate's profile in the ATS.
  • A VIEW event without a ClientEvent.request_id is sent.
BOOKMARK The profile is bookmarked.
Var denne siden nyttig? Si fra hva du synes:

Send tilbakemelding om ...

Job search documentation
Trenger du hjelp? Gå til brukerstøttesiden vår.