{ "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "#/components/schemas/CustomFieldDefinition", "title": "CustomFieldDefinition", "type": "object", "description": "A custom field definition with its configuration and type information.", "properties": { "id": { "type": "string", "description": "The unique identifier of the custom field." }, "name": { "type": "string", "description": "The name of the custom field." }, "type": { "type": "string", "enum": [ "url", "drop_down", "email", "phone", "date", "text", "checkbox", "number", "currency", "tasks", "users", "emoji", "label", "automatic_progress", "manual_progress", "short_text", "location" ], "description": "The type of the custom field." }, "type_config": { "type": "object", "description": "Configuration specific to the field type. Contains options for dropdown and label fields, currency settings, etc.", "properties": { "default": { "type": "integer", "description": "Default option index for dropdown fields." }, "placeholder": { "type": "string", "nullable": true, "description": "Placeholder text for text fields." }, "new_drop_down": { "type": "boolean", "description": "Whether this is a new-style dropdown." }, "options": { "type": "array", "items": { "type": "object", "properties": { "id": { "type": "string", "description": "The option ID." }, "name": { "type": "string", "description": "The option display name." }, "value": { "type": "string", "nullable": true, "description": "The option value." }, "type": { "type": "string", "nullable": true, "description": "The option type." }, "color": { "type": "string", "nullable": true, "description": "The hex color code of the option." }, "orderindex": { "type": "integer", "description": "The order index of the option." }, "label": { "type": "string", "nullable": true, "description": "The label text for the option." } } }, "description": "Available options for dropdown and label fields." }, "include_guests": { "type": "boolean", "description": "Whether to include guests for user fields." }, "include_team_members": { "type": "boolean", "description": "Whether to include team members for user fields." }, "precision": { "type": "integer", "description": "Decimal precision for number and currency fields." }, "currency_type": { "type": "string", "description": "Currency type code for currency fields (e.g., USD, EUR)." } } }, "date_created": { "type": "string", "description": "Unix timestamp when the field was created." }, "hide_from_guests": { "type": "boolean", "description": "Whether the field is hidden from guests." }, "required": { "type": "boolean", "description": "Whether the field is required on tasks." } } }