---
title: "customField.create"
method: POST
path: "/customField.create"
tags: ["Custom Field"]
---

# customField.create

`POST /customField.create`

Create a new custom field.

**Requires the [`hiringProcessMetadataWrite`](authentication#permissions-customfieldcreate) permission.**

## Request body

- CustomFieldCreateRequest
  - `fieldType` 'Boolean' | 'CompensationRange' | 'Currency' | 'Date' | 'LongText' | 'MultiValueSelect' | 'Number' | 'NumberRange' | 'String' | 'ValueSelect' | 'Url' | 'UUID', required — The type of field being created. This value is case-sensitive.
  - `objectType` 'Application' | 'Candidate' | 'Job' | 'Employee' | 'Talent_Project' | 'Opening' | 'Offer' | 'Opening_Version' | 'Offer_Version', required — The type of object the field can be associated with.
  - `title` string, required — The name of the field
  - `description` string, nullable — A description for the field
  - `selectableValues` object[], nullable — Required when the field type is ValueSelect or MultiValueSelect. An array of selectable values for the field.
    - `label` string, required — The display label for the selectable value
    - `value` string, required — The API value for the selectable value
  - `isDateOnlyField` boolean, nullable — Only applies to fields with a fieldType of Date. Whether or not the field includes content other than a date.
  - `isExposableToCandidate` boolean, nullable — Determines whether the field can be exposed to a candidate in certain contexts. In order for a custom field to be available in an email template this value must be true.
  - `isPrivate` boolean, nullable — Whether the custom field should be private.

## Response `200`

Responses from the customField.create endpoint

- union
  - CustomFieldCreateSuccessResponse
    - `success` true, required
    - `results` CustomFieldDefinition, required
      - `id` string, required — The custom field's unique identifier
      - `title` string, required — The custom field's title
      - `description` string, nullable, required — A description of the custom field
      - `objectType` string, required — The type of object the field is associated with
      - `isArchived` boolean, required — Whether the custom field is archived
      - `isPrivate` boolean, required — Whether the custom field is private
      - `fieldType` string, required — The custom field's field type
      - `isRequired` boolean, required — Whether the custom field is required
      - `selectableValues` CustomFieldSelectableValue[] — Selectable values for ValueSelect and MultiValueSelect custom fields
        - `label` string, required — The display label for the selectable value
        - `value` string, required — The API value for the selectable value
        - `isArchived` boolean, required — Whether the selectable value is archived
  - ErrorResponse
    - `success` false, required
    - `errors` ErrorDetail[], required
      - `message` string, required
      - `parameter` string

---

[API](https://skmtc.net/ashbyhq/apis/ashby-api.md) · [All operations](https://skmtc.net/ashbyhq/apis/ashby-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/ashbyhq/ashby-api/revisions/778b919dc743/schema)
