Company name search (v3)

Stay organized with collections Save and categorize content based on your preferences.

Search jobs by company name.

Explore further

For detailed documentation that includes this code sample, see the following:

Code sample


// companyDisplayNameSearch searches for job on company display names.
func companyDisplayNameSearch(w io.Writer, projectID, companyName string, companyDisplayNames []string) (*talent.SearchJobsResponse, error) {
	ctx := context.Background()

	client, err := google.DefaultClient(ctx, talent.CloudPlatformScope)
	if err != nil {
		return nil, fmt.Errorf("google.DefaultClient: %v", err)
	// Create the jobs service client.
	service, err := talent.New(client)
	if err != nil {
		return nil, fmt.Errorf("talent.New: %v", err)

	jobQuery := &talent.JobQuery{
		CompanyDisplayNames: companyDisplayNames,
	if companyName != "" {
		jobQuery.CompanyNames = []string{companyName}

	parent := "projects/" + projectID
	req := &talent.SearchJobsRequest{
		// Make sure to set the RequestMetadata the same as the associated
		// search request.
		RequestMetadata: &talent.RequestMetadata{
			// Make sure to hash your userID.
			UserId: "HashedUsrId",
			// Make sure to hash the sessionID.
			SessionId: "HashedSessionId",
			// Domain of the website where the search is conducted.
			Domain: "",
		// Set the actual search term as defined in the jobQuery.
		JobQuery: jobQuery,
		// Set the search mode to a regular search.
		SearchMode: "JOB_SEARCH",
	resp, err := service.Projects.Jobs.Search(parent, req).Do()
	if err != nil {
		return nil, fmt.Errorf("failed to search for jobs with company display names %v: %v", companyDisplayNames, err)

	fmt.Fprintln(w, "Jobs:")
	for _, j := range resp.MatchingJobs {
		fmt.Fprintf(w, "\t%q\n", j.Job.Name)

	return resp, nil


/** Search on company display name. */
public static void companyDisplayNameSearch(String companyName, List<String> companyDisplayNames)
    throws IOException, InterruptedException {
  // Make sure to set the requestMetadata the same as the associated search request
  RequestMetadata requestMetadata =
      new RequestMetadata()
          // Make sure to hash your userID
          // Make sure to hash the sessionID
          // Domain of the website where the search is conducted

  JobQuery jobQuery = new JobQuery().setCompanyDisplayNames(companyDisplayNames);
  if (companyName != null) {

  SearchJobsRequest searchJobsRequest =
      new SearchJobsRequest()
          .setJobQuery(jobQuery) // Set the actual search term as defined in the jobQurey
          .setSearchMode("JOB_SEARCH"); // Set the search mode to a regular search

  SearchJobsResponse searchJobsResponse =
          .search(DEFAULT_PROJECT_ID, searchJobsRequest)

  System.out.printf("Search results by display name of company: %s\n", searchJobsResponse);


def company_display_name_search(client_service, company_name,
    request_metadata = {
        'user_id': 'HashedUserId',
        'session_id': 'HashedSessionId',
        'domain': ''
    job_query = {'company_display_names': company_display_names}
    if company_name is not None:
        job_query.update({'company_names': [company_name]})
    request = {
        'search_mode': 'JOB_SEARCH',
        'request_metadata': request_metadata,
        'job_query': job_query,

    response = client_service.projects().jobs().search(
        parent=parent, body=request).execute()


# project_id              = "Id of the project"
# company_display_names   = "Array of company display names which we want to search on"

require "google/apis/jobs_v3"

# Instantiate the client
jobs = Google::Apis::JobsV3
talent_solution_client =
# @see
talent_solution_client.authorization = Google::Auth.get_application_default(
# Make sure to set the request_metadata the same as the associated search request
request_metadata = user_id:    "HashedUserId",
                                             session_id: "HashedSessionId",
                                             domain:     ""
# Perform a search for analyst  related jobs
job_query = company_display_names:
search_jobs_request = request_metadata: request_metadata,
                                                  job_query:        job_query,
                                                  search_mode:      "JOB_SEARCH"
search_jobs_response = talent_solution_client.search_jobs project_id, search_jobs_request

puts search_jobs_response.to_json

What's next

To search and filter code samples for other Google Cloud products, see the Google Cloud sample browser.