---
title: "Update custom field option"
method: PATCH
path: "/v3/custom_field_options/{id}"
tags: ["Custom Field Options"]
---

# Update custom field option

`PATCH /v3/custom_field_options/{id}`

Edit the display label, sort order, or external id of an existing custom field option. The parent `custom_field_id` cannot be moved through this endpoint — options stay attached to the field they were created under. Renaming an option to collide with an archived option's name returns 422; to reactivate an archived option, POST a new option with its `name` instead.

## Path parameters

- `id` integer, required

## Request body

- object
  - `name` string — New display label for the option. Must be unique among active options on the same custom field; renaming to collide with an archived option's name returns 422 — POST a new option with that name to reactivate it instead.
  - `sort_order` integer — New display position within the dropdown. Lower values render first. Partners reorganizing dropdowns typically PATCH `sort_order` on every affected option in a single bulk update.
  - `external_id` string — New caller-supplied identifier from the partner's source system. Send an empty string to clear a previously stored value.

## Response `200`

Successful

- object
  - `id` integer
  - `created_at` string, date-time
  - `updated_at` string, date-time
  - `custom_field_id` integer — Id of the parent custom field this option belongs to. Only fields with `value_type` of `single_select` or `multi_select` carry options.
  - `name` string — Display label shown to recruiters and hiring managers in dropdowns (e.g. `Engineering`, `Bachelor's`, `Stanford University`). Unique among active options on the same parent custom field.
  - `external_id` string, nullable — Caller-supplied identifier from the partner's source system (typically an HRIS row id or legacy ATS id). Persisted verbatim as the column `offsite_hris_id` and not interpreted by Greenhouse.
  - `sort_order` integer — Display position within the parent custom field's dropdown. Lower values render first; ties fall back to insertion order. Alias of `priority` in V1/V2.
  - `active` boolean — `true` while the option is selectable. Set to `false` after deletion — historical selections on candidates, jobs, and offers are preserved so the value still resolves on existing records.

## Other responses

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

---

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