openapi: 3.1.0 info: title: Google Cloud Talent Solution API description: >- The Cloud Talent Solution API provides job search, job posting management, company profiles, and tenant administration for building intelligent talent acquisition applications powered by machine learning. version: 4.0.0 contact: name: Google Cloud url: https://cloud.google.com/solutions/talent-solution servers: - url: https://jobs.googleapis.com/v4 description: Google Cloud Talent Solution Production paths: /projects/{projectId}/tenants: get: operationId: listTenants summary: Google Cloud Talent Solution List tenants description: Lists all tenants associated with the project. tags: - Tenants parameters: - name: projectId in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: type: object properties: tenants: type: array items: $ref: '#/components/schemas/Tenant' post: operationId: createTenant summary: Google Cloud Talent Solution Create a tenant description: Creates a new tenant within the project. tags: - Tenants parameters: - name: projectId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Tenant' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Tenant' /projects/{projectId}/tenants/{tenantId}: get: operationId: getTenant summary: Google Cloud Talent Solution Get a tenant description: Retrieves a specific tenant by ID. tags: - Tenants parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Tenant' delete: operationId: deleteTenant summary: Google Cloud Talent Solution Delete a tenant description: Deletes a specific tenant. tags: - Tenants parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string responses: '200': description: Successful response /projects/{projectId}/tenants/{tenantId}/companies: get: operationId: listCompanies summary: Google Cloud Talent Solution List companies description: Lists all companies associated with a tenant. tags: - Companies parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: type: object properties: companies: type: array items: $ref: '#/components/schemas/Company' post: operationId: createCompany summary: Google Cloud Talent Solution Create a company description: Creates a new company within a tenant. tags: - Companies parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Company' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Company' /projects/{projectId}/tenants/{tenantId}/jobs: get: operationId: listJobs summary: Google Cloud Talent Solution List jobs description: Lists jobs within a tenant. tags: - Jobs parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: type: object properties: jobs: type: array items: $ref: '#/components/schemas/Job' post: operationId: createJob summary: Google Cloud Talent Solution Create a job description: Creates a new job posting within a tenant. tags: - Jobs parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Job' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Job' /projects/{projectId}/tenants/{tenantId}/jobs/{jobId}: get: operationId: getJob summary: Google Cloud Talent Solution Get a job description: Retrieves a specific job posting by ID. tags: - Jobs parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string - name: jobId in: path required: true schema: type: string responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Job' patch: operationId: updateJob summary: Google Cloud Talent Solution Update a job description: Updates an existing job posting. tags: - Jobs parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string - name: jobId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: $ref: '#/components/schemas/Job' responses: '200': description: Successful response content: application/json: schema: $ref: '#/components/schemas/Job' delete: operationId: deleteJob summary: Google Cloud Talent Solution Delete a job description: Deletes a specific job posting. tags: - Jobs parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string - name: jobId in: path required: true schema: type: string responses: '200': description: Successful response /projects/{projectId}/tenants/{tenantId}/jobs:search: post: operationId: searchJobs summary: Google Cloud Talent Solution Search jobs description: Searches for jobs using filters and query parameters. tags: - Jobs parameters: - name: projectId in: path required: true schema: type: string - name: tenantId in: path required: true schema: type: string requestBody: required: true content: application/json: schema: type: object properties: query: type: string locationFilters: type: array items: type: object properties: address: type: string distanceInMiles: type: number pageSize: type: integer pageToken: type: string responses: '200': description: Successful response content: application/json: schema: type: object properties: matchingJobs: type: array items: type: object properties: job: $ref: '#/components/schemas/Job' jobSummary: type: string components: schemas: Tenant: type: object properties: name: type: string description: Resource name of the tenant. externalId: type: string description: Client-side tenant identifier. Company: type: object properties: name: type: string description: Resource name of the company. displayName: type: string description: Display name of the company. externalId: type: string description: Client-side company identifier. headquartersAddress: type: string description: Street address of the company headquarters. websiteUri: type: string description: URI of the company website. size: type: string enum: - COMPANY_SIZE_UNSPECIFIED - MINI - SMALL - SMEDIUM - MEDIUM - BIG - BIGGER - GIANT Job: type: object properties: name: type: string description: Resource name of the job. company: type: string description: Resource name of the company listing the job. title: type: string description: Title of the job. description: type: string description: Description of the job. addresses: type: array items: type: string description: Addresses where the job is located. employmentTypes: type: array items: type: string enum: - EMPLOYMENT_TYPE_UNSPECIFIED - FULL_TIME - PART_TIME - CONTRACTOR - CONTRACT_TO_HIRE - TEMPORARY - INTERN - VOLUNTEER - PER_DIEM - OTHER compensationInfo: type: object properties: entries: type: array items: type: object properties: type: type: string unit: type: string amount: type: object properties: currencyCode: type: string units: type: string postingExpireTime: type: string format: date-time description: Timestamp when the job posting expires. securitySchemes: oauth2: type: oauth2 flows: authorizationCode: authorizationUrl: https://accounts.google.com/o/oauth2/auth tokenUrl: https://oauth2.googleapis.com/token scopes: https://www.googleapis.com/auth/jobs: Manage job listings https://www.googleapis.com/auth/cloud-platform: Full access to Google Cloud tags: - name: Companies - name: Jobs - name: Tenants