> ## Documentation Index
> Fetch the complete documentation index at: https://docs.hotfix.jobs/llms.txt
> Use this file to discover all available pages before exploring further.

> ## Agent Instructions
> Product noun is jobs.
> MCP at https://rest.hotfix.jobs/mcp is the hiring contract for agents with a company API key.
> Do not invent unpublished REST, hiring stats, or webhooks.
> Do not mention Greenhouse, Ashby, Quick Apply, or claim.
> Creating a draft, offer, or booking link does not send email.

# update_job

> Edit an active job. title and description are required on this route. Does not close the job. MCP tool: update_job. Changing the title, description, locations, countries, category, work type, employment, or salary takes the job off Hotfix search until extract is confirmed. Department edits do not re-extract.



## OpenAPI

````yaml /openapi.json patch /v1/employer/jobs/{job_id}
openapi: 3.1.0
info:
  title: Hotfix hiring API
  version: 1.0.0
  description: >-
    Employer hiring surface under /v1/employer. Most routes take an employer
    session Bearer token. GET resume also accepts a company API key (hf_…).
    Agents should prefer MCP at https://rest.hotfix.jobs/mcp with the same key.
    This is not the public catalog spec at hotfix.jobs/openapi.json, and it is
    not a dump of rest.hotfix.jobs/openapi.json.
servers:
  - url: https://rest.hotfix.jobs
    description: Production
security: []
tags:
  - name: Applications
  - name: Jobs
  - name: Interviews
  - name: Offers
  - name: Mail
  - name: Automations
paths:
  /v1/employer/jobs/{job_id}:
    patch:
      tags:
        - Jobs
      summary: update_job
      description: >-
        Edit an active job. title and description are required on this route.
        Does not close the job. MCP tool: update_job. Changing the title,
        description, locations, countries, category, work type, employment, or
        salary takes the job off Hotfix search until extract is confirmed.
        Department edits do not re-extract.
      operationId: update_job
      parameters:
        - name: job_id
          in: path
          required: true
          description: Job UUID.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                title:
                  type: string
                  description: Public job title.
                description:
                  type: string
                  description: Markdown job description.
                category:
                  type: string
                  description: >-
                    engineering, data_ai, product_and_design, sales, marketing,
                    customer, people, operations, finance_and_legal, or
                    leadership.
                locations:
                  type: string
                  description: City or place labels the applicant sees.
                country:
                  type: string
                  description: Country names. Same closed list the dashboard uses.
                work_type:
                  type: string
                  description: remote, hybrid, or onsite.
                employment_type:
                  type: string
                  description: FULL_TIME, PART_TIME, CONTRACT, or INTERN.
                salary_min:
                  type: integer
                  description: Low end of the stated range. Currency is salary_currency.
                salary_max:
                  type: integer
                  description: High end of the stated range.
                salary_currency:
                  type: string
                  description: ISO currency the posting stated. Do not convert it.
                summary:
                  type: string
                  description: Short public summary.
                department:
                  type: string
                  description: Optional department under the category.
              required:
                - title
                - description
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
              example:
                id: 9a1b2c3d-4e5f-6789-abcd-ef0123456789
                title: Staff engineer
                category: engineering
                locations:
                  - New York
                work_type: hybrid
                employment_type: FULL_TIME
                on_board: true
                listed_on_hotfix: false
                posted_at: '2026-09-21T15:04:05+00:00'
                applicants_count: 3
      security:
        - BearerAuth: []
components:
  securitySchemes:
    BearerAuth:
      type: http
      scheme: bearer
      description: Employer session JWT from Better Auth.

````