{
  "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:v3p1beta1",
  "kind": "discovery#restDescription",
  "mtlsRootUrl": "https://jobs.mtls.googleapis.com/",
  "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": "v3p1beta1/projects/{projectsId}:complete",
          "httpMethod": "GET",
          "id": "jobs.projects.complete",
          "parameterOrder": [
            "name"
          ],
          "parameters": {
            "companyName": {
              "description": "Optional. If 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. The 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. Resource 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. Completion result count.\n\nThe maximum allowed page size is 10.",
              "format": "int32",
              "location": "query",
              "type": "integer"
            },
            "query": {
              "description": "Required. The query used to generate suggestions.\n\nThe maximum number of allowed characters is 255.",
              "location": "query",
              "type": "string"
            },
            "scope": {
              "description": "Optional. The scope of the completion. The defaults is CompletionScope.PUBLIC.",
              "enum": [
                "COMPLETION_SCOPE_UNSPECIFIED",
                "TENANT",
                "PUBLIC"
              ],
              "location": "query",
              "type": "string"
            },
            "type": {
              "description": "Optional. The completion topic. The default is CompletionType.COMBINED.",
              "enum": [
                "COMPLETION_TYPE_UNSPECIFIED",
                "JOB_TITLE",
                "COMPANY_NAME",
                "COMBINED"
              ],
              "location": "query",
              "type": "string"
            }
          },
          "path": "v3p1beta1/{+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/docs/management-tools)\nabout self service tools.",
              "flatPath": "v3p1beta1/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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/companies",
              "httpMethod": "POST",
              "id": "jobs.projects.companies.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. Resource 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/companies/{companiesId}",
              "httpMethod": "DELETE",
              "id": "jobs.projects.companies.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The 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": "v3p1beta1/{+name}",
              "response": {
                "$ref": "Empty"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            },
            "get": {
              "description": "Retrieves specified company.",
              "flatPath": "v3p1beta1/projects/{projectsId}/companies/{companiesId}",
              "httpMethod": "GET",
              "id": "jobs.projects.companies.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/companies",
              "httpMethod": "GET",
              "id": "jobs.projects.companies.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "pageSize": {
                  "description": "Optional. The 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. The starting indicator from which to return results.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. Resource 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. Set 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": "v3p1beta1/{+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": "v3p1beta1/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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs:batchDelete",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.batchDelete",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.create",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "DELETE",
              "id": "jobs.projects.jobs.delete",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs/{jobsId}",
              "httpMethod": "GET",
              "id": "jobs.projects.jobs.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs",
              "httpMethod": "GET",
              "id": "jobs.projects.jobs.list",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "filter": {
                  "description": "Required. The 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. The 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. The 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. The starting point of a query result.",
                  "location": "query",
                  "type": "string"
                },
                "parent": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs:search",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.search",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The 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": "v3p1beta1/{+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": "v3p1beta1/projects/{projectsId}/jobs:searchForAlert",
              "httpMethod": "POST",
              "id": "jobs.projects.jobs.searchForAlert",
              "parameterOrder": [
                "parent"
              ],
              "parameters": {
                "parent": {
                  "description": "Required. The 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": "v3p1beta1/{+parent}/jobs:searchForAlert",
              "request": {
                "$ref": "SearchJobsRequest"
              },
              "response": {
                "$ref": "SearchJobsResponse"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            }
          }
        },
        "operations": {
          "methods": {
            "get": {
              "description": "Gets the latest state of a long-running operation.  Clients can use this\nmethod to poll the operation result at intervals as recommended by the API\nservice.",
              "flatPath": "v3p1beta1/projects/{projectsId}/operations/{operationsId}",
              "httpMethod": "GET",
              "id": "jobs.projects.operations.get",
              "parameterOrder": [
                "name"
              ],
              "parameters": {
                "name": {
                  "description": "The name of the operation resource.",
                  "location": "path",
                  "pattern": "^projects/[^/]+/operations/[^/]+$",
                  "required": true,
                  "type": "string"
                }
              },
              "path": "v3p1beta1/{+name}",
              "response": {
                "$ref": "Operation"
              },
              "scopes": [
                "https://www.googleapis.com/auth/cloud-platform",
                "https://www.googleapis.com/auth/jobs"
              ]
            }
          }
        }
      }
    }
  },
  "revision": "20200505",
  "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. The 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. The timestamp of the event.",
          "format": "google-datetime",
          "type": "string"
        },
        "eventId": {
          "description": "Required. A 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. Extra 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. The 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. A 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. If true, jobs without \"precise\" addresses (street level addresses or GPS\ncoordinates) might also be returned. For city and coarser level addresses,\ntext matching is used. If this field is set to false or is not specified,\nonly jobs that include precise addresses are returned by Commute\nSearch.\n\nNote: If `allow_imprecise_addresses` is set to true, Commute Search is not\nable to calculate accurate commute times to jobs with city level and\ncoarser address information. Jobs with imprecise addresses will return a\n`travel_duration` time of 0 regardless of distance from the job seeker.",
          "type": "boolean"
        },
        "commuteMethod": {
          "description": "Required. The method of transportation for which to calculate the commute time.",
          "enum": [
            "COMMUTE_METHOD_UNSPECIFIED",
            "DRIVING",
            "TRANSIT",
            "WALKING",
            "CYCLING"
          ],
          "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.",
            "Commute time is calculated based on walking time.",
            "Commute time is calculated based on biking time."
          ],
          "type": "string"
        },
        "departureTime": {
          "$ref": "TimeOfDay",
          "description": "Optional. The 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. Specifies 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. The latitude and longitude of the location from which to calculate the\ncommute time."
        },
        "travelDuration": {
          "description": "Required. The 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. The 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. The display name of the company, for example, \"Google LLC\".",
          "type": "string"
        },
        "eeoText": {
          "description": "Optional. Equal 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. Client side company identifier, used to uniquely identify the\ncompany.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "headquartersAddress": {
          "description": "Optional. The 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. Set 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. A URI that hosts the employer's company logo.",
          "type": "string"
        },
        "keywordSearchableJobCustomAttributes": {
          "description": "Optional. A 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. The 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. The 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. Compensation amount."
        },
        "description": {
          "description": "Optional. Compensation description.  For example, could\nindicate equity terms or provide additional context to an estimated\nbonus.",
          "type": "string"
        },
        "expectedUnitsPerYear": {
          "description": "Optional. Expected 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. Compensation range."
        },
        "type": {
          "description": "Optional. Compensation type.\n\nDefault is CompensationUnit.COMPENSATION_TYPE_UNSPECIFIED.",
          "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. Frequency of the specified amount.\n\nDefault is CompensationUnit.COMPENSATION_UNIT_UNSPECIFIED.",
          "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. If set to true, jobs with unspecified compensation range fields are\nincluded.",
          "type": "boolean"
        },
        "range": {
          "$ref": "CompensationRange",
          "description": "Optional. Compensation range."
        },
        "type": {
          "description": "Required. Type 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. Specify 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. Numeric histogram options, like buckets, whether include min or max value."
        },
        "type": {
          "description": "Required. Type 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. Job 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. The 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. The 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. Events 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. The company to be created."
        }
      },
      "type": "object"
    },
    "CreateJobRequest": {
      "description": "Input only.\n\nCreate job request.",
      "id": "CreateJobRequest",
      "properties": {
        "job": {
          "$ref": "Job",
          "description": "Required. The Job to be created."
        }
      },
      "type": "object"
    },
    "CustomAttribute": {
      "description": "Custom attribute values that are either filterable or non-filterable.",
      "id": "CustomAttribute",
      "properties": {
        "filterable": {
          "description": "Optional. If the `filterable` flag is true, the custom field values may be used for\ncustom attribute filters JobQuery.custom_attribute_filter.\nIf false, these values may not be used for custom attribute filters.\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\n500B. 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. Specifies 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. Specifies 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"
    },
    "CustomRankingInfo": {
      "description": "Input only.\n\nCustom ranking information for SearchJobsRequest.",
      "id": "CustomRankingInfo",
      "properties": {
        "importanceLevel": {
          "description": "Required. Controls over how important the score of\nCustomRankingInfo.ranking_expression gets applied to job's final\nranking position.\n\nAn error is thrown if not specified.",
          "enum": [
            "IMPORTANCE_LEVEL_UNSPECIFIED",
            "NONE",
            "LOW",
            "MILD",
            "MEDIUM",
            "HIGH",
            "EXTREME"
          ],
          "enumDescriptions": [
            "Default value if the importance level is not specified.",
            "The given ranking expression is of None importance, existing relevance\nscore (determined by API algorithm) dominates job's final ranking\nposition.",
            "The given ranking expression is of Low importance in terms of job's\nfinal ranking position compared to existing relevance\nscore (determined by API algorithm).",
            "The given ranking expression is of Mild importance in terms of job's\nfinal ranking position compared to existing relevance\nscore (determined by API algorithm).",
            "The given ranking expression is of Medium importance in terms of job's\nfinal ranking position compared to existing relevance\nscore (determined by API algorithm).",
            "The given ranking expression is of High importance in terms of job's\nfinal ranking position compared to existing relevance\nscore (determined by API algorithm).",
            "The given ranking expression is of Extreme importance, and dominates\njob's final ranking position with existing relevance\nscore (determined by API algorithm) ignored."
          ],
          "type": "string"
        },
        "rankingExpression": {
          "description": "Required. Controls over how job documents get ranked on top of existing relevance\nscore (determined by API algorithm). A combination of the ranking\nexpression and relevance score is used to determine job's final ranking\nposition.\n\nThe syntax for this expression is a subset of Google SQL syntax.\n\nSupported operators are: +, -, *, /, where the left and right side of\nthe operator is either a numeric Job.custom_attributes key,\ninteger/double value or an expression that can be evaluated to a number.\n\nParenthesis are supported to adjust calculation precedence. The\nexpression must be \u003c 100 characters in length.\n\nThe expression is considered invalid for a job if the expression\nreferences custom attributes that are not populated on the job or if the\nexpression results in a divide by zero. If an expression is invalid for a\njob, that job is demoted to the end of the results.\n\nSample ranking expression\n(year + 25) * 0.25 - (freshness / 0.5)",
          "type": "string"
        }
      },
      "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. Type 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. A 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. Specifies compensation field-based histogram requests.\nDuplicate values of CompensationHistogramRequest.type are not allowed.",
          "items": {
            "$ref": "CompensationHistogramRequest"
          },
          "type": "array"
        },
        "customAttributeHistogramFacets": {
          "description": "Optional. Specifies the custom attributes histogram requests.\nDuplicate values of CustomAttributeHistogramRequest.key are not\nallowed.",
          "items": {
            "$ref": "CustomAttributeHistogramRequest"
          },
          "type": "array"
        },
        "simpleHistogramFacets": {
          "description": "Optional. Specifies 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"
    },
    "HistogramQuery": {
      "description": "Input Only.\n\nThe histogram request.",
      "id": "HistogramQuery",
      "properties": {
        "histogramQuery": {
          "description": "An expression specifies a histogram request against matching resources\n(for example, jobs) for searches.\n\nExpression syntax is a aggregation function call with histogram facets and\nother options.\n\nAvailable aggregation function calls are:\n* `count(string_histogram_facet)`: Count the number of matching entity, for\n  each distinct attribute value.\n* `count(numeric_histogram_facet, list of buckets)`: Count the number of\n   matching entity within each bucket.\n\nData types:\n\n* Histogram facet: facet names with format a-zA-Z+.\n* String: string like \"any string with backslash escape for quote(\\\").\"\n* Number: whole number and floating point number like 10, -1 and -0.01.\n* List: list of elements with comma(,) separator surrounded by square\nbrackets. For example, [1, 2, 3] and [\"one\", \"two\", \"three\"].\n\nBuilt-in constants:\n\n* MIN (minimum number similar to java Double.MIN_VALUE)\n* MAX (maximum number similar to java Double.MAX_VALUE)\n\nBuilt-in functions:\n\n* bucket(start, end[, label]): bucket built-in function creates a bucket\nwith range of start, end). Note that the end is exclusive. For example,\nbucket(1, MAX, \"positive number\") or bucket(1, 10).\n\nJob histogram facets:\n\n* company_id: histogram by [Job.distributor_company_id.\n* company_display_name: histogram by Job.company_display_name.\n* employment_type: histogram by Job.employment_types. For example,\n\"FULL_TIME\", \"PART_TIME\".\n* company_size: histogram by CompanySize, for example, \"SMALL\",\n\"MEDIUM\", \"BIG\".\n* publish_time_in_month: histogram by the Job.publish_time in months.\nMust specify list of numeric buckets in spec.\n* publish_time_in_year: histogram by the Job.publish_time in years.\nMust specify list of numeric buckets in spec.\n* degree_type: histogram by the Job.degree_type. For example,\n\"Bachelors\", \"Masters\".\n* job_level: histogram by the Job.job_level. For example, \"Entry\nLevel\".\n* country: histogram by the country code of jobs. For example, \"US\", \"FR\".\n* admin1: histogram by the admin1 code of jobs, which is a global\nplaceholder referring to the state, province, or the particular term a\ncountry uses to define the geographic structure below the country level.\nFor example, \"CA\", \"IL\".\n* city: histogram by a combination of the \"city name, admin1 code\". For\nexample,  \"Mountain View, CA\", \"New York, NY\".\n* admin1_country: histogram by a combination of the \"admin1 code, country\".\nFor example, \"CA, US\", \"IL, US\".\n* city_coordinate: histogram by the city center's GPS coordinates (latitude\nand longitude). For example, 37.4038522,-122.0987765. Since the coordinates\nof a city center can change, customers may need to refresh them\nperiodically.\n* locale: histogram by the Job.language_code. For example, \"en-US\",\n\"fr-FR\".\n* language: histogram by the language subtag of the Job.language_code.\nFor example, \"en\", \"fr\".\n* category: histogram by the JobCategory. For example,\n\"COMPUTER_AND_IT\", \"HEALTHCARE\".\n* base_compensation_unit: histogram by the CompensationUnit of base\nsalary. For example, \"WEEKLY\", \"MONTHLY\".\n* base_compensation: histogram by the base salary. Must specify list of\nnumeric buckets to group results by.\n* annualized_base_compensation: histogram by the base annualized salary.\nMust specify list of numeric buckets to group results by.\n* annualized_total_compensation: histogram by the total annualized salary.\nMust specify list of numeric buckets to group results by.\n* string_custom_attribute: histogram by string Job.custom_attributes.\nValues can be accessed via square bracket notations like\nstring_custom_attribute[\"key1\"].\n* numeric_custom_attribute: histogram by numeric Job.custom_attributes.\nValues can be accessed via square bracket notations like\nnumeric_custom_attribute[\"key1\"]. Must specify list of numeric buckets to\ngroup results by.\n\nExample expressions:\n* count(admin1)\n* count(base_compensation, [bucket(1000, 10000), bucket(10000, 100000),\nbucket(100000, MAX)])\n* count(string_custom_attribute[\"some-string-custom-attribute\"])\n* count(numeric_custom_attribute[\"some-numeric-custom-attribute\"],\n[bucket(MIN, 0, \"negative\"), bucket(0, MAX, \"non-negative\"])",
          "type": "string"
        }
      },
      "type": "object"
    },
    "HistogramQueryResult": {
      "description": "Output only.\n\nHistogram result that matches HistogramSpec specified in searches.",
      "id": "HistogramQueryResult",
      "properties": {
        "histogram": {
          "additionalProperties": {
            "format": "int64",
            "type": "string"
          },
          "description": "A map from the values of the facet associated with distinct values to the\nnumber of matching entries with corresponding value.\n\nThe key format is:\n* (for string histogram) string values stored in the field.\n* (for named numeric bucket) name specified in `bucket()` function, like\n  for `bucket(0, MAX, \"non-negative\")`, the key will be `non-negative`.\n* (for anonymous numeric bucket) range formatted as `\u003clow\u003e-\u003chigh\u003e`, for\nexample, `0-1000`, `MIN-0`, and `0-MAX`.",
          "type": "object"
        },
        "histogramQuery": {
          "description": "Requested histogram expression.",
          "type": "string"
        }
      },
      "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. The resource name of the company listing the job, such as\n\"projects/api-test-project/companies/foo\".",
          "type": "string"
        },
        "compensationInfo": {
          "$ref": "CompensationInfo",
          "description": "Optional. Job compensation information."
        },
        "customAttributes": {
          "additionalProperties": {
            "$ref": "CustomAttribute"
          },
          "description": "Optional. A 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. The 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. The 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. The 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. The 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. A 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. The 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. The 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. The 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. The 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. The 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. The 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. The 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. Options for job processing."
        },
        "promotionValue": {
          "description": "Optional. A 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. A 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. The 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. A 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. The title of the job, such as \"Software Engineer\"\n\nThe maximum number of allowed characters is 500.",
          "type": "string"
        },
        "visibility": {
          "description": "Deprecated. The job is only visible to the owner.\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. The 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. The 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. 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. This 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. This 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. This 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. This 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 6000 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. This 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. The 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"
        },
        "excludedJobs": {
          "description": "Optional. This filter specifies a list of job names to be excluded during search.\n\nAt most 400 excluded job names are allowed.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "jobCategories": {
          "description": "Optional. The 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. This 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. The 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. Jobs published within a range specified by this filter are searched\nagainst."
        },
        "query": {
          "description": "Optional. The query string that matches against the job title, description, and\nlocation fields.\n\nThe maximum number of allowed characters is 255.",
          "type": "string"
        },
        "queryLanguageCode": {
          "description": "The language code of query. For example, \"en-US\". This field helps to\nbetter interpret the query.\n\nIf a value isn't specified, the query language code is automatically\ndetected, which may not be accurate.\n\nLanguage code 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).",
          "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. The address name, such as \"Mountain View\" or \"Bay Area\".",
          "type": "string"
        },
        "distanceInMiles": {
          "description": "Optional. The 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. The latitude and longitude of the geographic center from which to\nsearch. This field's ignored if `address` is provided."
        },
        "regionCode": {
          "description": "Optional. CLDR 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. Allows the client to return jobs without a\nset location, specifically, telecommuting jobs (telecommuting 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"
    },
    "MendelDebugInput": {
      "description": "Message representing input to a Mendel server for debug forcing.\nSee go/mendel-debug-forcing for more details.\nNext ID: 2",
      "id": "MendelDebugInput",
      "properties": {
        "namespacedDebugInput": {
          "additionalProperties": {
            "$ref": "NamespacedDebugInput"
          },
          "description": "When a request spans multiple servers, a MendelDebugInput may travel with\nthe request and take effect in all the servers. This field is a map of\nnamespaces to NamespacedMendelDebugInput protos. In a single server, up to\ntwo NamespacedMendelDebugInput protos are applied:\n1. NamespacedMendelDebugInput with the global namespace (key == \"\").\n2. NamespacedMendelDebugInput with the server's namespace.\nWhen both NamespacedMendelDebugInput protos are present, they are merged.\nSee go/mendel-debug-forcing for more details.",
          "type": "object"
        }
      },
      "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"
    },
    "NamespacedDebugInput": {
      "description": "Next ID: 15",
      "id": "NamespacedDebugInput",
      "properties": {
        "absolutelyForcedExpNames": {
          "description": "Set of experiment names to be absolutely forced.\nThese experiments will be forced without evaluating the conditions.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "absolutelyForcedExpTags": {
          "description": "Set of experiment tags to be absolutely forced.\nThe experiments with these tags will be forced without evaluating the\nconditions.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "absolutelyForcedExps": {
          "description": "Set of experiment ids to be absolutely forced.\nThese ids will be forced without evaluating the conditions.",
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "type": "array"
        },
        "conditionallyForcedExpNames": {
          "description": "Set of experiment names to be conditionally forced.\nThese experiments will be forced only if their conditions and their\nparent domain's conditions are true.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "conditionallyForcedExpTags": {
          "description": "Set of experiment tags to be conditionally forced.\nThe experiments with these tags will be forced only if their conditions\nand their parent domain's conditions are true.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "conditionallyForcedExps": {
          "description": "Set of experiment ids to be conditionally forced.\nThese ids will be forced only if their conditions and their parent\ndomain's conditions are true.",
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "type": "array"
        },
        "disableAutomaticEnrollmentSelection": {
          "description": "If true, disable automatic enrollment selection (at all diversion\npoints). Automatic enrollment selection means experiment selection\nprocess based on the experiment's automatic enrollment condition. This\ndoes not disable selection of forced experiments.",
          "type": "boolean"
        },
        "disableExpNames": {
          "description": "Set of experiment names to be disabled.\nIf an experiment is disabled, it is never selected nor forced.\nIf an aggregate experiment is disabled, its partitions are disabled\ntogether. If an experiment with an enrollment is disabled, the enrollment\nis disabled together. If a name corresponds to a domain, the domain\nitself and all descendant experiments and domains are disabled together.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "disableExpTags": {
          "description": "Set of experiment tags to be disabled. All experiments that are tagged\nwith one or more of these tags are disabled.\nIf an experiment is disabled, it is never selected nor forced.\nIf an aggregate experiment is disabled, its partitions are disabled\ntogether. If an experiment with an enrollment is disabled, the enrollment\nis disabled together.",
          "items": {
            "type": "string"
          },
          "type": "array"
        },
        "disableExps": {
          "description": "Set of experiment ids to be disabled.\nIf an experiment is disabled, it is never selected nor forced.\nIf an aggregate experiment is disabled, its partitions are disabled\ntogether. If an experiment with an enrollment is disabled, the enrollment\nis disabled together. If an ID corresponds to a domain, the domain itself\nand all descendant experiments and domains are disabled together.",
          "items": {
            "format": "int32",
            "type": "integer"
          },
          "type": "array"
        },
        "disableManualEnrollmentSelection": {
          "description": "If true, disable manual enrollment selection (at all diversion points).\nManual enrollment selection means experiment selection process based on\nthe request's manual enrollment states (a.k.a. opt-in experiments).\nThis does not disable selection of forced experiments.",
          "type": "boolean"
        },
        "disableOrganicSelection": {
          "description": "If true, disable organic experiment selection (at all diversion points).\nOrganic selection means experiment selection process based on traffic\nallocation and diversion condition evaluation.\nThis does not disable selection of forced experiments.\n\nThis is useful in cases when it is not known whether experiment selection\nbehavior is responsible for a error or breakage. Disabling organic\nselection may help to isolate the cause of a given problem.",
          "type": "boolean"
        },
        "forcedFlags": {
          "additionalProperties": {
            "type": "string"
          },
          "description": "Flags to force in a particular experiment state.\nMap from flag name to flag value.",
          "type": "object"
        },
        "forcedRollouts": {
          "additionalProperties": {
            "type": "boolean"
          },
          "description": "Rollouts to force in a particular experiment state.\nMap from rollout name to rollout value.",
          "type": "object"
        }
      },
      "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. Two 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. If 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"
    },
    "Operation": {
      "description": "This resource represents a long-running operation that is the result of a\nnetwork API call.",
      "id": "Operation",
      "properties": {
        "done": {
          "description": "If the value is `false`, it means the operation is still in progress.\nIf `true`, the operation is completed, and either `error` or `response` is\navailable.",
          "type": "boolean"
        },
        "error": {
          "$ref": "Status",
          "description": "The error result of the operation in case of failure or cancellation."
        },
        "metadata": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "Service-specific metadata associated with the operation.  It typically\ncontains progress information and common metadata such as create time.\nSome services might not provide such metadata.  Any method that returns a\nlong-running operation should document the metadata type, if any.",
          "type": "object"
        },
        "name": {
          "description": "The server-assigned name, which is only unique within the same service that\noriginally returns it. If you use the default HTTP mapping, the\n`name` should be a resource name ending with `operations/{unique_id}`.",
          "type": "string"
        },
        "response": {
          "additionalProperties": {
            "description": "Properties of the object. Contains field @type with type URL.",
            "type": "any"
          },
          "description": "The normal response of the operation in case of success.  If the original\nmethod returns no data on success, such as `Delete`, the response is\n`google.protobuf.Empty`.  If the original method is standard\n`Get`/`Create`/`Update`, the response should be the resource.  For other\nmethods, the response should have the type `XxxResponse`, where `Xxx`\nis the original method name.  For example, if the original method name\nis `TakeSnapshot()`, the inferred response type is\n`TakeSnapshotResponse`.",
          "type": "object"
        }
      },
      "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/google/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. If set to `true`, the service does not attempt to resolve a\nmore precise address for the job.",
          "type": "boolean"
        },
        "htmlSanitization": {
          "description": "Optional. Option 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. The type of device used by the job seeker at the time of the call to the\nservice."
        },
        "domain": {
          "description": "Required. The 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. A 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. A 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": {
        "customRankingInfo": {
          "$ref": "CustomRankingInfo",
          "description": "Optional. Controls over how job documents get ranked on top of existing relevance\nscore (determined by API algorithm)."
        },
        "disableKeywordMatch": {
          "description": "Optional. Controls 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. Controls 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. By default, jobs with this\nenum are ordered according to SIMPLE diversifying behavior.",
            "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. Controls 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. Histogram requests for jobs matching JobQuery."
        },
        "histogramQueries": {
          "description": "Optional. Expression based histogram requests for jobs matching JobQuery.",
          "items": {
            "$ref": "HistogramQuery"
          },
          "type": "array"
        },
        "jobQuery": {
          "$ref": "JobQuery",
          "description": "Optional. Query used to search against jobs, such as keyword, location filters, etc."
        },
        "jobView": {
          "description": "Optional. The 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.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.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. An 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\nThe maximum allowed value is 5000. Otherwise an error is thrown.\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. The 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\ndescending.\n* `\"posting_update_time desc\"`: By Job.posting_update_time\ndescending.\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.\n* `\"custom_ranking desc\"`: By the relevance score adjusted to the\nSearchJobsRequest.custom_ranking_info.ranking_expression with weight\nfactor assigned by\nSearchJobsRequest.custom_ranking_info.importance_level in descending\norder.\n* Location sorting: Use the special syntax to order jobs by distance:\u003cbr\u003e\n\"`distance_from('Hawaii')`\": Order by distance from Hawaii.\u003cbr\u003e\n\"`distance_from(19.89, 155.5)`\": Order by distance from a coordinate.\u003cbr\u003e\n\"`distance_from('Hawaii'), distance_from('Puerto Rico')`\": Order by\nmultiple locations. See details below.\u003cbr\u003e\n\"`distance_from('Hawaii'), distance_from(19.89, 155.5)`\": Order by\nmultiple locations. See details below.\u003cbr\u003e\nThe string can have a maximum of 256 characters. When multiple distance\ncenters are provided, a job that is close to any of the distance centers\nwould have a high rank. When a job has multiple locations, the job location\nclosest to one of the distance centers will be used. Jobs that don't have\nlocations will be ranked at the bottom. Distance is calculated with a\nprecision of 11.3 meters (37.4 feet). Diversification strategy is still\napplied unless explicitly disabled in\ndiversification_level.",
          "type": "string"
        },
        "pageSize": {
          "description": "Optional. A 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. The 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. The 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. Controls 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. Mode 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 default search\nbehavior is identical to JOB_SEARCH search behavior.",
            "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"
        },
        "histogramQueryResults": {
          "description": "The histogram results that match with specified\nSearchJobsRequest.histogram_queries.",
          "items": {
            "$ref": "HistogramQueryResult"
          },
          "type": "array"
        },
        "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"
    },
    "Status": {
      "description": "The `Status` type defines a logical error model that is suitable for\ndifferent programming environments, including REST APIs and RPC APIs. It is\nused by [gRPC](https://github.com/grpc). Each `Status` message contains\nthree pieces of data: error code, error message, and error details.\n\nYou can find out more about this error model and how to work with it in the\n[API Design Guide](https://cloud.google.com/apis/design/errors).",
      "id": "Status",
      "properties": {
        "code": {
          "description": "The status code, which should be an enum value of google.rpc.Code.",
          "format": "int32",
          "type": "integer"
        },
        "details": {
          "description": "A list of messages that carry the error details.  There is a common set of\nmessage types for APIs to use.",
          "items": {
            "additionalProperties": {
              "description": "Properties of the object. Contains field @type with type URL.",
              "type": "any"
            },
            "type": "object"
          },
          "type": "array"
        },
        "message": {
          "description": "A developer-facing error message, which should be in English. Any\nuser-facing error message should be localized and sent in the\ngoogle.rpc.Status.details field, or localized by the client.",
          "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. The 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. The 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": "v3p1beta1",
  "version_module": true
}