---
title: "List custom field definitions"
method: GET
path: "/v1/custom-field-definitions"
tags: ["Custom Fields"]
---

# List custom field definitions

`GET /v1/custom-field-definitions`

## Request

- Base URL: `https://api.workwing.io`
- URL: `https://api.workwing.io/v1/custom-field-definitions`
- Auth: HTTP bearer

List active custom field definitions (the schema: key, label, type, and whether required) for your organisation. Filter with `?entity_type=T_JOB` (or `T_CUSTOMER` / `T_RESOURCE`).

Set values with `PATCH /v1/jobs/{jobId}/custom-fields` (and the equivalent customer and resource endpoints), which reference these definitions by `field_key`.

## Query parameters

- `entity_type` 'T_JOB' | 'T_CUSTOMER' | 'T_RESOURCE'

## Response `200`

Default Response

- object
  - `data` object[], required
    - `id` string, uuid, required
    - `entity_type` 'T_JOB' | 'T_CUSTOMER' | 'T_RESOURCE', required
    - `template_id` string, uuid, nullable, required: Set when the field belongs to one job type (defined in the form builder). Null for tenant-wide fields, which is every field created over the API.
    - `field_key` string, required
    - `field_label` string, required
    - `field_description` string, nullable, required
    - `field_type` 'T_TEXT' | 'T_TEXTAREA' | 'T_NUMBER' | 'T_DATE' | 'T_DATETIME' | 'T_BOOLEAN' | 'T_SELECT' | 'T_MULTISELECT' | 'T_URL' | 'T_EMAIL' | 'T_PHONE' | 'T_SCANNER', required
    - `field_config` object, nullable, required: Type-specific settings: minLength/maxLength/pattern for text, min/max/step/unit for numbers, minDate/maxDate for dates, options for select and multiselect, allowedBarcodeTypes/scannerHint for scanner.
    - `display_order` integer, nullable, required
    - `display_section` string, nullable, required
    - `display_width` 'T_FULL' | 'T_HALF' | 'T_THIRD' | 'null', nullable, required
    - `is_required` boolean, nullable, required
    - `is_active` boolean, nullable, required
    - `is_searchable` boolean, nullable, required
    - `is_filterable` boolean, nullable, required
    - `created_at` string, date-time, nullable, required
    - `updated_at` string, date-time, nullable, required
    - `created_by_user_id` string, uuid, nullable, required
  - `meta` object, required
    - `request_id` string, required
    - `timestamp` string, date-time, required

---

[API](https://skmtc.dev/workwing/apis/workwing-api.md) · [All operations](https://skmtc.dev/workwing/apis/workwing-api/llms.txt) · [OpenAPI document](https://skmtc.dev/workwing/apis/workwing-api/revisions/54bb14368a35?raw)
