1. Jobs
CVViZ API Documentation
  • Start here
    • Quickstart
    • Authentication & permissions
  • Guides
    • API concepts
    • Create a job
    • Find candidates and download resumes
    • Pagination & filtering
    • Rate limits & usage
    • Errors & troubleshooting
    • Safe retries & idempotency
  • Jobs
    • Create a job
      POST
    • List jobs
      GET
    • Get a job
      GET
    • Update a job
      PATCH
    • List candidates for a job
      GET
    • List job benchmark resumes
      GET
    • List candidate job offers
      GET
    • Update a candidate application stage
      PATCH
    • Update job status
      PATCH
  • Candidates
    • List candidates
      GET
    • Get a candidate
      GET
    • Update a candidate
      PATCH
    • List applications for a candidate
      GET
    • List candidate events
      GET
    • List candidate documents
      GET
    • Download a candidate resume
      GET
  • Tasks
    • List tasks
    • Create a task
    • Update a task
    • Update task completion
  • Notes & tags
    • List job notes
    • Add a job note
    • List tags for a job
    • Add tags to a job
    • List tags for a candidate
    • Add tags to a candidate
    • List candidate notes
    • Add a candidate note
    • List candidate tags
  • Screening & interviews
    • List job pre-screening questions
    • List candidate screening answers
    • List candidate interview feedback
  • Organization & lookup data
    • List candidate stages for a job
    • Get job creation options
    • List industries
    • List job functions
    • List employer types
    • List client companies
    • List account users
    • List departments
    • List hiring managers
    • List candidate grades
  1. Jobs

Update a job

PATCH
/jobs/{jobId}
Update the supported fields of an existing job.

What can change?#

Send only the fields you want to change, using the request schema below.
Use PATCH /jobs/{jobId}/status for lifecycle changes.
publishToCareerPage: omit to preserve career-page publication, or send false to disable it.
publishToFreeJobBoards: defaults to false on every update. Omitting it turns off free-job-board publication, even when updating unrelated job details. Send true on each update that should keep distribution enabled.
Enabling either channel requires an active, approved job (409 otherwise). Publication does not activate or approve a job.
Free-board distribution remains subject to account, integration, moderation and provider eligibility; some channels also require career-page publication. Listing/removal is not immediate or guaranteed.
Individual boards, paid advertising, workflow, approval and recruiter-assignment settings cannot be changed here.

Permissions#

jobs.write

Safe retries#

Send an Idempotency-Key. Retry the same request with the same key to avoid repeating the write. See Safe retries & idempotency.

Request

Authorization
Bearer Token
Provide your bearer token in the
Authorization
header when making requests to protected resources.
Example:
Authorization: Bearer ********************
or
Path Params

Header Params

Body Params application/jsonRequired

Examples

Responses

🟢200
application/json
Mutation applied or safely replayed.
Headers

Bodyapplication/json

🟠400
🟠401
🟠403
🟠404
🟠409
🟠429
🔴503
Request Request Example
Shell
JavaScript
Java
Swift
curl --location --request PATCH 'https://api.cvviz.com/v1/jobs/' \
--header 'Idempotency-Key: cvviz-integration-operation-001' \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{
    "publishToCareerPage": true,
    "publishToFreeJobBoards": false,
    "title": "Senior Backend Engineer",
    "code": "ENG-104",
    "description": "Role description",
    "country": "string",
    "state": "string",
    "city": "string",
    "isRemote": true,
    "jobType": "Full time",
    "minimumExperience": 36,
    "maximumExperience": 84,
    "qualifications": "B.Tech",
    "departmentId": 12,
    "hiringManagerId": 22,
    "minimumSalary": 100000,
    "maximumSalary": 160000,
    "salaryCurrency": "USD",
    "salaryInterval": "year"
}'
Response Response Example
200 - Example 1
{
    "data": {
        "id": 901,
        "status": 5,
        "isDraft": false,
        "isDeleted": false
    }
}
Previous
Get a job
Next
List candidates for a job
Built with