> ## 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. Clients sign in with Hotfix; API keys are for HTTP only.
> Do not invent unpublished REST or hiring stats. Webhooks are set up in the app; there is no REST route or MCP tool to manage them.
> Do not mention Greenhouse, Ashby, Quick Apply, or claim.
> Creating a draft, offer, or booking link does not send email.

# set_custom_field

> Set or clear one custom field on an application. Send value as text: numbers and currency amounts as digits (a currency field has one currency), dates as YYYY-MM-DD, yes/no as yes or no, select as the option id, multi-select as a list of option ids or one comma-separated string (it replaces the whole selection), team member as the teammate's user id. An empty value clears it. Logged in the application's activity. Does not send email. MCP tool: set_custom_field.



## OpenAPI

````yaml /openapi.json put /v1/employer/applications/{application_id}/fields/{key}
openapi: 3.1.0
info:
  title: Hotfix hiring API
  version: 1.0.0
  description: >-
    Employer hiring surface under /v1/employer, plus the public careers page
    reads under /v1/boards. Routes take an employer session Bearer token. Hiring
    data routes also accept a company API key (hf_…); mail and drafts are
    session only. Agents should prefer MCP at https://rest.hotfix.jobs/mcp,
    where they sign in with Hotfix. 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: Careers page
  - name: Interviews
  - name: Offers
  - name: Mail
  - name: Automations
  - name: Fields
paths:
  /v1/employer/applications/{application_id}/fields/{key}:
    put:
      tags:
        - Fields
      summary: set_custom_field
      description: >-
        Set or clear one custom field on an application. Send value as text:
        numbers and currency amounts as digits (a currency field has one
        currency), dates as YYYY-MM-DD, yes/no as yes or no, select as the
        option id, multi-select as a list of option ids or one comma-separated
        string (it replaces the whole selection), team member as the teammate's
        user id. An empty value clears it. Logged in the application's activity.
        Does not send email. MCP tool: set_custom_field.
      operationId: set_custom_field
      parameters:
        - name: application_id
          in: path
          required: true
          description: Application UUID.
          schema:
            type: string
        - name: key
          in: path
          required: true
          description: Field key from list_fields, e.g. salary_expectation.
          schema:
            type: string
      requestBody:
        required: true
        content:
          application/json:
            schema:
              type: object
              properties:
                value:
                  anyOf:
                    - type: string
                    - type: array
                      items:
                        type: string
                    - type: 'null'
                  description: >-
                    The new value, or empty or null to clear. A multi-select
                    takes a list of option ids or one comma-separated string.
              required: []
            example:
              value: '175000'
      responses:
        '200':
          description: Success
          content:
            application/json:
              schema:
                type: object
                additionalProperties: true
              example:
                custom_fields:
                  - id: 8b0f6f7e-1c2d-4e3f-9a8b-7c6d5e4f3a21
                    key: salary_expectation
                    name: Salary expectation
                    type: currency
                    value: '175000'
                    display: $175,000
      security:
        - ApiKey: []
        - BearerAuth: []
components:
  securitySchemes:
    ApiKey:
      type: http
      scheme: bearer
      description: >-
        Company API key minted at Settings → API. Prefix hf_. Accepted on hiring
        data routes. Not accepted on MCP.
    BearerAuth:
      type: http
      scheme: bearer
      description: Employer session JWT from Better Auth.

````

This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.