{
  "auth": {
    "oauth2": {
      "scopes": {
        "https://www.googleapis.com/auth/cloud-platform": {
          "description": "View and manage your data across Google Cloud Platform services"
        },
        "https://www.googleapis.com/auth/jobs": {
          "description": "Manage job postings"
        }
      }
    }
  },
  "basePath": "",
  "baseUrl": "https://jobs.googleapis.com/",
  "batchPath": "batch",
  "canonicalName": "Cloud Talent Solution",
  "description": "Cloud Talent Solution provides the capability to create, read, update, and delete job postings, as well as search jobs based on keywords and filters.\n",
  "discoveryVersion": "v1",
  "documentationLink": "https://cloud.google.com/talent-solution/job-search/docs/",
  "fullyEncodeReservedExpansion": true,
  "icons": {
    "x16": "http://www.google.com/images/icons/product/search-16.gif",
    "x32": "http://www.google.com/images/icons/product/search-32.gif"
  },
  "id": "jobs:v3",
  "kind": "discovery#restDescription",
  "name": "jobs",
  "ownerDomain": "google.com",
  "ownerName": "Google",
  "parameters": {
    "$.xgafv": {
      "description": "V1 error format.",
      "enum": [
        "1",
        "2"
      ],
      "enumDescriptions": [
        "v1 error format",
        "v2 error format"
      ],
      "location": "query",
      "type": "string"
    },
    "access_token": {
      "description": "OAuth access token.",
      "location": "query",
      "type": "string"
    },
    "alt": {
      "default": "json",
      "description": "Data format for response.",
      "enum": [
        "json",
        "media",
        "proto"
      ],
      "enumDescriptions": [
        "Responses with Content-Type of application/json",
        "Media download with context-dependent Content-Type",
        "Responses with Content-Type of application/x-protobuf"
      ],
      "location": "query",
      "type": "string"
    },
    "callback": {
      "description": "JSONP",
      "location": "query",
      "type": "string"
    },
    "fields": {
      "description": "Selector specifying which fields to include in a partial response.",
      "location": "query",
      "type": "string"
    },
    "key": {
      "description": "API key. Your API key identifies your project and provides you with API access, quota, and reports. Required unless you provide an OAuth 2.0 token.",
      "location": "query",
      "type": "string"
    },
    "oauth_token": {
      "description": "OAuth 2.0 token for the current user.",
      "location": "query",
      "type": "string"
    },
    "prettyPrint": {
      "default": "true",
      "description": "Returns response with indentations and line breaks.",
      "location": "query",
      "type": "boolean"
    },
    "quotaUser": {
      "description": "Available to use for quota purposes for server-side applications. Can be any arbitrary string assigned to a user, but should not exceed 40 characters.",
      "location": "query",
      "type": "string"
    },
    "uploadType": {
      "description": "Legacy upload protocol for media (e.g. \"media\", \"multipart\").",
      "location": "query",
      "type": "string"
    },
    "upload_protocol": {
      "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
      "location": "query",
      "type": "string"
    }
  },
  "protocol": "rest",
  "resources": {
    "projects": {
      "methods": {
        "complete": {
          "description": "Completes the specified prefix with keyword suggestions.\nIntended for use by a job search auto-complete search box.",
          "flatPath": "v3/projects/{projectsId}:complete",
          "httpMethod": "GET",
          "id": "jobs.projects.complete",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "companyName": {
              "description": "Optional.\n\nIf provided, restricts completion to specified company.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".",
              "location": "query",
              "type": "string"
            },
            "languageCode": {
              "description": "Deprecated. Use language_codes instead.\n\nOptional.\n\nThe language of the query. This is\nthe BCP-47 language code, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\n[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).\n\nFor CompletionType.JOB_TITLE type, only open jobs with the same\nlanguage_code are returned.\n\nFor CompletionType.COMPANY_NAME type,\nonly companies having open jobs with the same language_code are\nreturned.\n\nFor CompletionType.COMBINED type, only open jobs with the same\nlanguage_code or companies having open jobs with the same\nlanguage_code are returned.\n\nThe maximum number of allowed characters is 255.",
              "location": "query",
              "type": "string"
            },
            "languageCodes": {
              "description": "Optional.\n\nThe list of languages of the query. This is\nthe BCP-47 language code, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\n[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).\n\nFor CompletionType.JOB_TITLE type, only open jobs with the same\nlanguage_codes are returned.\n\nFor CompletionType.COMPANY_NAME type,\nonly companies having open jobs with the same language_codes are\nreturned.\n\nFor CompletionType.COMBINED type, only open jobs with the same\nlanguage_codes or companies having open jobs with the same\nlanguage_codes are returned.\n\nThe maximum number of allowed characters is 255.",
              "location": "query",
              "repeated": true,
              "type": "string"
            },
            "name": {
              "description": "Required.\n\nResource name of project the completion is performed within.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
              "location": "path",
              "pattern": "^projects/[^/]+$",
              "required": true,
              "type": "string"
            },
            "pageSize": {
              "description": "Required.\n\nCompletion result count.\n\nThe maximum allowed page size is 10.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "query": {
              "description": "Required.\n\nThe query used to generate suggestions.\n\nThe maximum number of allowed characters is 255.",
              "location": "query",
              "type": "string"
            },
            "scope": {
              "description": "Optional.\n\nThe scope of the completion. The defaults is CompletionScope.PUBLIC.",
              "enum": [
                "COMPLETION_SCOPE_UNSPECIFIED",
                "TENANT",
                "PUBLIC"
              ],
              "location": "query",
              "type": "string"
            },
            "type": {
              "description": "Optional.\n\nThe completion topic. The default is CompletionType.COMBINED.",
              "enum": [
                "COMPLETION_TYPE_UNSPECIFIED",
                "JOB_TITLE",
                "COMPANY_NAME",
                "COMBINED"
              ],
              "location": "query",
              "type": "string"
            }
          },
          "path": "v3/{+name}:complete",
          "response": {
            "$ref": "CompleteQueryResponse"
          },
          "scopes": [
            "https://www.googleapis.com/auth/cloud-platform",
            "https://www.googleapis.com/auth/jobs"
          ]
        }
      },
      "resources": {
        "clientEvents": {
          "methods": {
            "create": {
              "description": "Report events issued when end user interacts with customer's application\nthat uses Cloud Talent Solution. You may inspect the created events in\n[self service\ntools](https://console.cloud.google.com/talent-solution/overview).\n[Learn\nmore](https://cloud.google.com/talent-solution/job-search/docs/management-tools)\nabout self service tools.",
              "flatPath": "v3/projects/{projectsId}/clientEvents",
              "httpMethod": "POST",
              "id": "jobs.projects.clientEvents.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Parent project name.",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/clientEvents",
              "request": {
                "$ref": "CreateClientEventRequest"
              },
              "response": {
                "$ref": "ClientEvent"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            }
          }
        },
        "companies": {
          "methods": {
            "create": {
              "description": "Creates a new company entity.",
              "flatPath": "v3/projects/{projectsId}/companies",
              "httpMethod": "POST",
              "id": "jobs.projects.companies.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required.\n\nResource name of the project under which the company is created.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/companies",
              "request": {
                "$ref": "CreateCompanyRequest"
              },
              "response": {
                "$ref": "Company"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "delete": {
              "description": "Deletes specified company.\nPrerequisite: The company has no jobs associated with it.",
              "flatPath": "v3/projects/{projectsId}/companies/{companiesId}",
              "httpMethod": "DELETE",
              "id": "jobs.projects.companies.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required.\n\nThe resource name of the company to be deleted.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+/companies/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "get": {
              "description": "Retrieves specified company.",
              "flatPath": "v3/projects/{projectsId}/companies/{companiesId}",
              "httpMethod": "GET",
              "id": "jobs.projects.companies.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required.\n\nThe resource name of the company to be retrieved.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+/companies/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+name}",
              "response": {
                "$ref": "Company"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "list": {
              "description": "Lists all companies associated with the service account.",
              "flatPath": "v3/projects/{projectsId}/companies",
              "httpMethod": "GET",
              "id": "jobs.projects.companies.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "Optional.\n\nThe maximum number of companies to be returned, at most 100.\nDefault is 100 if a non-positive number is provided.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional.\n\nThe starting indicator from which to return results.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required.\n\nResource name of the project under which the company is created.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                },
                "requireOpenJobs": {
                  "description": "Optional.\n\nSet to true if the companies requested must have open jobs.\n\nDefaults to false.\n\nIf true, at most page_size of companies are fetched, among which\nonly those with open jobs are returned.",
                  "location": "query",
                  "type": "boolean"
                }
              },
              "path": "v3/{+parent}/companies",
              "response": {
                "$ref": "ListCompaniesResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "patch": {
              "description": "Updates specified company. Company names can't be updated. To update a\ncompany name, delete the company and all jobs associated with it, and only\nthen re-create them.",
              "flatPath": "v3/projects/{projectsId}/companies/{companiesId}",
              "httpMethod": "PATCH",
              "id": "jobs.projects.companies.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required during company update.\n\nThe resource name for a company. This is generated by the service when a\ncompany is created.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+/companies/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+name}",
              "request": {
                "$ref": "UpdateCompanyRequest"
              },
              "response": {
                "$ref": "Company"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            }
          }
        },
        "jobs": {
          "methods": {
            "batchDelete": {
              "description": "Deletes a list of Jobs by filter.",
              "flatPath": "v3/projects/{projectsId}/jobs:batchDelete",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.batchDelete",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required.\n\nThe resource name of the project under which the job is created.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/jobs:batchDelete",
              "request": {
                "$ref": "BatchDeleteJobsRequest"
              },
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "create": {
              "description": "Creates a new job.\n\nTypically, the job becomes searchable within 10 seconds, but it may take\nup to 5 minutes.",
              "flatPath": "v3/projects/{projectsId}/jobs",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required.\n\nThe resource name of the project under which the job is created.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/jobs",
              "request": {
                "$ref": "CreateJobRequest"
              },
              "response": {
                "$ref": "Job"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "delete": {
              "description": "Deletes the specified job.\n\nTypically, the job becomes unsearchable within 10 seconds, but it may take\nup to 5 minutes.",
              "flatPath": "v3/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "DELETE",
              "id": "jobs.projects.jobs.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required.\n\nThe resource name of the job to be deleted.\n\nThe format is \"projects/{project_id}/jobs/{job_id}\",\nfor example, \"projects/api-test-project/jobs/1234\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "get": {
              "description": "Retrieves the specified job, whose status is OPEN or recently EXPIRED\nwithin the last 90 days.",
              "flatPath": "v3/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "GET",
              "id": "jobs.projects.jobs.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required.\n\nThe resource name of the job to retrieve.\n\nThe format is \"projects/{project_id}/jobs/{job_id}\",\nfor example, \"projects/api-test-project/jobs/1234\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+name}",
              "response": {
                "$ref": "Job"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "list": {
              "description": "Lists jobs by filter.",
              "flatPath": "v3/projects/{projectsId}/jobs",
              "httpMethod": "GET",
              "id": "jobs.projects.jobs.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "filter": {
                  "description": "Required.\n\nThe filter string specifies the jobs to be enumerated.\n\nSupported operator: =, AND\n\nThe fields eligible for filtering are:\n\n* `companyName` (Required)\n* `requisitionId` (Optional)\n\nSample Query:\n\n* companyName = \"projects/api-test-project/companies/123\"\n* companyName = \"projects/api-test-project/companies/123\" AND requisitionId\n= \"req-1\"",
                  "location": "query",
                  "type": "string"
                },
                "jobView": {
                  "description": "Optional.\n\nThe desired job attributes returned for jobs in the\nsearch response. Defaults to JobView.JOB_VIEW_FULL if no value is\nspecified.",
                  "enum": [
                    "JOB_VIEW_UNSPECIFIED",
                    "JOB_VIEW_ID_ONLY",
                    "JOB_VIEW_MINIMAL",
                    "JOB_VIEW_SMALL",
                    "JOB_VIEW_FULL"
                  ],
                  "location": "query",
                  "type": "string"
                },
                "pageSize": {
                  "description": "Optional.\n\nThe maximum number of jobs to be returned per page of results.\n\nIf job_view is set to JobView.JOB_VIEW_ID_ONLY, the maximum allowed\npage size is 1000. Otherwise, the maximum allowed page size is 100.\n\nDefault is 100 if empty or a number \u003c 1 is specified.",
                  "format": "int32",
                  "location": "query",
                  "type": "integer"
                },
                "pageToken": {
                  "description": "Optional.\n\nThe starting point of a query result.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required.\n\nThe resource name of the project under which the job is created.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/jobs",
              "response": {
                "$ref": "ListJobsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "patch": {
              "description": "Updates specified job.\n\nTypically, updated contents become visible in search results within 10\nseconds, but it may take up to 5 minutes.",
              "flatPath": "v3/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "PATCH",
              "id": "jobs.projects.jobs.patch",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required during job update.\n\nThe resource name for the job. This is generated by the service when a\njob is created.\n\nThe format is \"projects/{project_id}/jobs/{job_id}\",\nfor example, \"projects/api-test-project/jobs/1234\".\n\nUse of this field in job queries and API calls is preferred over the use of\nrequisition_id since this value is unique.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/jobs/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+name}",
              "request": {
                "$ref": "UpdateJobRequest"
              },
              "response": {
                "$ref": "Job"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "search": {
              "description": "Searches for jobs using the provided SearchJobsRequest.\n\nThis call constrains the visibility of jobs\npresent in the database, and only returns jobs that the caller has\npermission to search against.",
              "flatPath": "v3/projects/{projectsId}/jobs:search",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.search",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required.\n\nThe resource name of the project to search within.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/jobs:search",
              "request": {
                "$ref": "SearchJobsRequest"
              },
              "response": {
                "$ref": "SearchJobsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "searchForAlert": {
              "description": "Searches for jobs using the provided SearchJobsRequest.\n\nThis API call is intended for the use case of targeting passive job\nseekers (for example, job seekers who have signed up to receive email\nalerts about potential job opportunities), and has different algorithmic\nadjustments that are targeted to passive job seekers.\n\nThis call constrains the visibility of jobs\npresent in the database, and only returns jobs the caller has\npermission to search against.",
              "flatPath": "v3/projects/{projectsId}/jobs:searchForAlert",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.searchForAlert",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required.\n\nThe resource name of the project to search within.\n\nThe format is \"projects/{project_id}\", for example,\n\"projects/api-test-project\".",
                  "location": "path",
                  "pattern": "^projects/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3/{+parent}/jobs:searchForAlert",
              "request": {
                "$ref": "SearchJobsRequest"
              },
              "response": {
                "$ref": "SearchJobsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20190306",
  "rootUrl": "https://jobs.googleapis.com/",
  "schemas": {
    "ApplicationInfo": {
      "description": "Application related details of a job posting.",
      "id": "ApplicationInfo",
      "properties": {
        "emails": {
          "description": "Optional but at least one of uris,\nemails or instruction must be\nspecified.\n\nUse this field to specify email address(es) to which resumes or\napplications can be sent.\n\nThe maximum number of allowed characters for each entry is 255.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "instruction": {
          "description": "Optional but at least one of uris,\nemails or instruction must be\nspecified.\n\nUse this field to provide instructions, such as \"Mail your application\nto ...\", that a candidate can follow to apply for the job.\n\nThis field accepts and sanitizes HTML input, and also accepts\nbold, italic, ordered list, and unordered list markup tags.\n\nThe maximum number of allowed characters is 3,000.",
          "type": "string"
        },
        "uris": {
          "description": "Optional but at least one of uris,\nemails or instruction must be\nspecified.\n\nUse this URI field to direct an applicant to a website, for example to\nlink to an online application form.\n\nThe maximum number of allowed characters for each entry is 2,000.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "BatchDeleteJobsRequest": {
      "description": "Input only.\n\nBatch delete jobs request.",
      "id": "BatchDeleteJobsRequest",
      "properties": {
        "filter": {
          "description": "Required.\n\nThe filter string specifies the jobs to be deleted.\n\nSupported operator: =, AND\n\nThe fields eligible for filtering are:\n\n* `companyName` (Required)\n* `requisitionId` (Required)\n\nSample Query: companyName = \"projects/api-test-project/companies/123\" AND\nrequisitionId = \"req-1\"",
          "type": "string"
        }
      },
      "type": "object"
    },
    "BucketRange": {
      "description": "Represents starting and ending value of a range in double.",
      "id": "BucketRange",
      "properties": {
        "from": {
          "description": "Starting value of the bucket range.",
          "format": "double",
          "type": "number"
        },
        "to": {
          "description": "Ending value of the bucket range.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "BucketizedCount": {
      "description": "Represents count of jobs within one bucket.",
      "id": "BucketizedCount",
      "properties": {
        "count": {
          "description": "Number of jobs whose numeric field value fall into `range`.",
          "format": "int32",
          "type": "integer"
        },
        "range": {
          "$ref": "BucketRange",
          "description": "Bucket range on which histogram was performed for the numeric field,\nthat is, the count represents number of jobs in this range."
        }
      },
      "type": "object"
    },
    "ClientEvent": {
      "description": "An event issued when an end user interacts with the application that\nimplements Cloud Talent Solution. Providing this information improves the\nquality of search and recommendation for the API clients, enabling the\nservice to perform optimally. The number of events sent must be consistent\nwith other calls, such as job searches, issued to the service by the client.",
      "id": "ClientEvent",
      "properties": {
        "createTime": {
          "description": "Required.\n\nThe timestamp of the event.",
          "format": "google-datetime",
          "type": "string"
        },
        "eventId": {
          "description": "Required.\n\nA unique identifier, generated by the client application. This `event_id`\nis used to establish the relationship between different events\n(see parent_event_id).",
          "type": "string"
        },
        "extraInfo": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Optional.\n\nExtra information about this event. Used for storing information with no\nmatching field in event payload, for example, user application specific\ncontext or details.\n\nAt most 20 keys are supported. The maximum total size of all keys and\nvalues is 2 KB.",
          "type": "object"
        },
        "jobEvent": {
          "$ref": "JobEvent",
          "description": "A event issued when a job seeker interacts with the application that\nimplements Cloud Talent Solution."
        },
        "parentEventId": {
          "description": "Optional.\n\nThe event_id of an event that resulted in the current event. For example, a\nJob view event usually follows a parent\nimpression event: A job seeker first does a\nsearch where a list of jobs appears\n(impression). The job seeker then selects a\nresult and views the description of a particular job (Job\nview).",
          "type": "string"
        },
        "requestId": {
          "description": "Required.\n\nA unique ID generated in the API responses. It can be found in\nResponseMetadata.request_id.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CommuteFilter": {
      "description": "Input only.\n\nParameters needed for commute search.",
      "id": "CommuteFilter",
      "properties": {
        "allowImpreciseAddresses": {
          "description": "Optional.\nIf `true`, jobs without street level addresses may also be returned.\nFor city level addresses, the city center is used. For state and coarser\nlevel addresses, text matching is used.\nIf this field is set to `false` or is not specified, only jobs that include\nstreet level addresses will be returned by commute search.",
          "type": "boolean"
        },
        "commuteMethod": {
          "description": "Required.\n\nThe method of transportation for which to calculate the commute time.",
          "enum": [
            "COMMUTE_METHOD_UNSPECIFIED",
            "DRIVING",
            "TRANSIT"
          ],
          "enumDescriptions": [
            "Commute method is not specified.",
            "Commute time is calculated based on driving time.",
            "Commute time is calculated based on public transit including bus, metro,\nsubway, etc."
          ],
          "type": "string"
        },
        "departureTime": {
          "$ref": "TimeOfDay",
          "description": "Optional.\n\nThe departure time used to calculate traffic impact, represented as\ngoogle.type.TimeOfDay in local time zone.\n\nCurrently traffic model is restricted to hour level resolution."
        },
        "roadTraffic": {
          "description": "Optional.\n\nSpecifies the traffic density to use when calculating commute time.",
          "enum": [
            "ROAD_TRAFFIC_UNSPECIFIED",
            "TRAFFIC_FREE",
            "BUSY_HOUR"
          ],
          "enumDescriptions": [
            "Road traffic situation is not specified.",
            "Optimal commute time without considering any traffic impact.",
            "Commute time calculation takes in account the peak traffic impact."
          ],
          "type": "string"
        },
        "startCoordinates": {
          "$ref": "LatLng",
          "description": "Required.\n\nThe latitude and longitude of the location from which to calculate the\ncommute time."
        },
        "travelDuration": {
          "description": "Required.\n\nThe maximum travel time in seconds. The maximum allowed value is `3600s`\n(one hour). Format is `123s`.",
          "format": "google-duration",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CommuteInfo": {
      "description": "Output only.\n\nCommute details related to this job.",
      "id": "CommuteInfo",
      "properties": {
        "jobLocation": {
          "$ref": "Location",
          "description": "Location used as the destination in the commute calculation."
        },
        "travelDuration": {
          "description": "The number of seconds required to travel to the job location from the\nquery location. A duration of 0 seconds indicates that the job is not\nreachable within the requested duration, but was returned as part of an\nexpanded query.",
          "format": "google-duration",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Company": {
      "description": "A Company resource represents a company in the service. A company is the\nentity that owns job postings, that is, the hiring entity responsible for\nemploying applicants for the job position.",
      "id": "Company",
      "properties": {
        "careerSiteUri": {
          "description": "Optional.\n\nThe URI to employer's career site or careers page on the employer's web\nsite, for example, \"https://careers.google.com\".",
          "type": "string"
        },
        "derivedInfo": {
          "$ref": "CompanyDerivedInfo",
          "description": "Output only. Derived details about the company."
        },
        "displayName": {
          "description": "Required.\n\nThe display name of the company, for example, \"Google, LLC\".",
          "type": "string"
        },
        "eeoText": {
          "description": "Optional.\n\nEqual Employment Opportunity legal disclaimer text to be\nassociated with all jobs, and typically to be displayed in all\nroles.\n\nThe maximum number of allowed characters is 500.",
          "type": "string"
        },
        "externalId": {
          "description": "Required.\n\nClient side company identifier, used to uniquely identify the\ncompany.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "headquartersAddress": {
          "description": "Optional.\n\nThe street address of the company's main headquarters, which may be\ndifferent from the job location. The service attempts\nto geolocate the provided address, and populates a more specific\nlocation wherever possible in DerivedInfo.headquarters_location.",
          "type": "string"
        },
        "hiringAgency": {
          "description": "Optional.\n\nSet to true if it is the hiring agency that post jobs for other\nemployers.\n\nDefaults to false if not provided.",
          "type": "boolean"
        },
        "imageUri": {
          "description": "Optional.\n\nA URI that hosts the employer's company logo.",
          "type": "string"
        },
        "keywordSearchableJobCustomAttributes": {
          "description": "Optional.\n\nA list of keys of filterable Job.custom_attributes, whose\ncorresponding `string_values` are used in keyword search. Jobs with\n`string_values` under these specified field keys are returned if any\nof the values matches the search keyword. Custom field values with\nparenthesis, brackets and special symbols won't be properly searchable,\nand those keyword queries need to be surrounded by quotes.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "name": {
          "description": "Required during company update.\n\nThe resource name for a company. This is generated by the service when a\ncompany is created.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".",
          "type": "string"
        },
        "size": {
          "description": "Optional.\n\nThe employer's company size.",
          "enum": [
            "COMPANY_SIZE_UNSPECIFIED",
            "MINI",
            "SMALL",
            "SMEDIUM",
            "MEDIUM",
            "BIG",
            "BIGGER",
            "GIANT"
          ],
          "enumDescriptions": [
            "Default value if the size is not specified.",
            "The company has less than 50 employees.",
            "The company has between 50 and 99 employees.",
            "The company has between 100 and 499 employees.",
            "The company has between 500 and 999 employees.",
            "The company has between 1,000 and 4,999 employees.",
            "The company has between 5,000 and 9,999 employees.",
            "The company has 10,000 or more employees."
          ],
          "type": "string"
        },
        "suspended": {
          "description": "Output only. Indicates whether a company is flagged to be suspended from\npublic availability by the service when job content appears suspicious,\nabusive, or spammy.",
          "type": "boolean"
        },
        "websiteUri": {
          "description": "Optional.\n\nThe URI representing the company's primary web site or home page,\nfor example, \"https://www.google.com\".\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "CompanyDerivedInfo": {
      "description": "Derived details about the company.",
      "id": "CompanyDerivedInfo",
      "properties": {
        "headquartersLocation": {
          "$ref": "Location",
          "description": "A structured headquarters location of the company, resolved from\nCompany.hq_location if provided."
        }
      },
      "type": "object"
    },
    "CompensationEntry": {
      "description": "A compensation entry that represents one component of compensation, such\nas base pay, bonus, or other compensation type.\n\nAnnualization: One compensation entry can be annualized if\n- it contains valid amount or range.\n- and its expected_units_per_year is set or can be derived.\nIts annualized range is determined as (amount or range) times\nexpected_units_per_year.",
      "id": "CompensationEntry",
      "properties": {
        "amount": {
          "$ref": "Money",
          "description": "Optional.\n\nCompensation amount."
        },
        "description": {
          "description": "Optional.\n\nCompensation description.  For example, could\nindicate equity terms or provide additional context to an estimated\nbonus.",
          "type": "string"
        },
        "expectedUnitsPerYear": {
          "description": "Optional.\n\nExpected number of units paid each year. If not specified, when\nJob.employment_types is FULLTIME, a default value is inferred\nbased on unit. Default values:\n- HOURLY: 2080\n- DAILY: 260\n- WEEKLY: 52\n- MONTHLY: 12\n- ANNUAL: 1",
          "format": "double",
          "type": "number"
        },
        "range": {
          "$ref": "CompensationRange",
          "description": "Optional.\n\nCompensation range."
        },
        "type": {
          "description": "Optional.\n\nCompensation type.\n\nDefault is CompensationUnit.OTHER_COMPENSATION_TYPE.",
          "enum": [
            "COMPENSATION_TYPE_UNSPECIFIED",
            "BASE",
            "BONUS",
            "SIGNING_BONUS",
            "EQUITY",
            "PROFIT_SHARING",
            "COMMISSIONS",
            "TIPS",
            "OTHER_COMPENSATION_TYPE"
          ],
          "enumDescriptions": [
            "Default value.",
            "Base compensation: Refers to the fixed amount of money paid to an\nemployee by an employer in return for work performed. Base compensation\ndoes not include benefits, bonuses or any other potential compensation\nfrom an employer.",
            "Bonus.",
            "Signing bonus.",
            "Equity.",
            "Profit sharing.",
            "Commission.",
            "Tips.",
            "Other compensation type."
          ],
          "type": "string"
        },
        "unit": {
          "description": "Optional.\n\nFrequency of the specified amount.\n\nDefault is CompensationUnit.OTHER_COMPENSATION_UNIT.",
          "enum": [
            "COMPENSATION_UNIT_UNSPECIFIED",
            "HOURLY",
            "DAILY",
            "WEEKLY",
            "MONTHLY",
            "YEARLY",
            "ONE_TIME",
            "OTHER_COMPENSATION_UNIT"
          ],
          "enumDescriptions": [
            "Default value.",
            "Hourly.",
            "Daily.",
            "Weekly",
            "Monthly.",
            "Yearly.",
            "One time.",
            "Other compensation units."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "CompensationFilter": {
      "description": "Input only.\n\nFilter on job compensation type and amount.",
      "id": "CompensationFilter",
      "properties": {
        "includeJobsWithUnspecifiedCompensationRange": {
          "description": "Optional.\n\nWhether to include jobs whose compensation range is unspecified.",
          "type": "boolean"
        },
        "range": {
          "$ref": "CompensationRange",
          "description": "Optional.\n\nCompensation range."
        },
        "type": {
          "description": "Required.\n\nType of filter.",
          "enum": [
            "FILTER_TYPE_UNSPECIFIED",
            "UNIT_ONLY",
            "UNIT_AND_AMOUNT",
            "ANNUALIZED_BASE_AMOUNT",
            "ANNUALIZED_TOTAL_AMOUNT"
          ],
          "enumDescriptions": [
            "Filter type unspecified. Position holder, INVALID, should never be used.",
            "Filter by `base compensation entry's` unit. A job is a match if and\nonly if the job contains a base CompensationEntry and the base\nCompensationEntry's unit matches provided units.\nPopulate one or more units.\n\nSee CompensationInfo.CompensationEntry for definition of\nbase compensation entry.",
            "Filter by `base compensation entry's` unit and amount / range. A job\nis a match if and only if the job contains a base CompensationEntry, and\nthe base entry's unit matches provided compensation_units and amount\nor range overlaps with provided compensation_range.\n\nSee CompensationInfo.CompensationEntry for definition of\nbase compensation entry.\n\nSet exactly one units and populate range.",
            "Filter by annualized base compensation amount and `base compensation\nentry's` unit. Populate range and zero or more units.",
            "Filter by annualized total compensation amount and `base compensation\nentry's` unit . Populate range and zero or more units."
          ],
          "type": "string"
        },
        "units": {
          "description": "Required.\n\nSpecify desired `base compensation entry's`\nCompensationInfo.CompensationUnit.",
          "enumDescriptions": [
            "Default value.",
            "Hourly.",
            "Daily.",
            "Weekly",
            "Monthly.",
            "Yearly.",
            "One time.",
            "Other compensation units."
          ],
          "items": {
            "enum": [
              "COMPENSATION_UNIT_UNSPECIFIED",
              "HOURLY",
              "DAILY",
              "WEEKLY",
              "MONTHLY",
              "YEARLY",
              "ONE_TIME",
              "OTHER_COMPENSATION_UNIT"
            ],
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "CompensationHistogramRequest": {
      "description": "Input only.\n\nCompensation based histogram request.",
      "id": "CompensationHistogramRequest",
      "properties": {
        "bucketingOption": {
          "$ref": "NumericBucketingOption",
          "description": "Required.\n\nNumeric histogram options, like buckets, whether include min or max value."
        },
        "type": {
          "description": "Required.\n\nType of the request, representing which field the histogramming should be\nperformed over. A single request can only specify one histogram of each\n`CompensationHistogramRequestType`.",
          "enum": [
            "COMPENSATION_HISTOGRAM_REQUEST_TYPE_UNSPECIFIED",
            "BASE",
            "ANNUALIZED_BASE",
            "ANNUALIZED_TOTAL"
          ],
          "enumDescriptions": [
            "Default value. Invalid.",
            "Histogram by job's base compensation. See CompensationEntry for\ndefinition of base compensation.",
            "Histogram by job's annualized base compensation. See CompensationEntry\nfor definition of annualized base compensation.",
            "Histogram by job's annualized total compensation. See CompensationEntry\nfor definition of annualized total compensation."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "CompensationHistogramResult": {
      "description": "Output only.\n\nCompensation based histogram result.",
      "id": "CompensationHistogramResult",
      "properties": {
        "result": {
          "$ref": "NumericBucketingResult",
          "description": "Histogram result."
        },
        "type": {
          "description": "Type of the request, corresponding to\nCompensationHistogramRequest.type.",
          "enum": [
            "COMPENSATION_HISTOGRAM_REQUEST_TYPE_UNSPECIFIED",
            "BASE",
            "ANNUALIZED_BASE",
            "ANNUALIZED_TOTAL"
          ],
          "enumDescriptions": [
            "Default value. Invalid.",
            "Histogram by job's base compensation. See CompensationEntry for\ndefinition of base compensation.",
            "Histogram by job's annualized base compensation. See CompensationEntry\nfor definition of annualized base compensation.",
            "Histogram by job's annualized total compensation. See CompensationEntry\nfor definition of annualized total compensation."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "CompensationInfo": {
      "description": "Job compensation details.",
      "id": "CompensationInfo",
      "properties": {
        "annualizedBaseCompensationRange": {
          "$ref": "CompensationRange",
          "description": "Output only. Annualized base compensation range. Computed as\nbase compensation entry's CompensationEntry.compensation times\nCompensationEntry.expected_units_per_year.\n\nSee CompensationEntry for explanation on compensation annualization."
        },
        "annualizedTotalCompensationRange": {
          "$ref": "CompensationRange",
          "description": "Output only. Annualized total compensation range. Computed as\nall compensation entries' CompensationEntry.compensation times\nCompensationEntry.expected_units_per_year.\n\nSee CompensationEntry for explanation on compensation annualization."
        },
        "entries": {
          "description": "Optional.\n\nJob compensation information.\n\nAt most one entry can be of type\nCompensationInfo.CompensationType.BASE, which is\nreferred as ** base compensation entry ** for the job.",
          "items": {
            "$ref": "CompensationEntry"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "CompensationRange": {
      "description": "Compensation range.",
      "id": "CompensationRange",
      "properties": {
        "maxCompensation": {
          "$ref": "Money",
          "description": "Optional.\n\nThe maximum amount of compensation. If left empty, the value is set\nto a maximal compensation value and the currency code is set to\nmatch the currency code of\nmin_compensation."
        },
        "minCompensation": {
          "$ref": "Money",
          "description": "Optional.\n\nThe minimum amount of compensation. If left empty, the value is set\nto zero and the currency code is set to match the\ncurrency code of max_compensation."
        }
      },
      "type": "object"
    },
    "CompleteQueryResponse": {
      "description": "Output only.\n\nResponse of auto-complete query.",
      "id": "CompleteQueryResponse",
      "properties": {
        "completionResults": {
          "description": "Results of the matching job/company candidates.",
          "items": {
            "$ref": "CompletionResult"
          },
          "type": "array"
        },
        "metadata": {
          "$ref": "ResponseMetadata",
          "description": "Additional information for the API invocation, such as the request\ntracking id."
        }
      },
      "type": "object"
    },
    "CompletionResult": {
      "description": "Output only.\n\nResource that represents completion results.",
      "id": "CompletionResult",
      "properties": {
        "imageUri": {
          "description": "The URI of the company image for CompletionType.COMPANY_NAME.",
          "type": "string"
        },
        "suggestion": {
          "description": "The suggestion for the query.",
          "type": "string"
        },
        "type": {
          "description": "The completion topic.",
          "enum": [
            "COMPLETION_TYPE_UNSPECIFIED",
            "JOB_TITLE",
            "COMPANY_NAME",
            "COMBINED"
          ],
          "enumDescriptions": [
            "Default value.",
            "Only suggest job titles.",
            "Only suggest company names.",
            "Suggest both job titles and company names."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "CreateClientEventRequest": {
      "description": "The report event request.",
      "id": "CreateClientEventRequest",
      "properties": {
        "clientEvent": {
          "$ref": "ClientEvent",
          "description": "Required.\n\nEvents issued when end user interacts with customer's application that\nuses Cloud Talent Solution."
        }
      },
      "type": "object"
    },
    "CreateCompanyRequest": {
      "description": "Input only.\n\nThe Request of the CreateCompany method.",
      "id": "CreateCompanyRequest",
      "properties": {
        "company": {
          "$ref": "Company",
          "description": "Required.\n\nThe company to be created."
        }
      },
      "type": "object"
    },
    "CreateJobRequest": {
      "description": "Input only.\n\nCreate job request.",
      "id": "CreateJobRequest",
      "properties": {
        "job": {
          "$ref": "Job",
          "description": "Required.\n\nThe Job to be created."
        }
      },
      "type": "object"
    },
    "CustomAttribute": {
      "description": "Custom attribute values that are either filterable or non-filterable.",
      "id": "CustomAttribute",
      "properties": {
        "filterable": {
          "description": "Optional.\n\nIf the `filterable` flag is true, custom field values are searchable.\nIf false, values are not searchable.\n\nDefault is false.",
          "type": "boolean"
        },
        "longValues": {
          "description": "Optional but exactly one of string_values or long_values must\nbe specified.\n\nThis field is used to perform number range search.\n(`EQ`, `GT`, `GE`, `LE`, `LT`) over filterable `long_value`.\n\nCurrently at most 1 long_values is supported.",
          "items": {
            "format": "int64",
            "type": "string"
          },
          "type": "array"
        },
        "stringValues": {
          "description": "Optional but exactly one of string_values or long_values must\nbe specified.\n\nThis field is used to perform a string match (`CASE_SENSITIVE_MATCH` or\n`CASE_INSENSITIVE_MATCH`) search.\nFor filterable `string_value`s, a maximum total number of 200 values\nis allowed, with each `string_value` has a byte size of no more than\n255B. For unfilterable `string_values`, the maximum total byte size of\nunfilterable `string_values` is 50KB.\n\nEmpty string is not allowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "CustomAttributeHistogramRequest": {
      "description": "Custom attributes histogram request. An error is thrown if neither\nstring_value_histogram or long_value_histogram_bucketing_option has\nbeen defined.",
      "id": "CustomAttributeHistogramRequest",
      "properties": {
        "key": {
          "description": "Required.\n\nSpecifies the custom field key to perform a histogram on. If specified\nwithout `long_value_histogram_bucketing_option`, histogram on string values\nof the given `key` is triggered, otherwise histogram is performed on long\nvalues.",
          "type": "string"
        },
        "longValueHistogramBucketingOption": {
          "$ref": "NumericBucketingOption",
          "description": "Optional.\n\nSpecifies buckets used to perform a range histogram on Job's\nfilterable long custom field values, or min/max value requirements."
        },
        "stringValueHistogram": {
          "description": "Optional. If set to true, the response includes the histogram value for\neach key as a string.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "CustomAttributeHistogramResult": {
      "description": "Output only.\n\nCustom attribute histogram result.",
      "id": "CustomAttributeHistogramResult",
      "properties": {
        "key": {
          "description": "Stores the key of custom attribute the histogram is performed on.",
          "type": "string"
        },
        "longValueHistogramResult": {
          "$ref": "NumericBucketingResult",
          "description": "Stores bucketed histogram counting result or min/max values for\ncustom attribute long values associated with `key`."
        },
        "stringValueHistogramResult": {
          "additionalProperties": {
            "format": "int32",
            "type": "integer"
          },
          "description": "Stores a map from the values of string custom field associated\nwith `key` to the number of jobs with that value in this histogram result.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "DeviceInfo": {
      "description": "Device information collected from the job seeker, candidate, or\nother entity conducting the job search. Providing this information improves\nthe quality of the search results across devices.",
      "id": "DeviceInfo",
      "properties": {
        "deviceType": {
          "description": "Optional.\n\nType of the device.",
          "enum": [
            "DEVICE_TYPE_UNSPECIFIED",
            "WEB",
            "MOBILE_WEB",
            "ANDROID",
            "IOS",
            "BOT",
            "OTHER"
          ],
          "enumDescriptions": [
            "The device type isn't specified.",
            "A desktop web browser, such as, Chrome, Firefox, Safari, or Internet\nExplorer)",
            "A mobile device web browser, such as a phone or tablet with a Chrome\nbrowser.",
            "An Android device native application.",
            "An iOS device native application.",
            "A bot, as opposed to a device operated by human beings, such as a web\ncrawler.",
            "Other devices types."
          ],
          "type": "string"
        },
        "id": {
          "description": "Optional.\n\nA device-specific ID. The ID must be a unique identifier that\ndistinguishes the device from other devices.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Empty": {
      "description": "A generic empty message that you can re-use to avoid defining duplicated\nempty messages in your APIs. A typical example is to use it as the request\nor the response type of an API method. For instance:\n\n    service Foo {\n      rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);\n    }\n\nThe JSON representation for `Empty` is empty JSON object `{}`.",
      "id": "Empty",
      "properties": {},
      "type": "object"
    },
    "HistogramFacets": {
      "description": "Input only.\n\nHistogram facets to be specified in SearchJobsRequest.",
      "id": "HistogramFacets",
      "properties": {
        "compensationHistogramFacets": {
          "description": "Optional.\n\nSpecifies compensation field-based histogram requests.\nDuplicate values of CompensationHistogramRequest.type are not allowed.",
          "items": {
            "$ref": "CompensationHistogramRequest"
          },
          "type": "array"
        },
        "customAttributeHistogramFacets": {
          "description": "Optional.\n\nSpecifies the custom attributes histogram requests.\nDuplicate values of CustomAttributeHistogramRequest.key are not\nallowed.",
          "items": {
            "$ref": "CustomAttributeHistogramRequest"
          },
          "type": "array"
        },
        "simpleHistogramFacets": {
          "description": "Optional.\n\nSpecifies the simple type of histogram facets, for example,\n`COMPANY_SIZE`, `EMPLOYMENT_TYPE` etc.",
          "enumDescriptions": [
            "The default value if search type is not specified.",
            "Filter by the company id field.",
            "Filter by the employment type field, such as `FULL_TIME` or `PART_TIME`.",
            "Filter by the company size type field, such as `BIG`, `SMALL` or `BIGGER`.",
            "Filter by the date published field. Possible return values are:\n* PAST_24_HOURS (The past 24 hours)\n* PAST_3_DAYS (The past 3 days)\n* PAST_WEEK (The past 7 days)\n* PAST_MONTH (The past 30 days)\n* PAST_YEAR (The past 365 days)",
            "Filter by the required education level of the job.",
            "Filter by the required experience level of the job.",
            "Filter by Admin1, which is a global placeholder for\nreferring to state, province, or the particular term a country uses to\ndefine the geographic structure below the country level.\nExamples include states codes such as \"CA\", \"IL\", \"NY\", and\nprovinces, such as \"BC\".",
            "Filter by the country code of job, such as US, JP, FR.",
            "Filter by the \"city name\", \"Admin1 code\", for example,\n\"Mountain View, CA\" or \"New York, NY\".",
            "Filter by the locale field of a job, such as \"en-US\", \"fr-FR\".\n\nThis is the BCP-47 language code, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\n[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).",
            "Filter by the language code portion of the locale field, such as \"en\" or\n\"fr\".",
            "Filter by the Category.",
            "Filter by the city center GPS coordinate (latitude and longitude), for\nexample, 37.4038522,-122.0987765. Since the coordinates of a city center\ncan change, clients may need to refresh them periodically.",
            "A combination of state or province code with a country code. This field\ndiffers from `JOB_ADMIN1`, which can be used in multiple countries.",
            "Company display name.",
            "Base compensation unit."
          ],
          "items": {
            "enum": [
              "SEARCH_TYPE_UNSPECIFIED",
              "COMPANY_ID",
              "EMPLOYMENT_TYPE",
              "COMPANY_SIZE",
              "DATE_PUBLISHED",
              "EDUCATION_LEVEL",
              "EXPERIENCE_LEVEL",
              "ADMIN_1",
              "COUNTRY",
              "CITY",
              "LOCALE",
              "LANGUAGE",
              "CATEGORY",
              "CITY_COORDINATE",
              "ADMIN_1_COUNTRY",
              "COMPANY_DISPLAY_NAME",
              "BASE_COMPENSATION_UNIT"
            ],
            "type": "string"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "HistogramResult": {
      "description": "Output only.\n\nResult of a histogram call. The response contains the histogram map for the\nsearch type specified by HistogramResult.field.\nThe response is a map of each filter value to the corresponding count of\njobs for that filter.",
      "id": "HistogramResult",
      "properties": {
        "searchType": {
          "description": "The Histogram search filters.",
          "enum": [
            "SEARCH_TYPE_UNSPECIFIED",
            "COMPANY_ID",
            "EMPLOYMENT_TYPE",
            "COMPANY_SIZE",
            "DATE_PUBLISHED",
            "EDUCATION_LEVEL",
            "EXPERIENCE_LEVEL",
            "ADMIN_1",
            "COUNTRY",
            "CITY",
            "LOCALE",
            "LANGUAGE",
            "CATEGORY",
            "CITY_COORDINATE",
            "ADMIN_1_COUNTRY",
            "COMPANY_DISPLAY_NAME",
            "BASE_COMPENSATION_UNIT"
          ],
          "enumDescriptions": [
            "The default value if search type is not specified.",
            "Filter by the company id field.",
            "Filter by the employment type field, such as `FULL_TIME` or `PART_TIME`.",
            "Filter by the company size type field, such as `BIG`, `SMALL` or `BIGGER`.",
            "Filter by the date published field. Possible return values are:\n* PAST_24_HOURS (The past 24 hours)\n* PAST_3_DAYS (The past 3 days)\n* PAST_WEEK (The past 7 days)\n* PAST_MONTH (The past 30 days)\n* PAST_YEAR (The past 365 days)",
            "Filter by the required education level of the job.",
            "Filter by the required experience level of the job.",
            "Filter by Admin1, which is a global placeholder for\nreferring to state, province, or the particular term a country uses to\ndefine the geographic structure below the country level.\nExamples include states codes such as \"CA\", \"IL\", \"NY\", and\nprovinces, such as \"BC\".",
            "Filter by the country code of job, such as US, JP, FR.",
            "Filter by the \"city name\", \"Admin1 code\", for example,\n\"Mountain View, CA\" or \"New York, NY\".",
            "Filter by the locale field of a job, such as \"en-US\", \"fr-FR\".\n\nThis is the BCP-47 language code, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\n[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).",
            "Filter by the language code portion of the locale field, such as \"en\" or\n\"fr\".",
            "Filter by the Category.",
            "Filter by the city center GPS coordinate (latitude and longitude), for\nexample, 37.4038522,-122.0987765. Since the coordinates of a city center\ncan change, clients may need to refresh them periodically.",
            "A combination of state or province code with a country code. This field\ndiffers from `JOB_ADMIN1`, which can be used in multiple countries.",
            "Company display name.",
            "Base compensation unit."
          ],
          "type": "string"
        },
        "values": {
          "additionalProperties": {
            "format": "int32",
            "type": "integer"
          },
          "description": "A map from the values of field to the number of jobs with that value\nin this search result.\n\nKey: search type (filter names, such as the companyName).\n\nValues: the count of jobs that match the filter for this search.",
          "type": "object"
        }
      },
      "type": "object"
    },
    "HistogramResults": {
      "description": "Output only.\n\nHistogram results that match HistogramFacets specified in\nSearchJobsRequest.",
      "id": "HistogramResults",
      "properties": {
        "compensationHistogramResults": {
          "description": "Specifies compensation field-based histogram results that match\nHistogramFacets.compensation_histogram_requests.",
          "items": {
            "$ref": "CompensationHistogramResult"
          },
          "type": "array"
        },
        "customAttributeHistogramResults": {
          "description": "Specifies histogram results for custom attributes that match\nHistogramFacets.custom_attribute_histogram_facets.",
          "items": {
            "$ref": "CustomAttributeHistogramResult"
          },
          "type": "array"
        },
        "simpleHistogramResults": {
          "description": "Specifies histogram results that matches\nHistogramFacets.simple_histogram_facets.",
          "items": {
            "$ref": "HistogramResult"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "Job": {
      "description": "A Job resource represents a job posting (also referred to as a \"job listing\"\nor \"job requisition\"). A job belongs to a Company, which is the hiring\nentity responsible for the job.",
      "id": "Job",
      "properties": {
        "addresses": {
          "description": "Optional but strongly recommended for the best service experience.\n\nLocation(s) where the employer is looking to hire for this job posting.\n\nSpecifying the full street address(es) of the hiring location enables\nbetter API results, especially job searches by commute time.\n\nAt most 50 locations are allowed for best search performance. If a job has\nmore locations, it is suggested to split it into multiple jobs with unique\nrequisition_ids (e.g. 'ReqA' becomes 'ReqA-1', 'ReqA-2', etc.) as\nmultiple jobs with the same company_name, language_code and\nrequisition_id are not allowed. If the original requisition_id must\nbe preserved, a custom field should be used for storage. It is also\nsuggested to group the locations that close to each other in the same job\nfor better search experience.\n\nThe maximum number of allowed characters is 500.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "applicationInfo": {
          "$ref": "ApplicationInfo",
          "description": "Required. At least one field within ApplicationInfo must be specified.\n\nJob application information."
        },
        "companyDisplayName": {
          "description": "Output only. Display name of the company listing the job.",
          "type": "string"
        },
        "companyName": {
          "description": "Required.\n\nThe resource name of the company listing the job, such as\n\"projects/api-test-project/companies/foo\".",
          "type": "string"
        },
        "compensationInfo": {
          "$ref": "CompensationInfo",
          "description": "Optional.\n\nJob compensation information."
        },
        "customAttributes": {
          "additionalProperties": {
            "$ref": "CustomAttribute"
          },
          "description": "Optional.\n\nA map of fields to hold both filterable and non-filterable custom job\nattributes that are not covered by the provided structured fields.\n\nThe keys of the map are strings up to 64 bytes and must match the\npattern: a-zA-Z*. For example, key0LikeThis or\nKEY_1_LIKE_THIS.\n\nAt most 100 filterable and at most 100 unfilterable keys are supported.\nFor filterable `string_values`, across all keys at most 200 values are\nallowed, with each string no more than 255 characters. For unfilterable\n`string_values`, the maximum total size of `string_values` across all keys\nis 50KB.",
          "type": "object"
        },
        "degreeTypes": {
          "description": "Optional.\n\nThe desired education degrees for the job, such as Bachelors, Masters.",
          "enumDescriptions": [
            "Default value. Represents no degree, or early childhood education.\nMaps to ISCED code 0.\nEx) Kindergarten",
            "Primary education which is typically the first stage of compulsory\neducation. ISCED code 1.\nEx) Elementary school",
            "Lower secondary education; First stage of secondary education building on\nprimary education, typically with a more subject-oriented curriculum.\nISCED code 2.\nEx) Middle school",
            "Middle education; Second/final stage of secondary education preparing for\ntertiary education and/or providing skills relevant to employment.\nUsually with an increased range of subject options and streams. ISCED\ncode 3.\nEx) High school",
            "Adult Remedial Education; Programmes providing learning experiences that\nbuild on secondary education and prepare for labour market entry and/or\ntertiary education. The content is broader than secondary but not as\ncomplex as tertiary education. ISCED code 4.",
            "Associate's or equivalent; Short first tertiary programmes that are\ntypically practically-based, occupationally-specific and prepare for\nlabour market entry. These programmes may also provide a pathway to other\ntertiary programmes. ISCED code 5.",
            "Bachelor's or equivalent; Programmes designed to provide intermediate\nacademic and/or professional knowledge, skills and competencies leading\nto a first tertiary degree or equivalent qualification. ISCED code 6.",
            "Master's or equivalent; Programmes designed to provide advanced academic\nand/or professional knowledge, skills and competencies leading to a\nsecond tertiary degree or equivalent qualification. ISCED code 7.",
            "Doctoral or equivalent; Programmes designed primarily to lead to an\nadvanced research qualification, usually concluding with the submission\nand defense of a substantive dissertation of publishable quality based on\noriginal research. ISCED code 8."
          ],
          "items": {
            "enum": [
              "DEGREE_TYPE_UNSPECIFIED",
              "PRIMARY_EDUCATION",
              "LOWER_SECONDARY_EDUCATION",
              "UPPER_SECONDARY_EDUCATION",
              "ADULT_REMEDIAL_EDUCATION",
              "ASSOCIATES_OR_EQUIVALENT",
              "BACHELORS_OR_EQUIVALENT",
              "MASTERS_OR_EQUIVALENT",
              "DOCTORAL_OR_EQUIVALENT"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "department": {
          "description": "Optional.\n\nThe department or functional area within the company with the open\nposition.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "derivedInfo": {
          "$ref": "JobDerivedInfo",
          "description": "Output only. Derived details about the job posting."
        },
        "description": {
          "description": "Required.\n\nThe description of the job, which typically includes a multi-paragraph\ndescription of the company and related information. Separate fields are\nprovided on the job object for responsibilities,\nqualifications, and other job characteristics. Use of\nthese separate job fields is recommended.\n\nThis field accepts and sanitizes HTML input, and also accepts\nbold, italic, ordered list, and unordered list markup tags.\n\nThe maximum number of allowed characters is 100,000.",
          "type": "string"
        },
        "employmentTypes": {
          "description": "Optional.\n\nThe employment type(s) of a job, for example,\nfull time or\npart time.",
          "enumDescriptions": [
            "The default value if the employment type is not specified.",
            "The job requires working a number of hours that constitute full\ntime employment, typically 40 or more hours per week.",
            "The job entails working fewer hours than a full time job,\ntypically less than 40 hours a week.",
            "The job is offered as a contracted, as opposed to a salaried employee,\nposition.",
            "The job is offered as a contracted position with the understanding\nthat it's converted into a full-time position at the end of the\ncontract. Jobs of this type are also returned by a search for\nEmploymentType.CONTRACTOR jobs.",
            "The job is offered as a temporary employment opportunity, usually\na short-term engagement.",
            "The job is a fixed-term opportunity for students or entry-level job\nseekers to obtain on-the-job training, typically offered as a summer\nposition.",
            "The is an opportunity for an individual to volunteer, where there's no\nexpectation of compensation for the provided services.",
            "The job requires an employee to work on an as-needed basis with a\nflexible schedule.",
            "The job involves employing people in remote areas and flying them\ntemporarily to the work site instead of relocating employees and their\nfamilies permanently.",
            "The job does not fit any of the other listed types."
          ],
          "items": {
            "enum": [
              "EMPLOYMENT_TYPE_UNSPECIFIED",
              "FULL_TIME",
              "PART_TIME",
              "CONTRACTOR",
              "CONTRACT_TO_HIRE",
              "TEMPORARY",
              "INTERN",
              "VOLUNTEER",
              "PER_DIEM",
              "FLY_IN_FLY_OUT",
              "OTHER_EMPLOYMENT_TYPE"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "incentives": {
          "description": "Optional.\n\nA description of bonus, commission, and other compensation\nincentives associated with the job not including salary or pay.\n\nThe maximum number of allowed characters is 10,000.",
          "type": "string"
        },
        "jobBenefits": {
          "description": "Optional.\n\nThe benefits included with the job.",
          "enumDescriptions": [
            "Default value if the type is not specified.",
            "The job includes access to programs that support child care, such\nas daycare.",
            "The job includes dental services covered by a dental\ninsurance plan.",
            "The job offers specific benefits to domestic partners.",
            "The job allows for a flexible work schedule.",
            "The job includes health services covered by a medical insurance plan.",
            "The job includes a life insurance plan provided by the employer or\navailable for purchase by the employee.",
            "The job allows for a leave of absence to a parent to care for a newborn\nchild.",
            "The job includes a workplace retirement plan provided by the\nemployer or available for purchase by the employee.",
            "The job allows for paid time off due to illness.",
            "The job includes paid time off for vacation.",
            "The job includes vision services covered by a vision\ninsurance plan."
          ],
          "items": {
            "enum": [
              "JOB_BENEFIT_UNSPECIFIED",
              "CHILD_CARE",
              "DENTAL",
              "DOMESTIC_PARTNER",
              "FLEXIBLE_HOURS",
              "MEDICAL",
              "LIFE_INSURANCE",
              "PARENTAL_LEAVE",
              "RETIREMENT_PLAN",
              "SICK_DAYS",
              "VACATION",
              "VISION"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "jobEndTime": {
          "description": "Optional.\n\nThe end timestamp of the job. Typically this field is used for contracting\nengagements. Invalid timestamps are ignored.",
          "format": "google-datetime",
          "type": "string"
        },
        "jobLevel": {
          "description": "Optional.\n\nThe experience level associated with the job, such as \"Entry Level\".",
          "enum": [
            "JOB_LEVEL_UNSPECIFIED",
            "ENTRY_LEVEL",
            "EXPERIENCED",
            "MANAGER",
            "DIRECTOR",
            "EXECUTIVE"
          ],
          "enumDescriptions": [
            "The default value if the level is not specified.",
            "Entry-level individual contributors, typically with less than 2 years of\nexperience in a similar role. Includes interns.",
            "Experienced individual contributors, typically with 2+ years of\nexperience in a similar role.",
            "Entry- to mid-level managers responsible for managing a team of people.",
            "Senior-level managers responsible for managing teams of managers.",
            "Executive-level managers and above, including C-level positions."
          ],
          "type": "string"
        },
        "jobStartTime": {
          "description": "Optional.\n\nThe start timestamp of the job in UTC time zone. Typically this field\nis used for contracting engagements. Invalid timestamps are ignored.",
          "format": "google-datetime",
          "type": "string"
        },
        "languageCode": {
          "description": "Optional.\n\nThe language of the posting. This field is distinct from\nany requirements for fluency that are associated with the job.\n\nLanguage codes must be in BCP-47 format, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\n[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47){:\nclass=\"external\" target=\"_blank\" }.\n\nIf this field is unspecified and Job.description is present, detected\nlanguage code based on Job.description is assigned, otherwise\ndefaults to 'en_US'.",
          "type": "string"
        },
        "name": {
          "description": "Required during job update.\n\nThe resource name for the job. This is generated by the service when a\njob is created.\n\nThe format is \"projects/{project_id}/jobs/{job_id}\",\nfor example, \"projects/api-test-project/jobs/1234\".\n\nUse of this field in job queries and API calls is preferred over the use of\nrequisition_id since this value is unique.",
          "type": "string"
        },
        "postingCreateTime": {
          "description": "Output only. The timestamp when this job posting was created.",
          "format": "google-datetime",
          "type": "string"
        },
        "postingExpireTime": {
          "description": "Optional but strongly recommended for the best service\nexperience.\n\nThe expiration timestamp of the job. After this timestamp, the\njob is marked as expired, and it no longer appears in search results. The\nexpired job can't be deleted or listed by the DeleteJob and\nListJobs APIs, but it can be retrieved with the GetJob API or\nupdated with the UpdateJob API. An expired job can be updated and\nopened again by using a future expiration timestamp. Updating an expired\njob fails if there is another existing open job with same company_name,\nlanguage_code and requisition_id.\n\nThe expired jobs are retained in our system for 90 days. However, the\noverall expired job count cannot exceed 3 times the maximum of open jobs\ncount over the past week, otherwise jobs with earlier expire time are\ncleaned first. Expired jobs are no longer accessible after they are cleaned\nout.\n\nInvalid timestamps are ignored, and treated as expire time not provided.\n\nTimestamp before the instant request is made is considered valid, the job\nwill be treated as expired immediately.\n\nIf this value is not provided at the time of job creation or is invalid,\nthe job posting expires after 30 days from the job's creation time. For\nexample, if the job was created on 2017/01/01 13:00AM UTC with an\nunspecified expiration date, the job expires after 2017/01/31 13:00AM UTC.\n\nIf this value is not provided on job update, it depends on the field masks\nset by UpdateJobRequest.update_mask. If the field masks include\nexpiry_time, or the masks are empty meaning that every field is\nupdated, the job posting expires after 30 days from the job's last\nupdate time. Otherwise the expiration date isn't updated.",
          "format": "google-datetime",
          "type": "string"
        },
        "postingPublishTime": {
          "description": "Optional.\n\nThe timestamp this job posting was most recently published. The default\nvalue is the time the request arrives at the server. Invalid timestamps are\nignored.",
          "format": "google-datetime",
          "type": "string"
        },
        "postingRegion": {
          "description": "Optional.\n\nThe job PostingRegion (for example, state, country) throughout which\nthe job is available. If this field is set, a\nLocationFilter in a search query within the job region\nfinds this job posting if an exact location match isn't specified.\nIf this field is set to PostingRegion.NATION or\nPostingRegion.ADMINISTRATIVE_AREA, setting job Job.addresses\nto the same location level as this field is strongly recommended.",
          "enum": [
            "POSTING_REGION_UNSPECIFIED",
            "ADMINISTRATIVE_AREA",
            "NATION",
            "TELECOMMUTE"
          ],
          "enumDescriptions": [
            "If the region is unspecified, the job is only returned if it\nmatches the LocationFilter.",
            "In addition to exact location matching, job posting is returned when the\nLocationFilter in the search query is in the same administrative area\nas the returned job posting. For example, if a `ADMINISTRATIVE_AREA` job\nis posted in \"CA, USA\", it's returned if LocationFilter has\n\"Mountain View\".\n\nAdministrative area refers to top-level administrative subdivision of this\ncountry. For example, US state, IT region, UK constituent nation and\nJP prefecture.",
            "In addition to exact location matching, job is returned when\nLocationFilter in search query is in the same country as this job.\nFor example, if a `NATION_WIDE` job is posted in \"USA\", it's\nreturned if LocationFilter has 'Mountain View'.",
            "Job allows employees to work remotely (telecommute).\nIf locations are provided with this value, the job is\nconsidered as having a location, but telecommuting is allowed."
          ],
          "type": "string"
        },
        "postingUpdateTime": {
          "description": "Output only. The timestamp when this job posting was last updated.",
          "format": "google-datetime",
          "type": "string"
        },
        "processingOptions": {
          "$ref": "ProcessingOptions",
          "description": "Optional.\n\nOptions for job processing."
        },
        "promotionValue": {
          "description": "Optional.\n\nA promotion value of the job, as determined by the client.\nThe value determines the sort order of the jobs returned when searching for\njobs using the featured jobs search call, with higher promotional values\nbeing returned first and ties being resolved by relevance sort. Only the\njobs with a promotionValue \u003e0 are returned in a FEATURED_JOB_SEARCH.\n\nDefault value is 0, and negative values are treated as 0.",
          "format": "int32",
          "type": "integer"
        },
        "qualifications": {
          "description": "Optional.\n\nA description of the qualifications required to perform the\njob. The use of this field is recommended\nas an alternative to using the more general description field.\n\nThis field accepts and sanitizes HTML input, and also accepts\nbold, italic, ordered list, and unordered list markup tags.\n\nThe maximum number of allowed characters is 10,000.",
          "type": "string"
        },
        "requisitionId": {
          "description": "Required.\n\nThe requisition ID, also referred to as the posting ID, assigned by the\nclient to identify a job. This field is intended to be used by clients\nfor client identification and tracking of postings. A job is not allowed\nto be created if there is another job with the same [company_name],\nlanguage_code and requisition_id.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "responsibilities": {
          "description": "Optional.\n\nA description of job responsibilities. The use of this field is\nrecommended as an alternative to using the more general description\nfield.\n\nThis field accepts and sanitizes HTML input, and also accepts\nbold, italic, ordered list, and unordered list markup tags.\n\nThe maximum number of allowed characters is 10,000.",
          "type": "string"
        },
        "title": {
          "description": "Required.\n\nThe title of the job, such as \"Software Engineer\"\n\nThe maximum number of allowed characters is 500.",
          "type": "string"
        },
        "visibility": {
          "description": "Optional.\n\nThe visibility of the job.\n\nDefaults to Visibility.ACCOUNT_ONLY if not specified.",
          "enum": [
            "VISIBILITY_UNSPECIFIED",
            "ACCOUNT_ONLY",
            "SHARED_WITH_GOOGLE",
            "SHARED_WITH_PUBLIC"
          ],
          "enumDescriptions": [
            "Default value.",
            "The resource is only visible to the GCP account who owns it.",
            "The resource is visible to the owner and may be visible to other\napplications and processes at Google.",
            "The resource is visible to the owner and may be visible to all other API\nclients."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "JobDerivedInfo": {
      "description": "Output only.\n\nDerived details about the job posting.",
      "id": "JobDerivedInfo",
      "properties": {
        "jobCategories": {
          "description": "Job categories derived from Job.title and Job.description.",
          "enumDescriptions": [
            "The default value if the category isn't specified.",
            "An accounting and finance job, such as an Accountant.",
            "An administrative and office job, such as an Administrative Assistant.",
            "An advertising and marketing job, such as Marketing Manager.",
            "An animal care job, such as Veterinarian.",
            "An art, fashion, or design job, such as Designer.",
            "A business operations job, such as Business Operations Manager.",
            "A cleaning and facilities job, such as Custodial Staff.",
            "A computer and IT job, such as Systems Administrator.",
            "A construction job, such as General Laborer.",
            "A customer service job, such s Cashier.",
            "An education job, such as School Teacher.",
            "An entertainment and travel job, such as Flight Attendant.",
            "A farming or outdoor job, such as Park Ranger.",
            "A healthcare job, such as Registered Nurse.",
            "A human resources job, such as Human Resources Director.",
            "An installation, maintenance, or repair job, such as Electrician.",
            "A legal job, such as Law Clerk.",
            "A management job, often used in conjunction with another category,\nsuch as Store Manager.",
            "A manufacturing or warehouse job, such as Assembly Technician.",
            "A media, communications, or writing job, such as Media Relations.",
            "An oil, gas or mining job, such as Offshore Driller.",
            "A personal care and services job, such as Hair Stylist.",
            "A protective services job, such as Security Guard.",
            "A real estate job, such as Buyer's Agent.",
            "A restaurant and hospitality job, such as Restaurant Server.",
            "A sales and/or retail job, such Sales Associate.",
            "A science and engineering job, such as Lab Technician.",
            "A social services or non-profit job, such as Case Worker.",
            "A sports, fitness, or recreation job, such as Personal Trainer.",
            "A transportation or logistics job, such as Truck Driver."
          ],
          "items": {
            "enum": [
              "JOB_CATEGORY_UNSPECIFIED",
              "ACCOUNTING_AND_FINANCE",
              "ADMINISTRATIVE_AND_OFFICE",
              "ADVERTISING_AND_MARKETING",
              "ANIMAL_CARE",
              "ART_FASHION_AND_DESIGN",
              "BUSINESS_OPERATIONS",
              "CLEANING_AND_FACILITIES",
              "COMPUTER_AND_IT",
              "CONSTRUCTION",
              "CUSTOMER_SERVICE",
              "EDUCATION",
              "ENTERTAINMENT_AND_TRAVEL",
              "FARMING_AND_OUTDOORS",
              "HEALTHCARE",
              "HUMAN_RESOURCES",
              "INSTALLATION_MAINTENANCE_AND_REPAIR",
              "LEGAL",
              "MANAGEMENT",
              "MANUFACTURING_AND_WAREHOUSE",
              "MEDIA_COMMUNICATIONS_AND_WRITING",
              "OIL_GAS_AND_MINING",
              "PERSONAL_CARE_AND_SERVICES",
              "PROTECTIVE_SERVICES",
              "REAL_ESTATE",
              "RESTAURANT_AND_HOSPITALITY",
              "SALES_AND_RETAIL",
              "SCIENCE_AND_ENGINEERING",
              "SOCIAL_SERVICES_AND_NON_PROFIT",
              "SPORTS_FITNESS_AND_RECREATION",
              "TRANSPORTATION_AND_LOGISTICS"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "locations": {
          "description": "Structured locations of the job, resolved from Job.addresses.\n\nlocations are exactly matched to Job.addresses in the same\norder.",
          "items": {
            "$ref": "Location"
          },
          "type": "array"
        }
      },
      "type": "object"
    },
    "JobEvent": {
      "description": "An event issued when a job seeker interacts with the application that\nimplements Cloud Talent Solution.",
      "id": "JobEvent",
      "properties": {
        "jobs": {
          "description": "Required.\n\nThe job name(s) associated with this event.\nFor example, if this is an impression event,\nthis field contains the identifiers of all jobs shown to the job seeker.\nIf this was a view event, this field contains the\nidentifier of the viewed job.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "type": {
          "description": "Required.\n\nThe type of the event (see JobEventType).",
          "enum": [
            "JOB_EVENT_TYPE_UNSPECIFIED",
            "IMPRESSION",
            "VIEW",
            "VIEW_REDIRECT",
            "APPLICATION_START",
            "APPLICATION_FINISH",
            "APPLICATION_QUICK_SUBMISSION",
            "APPLICATION_REDIRECT",
            "APPLICATION_START_FROM_SEARCH",
            "APPLICATION_REDIRECT_FROM_SEARCH",
            "APPLICATION_COMPANY_SUBMIT",
            "BOOKMARK",
            "NOTIFICATION",
            "HIRED",
            "SENT_CV",
            "INTERVIEW_GRANTED",
            "NOT_INTERESTED"
          ],
          "enumDescriptions": [
            "The event is unspecified by other provided values.",
            "The job seeker or other entity interacting with the service has\nhad a job rendered in their view, such as in a list of search results in\na compressed or clipped format. This event is typically associated with\nthe viewing of a jobs list on a single page by a job seeker.",
            "The job seeker, or other entity interacting with the service, has\nviewed the details of a job, including the full description. This\nevent doesn't apply to the viewing a snippet of a job appearing as a\npart of the job search results. Viewing a snippet is associated with an\nimpression).",
            "The job seeker or other entity interacting with the service\nperformed an action to view a job and was redirected to a different\nwebsite for job.",
            "The job seeker or other entity interacting with the service\nbegan the process or demonstrated the intention of applying for a job.",
            "The job seeker or other entity interacting with the service\nsubmitted an application for a job.",
            "The job seeker or other entity interacting with the service\nsubmitted an application for a job with a single click without\nentering information. If a job seeker performs this action, send only\nthis event to the service. Do not also send\nJobEventType.APPLICATION_START or JobEventType.APPLICATION_FINISH\nevents.",
            "The job seeker or other entity interacting with the service\nperformed an action to apply to a job and was redirected to a different\nwebsite to complete the application.",
            "The job seeker or other entity interacting with the service began the\nprocess or demonstrated the intention of applying for a job from the\nsearch results page without viewing the details of the job posting.\nIf sending this event, JobEventType.VIEW event shouldn't be sent.",
            "The job seeker, or other entity interacting with the service, performs an\naction with a single click from the search results page to apply to a job\n(without viewing the details of the job posting), and is redirected\nto a different website to complete the application. If a candidate\nperforms this action, send only this event to the service. Do not also\nsend JobEventType.APPLICATION_START,\nJobEventType.APPLICATION_FINISH or JobEventType.VIEW events.",
            "This event should be used when a company submits an application\non behalf of a job seeker. This event is intended for use by staffing\nagencies attempting to place candidates.",
            "The job seeker or other entity interacting with the service demonstrated\nan interest in a job by bookmarking or saving it.",
            "The job seeker or other entity interacting with the service was\nsent a notification, such as an email alert or device notification,\ncontaining one or more jobs listings generated by the service.",
            "The job seeker or other entity interacting with the service was\nemployed by the hiring entity (employer). Send this event\nonly if the job seeker was hired through an application that was\ninitiated by a search conducted through the Cloud Talent Solution\nservice.",
            "A recruiter or staffing agency submitted an application on behalf of the\ncandidate after interacting with the service to identify a suitable job\nposting.",
            "The entity interacting with the service (for example, the job seeker),\nwas granted an initial interview by the hiring entity (employer). This\nevent should only be sent if the job seeker was granted an interview as\npart of an application that was initiated by a search conducted through /\nrecommendation provided by the Cloud Talent Solution service.",
            "The job seeker or other entity interacting with the service showed\nno interest in the job."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "JobQuery": {
      "description": "Input only.\n\nThe query required to perform a search query.",
      "id": "JobQuery",
      "properties": {
        "commuteFilter": {
          "$ref": "CommuteFilter",
          "description": "Optional.\n\n Allows filtering jobs by commute time with different travel methods (for\n example, driving or public transit). Note: This only works with COMMUTE\n MODE. When specified, [JobQuery.location_filters] is\n ignored.\n\n Currently we don't support sorting by commute time."
        },
        "companyDisplayNames": {
          "description": "Optional.\n\nThis filter specifies the exact company display\nname of the jobs to search against.\n\nIf a value isn't specified, jobs within the search results are\nassociated with any company.\n\nIf multiple values are specified, jobs within the search results may be\nassociated with any of the specified companies.\n\nAt most 20 company display name filters are allowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "companyNames": {
          "description": "Optional.\n\nThis filter specifies the company entities to search against.\n\nIf a value isn't specified, jobs are searched for against all\ncompanies.\n\nIf multiple values are specified, jobs are searched against the\ncompanies specified.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".\n\nAt most 20 company filters are allowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "compensationFilter": {
          "$ref": "CompensationFilter",
          "description": "Optional.\n\nThis search filter is applied only to\nJob.compensation_info. For example, if the filter is specified\nas \"Hourly job with per-hour compensation \u003e $15\", only jobs meeting\nthese criteria are searched. If a filter isn't defined, all open jobs\nare searched."
        },
        "customAttributeFilter": {
          "description": "Optional.\n\nThis filter specifies a structured syntax to match against the\nJob.custom_attributes marked as `filterable`.\n\nThe syntax for this expression is a subset of SQL syntax.\n\nSupported operators are: `=`, `!=`, `\u003c`, `\u003c=`, `\u003e`, and `\u003e=` where the\nleft of the operator is a custom field key and the right of the operator\nis a number or a quoted string. You must escape backslash (\\\\) and\nquote (\\\") characters.\n\nSupported functions are `LOWER([field_name])` to\nperform a case insensitive match and `EMPTY([field_name])` to filter on the\nexistence of a key.\n\nBoolean expressions (AND/OR/NOT) are supported up to 3 levels of\nnesting (for example, \"((A AND B AND C) OR NOT D) AND E\"), a maximum of 100\ncomparisons or functions are allowed in the expression. The expression\nmust be \u003c 3000 bytes in length.\n\nSample Query:\n`(LOWER(driving_license)=\"class \\\"a\\\"\" OR EMPTY(driving_license)) AND\ndriving_years \u003e 10`",
          "type": "string"
        },
        "disableSpellCheck": {
          "description": "Optional.\n\nThis flag controls the spell-check feature. If false, the\nservice attempts to correct a misspelled query,\nfor example, \"enginee\" is corrected to \"engineer\".\n\nDefaults to false: a spell check is performed.",
          "type": "boolean"
        },
        "employmentTypes": {
          "description": "Optional.\n\nThe employment type filter specifies the employment type of jobs to\nsearch against, such as EmploymentType.FULL_TIME.\n\nIf a value is not specified, jobs in the search results includes any\nemployment type.\n\nIf multiple values are specified, jobs in the search results include\nany of the specified employment types.",
          "enumDescriptions": [
            "The default value if the employment type is not specified.",
            "The job requires working a number of hours that constitute full\ntime employment, typically 40 or more hours per week.",
            "The job entails working fewer hours than a full time job,\ntypically less than 40 hours a week.",
            "The job is offered as a contracted, as opposed to a salaried employee,\nposition.",
            "The job is offered as a contracted position with the understanding\nthat it's converted into a full-time position at the end of the\ncontract. Jobs of this type are also returned by a search for\nEmploymentType.CONTRACTOR jobs.",
            "The job is offered as a temporary employment opportunity, usually\na short-term engagement.",
            "The job is a fixed-term opportunity for students or entry-level job\nseekers to obtain on-the-job training, typically offered as a summer\nposition.",
            "The is an opportunity for an individual to volunteer, where there's no\nexpectation of compensation for the provided services.",
            "The job requires an employee to work on an as-needed basis with a\nflexible schedule.",
            "The job involves employing people in remote areas and flying them\ntemporarily to the work site instead of relocating employees and their\nfamilies permanently.",
            "The job does not fit any of the other listed types."
          ],
          "items": {
            "enum": [
              "EMPLOYMENT_TYPE_UNSPECIFIED",
              "FULL_TIME",
              "PART_TIME",
              "CONTRACTOR",
              "CONTRACT_TO_HIRE",
              "TEMPORARY",
              "INTERN",
              "VOLUNTEER",
              "PER_DIEM",
              "FLY_IN_FLY_OUT",
              "OTHER_EMPLOYMENT_TYPE"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "jobCategories": {
          "description": "Optional.\n\nThe category filter specifies the categories of jobs to search against.\nSee Category for more information.\n\nIf a value is not specified, jobs from any category are searched against.\n\nIf multiple values are specified, jobs from any of the specified\ncategories are searched against.",
          "enumDescriptions": [
            "The default value if the category isn't specified.",
            "An accounting and finance job, such as an Accountant.",
            "An administrative and office job, such as an Administrative Assistant.",
            "An advertising and marketing job, such as Marketing Manager.",
            "An animal care job, such as Veterinarian.",
            "An art, fashion, or design job, such as Designer.",
            "A business operations job, such as Business Operations Manager.",
            "A cleaning and facilities job, such as Custodial Staff.",
            "A computer and IT job, such as Systems Administrator.",
            "A construction job, such as General Laborer.",
            "A customer service job, such s Cashier.",
            "An education job, such as School Teacher.",
            "An entertainment and travel job, such as Flight Attendant.",
            "A farming or outdoor job, such as Park Ranger.",
            "A healthcare job, such as Registered Nurse.",
            "A human resources job, such as Human Resources Director.",
            "An installation, maintenance, or repair job, such as Electrician.",
            "A legal job, such as Law Clerk.",
            "A management job, often used in conjunction with another category,\nsuch as Store Manager.",
            "A manufacturing or warehouse job, such as Assembly Technician.",
            "A media, communications, or writing job, such as Media Relations.",
            "An oil, gas or mining job, such as Offshore Driller.",
            "A personal care and services job, such as Hair Stylist.",
            "A protective services job, such as Security Guard.",
            "A real estate job, such as Buyer's Agent.",
            "A restaurant and hospitality job, such as Restaurant Server.",
            "A sales and/or retail job, such Sales Associate.",
            "A science and engineering job, such as Lab Technician.",
            "A social services or non-profit job, such as Case Worker.",
            "A sports, fitness, or recreation job, such as Personal Trainer.",
            "A transportation or logistics job, such as Truck Driver."
          ],
          "items": {
            "enum": [
              "JOB_CATEGORY_UNSPECIFIED",
              "ACCOUNTING_AND_FINANCE",
              "ADMINISTRATIVE_AND_OFFICE",
              "ADVERTISING_AND_MARKETING",
              "ANIMAL_CARE",
              "ART_FASHION_AND_DESIGN",
              "BUSINESS_OPERATIONS",
              "CLEANING_AND_FACILITIES",
              "COMPUTER_AND_IT",
              "CONSTRUCTION",
              "CUSTOMER_SERVICE",
              "EDUCATION",
              "ENTERTAINMENT_AND_TRAVEL",
              "FARMING_AND_OUTDOORS",
              "HEALTHCARE",
              "HUMAN_RESOURCES",
              "INSTALLATION_MAINTENANCE_AND_REPAIR",
              "LEGAL",
              "MANAGEMENT",
              "MANUFACTURING_AND_WAREHOUSE",
              "MEDIA_COMMUNICATIONS_AND_WRITING",
              "OIL_GAS_AND_MINING",
              "PERSONAL_CARE_AND_SERVICES",
              "PROTECTIVE_SERVICES",
              "REAL_ESTATE",
              "RESTAURANT_AND_HOSPITALITY",
              "SALES_AND_RETAIL",
              "SCIENCE_AND_ENGINEERING",
              "SOCIAL_SERVICES_AND_NON_PROFIT",
              "SPORTS_FITNESS_AND_RECREATION",
              "TRANSPORTATION_AND_LOGISTICS"
            ],
            "type": "string"
          },
          "type": "array"
        },
        "languageCodes": {
          "description": "Optional.\n\nThis filter specifies the locale of jobs to search against,\nfor example, \"en-US\".\n\nIf a value isn't specified, the search results can contain jobs in any\nlocale.\n\n\nLanguage codes should be in BCP-47 format, such as \"en-US\" or \"sr-Latn\".\nFor more information, see\n[Tags for Identifying Languages](https://tools.ietf.org/html/bcp47).\n\nAt most 10 language code filters are allowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "locationFilters": {
          "description": "Optional.\n\nThe location filter specifies geo-regions containing the jobs to\nsearch against. See LocationFilter for more information.\n\nIf a location value isn't specified, jobs fitting the other search\ncriteria are retrieved regardless of where they're located.\n\nIf multiple values are specified, jobs are retrieved from any of the\nspecified locations. If different values are specified for the\nLocationFilter.distance_in_miles parameter, the maximum provided\ndistance is used for all locations.\n\nAt most 5 location filters are allowed.",
          "items": {
            "$ref": "LocationFilter"
          },
          "type": "array"
        },
        "publishTimeRange": {
          "$ref": "TimestampRange",
          "description": "Optional.\n\nJobs published within a range specified by this filter are searched\nagainst."
        },
        "query": {
          "description": "Optional.\n\nThe query string that matches against the job title, description, and\nlocation fields.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "LatLng": {
      "description": "An object representing a latitude/longitude pair. This is expressed as a pair\nof doubles representing degrees latitude and degrees longitude. Unless\nspecified otherwise, this must conform to the\n\u003ca href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\"\u003eWGS84\nstandard\u003c/a\u003e. Values must be within normalized ranges.",
      "id": "LatLng",
      "properties": {
        "latitude": {
          "description": "The latitude in degrees. It must be in the range [-90.0, +90.0].",
          "format": "double",
          "type": "number"
        },
        "longitude": {
          "description": "The longitude in degrees. It must be in the range [-180.0, +180.0].",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "ListCompaniesResponse": {
      "description": "Output only.\n\nThe List companies response object.",
      "id": "ListCompaniesResponse",
      "properties": {
        "companies": {
          "description": "Companies for the current client.",
          "items": {
            "$ref": "Company"
          },
          "type": "array"
        },
        "metadata": {
          "$ref": "ResponseMetadata",
          "description": "Additional information for the API invocation, such as the request\ntracking id."
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ListJobsResponse": {
      "description": "Output only.\n\nList jobs response.",
      "id": "ListJobsResponse",
      "properties": {
        "jobs": {
          "description": "The Jobs for a given company.\n\nThe maximum number of items returned is based on the limit field\nprovided in the request.",
          "items": {
            "$ref": "Job"
          },
          "type": "array"
        },
        "metadata": {
          "$ref": "ResponseMetadata",
          "description": "Additional information for the API invocation, such as the request\ntracking id."
        },
        "nextPageToken": {
          "description": "A token to retrieve the next page of results.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Location": {
      "description": "Output only.\n\nA resource that represents a location with full geographic information.",
      "id": "Location",
      "properties": {
        "latLng": {
          "$ref": "LatLng",
          "description": "An object representing a latitude/longitude pair."
        },
        "locationType": {
          "description": "The type of a location, which corresponds to the address lines field of\nPostalAddress. For example, \"Downtown, Atlanta, GA, USA\" has a type of\nLocationType#NEIGHBORHOOD, and \"Kansas City, KS, USA\" has a type of\nLocationType#LOCALITY.",
          "enum": [
            "LOCATION_TYPE_UNSPECIFIED",
            "COUNTRY",
            "ADMINISTRATIVE_AREA",
            "SUB_ADMINISTRATIVE_AREA",
            "LOCALITY",
            "POSTAL_CODE",
            "SUB_LOCALITY",
            "SUB_LOCALITY_1",
            "SUB_LOCALITY_2",
            "NEIGHBORHOOD",
            "STREET_ADDRESS"
          ],
          "enumDescriptions": [
            "Default value if the type is not specified.",
            "A country level location.",
            "A state or equivalent level location.",
            "A county or equivalent level location.",
            "A city or equivalent level location.",
            "A postal code level location.",
            "A sublocality is a subdivision of a locality, for example a city borough,\nward, or arrondissement. Sublocalities are usually recognized by a local\npolitical authority. For example, Manhattan and Brooklyn are recognized\nas boroughs by the City of New York, and are therefore modeled as\nsublocalities.",
            "A district or equivalent level location.",
            "A smaller district or equivalent level display.",
            "A neighborhood level location.",
            "A street address level location."
          ],
          "type": "string"
        },
        "postalAddress": {
          "$ref": "PostalAddress",
          "description": "Postal address of the location that includes human readable information,\nsuch as postal delivery and payments addresses. Given a postal address,\na postal service can deliver items to a premises, P.O. Box, or other\ndelivery location."
        },
        "radiusInMiles": {
          "description": "Radius in miles of the job location. This value is derived from the\nlocation bounding box in which a circle with the specified radius\ncentered from LatLng covers the area associated with the job location.\nFor example, currently, \"Mountain View, CA, USA\" has a radius of\n6.17 miles.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "LocationFilter": {
      "description": "Input only.\n\nGeographic region of the search.",
      "id": "LocationFilter",
      "properties": {
        "address": {
          "description": "Optional.\n\nThe address name, such as \"Mountain View\" or \"Bay Area\".",
          "type": "string"
        },
        "distanceInMiles": {
          "description": "Optional.\n\n\nThe distance_in_miles is applied when the location being searched for is\nidentified as a city or smaller. When the location being searched for is a\nstate or larger, this field is ignored.",
          "format": "double",
          "type": "number"
        },
        "latLng": {
          "$ref": "LatLng",
          "description": "Optional.\n\nThe latitude and longitude of the geographic center from which to\nsearch. This field's ignored if `address` is provided."
        },
        "regionCode": {
          "description": "Optional.\n\nCLDR region code of the country/region of the address. This is used\nto address ambiguity of the user-input location, for example, \"Liverpool\"\nagainst \"Liverpool, NY, US\" or \"Liverpool, UK\".\n\nSet this field if all the jobs to search against are from a same region,\nor jobs are world-wide, but the job seeker is from a specific region.\n\nSee http://cldr.unicode.org/ and\nhttp://www.unicode.org/cldr/charts/30/supplemental/territory_information.html\nfor details. Example: \"CH\" for Switzerland.",
          "type": "string"
        },
        "telecommutePreference": {
          "description": "Optional.\n\nAllows the client to return jobs without a\nset location, specifically, telecommuting jobs (telecomuting is considered\nby the service as a special location.\nJob.posting_region indicates if a job permits telecommuting.\nIf this field is set to TelecommutePreference.TELECOMMUTE_ALLOWED,\ntelecommuting jobs are searched, and address and lat_lng are\nignored. If not set or set to\nTelecommutePreference.TELECOMMUTE_EXCLUDED, telecommute job are not\nsearched.\n\nThis filter can be used by itself to search exclusively for telecommuting\njobs, or it can be combined with another location\nfilter to search for a combination of job locations,\nsuch as \"Mountain View\" or \"telecommuting\" jobs. However, when used in\ncombination with other location filters, telecommuting jobs can be\ntreated as less relevant than other jobs in the search response.",
          "enum": [
            "TELECOMMUTE_PREFERENCE_UNSPECIFIED",
            "TELECOMMUTE_EXCLUDED",
            "TELECOMMUTE_ALLOWED"
          ],
          "enumDescriptions": [
            "Default value if the telecommute preference is not specified.",
            "Exclude telecommute jobs.",
            "Allow telecommute jobs."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "MatchingJob": {
      "description": "Output only.\n\nJob entry with metadata inside SearchJobsResponse.",
      "id": "MatchingJob",
      "properties": {
        "commuteInfo": {
          "$ref": "CommuteInfo",
          "description": "Commute information which is generated based on specified\n CommuteFilter."
        },
        "job": {
          "$ref": "Job",
          "description": "Job resource that matches the specified SearchJobsRequest."
        },
        "jobSummary": {
          "description": "A summary of the job with core information that's displayed on the search\nresults listing page.",
          "type": "string"
        },
        "jobTitleSnippet": {
          "description": "Contains snippets of text from the Job.job_title field most\nclosely matching a search query's keywords, if available. The matching\nquery keywords are enclosed in HTML bold tags.",
          "type": "string"
        },
        "searchTextSnippet": {
          "description": "Contains snippets of text from the Job.description and similar\nfields that most closely match a search query's keywords, if available.\nAll HTML tags in the original fields are stripped when returned in this\nfield, and matching query keywords are enclosed in HTML bold tags.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "Money": {
      "description": "Represents an amount of money with its currency type.",
      "id": "Money",
      "properties": {
        "currencyCode": {
          "description": "The 3-letter currency code defined in ISO 4217.",
          "type": "string"
        },
        "nanos": {
          "description": "Number of nano (10^-9) units of the amount.\nThe value must be between -999,999,999 and +999,999,999 inclusive.\nIf `units` is positive, `nanos` must be positive or zero.\nIf `units` is zero, `nanos` can be positive, zero, or negative.\nIf `units` is negative, `nanos` must be negative or zero.\nFor example $-1.75 is represented as `units`=-1 and `nanos`=-750,000,000.",
          "format": "int32",
          "type": "integer"
        },
        "units": {
          "description": "The whole units of the amount.\nFor example if `currencyCode` is `\"USD\"`, then 1 unit is one US dollar.",
          "format": "int64",
          "type": "string"
        }
      },
      "type": "object"
    },
    "NumericBucketingOption": {
      "description": "Input only.\n\nUse this field to specify bucketing option for the histogram search response.",
      "id": "NumericBucketingOption",
      "properties": {
        "bucketBounds": {
          "description": "Required.\n\nTwo adjacent values form a histogram bucket. Values should be in\nascending order. For example, if [5, 10, 15] are provided, four buckets are\ncreated: (-inf, 5), 5, 10), [10, 15), [15, inf). At most 20\n[buckets_bound is supported.",
          "items": {
            "format": "double",
            "type": "number"
          },
          "type": "array"
        },
        "requiresMinMax": {
          "description": "Optional.\n\nIf set to true, the histogram result includes minimum/maximum\nvalue of the numeric field.",
          "type": "boolean"
        }
      },
      "type": "object"
    },
    "NumericBucketingResult": {
      "description": "Output only.\n\nCustom numeric bucketing result.",
      "id": "NumericBucketingResult",
      "properties": {
        "counts": {
          "description": "Count within each bucket. Its size is the length of\nNumericBucketingOption.bucket_bounds plus 1.",
          "items": {
            "$ref": "BucketizedCount"
          },
          "type": "array"
        },
        "maxValue": {
          "description": "Stores the maximum value of the numeric field. Is populated only if\n[NumericBucketingOption.requires_min_max] is set to true.",
          "format": "double",
          "type": "number"
        },
        "minValue": {
          "description": "Stores the minimum value of the numeric field. Will be populated only if\n[NumericBucketingOption.requires_min_max] is set to true.",
          "format": "double",
          "type": "number"
        }
      },
      "type": "object"
    },
    "PostalAddress": {
      "description": "Represents a postal address, e.g. for postal delivery or payments addresses.\nGiven a postal address, a postal service can deliver items to a premise, P.O.\nBox or similar.\nIt is not intended to model geographical locations (roads, towns,\nmountains).\n\nIn typical usage an address would be created via user input or from importing\nexisting data, depending on the type of process.\n\nAdvice on address input / editing:\n - Use an i18n-ready address widget such as\n   https://github.com/googlei18n/libaddressinput)\n- Users should not be presented with UI elements for input or editing of\n  fields outside countries where that field is used.\n\nFor more guidance on how to use this schema, please see:\nhttps://support.google.com/business/answer/6397478",
      "id": "PostalAddress",
      "properties": {
        "addressLines": {
          "description": "Unstructured address lines describing the lower levels of an address.\n\nBecause values in address_lines do not have type information and may\nsometimes contain multiple values in a single field (e.g.\n\"Austin, TX\"), it is important that the line order is clear. The order of\naddress lines should be \"envelope order\" for the country/region of the\naddress. In places where this can vary (e.g. Japan), address_language is\nused to make it explicit (e.g. \"ja\" for large-to-small ordering and\n\"ja-Latn\" or \"en\" for small-to-large). This way, the most specific line of\nan address can be selected based on the language.\n\nThe minimum permitted structural representation of an address consists\nof a region_code with all remaining information placed in the\naddress_lines. It would be possible to format such an address very\napproximately without geocoding, but no semantic reasoning could be\nmade about any of the address components until it was at least\npartially resolved.\n\nCreating an address only containing a region_code and address_lines, and\nthen geocoding is the recommended way to handle completely unstructured\naddresses (as opposed to guessing which parts of the address should be\nlocalities or administrative areas).",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "administrativeArea": {
          "description": "Optional. Highest administrative subdivision which is used for postal\naddresses of a country or region.\nFor example, this can be a state, a province, an oblast, or a prefecture.\nSpecifically, for Spain this is the province and not the autonomous\ncommunity (e.g. \"Barcelona\" and not \"Catalonia\").\nMany countries don't use an administrative area in postal addresses. E.g.\nin Switzerland this should be left unpopulated.",
          "type": "string"
        },
        "languageCode": {
          "description": "Optional. BCP-47 language code of the contents of this address (if\nknown). This is often the UI language of the input form or is expected\nto match one of the languages used in the address' country/region, or their\ntransliterated equivalents.\nThis can affect formatting in certain countries, but is not critical\nto the correctness of the data and will never affect any validation or\nother non-formatting related operations.\n\nIf this value is not known, it should be omitted (rather than specifying a\npossibly incorrect default).\n\nExamples: \"zh-Hant\", \"ja\", \"ja-Latn\", \"en\".",
          "type": "string"
        },
        "locality": {
          "description": "Optional. Generally refers to the city/town portion of the address.\nExamples: US city, IT comune, UK post town.\nIn regions of the world where localities are not well defined or do not fit\ninto this structure well, leave locality empty and use address_lines.",
          "type": "string"
        },
        "organization": {
          "description": "Optional. The name of the organization at the address.",
          "type": "string"
        },
        "postalCode": {
          "description": "Optional. Postal code of the address. Not all countries use or require\npostal codes to be present, but where they are used, they may trigger\nadditional validation with other parts of the address (e.g. state/zip\nvalidation in the U.S.A.).",
          "type": "string"
        },
        "recipients": {
          "description": "Optional. The recipient at the address.\nThis field may, under certain circumstances, contain multiline information.\nFor example, it might contain \"care of\" information.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "regionCode": {
          "description": "Required. CLDR region code of the country/region of the address. This\nis never inferred and it is up to the user to ensure the value is\ncorrect. See http://cldr.unicode.org/ and\nhttp://www.unicode.org/cldr/charts/30/supplemental/territory_information.html\nfor details. Example: \"CH\" for Switzerland.",
          "type": "string"
        },
        "revision": {
          "description": "The schema revision of the `PostalAddress`. This must be set to 0, which is\nthe latest revision.\n\nAll new revisions **must** be backward compatible with old revisions.",
          "format": "int32",
          "type": "integer"
        },
        "sortingCode": {
          "description": "Optional. Additional, country-specific, sorting code. This is not used\nin most regions. Where it is used, the value is either a string like\n\"CEDEX\", optionally followed by a number (e.g. \"CEDEX 7\"), or just a number\nalone, representing the \"sector code\" (Jamaica), \"delivery area indicator\"\n(Malawi) or \"post office indicator\" (e.g. Côte d'Ivoire).",
          "type": "string"
        },
        "sublocality": {
          "description": "Optional. Sublocality of the address.\nFor example, this can be neighborhoods, boroughs, districts.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ProcessingOptions": {
      "description": "Input only.\n\nOptions for job processing.",
      "id": "ProcessingOptions",
      "properties": {
        "disableStreetAddressResolution": {
          "description": "Optional.\n\nIf set to `true`, the service does not attempt to resolve a\nmore precise address for the job.",
          "type": "boolean"
        },
        "htmlSanitization": {
          "description": "Optional.\n\nOption for job HTML content sanitization. Applied fields are:\n\n* description\n* applicationInfo.instruction\n* incentives\n* qualifications\n* responsibilities\n\nHTML tags in these fields may be stripped if sanitiazation is not\ndisabled.\n\nDefaults to HtmlSanitization.SIMPLE_FORMATTING_ONLY.",
          "enum": [
            "HTML_SANITIZATION_UNSPECIFIED",
            "HTML_SANITIZATION_DISABLED",
            "SIMPLE_FORMATTING_ONLY"
          ],
          "enumDescriptions": [
            "Default value.",
            "Disables sanitization on HTML input.",
            "Sanitizes HTML input, only accepts bold, italic, ordered list, and\nunordered list markup tags."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "RequestMetadata": {
      "description": "Input only.\n\nMeta information related to the job searcher or entity\nconducting the job search. This information is used to improve the\nperformance of the service.",
      "id": "RequestMetadata",
      "properties": {
        "deviceInfo": {
          "$ref": "DeviceInfo",
          "description": "Optional.\n\nThe type of device used by the job seeker at the time of the call to the\nservice."
        },
        "domain": {
          "description": "Required.\n\nThe client-defined scope or source of the service call, which typically\nis the domain on\nwhich the service has been implemented and is currently being run.\n\nFor example, if the service is being run by client \u003cem\u003eFoo, Inc.\u003c/em\u003e, on\njob board www.foo.com and career site www.bar.com, then this field is\nset to \"foo.com\" for use on the job board, and \"bar.com\" for use on the\ncareer site.\n\nIf this field isn't available for some reason, send \"UNKNOWN\".\nAny improvements to the model for a particular tenant site rely on this\nfield being set correctly to a domain.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "sessionId": {
          "description": "Required.\n\nA unique session identification string. A session is defined as the\nduration of an end user's interaction with the service over a certain\nperiod.\nObfuscate this field for privacy concerns before\nproviding it to the service.\n\nIf this field is not available for some reason, send \"UNKNOWN\". Note\nthat any improvements to the model for a particular tenant\nsite, rely on this field being set correctly to some unique session_id.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "userId": {
          "description": "Required.\n\nA unique user identification string, as determined by the client.\nTo have the strongest positive impact on search quality\nmake sure the client-level is unique.\nObfuscate this field for privacy concerns before\nproviding it to the service.\n\nIf this field is not available for some reason, send \"UNKNOWN\". Note\nthat any improvements to the model for a particular tenant\nsite, rely on this field being set correctly to a unique user_id.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "ResponseMetadata": {
      "description": "Output only.\n\nAdditional information returned to client, such as debugging information.",
      "id": "ResponseMetadata",
      "properties": {
        "requestId": {
          "description": "A unique id associated with this call.\nThis id is logged for tracking purposes.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "SearchJobsRequest": {
      "description": "Input only.\n\nThe Request body of the `SearchJobs` call.",
      "id": "SearchJobsRequest",
      "properties": {
        "disableKeywordMatch": {
          "description": "Optional.\n\nControls whether to disable exact keyword match on Job.job_title,\nJob.description, Job.company_display_name, Job.locations,\nJob.qualifications. When disable keyword match is turned off, a\nkeyword match returns jobs that do not match given category filters when\nthere are matching keywords. For example, the query \"program manager,\" a\nresult is returned even if the job posting has the title \"software\ndeveloper,\" which does not fall into \"program manager\" ontology, but does\nhave \"program manager\" appearing in its description.\n\nFor queries like \"cloud\" that does not contain title or\nlocation specific ontology, jobs with \"cloud\" keyword matches are returned\nregardless of this flag's value.\n\nPlease use Company.keyword_searchable_custom_fields or\nCompany.keyword_searchable_custom_attributes if company specific\nglobally matched custom field/attribute string values is needed. Enabling\nkeyword match improves recall of subsequent search requests.\n\nDefaults to false.",
          "type": "boolean"
        },
        "diversificationLevel": {
          "description": "Optional.\n\nControls whether highly similar jobs are returned next to each other in\nthe search results. Jobs are identified as highly similar based on\ntheir titles, job categories, and locations. Highly similar results are\nclustered so that only one representative job of the cluster is\ndisplayed to the job seeker higher up in the results, with the other jobs\nbeing displayed lower down in the results.\n\nDefaults to DiversificationLevel.SIMPLE if no value\nis specified.",
          "enum": [
            "DIVERSIFICATION_LEVEL_UNSPECIFIED",
            "DISABLED",
            "SIMPLE"
          ],
          "enumDescriptions": [
            "The diversification level isn't specified.",
            "Disables diversification. Jobs that would normally be pushed to the last\npage would not have their positions altered. This may result in highly\nsimilar jobs appearing in sequence in the search results.",
            "Default diversifying behavior. The result list is ordered so that\nhighly similar results are pushed to the end of the last page of search\nresults."
          ],
          "type": "string"
        },
        "enableBroadening": {
          "description": "Optional.\n\nControls whether to broaden the search when it produces sparse results.\nBroadened queries append results to the end of the matching results\nlist.\n\nDefaults to false.",
          "type": "boolean"
        },
        "histogramFacets": {
          "$ref": "HistogramFacets",
          "description": "Optional.\n\nHistogram requests for jobs matching JobQuery."
        },
        "jobQuery": {
          "$ref": "JobQuery",
          "description": "Optional.\n\nQuery used to search against jobs, such as keyword, location filters, etc."
        },
        "jobView": {
          "description": "Optional.\n\nThe desired job attributes returned for jobs in the\nsearch response. Defaults to JobView.SMALL if no value is specified.",
          "enum": [
            "JOB_VIEW_UNSPECIFIED",
            "JOB_VIEW_ID_ONLY",
            "JOB_VIEW_MINIMAL",
            "JOB_VIEW_SMALL",
            "JOB_VIEW_FULL"
          ],
          "enumDescriptions": [
            "Default value.",
            "A ID only view of job, with following attributes:\nJob.name, Job.requisition_id, Job.language_code.",
            "A minimal view of the job, with the following attributes:\nJob.name, Job.requisition_id, Job.job_title,\nJob.company_name, Job.DerivedInfo.locations, Job.language_code.",
            "A small view of the job, with the following attributes in the search\nresults: Job.name, Job.requisition_id, Job.job_title,\nJob.company_name, Job.DerivedInfo.locations, Job.visibility,\nJob.language_code, Job.description.",
            "All available attributes are included in the search results."
          ],
          "type": "string"
        },
        "offset": {
          "description": "Optional.\n\nAn integer that specifies the current offset (that is, starting result\nlocation, amongst the jobs deemed by the API as relevant) in search\nresults. This field is only considered if page_token is unset.\n\nFor example, 0 means to  return results starting from the first matching\njob, and 10 means to return from the 11th job. This can be used for\npagination, (for example, pageSize = 10 and offset = 10 means to return\nfrom the second page).",
          "format": "int32",
          "type": "integer"
        },
        "orderBy": {
          "description": "Optional.\n\nThe criteria determining how search results are sorted. Default is\n\"relevance desc\".\n\nSupported options are:\n\n* \"relevance desc\": By relevance descending, as determined by the API\nalgorithms. Relevance thresholding of query results is only available\nwith this ordering.\n* \"posting`_`publish`_`time desc\": By Job.posting_publish_time descending.\n* \"posting`_`update`_`time desc\": By Job.posting_update_time descending.\n* \"title\": By Job.title ascending.\n* \"title desc\": By Job.title descending.\n* \"annualized`_`base`_`compensation\": By job's\nCompensationInfo.annualized_base_compensation_range ascending. Jobs\nwhose annualized base compensation is unspecified are put at the end of\nsearch results.\n* \"annualized`_`base`_`compensation desc\": By job's\nCompensationInfo.annualized_base_compensation_range descending. Jobs\nwhose annualized base compensation is unspecified are put at the end of\nsearch results.\n* \"annualized`_`total`_`compensation\": By job's\nCompensationInfo.annualized_total_compensation_range ascending. Jobs\nwhose annualized base compensation is unspecified are put at the end of\nsearch results.\n* \"annualized`_`total`_`compensation desc\": By job's\nCompensationInfo.annualized_total_compensation_range descending. Jobs\nwhose annualized base compensation is unspecified are put at the end of\nsearch results.",
          "type": "string"
        },
        "pageSize": {
          "description": "Optional.\n\nA limit on the number of jobs returned in the search results.\nIncreasing this value above the default value of 10 can increase search\nresponse time. The value can be between 1 and 100.",
          "format": "int32",
          "type": "integer"
        },
        "pageToken": {
          "description": "Optional.\n\nThe token specifying the current offset within\nsearch results. See SearchJobsResponse.next_page_token for\nan explanation of how to obtain the next set of query results.",
          "type": "string"
        },
        "requestMetadata": {
          "$ref": "RequestMetadata",
          "description": "Required.\n\nThe meta information collected about the job searcher, used to improve the\nsearch quality of the service.. The identifiers, (such as `user_id`) are\nprovided by users, and must be unique and consistent."
        },
        "requirePreciseResultSize": {
          "description": "Optional.\n\nControls if the search job request requires the return of a precise\ncount of the first 300 results. Setting this to `true` ensures\nconsistency in the number of results per page. Best practice is to set this\nvalue to true if a client allows users to jump directly to a\nnon-sequential search results page.\n\nEnabling this flag may adversely impact performance.\n\nDefaults to false.",
          "type": "boolean"
        },
        "searchMode": {
          "description": "Optional.\n\nMode of a search.\n\nDefaults to SearchMode.JOB_SEARCH.",
          "enum": [
            "SEARCH_MODE_UNSPECIFIED",
            "JOB_SEARCH",
            "FEATURED_JOB_SEARCH"
          ],
          "enumDescriptions": [
            "The mode of the search method isn't specified.",
            "The job search matches against all jobs, and featured jobs\n(jobs with promotionValue \u003e 0) are not specially handled.",
            "The job search matches only against featured jobs (jobs with a\npromotionValue \u003e 0). This method doesn't return any jobs having a\npromotionValue \u003c= 0. The search results order is determined by the\npromotionValue (jobs with a higher promotionValue are returned higher up\nin the search results), with relevance being used as a tiebreaker."
          ],
          "type": "string"
        }
      },
      "type": "object"
    },
    "SearchJobsResponse": {
      "description": "Output only.\n\nResponse for SearchJob method.",
      "id": "SearchJobsResponse",
      "properties": {
        "broadenedQueryJobsCount": {
          "description": "If query broadening is enabled, we may append additional results from the\nbroadened query. This number indicates how many of the jobs returned in the\njobs field are from the broadened query. These results are always at the\nend of the jobs list. In particular, a value of 0, or if the field isn't\nset, all the jobs in the jobs list are from the original\n(without broadening) query. If this field is non-zero, subsequent requests\nwith offset after this result set should contain all broadened results.",
          "format": "int32",
          "type": "integer"
        },
        "estimatedTotalSize": {
          "description": "An estimation of the number of jobs that match the specified query.\n\nThis number is not guaranteed to be accurate. For accurate results,\nsee enable_precise_result_size.",
          "format": "int32",
          "type": "integer"
        },
        "histogramResults": {
          "$ref": "HistogramResults",
          "description": "The histogram results that match specified\nSearchJobsRequest.histogram_facets."
        },
        "locationFilters": {
          "description": "The location filters that the service applied to the specified query. If\nany filters are lat-lng based, the JobLocation.location_type is\nJobLocation.LocationType#LOCATION_TYPE_UNSPECIFIED.",
          "items": {
            "$ref": "Location"
          },
          "type": "array"
        },
        "matchingJobs": {
          "description": "The Job entities that match the specified SearchJobsRequest.",
          "items": {
            "$ref": "MatchingJob"
          },
          "type": "array"
        },
        "metadata": {
          "$ref": "ResponseMetadata",
          "description": "Additional information for the API invocation, such as the request\ntracking id."
        },
        "nextPageToken": {
          "description": "The token that specifies the starting position of the next page of results.\nThis field is empty if there are no more results.",
          "type": "string"
        },
        "spellCorrection": {
          "$ref": "SpellingCorrection",
          "description": "The spell checking result, and correction."
        },
        "totalSize": {
          "description": "The precise result count, which is available only if the client set\nenable_precise_result_size to `true`, or if the response\nis the last page of results. Otherwise, the value is `-1`.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "SpellingCorrection": {
      "description": "Output only.\n\nSpell check result.",
      "id": "SpellingCorrection",
      "properties": {
        "corrected": {
          "description": "Indicates if the query was corrected by the spell checker.",
          "type": "boolean"
        },
        "correctedText": {
          "description": "Correction output consisting of the corrected keyword string.",
          "type": "string"
        }
      },
      "type": "object"
    },
    "TimeOfDay": {
      "description": "Represents a time of day. The date and time zone are either not significant\nor are specified elsewhere. An API may choose to allow leap seconds. Related\ntypes are google.type.Date and `google.protobuf.Timestamp`.",
      "id": "TimeOfDay",
      "properties": {
        "hours": {
          "description": "Hours of day in 24 hour format. Should be from 0 to 23. An API may choose\nto allow the value \"24:00:00\" for scenarios like business closing time.",
          "format": "int32",
          "type": "integer"
        },
        "minutes": {
          "description": "Minutes of hour of day. Must be from 0 to 59.",
          "format": "int32",
          "type": "integer"
        },
        "nanos": {
          "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.",
          "format": "int32",
          "type": "integer"
        },
        "seconds": {
          "description": "Seconds of minutes of the time. Must normally be from 0 to 59. An API may\nallow the value 60 if it allows leap-seconds.",
          "format": "int32",
          "type": "integer"
        }
      },
      "type": "object"
    },
    "TimestampRange": {
      "description": "Message representing a period of time between two timestamps.",
      "id": "TimestampRange",
      "properties": {
        "endTime": {
          "description": "End of the period.",
          "format": "google-datetime",
          "type": "string"
        },
        "startTime": {
          "description": "Begin of the period.",
          "format": "google-datetime",
          "type": "string"
        }
      },
      "type": "object"
    },
    "UpdateCompanyRequest": {
      "description": "Input only.\n\nRequest for updating a specified company.",
      "id": "UpdateCompanyRequest",
      "properties": {
        "company": {
          "$ref": "Company",
          "description": "Required.\n\nThe company resource to replace the current resource in the system."
        },
        "updateMask": {
          "description": "Optional but strongly recommended for the best service\nexperience.\n\nIf update_mask is provided, only the specified fields in\ncompany are updated. Otherwise all the fields are updated.\n\nA field mask to specify the company fields to be updated. Only\ntop level fields of Company are supported.",
          "format": "google-fieldmask",
          "type": "string"
        }
      },
      "type": "object"
    },
    "UpdateJobRequest": {
      "description": "Input only.\n\nUpdate job request.",
      "id": "UpdateJobRequest",
      "properties": {
        "job": {
          "$ref": "Job",
          "description": "Required.\n\nThe Job to be updated."
        },
        "updateMask": {
          "description": "Optional but strongly recommended to be provided for the best service\nexperience.\n\nIf update_mask is provided, only the specified fields in\njob are updated. Otherwise all the fields are updated.\n\nA field mask to restrict the fields that are updated. Only\ntop level fields of Job are supported.",
          "format": "google-fieldmask",
          "type": "string"
        }
      },
      "type": "object"
    }
  },
  "servicePath": "",
  "title": "Cloud Talent Solution API",
  "version": "v3",
  "version_module": true
}