{
    "auth": {
        "oauth2": {
            "scopes": {
                "https://www.googleapis.com/auth/jobs": {
                    "description": "Manage job postings"
                },
                "https://www.googleapis.com/auth/cloud-platform": {
                    "description": "View and manage your data across Google Cloud Platform services"
                }
            }
        }
    },
    "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/",
    "icons": {
        "x16": "http://www.google.com/images/icons/product/search-16.gif",
        "x32": "http://www.google.com/images/icons/product/search-32.gif"
    },
    "id": "jobs:v3",
    "kind": "discovery#restDescription",
    "name": "jobs",
    "ownerDomain": "google.com",
    "ownerName": "Google",
    "parameters": {
        "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"
        },
        "access_token": {
            "description": "OAuth access token.",
            "location": "query",
            "type": "string"
        },
        "upload_protocol": {
            "description": "Upload protocol for media (e.g. \"raw\", \"multipart\").",
            "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"
        },
        "fields": {
            "description": "Selector specifying which fields to include in a partial response.",
            "location": "query",
            "type": "string"
        },
        "$.xgafv": {
            "description": "V1 error format.",
            "enum": [
                "1",
                "2"
            ],
            "enumDescriptions": [
                "v1 error format",
                "v2 error format"
            ],
            "location": "query",
            "type": "string"
        },
        "oauth_token": {
            "description": "OAuth 2.0 token for the current user.",
            "location": "query",
            "type": "string"
        },
        "callback": {
            "description": "JSONP",
            "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"
        }
    },
    "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.",
                    "httpMethod": "GET",
                    "id": "jobs.projects.complete",
                    "parameterOrder": [
                        "name"
                    ],
                    "parameters": {
                        "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"
                        },
                        "scope": {
                            "description": "Optional. The scope of the completion. The defaults is CompletionScope.PUBLIC.",
                            "enum": [
                                "COMPLETION_SCOPE_UNSPECIFIED",
                                "TENANT",
                                "PUBLIC"
                            ],
                            "location": "query",
                            "type": "string"
                        },
                        "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"
                        },
                        "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"
                        },
                        "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"
                        },
                        "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"
                        },
                        "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": "v3/{+name}:complete",
                    "response": {
                        "$ref": "CompleteQueryResponse"
                    },
                    "scopes": [
                        "https://www.googleapis.com/auth/cloud-platform",
                        "https://www.googleapis.com/auth/jobs"
                    ]
                }
            },
            "resources": {
                "jobs": {
                    "methods": {
                        "delete": {
                            "description": "Deletes the specified job.\n\nTypically, the job becomes unsearchable within 10 seconds, but it may take\nup to 5 minutes.",
                            "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": "v3/{+name}",
                            "response": {
                                "$ref": "Empty"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        },
                        "list": {
                            "description": "Lists jobs by filter.",
                            "httpMethod": "GET",
                            "id": "jobs.projects.jobs.list",
                            "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"
                                },
                                "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"
                                },
                                "pageToken": {
                                    "description": "Optional. The starting point of a query result.",
                                    "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 < 1 is specified.",
                                    "format": "int32",
                                    "location": "query",
                                    "type": "integer"
                                }
                            },
                            "path": "v3/{+parent}/jobs",
                            "response": {
                                "$ref": "ListJobsResponse"
                            },
                            "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.",
                            "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": "v3/{+parent}/jobs",
                            "request": {
                                "$ref": "CreateJobRequest"
                            },
                            "response": {
                                "$ref": "Job"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        },
                        "batchDelete": {
                            "description": "Deletes a list of Jobs by filter.",
                            "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": "v3/{+parent}/jobs:batchDelete",
                            "request": {
                                "$ref": "BatchDeleteJobsRequest"
                            },
                            "response": {
                                "$ref": "Empty"
                            },
                            "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.",
                            "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": "v3/{+parent}/jobs:search",
                            "request": {
                                "$ref": "SearchJobsRequest"
                            },
                            "response": {
                                "$ref": "SearchJobsResponse"
                            },
                            "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.",
                            "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": "v3/{+name}",
                            "response": {
                                "$ref": "Job"
                            },
                            "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.",
                            "httpMethod": "PATCH",
                            "id": "jobs.projects.jobs.patch",
                            "parameterOrder": [
                                "name"
                            ],
                            "parameters": {
                                "name": {
                                    "description": "Required during job update.\n\nThe resource name for the job. This is generated by the service when a\njob is created.\n\nThe format is \"projects/{project_id}/jobs/{job_id}\",\nfor example, \"projects/api-test-project/jobs/1234\".\n\nUse of this field in job queries and API calls is preferred over the use of\nrequisition_id since this value is unique.",
                                    "location": "path",
                                    "pattern": "^projects/[^/]+/jobs/[^/]+$",
                                    "required": true,
                                    "type": "string"
                                }
                            },
                            "path": "v3/{+name}",
                            "request": {
                                "$ref": "UpdateJobRequest"
                            },
                            "response": {
                                "$ref": "Job"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        },
                        "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.",
                            "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": "v3/{+parent}/jobs:searchForAlert",
                            "request": {
                                "$ref": "SearchJobsRequest"
                            },
                            "response": {
                                "$ref": "SearchJobsResponse"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        }
                    }
                },
                "companies": {
                    "methods": {
                        "delete": {
                            "description": "Deletes specified company.\nPrerequisite: The company has no jobs associated with it.",
                            "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": "v3/{+name}",
                            "response": {
                                "$ref": "Empty"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        },
                        "get": {
                            "description": "Retrieves specified company.",
                            "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": "v3/{+name}",
                            "response": {
                                "$ref": "Company"
                            },
                            "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.",
                            "httpMethod": "PATCH",
                            "id": "jobs.projects.companies.patch",
                            "parameterOrder": [
                                "name"
                            ],
                            "parameters": {
                                "name": {
                                    "description": "Required during company update.\n\nThe resource name for a company. This is generated by the service when a\ncompany is created.\n\nThe format is \"projects/{project_id}/companies/{company_id}\", for example,\n\"projects/api-test-project/companies/foo\".",
                                    "location": "path",
                                    "pattern": "^projects/[^/]+/companies/[^/]+$",
                                    "required": true,
                                    "type": "string"
                                }
                            },
                            "path": "v3/{+name}",
                            "request": {
                                "$ref": "UpdateCompanyRequest"
                            },
                            "response": {
                                "$ref": "Company"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        },
                        "list": {
                            "description": "Lists all companies associated with the service account.",
                            "httpMethod": "GET",
                            "id": "jobs.projects.companies.list",
                            "parameterOrder": [
                                "parent"
                            ],
                            "parameters": {
                                "pageToken": {
                                    "description": "Optional. The starting indicator from which to return results.",
                                    "location": "query",
                                    "type": "string"
                                },
                                "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"
                                },
                                "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"
                                },
                                "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": "v3/{+parent}/companies",
                            "response": {
                                "$ref": "ListCompaniesResponse"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        },
                        "create": {
                            "description": "Creates a new company entity.",
                            "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": "v3/{+parent}/companies",
                            "request": {
                                "$ref": "CreateCompanyRequest"
                            },
                            "response": {
                                "$ref": "Company"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        }
                    }
                },
                "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.",
                            "httpMethod": "POST",
                            "id": "jobs.projects.clientEvents.create",
                            "parameterOrder": [
                                "parent"
                            ],
                            "parameters": {
                                "parent": {
                                    "description": "Parent project name.",
                                    "location": "path",
                                    "pattern": "^projects/[^/]+$",
                                    "required": true,
                                    "type": "string"
                                }
                            },
                            "path": "v3/{+parent}/clientEvents",
                            "request": {
                                "$ref": "CreateClientEventRequest"
                            },
                            "response": {
                                "$ref": "ClientEvent"
                            },
                            "scopes": [
                                "https://www.googleapis.com/auth/cloud-platform",
                                "https://www.googleapis.com/auth/jobs"
                            ]
                        }
                    }
                }
            }
        }
    },
    "revision": "20200501",
    "rootUrl": "https://jobs.googleapis.com/",
    "schemas": {
        "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"
        },
        "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"
        },
        "CustomAttributeHistogramResult": {
            "description": "Output only.\n\nCustom attribute histogram result.",
            "id": "CustomAttributeHistogramResult",
            "properties": {
                "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"
                },
                "longValueHistogramResult": {
                    "$ref": "NumericBucketingResult",
                    "description": "Stores bucketed histogram counting result or min/max values for\ncustom attribute long values associated with `key`."
                },
                "key": {
                    "description": "Stores the key of custom attribute the histogram is performed on.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "ListCompaniesResponse": {
            "description": "Output only.\n\nThe List companies response object.",
            "id": "ListCompaniesResponse",
            "properties": {
                "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"
                },
                "companies": {
                    "description": "Companies for the current client.",
                    "items": {
                        "$ref": "Company"
                    },
                    "type": "array"
                }
            },
            "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"
        },
        "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"
        },
        "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": {
                "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"
                },
                "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"
                }
            },
            "type": "object"
        },
        "CommuteInfo": {
            "description": "Output only.\n\nCommute details related to this job.",
            "id": "CommuteInfo",
            "properties": {
                "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"
                },
                "jobLocation": {
                    "$ref": "Location",
                    "description": "Location used as the destination in the commute calculation."
                }
            },
            "type": "object"
        },
        "NamespacedDebugInput": {
            "description": "Next ID: 15",
            "id": "NamespacedDebugInput",
            "properties": {
                "forcedRollouts": {
                    "additionalProperties": {
                        "type": "boolean"
                    },
                    "description": "Rollouts to force in a particular experiment state.\nMap from rollout name to rollout value.",
                    "type": "object"
                },
                "forcedFlags": {
                    "additionalProperties": {
                        "type": "string"
                    },
                    "description": "Flags to force in a particular experiment state.\nMap from flag name to flag value.",
                    "type": "object"
                },
                "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"
                },
                "absolutelyForcedExpNames": {
                    "description": "Set of experiment names to be absolutely forced.\nThese experiments will be forced without evaluating the conditions.",
                    "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                }
            },
            "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"
        },
        "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"
        },
        "CompensationHistogramRequest": {
            "description": "Input only.\n\nCompensation based histogram request.",
            "id": "CompensationHistogramRequest",
            "properties": {
                "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"
                },
                "bucketingOption": {
                    "$ref": "NumericBucketingOption",
                    "description": "Required. Numeric histogram options, like buckets, whether include min or max value."
                }
            },
            "type": "object"
        },
        "CustomAttribute": {
            "description": "Custom attribute values that are either filterable or non-filterable.",
            "id": "CustomAttribute",
            "properties": {
                "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"
                },
                "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"
                },
                "filterable": {
                    "description": "Optional. If the `filterable` flag is true, custom field values are searchable.\nIf false, values are not searchable.\n\nDefault is false.",
                    "type": "boolean"
                }
            },
            "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": {
                "description": {
                    "description": "Optional. Compensation description.  For example, could\nindicate equity terms or provide additional context to an estimated\nbonus.",
                    "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"
                },
                "amount": {
                    "$ref": "Money",
                    "description": "Optional. Compensation amount."
                },
                "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"
                },
                "range": {
                    "$ref": "CompensationRange",
                    "description": "Optional. Compensation range."
                },
                "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"
                }
            },
            "type": "object"
        },
        "ListJobsResponse": {
            "description": "Output only.\n\nList jobs response.",
            "id": "ListJobsResponse",
            "properties": {
                "metadata": {
                    "$ref": "ResponseMetadata",
                    "description": "Additional information for the API invocation, such as the request\ntracking id."
                },
                "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"
                },
                "nextPageToken": {
                    "description": "A token to retrieve the next page of results.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "JobQuery": {
            "description": "Input only.\n\nThe query required to perform a search query.",
            "id": "JobQuery",
            "properties": {
                "publishTimeRange": {
                    "$ref": "TimestampRange",
                    "description": "Optional. Jobs published within a range specified by this filter are searched\nagainst."
                },
                "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"
                },
                "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."
                },
                "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"
                },
                "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"
                },
                "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 > $15\", only jobs meeting\nthese criteria are searched. If a filter isn't defined, all open jobs\nare searched."
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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: `=`, `!=`, `<`, `<=`, `>`, and `>=` 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 < 6000 bytes in length.\n\nSample Query:\n`(LOWER(driving_license)=\"class \\\"a\\\"\" OR EMPTY(driving_license)) AND\ndriving_years > 10`",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "CompensationFilter": {
            "description": "Input only.\n\nFilter on job compensation type and amount.",
            "id": "CompensationFilter",
            "properties": {
                "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"
                },
                "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": "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"
        },
        "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"
                },
                "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"
                },
                "customAttributeHistogramFacets": {
                    "description": "Optional. Specifies the custom attributes histogram requests.\nDuplicate values of CustomAttributeHistogramRequest.key are not\nallowed.",
                    "items": {
                        "$ref": "CustomAttributeHistogramRequest"
                    },
                    "type": "array"
                }
            },
            "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"
                },
                "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"
                },
                "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"
                },
                "histogramResults": {
                    "$ref": "HistogramResults",
                    "description": "The histogram results that match specified\nSearchJobsRequest.histogram_facets."
                },
                "metadata": {
                    "$ref": "ResponseMetadata",
                    "description": "Additional information for the API invocation, such as the request\ntracking id."
                },
                "matchingJobs": {
                    "description": "The Job entities that match the specified SearchJobsRequest.",
                    "items": {
                        "$ref": "MatchingJob"
                    },
                    "type": "array"
                },
                "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."
                }
            },
            "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": {
                "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"
                },
                "minutes": {
                    "description": "Minutes of hour of day. Must be from 0 to 59.",
                    "format": "int32",
                    "type": "integer"
                },
                "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"
                },
                "nanos": {
                    "description": "Fractions of seconds in nanoseconds. Must be from 0 to 999,999,999.",
                    "format": "int32",
                    "type": "integer"
                }
            },
            "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"
        },
        "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"
        },
        "CommuteFilter": {
            "description": "Input only.\n\nParameters needed for commute search.",
            "id": "CommuteFilter",
            "properties": {
                "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"
                },
                "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"
                },
                "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."
                },
                "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"
                },
                "startCoordinates": {
                    "$ref": "LatLng",
                    "description": "Required. The latitude and longitude of the location from which to calculate the\ncommute time."
                },
                "commuteMethod": {
                    "description": "Required. The method of transportation for which to calculate the commute time.",
                    "enum": [
                        "COMMUTE_METHOD_UNSPECIFIED",
                        "DRIVING",
                        "TRANSIT"
                    ],
                    "enumDescriptions": [
                        "Commute method is not specified.",
                        "Commute time is calculated based on driving time.",
                        "Commute time is calculated based on public transit including bus, metro,\nsubway, etc."
                    ],
                    "type": "string"
                }
            },
            "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": {
                "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"
                },
                "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."
                },
                "requestId": {
                    "description": "Required. A unique ID generated in the API responses. It can be found in\nResponseMetadata.request_id.",
                    "type": "string"
                },
                "createTime": {
                    "description": "Required. The timestamp of the event.",
                    "format": "google-datetime",
                    "type": "string"
                }
            },
            "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": {
                "derivedInfo": {
                    "$ref": "JobDerivedInfo",
                    "description": "Output only. Derived details about the job posting."
                },
                "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"
                },
                "postingCreateTime": {
                    "description": "Output only. The timestamp when this job posting was created.",
                    "format": "google-datetime",
                    "type": "string"
                },
                "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"
                },
                "companyName": {
                    "description": "Required. The resource name of the company listing the job, such as\n\"projects/api-test-project/companies/foo\".",
                    "type": "string"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "compensationInfo": {
                    "$ref": "CompensationInfo",
                    "description": "Optional. Job compensation information."
                },
                "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"
                },
                "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"
                },
                "applicationInfo": {
                    "$ref": "ApplicationInfo",
                    "description": "Required. At least one field within ApplicationInfo must be specified.\n\nJob application information."
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "postingUpdateTime": {
                    "description": "Output only. The timestamp when this job posting was last updated.",
                    "format": "google-datetime",
                    "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"
                },
                "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"
                },
                "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"
                },
                "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 >0 are returned in a FEATURED_JOB_SEARCH.\n\nDefault value is 0, and negative values are treated as 0.",
                    "format": "int32",
                    "type": "integer"
                },
                "title": {
                    "description": "Required. The title of the job, such as \"Software Engineer\"\n\nThe maximum number of allowed characters is 500.",
                    "type": "string"
                },
                "companyDisplayName": {
                    "description": "Output only. Display name of the company listing the job.",
                    "type": "string"
                },
                "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"
                },
                "processingOptions": {
                    "$ref": "ProcessingOptions",
                    "description": "Optional. Options for job processing."
                },
                "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"
                }
            },
            "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": {
                "imageUri": {
                    "description": "Optional. A URI that hosts the employer's company logo.",
                    "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "externalId": {
                    "description": "Required. Client side company identifier, used to uniquely identify the\ncompany.\n\nThe maximum number of allowed characters is 255.",
                    "type": "string"
                },
                "displayName": {
                    "description": "Required. The display name of the company, for example, \"Google LLC\".",
                    "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"
                },
                "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"
                },
                "derivedInfo": {
                    "$ref": "CompanyDerivedInfo",
                    "description": "Output only. Derived details about the company."
                },
                "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"
                },
                "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"
                },
                "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"
                }
            },
            "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"
        },
        "CompensationInfo": {
            "description": "Job compensation details.",
            "id": "CompensationInfo",
            "properties": {
                "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"
                },
                "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."
                }
            },
            "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"
        },
        "Location": {
            "description": "Output only.\n\nA resource that represents a location with full geographic information.",
            "id": "Location",
            "properties": {
                "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"
                },
                "latLng": {
                    "$ref": "LatLng",
                    "description": "An object representing a latitude/longitude pair."
                }
            },
            "type": "object"
        },
        "CompensationHistogramResult": {
            "description": "Output only.\n\nCompensation based histogram result.",
            "id": "CompensationHistogramResult",
            "properties": {
                "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"
                },
                "result": {
                    "$ref": "NumericBucketingResult",
                    "description": "Histogram result."
                }
            },
            "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": {
                "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"
                },
                "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"
                },
                "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"
                },
                "organization": {
                    "description": "Optional. The name of the organization at the address.",
                    "type": "string"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "sublocality": {
                    "description": "Optional. Sublocality of the address.\nFor example, this can be neighborhoods, boroughs, districts.",
                    "type": "string"
                }
            },
            "type": "object"
        },
        "UpdateCompanyRequest": {
            "description": "Input only.\n\nRequest for updating a specified company.",
            "id": "UpdateCompanyRequest",
            "properties": {
                "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"
                },
                "company": {
                    "$ref": "Company",
                    "description": "Required. The company resource to replace the current resource in the system."
                }
            },
            "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"
        },
        "SearchJobsRequest": {
            "description": "Input only.\n\nThe Request body of the `SearchJobs` call.",
            "id": "SearchJobsRequest",
            "properties": {
                "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"
                },
                "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"
                },
                "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 > 0) are not specially handled.",
                        "The job search matches only against featured jobs (jobs with a\npromotionValue > 0). This method doesn't return any jobs having a\npromotionValue <= 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"
                },
                "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."
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "histogramFacets": {
                    "$ref": "HistogramFacets",
                    "description": "Optional. Histogram requests for jobs matching JobQuery."
                },
                "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.",
                    "type": "string"
                },
                "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"
                },
                "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"
                }
            },
            "type": "object"
        },
        "ApplicationInfo": {
            "description": "Application related details of a job posting.",
            "id": "ApplicationInfo",
            "properties": {
                "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"
                },
                "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"
                }
            },
            "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"
        },
        "CompleteQueryResponse": {
            "description": "Output only.\n\nResponse of auto-complete query.",
            "id": "CompleteQueryResponse",
            "properties": {
                "metadata": {
                    "$ref": "ResponseMetadata",
                    "description": "Additional information for the API invocation, such as the request\ntracking id."
                },
                "completionResults": {
                    "description": "Results of the matching job/company candidates.",
                    "items": {
                        "$ref": "CompletionResult"
                    },
                    "type": "array"
                }
            },
            "type": "object"
        },
        "NumericBucketingResult": {
            "description": "Output only.\n\nCustom numeric bucketing result.",
            "id": "NumericBucketingResult",
            "properties": {
                "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"
                },
                "counts": {
                    "description": "Count within each bucket. Its size is the length of\nNumericBucketingOption.bucket_bounds plus 1.",
                    "items": {
                        "$ref": "BucketizedCount"
                    },
                    "type": "array"
                },
                "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"
        },
        "JobDerivedInfo": {
            "description": "Output only.\n\nDerived details about the job posting.",
            "id": "JobDerivedInfo",
            "properties": {
                "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"
                },
                "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"
                }
            },
            "type": "object"
        },
        "MatchingJob": {
            "description": "Output only.\n\nJob entry with metadata inside SearchJobsResponse.",
            "id": "MatchingJob",
            "properties": {
                "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"
                },
                "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"
                },
                "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."
                }
            },
            "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"
        },
        "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<a href=\"http://www.unoosa.org/pdf/icg/2012/template/WGS_84.pdf\">WGS84\nstandard</a>. 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"
        },
        "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": {
                "id": {
                    "description": "Optional. A device-specific ID. The ID must be a unique identifier that\ndistinguishes the device from other devices.",
                    "type": "string"
                },
                "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"
                }
            },
            "type": "object"
        },
        "Money": {
            "description": "Represents an amount of money with its currency type.",
            "id": "Money",
            "properties": {
                "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"
                },
                "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"
                }
            },
            "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"
                },
                "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"
                },
                "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"
                },
                "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"
                },
                "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."
                }
            },
            "type": "object"
        },
        "HistogramResults": {
            "description": "Output only.\n\nHistogram results that match HistogramFacets specified in\nSearchJobsRequest.",
            "id": "HistogramResults",
            "properties": {
                "simpleHistogramResults": {
                    "description": "Specifies histogram results that matches\nHistogramFacets.simple_histogram_facets.",
                    "items": {
                        "$ref": "HistogramResult"
                    },
                    "type": "array"
                },
                "customAttributeHistogramResults": {
                    "description": "Specifies histogram results for custom attributes that match\nHistogramFacets.custom_attribute_histogram_facets.",
                    "items": {
                        "$ref": "CustomAttributeHistogramResult"
                    },
                    "type": "array"
                },
                "compensationHistogramResults": {
                    "description": "Specifies compensation field-based histogram results that match\nHistogramFacets.compensation_histogram_requests.",
                    "items": {
                        "$ref": "CompensationHistogramResult"
                    },
                    "type": "array"
                }
            },
            "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"
        },
        "CreateJobRequest": {
            "description": "Input only.\n\nCreate job request.",
            "id": "CreateJobRequest",
            "properties": {
                "job": {
                    "$ref": "Job",
                    "description": "Required. The Job to be created."
                }
            },
            "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"
        },
        "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"
        },
        "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": {
                "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"
                },
                "deviceInfo": {
                    "$ref": "DeviceInfo",
                    "description": "Optional. The type of device used by the job seeker at the time of the call to the\nservice."
                },
                "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"
                },
                "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 <em>Foo, Inc.</em>, 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"
                }
            },
            "type": "object"
        },
        "CompletionResult": {
            "description": "Output only.\n\nResource that represents completion results.",
            "id": "CompletionResult",
            "properties": {
                "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"
                },
                "imageUri": {
                    "description": "The URI of the company image for CompletionType.COMPANY_NAME.",
                    "type": "string"
                },
                "suggestion": {
                    "description": "The suggestion for the query.",
                    "type": "string"
                }
            },
            "type": "object"
        }
    },
    "servicePath": "",
    "title": "Cloud Talent Solution API",
    "version": "v3",
    "version_module": true
}