curl --request POST \
--url https://partner-api.taptalent.io/v1/partner/custom-fields \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"entityType": "candidate",
"fieldLabel": "Employee ID",
"fieldType": "text",
"parentSection": "Personal Details",
"description": "Internal employee identifier"
}
'{
"status": "success",
"message": "Custom field created successfully",
"data": {
"id": 123,
"entityType": "candidate",
"fieldLabel": "Preferred Communication Method",
"fieldType": "select",
"options": [
"Email",
"Phone",
"SMS",
"WhatsApp"
],
"description": "How the candidate prefers to be contacted",
"parentSection": "Personal Details",
"createdAt": "2024-01-15T10:00:00.000Z",
"updatedAt": "2024-01-15T10:00:00.000Z"
}
}Create a custom field
Create a new custom field definition for jobs or candidates.
options is required and must not be empty when fieldType is
select or multi-select; it is not used by the other field types.
Once created, fieldType and entityType cannot be changed — delete
and recreate the field if you need a different type. On success the
response carries the message Custom field created successfully.
curl --request POST \
--url https://partner-api.taptalent.io/v1/partner/custom-fields \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '
{
"entityType": "candidate",
"fieldLabel": "Employee ID",
"fieldType": "text",
"parentSection": "Personal Details",
"description": "Internal employee identifier"
}
'{
"status": "success",
"message": "Custom field created successfully",
"data": {
"id": 123,
"entityType": "candidate",
"fieldLabel": "Preferred Communication Method",
"fieldType": "select",
"options": [
"Email",
"Phone",
"SMS",
"WhatsApp"
],
"description": "How the candidate prefers to be contacted",
"parentSection": "Personal Details",
"createdAt": "2024-01-15T10:00:00.000Z",
"updatedAt": "2024-01-15T10:00:00.000Z"
}
}Authorizations
Company-scoped API key. Production keys are prefixed sk_live_,
sandbox keys sk_test_, each followed by 22 base62 characters
(pattern ^sk_(live|test)_[0-9A-Za-z]{22}$). Generate keys in the
TapTalent dashboard under Account Settings → Developers → API Key
Management; a key is shown once at generation and old keys are
invalidated immediately on regeneration.
Body
Request body for creating a custom field definition. options is
required and must not be empty when fieldType is select or
multi-select (this conditional requirement is enforced by the API,
not expressed structurally in this schema).
The entity a custom field applies to.
candidate, job Display name for the field.
The data type of a custom field. options is required (and must be
non-empty) for select and multi-select; the other types take no
options.
| Field type | Description | Options required |
|---|---|---|
text | Single-line text input | No |
textarea | Multi-line text input | No |
number | Numeric input | No |
date | Date picker | No |
checkbox | Boolean checkbox | No |
select | Single-select dropdown | Yes |
multi-select | Multi-select dropdown | Yes |
text, number, date, select, multi-select, checkbox, textarea Section where the field appears in the UI. Allowed values depend
on entityType.
For candidate: Personal Details, Social Contacts,
Experience, Education, Skills, Miscellaneous.
For job: Job Overview, Job Description, Job Pipeline Stages, Location, Revenue Details, Client Company Details,
Salary Details, Candidate Requirements, Candidate Form Requirements, Screening Questions.
Array of option strings. Required and must be non-empty for select and multi-select field types; omit for other types.
1Description/help text for the field.
Response
Custom field created.
Envelope returned after creating a custom field definition.
Was this page helpful?
.png?fit=max&auto=format&n=lKy84_BssSCy2hcz&q=85&s=ac7c949427cc2893306f6036415f087e)