---
title: "Create job owner"
method: POST
path: "/v3/job_owners"
tags: ["Job Owners"]
---

# Create job owner

`POST /v3/job_owners`

Add a user to a job's hiring team as a `recruiter`, `sourcer`, or `coordinator`. The user must already exist in your organization and have permission to edit the job. For `recruiter` and `coordinator`, pass `candidate_responsibility` to make this user the responsible owner for `active`, `inactive`, `future`, or `all` candidates on the job — omitting it leaves new applications without a responsible recruiter or coordinator. This is the V3 replacement for the V1 `POST /v1/jobs/{id}/hiring_team` flow for these three roles; hiring managers are assigned via `POST /v3/job_hiring_managers`. To remove a user from the hiring team, call `DELETE /v3/job_owners/{id}` with the row id returned here.

## Request body

- object
  - `job_id` integer, required — Id of the job to assign the user to. Must belong to your organization.
  - `user_id` integer, required — Id of the user to add to the hiring team. The user must already exist in your organization and have permission to edit the job.
  - `type` 'sourcer' | 'recruiter' | 'coordinator', required — Hiring-team role to assign. One of `sourcer`, `recruiter`, or `coordinator`. To assign a hiring manager instead, use `POST /v3/job_hiring_managers`.
  - `candidate_responsibility` 'active' | 'inactive' | 'future' | 'all' — For `recruiter` and `coordinator` only, which existing and future candidates on the job this user becomes the responsible owner for: `active` (in-process), `inactive` (rejected and hired), `future` (new applications only), or `all`. Ignored for `sourcer`. If omitted for a recruiter or coordinator, no existing or future candidates are assigned to the user, which can leave new applications without a responsible recruiter — pass `all` to match the legacy V1 `POST /v1/jobs/{id}/hiring_team` behavior.

## Response `201`

Successful

- object
  - `id` integer
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `job_id` integer — Id of the job this hiring-team assignment belongs to. References a `/v3/jobs` row.
  - `user_id` integer — Id of the user assigned to the job in this role. References a `/v3/users` row. The same user can hold multiple roles on the same job; each role is a separate row.
  - `type` 'sourcer' | 'recruiter' | 'coordinator' — Hiring-team role this user holds on the job. One of `sourcer`, `recruiter`, or `coordinator`. Hiring managers are exposed on the separate `/v3/job_hiring_managers` endpoint.
  - `responsible` boolean — If `true`, this user is the responsible recruiter or coordinator for the job — the default assignee for new applications created against this job. Always `false` for `sourcer` rows, which do not carry candidate responsibility.

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `422` — Unprocessable Content

---

[API](https://skmtc.dev/greenhouse/apis/auth-api.md) · [All operations](https://skmtc.dev/greenhouse/apis/auth-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/greenhouse/auth-api/revisions/9517a2e54640/schema)
