Skip to main content
Custom fields allow you to extend the standard ticket, account, and custom object information with additional data specific to your business needs. This guide explains how custom fields work and how to use them effectively. These fields provide flexibility to capture and manage specialized information beyond standard fields. They can be added to tickets, accounts and custom objects, enabling you to:
  • Collect specific business information
  • Standardize data collection
  • Enable advanced reporting
  • Automate workflows based on field values

Field sources

Custom fields can be associated with different sources:

Ticket fields

Fields that appear on tickets for tracking specific ticket-related information

Account fields

Fields that store account-specific information and appear on account records

Custom object fields

Fields that extend custom objects with additional attributes and data points

Field configuration

Each custom field can be configured with various properties:
Essential properties for every custom field:
  • Name: Unique identifier for the field
  • Display name: Label shown to users
  • Description: Help text explaining the field’s purpose
  • Field type: Data type for the field
  • Source type: Ticket, Account, or Custom Object
  • Default value: Initial value when creating records
Team-specific configurations:
  • Team association: Link field to specific teams
  • Auto-add to forms: Automatically add to new forms
  • Field permissions: Control who can view/edit
  • Source visibility: Control visibility per source type
Control how the field appears:
  • Placeholder text: Example text shown when empty
  • Hint text: Helper text below the field
  • Field width: Display width in forms
  • Field order: Position in form layout
  • Source-specific display: Different display per source type
Control field visibility:
  • Visible to customer: Show in customer portal
  • Editable by customer: Allow customer edits
  • Conditional display: Show based on conditions
  • Role-based visibility: Show for specific roles
  • Source-based rules: Different rules per source

Field types

The Thena platform supports a wide range of field types to capture different kinds of data. Each type has specific properties and validation rules.

Text fields

Basic text input for short responses.
  • Use for: Names, titles, references
  • Max length: 255 characters
  • Validation: Optional character limit
  • Common uses:
    • Ticket: Reference numbers, short descriptions
    • Account: Company aliases, industry codes
    • Custom Object: Identifiers, short attributes
Text area for longer responses.
  • Use for: Descriptions, notes, comments
  • Max length: 65,535 characters
  • Validation: Optional character limit
  • Common uses:
    • Ticket: Detailed descriptions, internal notes
    • Account: Company descriptions, special instructions
    • Custom Object: Detailed attributes, documentation
Formatted text with styling options.
  • Use for: Detailed descriptions, formatted content
  • Features: Formatting, lists, links
  • Storage: HTML content
  • Common uses:
    • Ticket: Solution descriptions, formatted responses
    • Account: Formatted company profiles
    • Custom Object: Rich content storage

Numeric fields

Whole number values.
  • Use for: Counts, quantities, whole numbers
  • Range: -2,147,483,648 to 2,147,483,647
  • Validation: Optional min/max values
Numbers with decimal points.
  • Use for: Measurements, percentages
  • Precision: Up to 10 decimal places
  • Validation: Optional decimal places limit
Monetary values with currency support.
  • Use for: Prices, costs, budgets
  • Features: Currency symbol, formatting
  • Validation: Currency-specific rules

Date and time fields

Calendar date selection.
  • Use for: Deadlines, schedules
  • Format: YYYY-MM-DD
  • Features: Date picker
Combined date and time selection.
  • Use for: Scheduled events, timestamps
  • Format: YYYY-MM-DD HH:mm:ss
  • Features: Date and time picker
Time selection only.
  • Use for: Duration, time slots
  • Format: HH:mm:ss
  • Features: Time picker

Choice fields

Select one option from a list.
  • Use for: Categories, status values
  • Features: Dropdown or list
  • Options: Customizable choices
Select multiple options from a list.
  • Use for: Tags, multiple categories
  • Features: Multi-select dropdown
  • Options: Customizable choices
Visual single choice selection.
  • Use for: Clear option choices
  • Features: Visual radio buttons
  • Best for: 2-5 options
Visual multiple choice selection.
  • Use for: Multiple selections
  • Features: Visual checkboxes
  • Best for: 2-10 options

Specialized fields

Email address input with validation.
  • Use for: Contact information
  • Validation: Email format
  • Features: Email verification
Phone number input with formatting.
  • Use for: Contact information
  • Validation: Phone format
  • Features: International format support
Web address input with validation.
  • Use for: Website links
  • Validation: URL format
  • Features: Link verification
IP address input with validation.
  • Use for: Network information
  • Validation: IPv4/IPv6 format
  • Features: IP format verification
Secure password input field.
  • Use for: Sensitive information
  • Features: Masked input
  • Security: Encrypted storage

Advanced fields

Computed values based on other fields.
  • Use for: Formulas, computations
  • Features: Dynamic calculation
  • Dependencies: Based on other fields
  • Common uses:
    • Ticket: SLA calculations, time tracking
    • Account: Revenue calculations, usage metrics
    • Custom Object: Computed attributes
Reference values from other records.
  • Use for: Related data
  • Features: Cross-source relationships
  • Options: Filtered lookups
  • Common uses:
    • Ticket: Related accounts, parent tickets
    • Account: Related contacts, parent accounts
    • Custom Object: Related records
True/false or on/off values.
  • Use for: Simple flags
  • Features: Visual toggle
  • Values: True/false
  • Common uses:
    • Ticket: Feature flags, approval status
    • Account: Active status, premium features
    • Custom Object: State indicators

Validation

Field validation ensures data quality and consistency across tickets, accounts, and custom objects.

Validation types

Control when fields must have values:
  • Required on creation: Must be filled when creating
  • Required on closure: Must be filled before closing
  • Conditionally required: Required based on conditions
  • Role-based requirements: Required for specific roles
  • Source-specific requirements: Different rules per source type
Ensure correct data format:
  • Text format: Length, pattern matching
  • Number format: Range, decimals
  • Date format: Range, valid dates
  • Email format: Valid email structure
  • Source-specific formats: Format rules per source
Validate field values:
  • Range checks: Min/max values
  • List validation: Valid option selection
  • Unique values: No duplicates allowed
  • Dependencies: Based on other fields
  • Cross-source validation: Validate across sources

Advanced validation

Build custom validation rules:
  • Custom functions: JavaScript validation
  • Complex rules: Multi-field validation
  • API validation: External validation
  • Async validation: Background checks
  • Cross-source rules: Validate across sources
Context-based validation:
  • Field dependencies: Based on other fields
  • Status rules: Based on status
  • Role rules: Based on user role
  • Team rules: Based on team
  • Source rules: Based on source type
Validate multiple fields:
  • Field comparison: Compare values
  • Field groups: Group validation
  • Calculated fields: Formula validation
  • Related fields: Relationship rules
  • Cross-source fields: Validate across sources

Error handling

Configure validation messages:
  • Custom messages: Field-specific errors
  • Localization: Multi-language support
  • Dynamic text: Context-based messages
  • Help text: User guidance
  • Source-specific messages: Different messages per source
Control error presentation:
  • Inline errors: Show next to field
  • Summary errors: Group all errors
  • Error styling: Visual presentation
  • Error timing: When to show errors
  • Source-specific display: Different display per source
Handle validation failures:
  • Block submission: Prevent saving
  • Warning only: Allow with warning
  • Auto-correction: Fix common errors
  • Suggestions: Provide valid options
  • Source-specific actions: Different actions per source

Best practices

Field design

• Use clear, descriptive names
• Choose appropriate field types
• Set helpful default values
• Add descriptive hints
• Consider source-specific needs

Field management

• Review field usage regularly
• Archive unused fields
• Document field purposes
• Maintain consistent naming
• Monitor cross-source relationships

Validation design

• Keep rules simple and clear
• Provide helpful error messages
• Use appropriate validation types
• Test edge cases
• Consider source-specific needs

Error handling

• Show errors immediately
• Provide clear guidance
• Offer error resolution
• Log validation issues
• Handle cross-source validation

API reference

Create custom field

{
  "name": "device_type",
  "displayName": "Device Type",
  "description": "Type of device the customer is using",
  "type": "SELECT",
  "isRequired": false,
  "isActive": true,
  "options": [
    {
      "label": "Mobile",
      "value": "mobile"
    },
    {
      "label": "Desktop",
      "value": "desktop"
    },
    {
      "label": "Tablet",
      "value": "tablet"
    }
  ],
  "defaultValue": "desktop",
  "validation": {
    "pattern": null,
    "min": null,
    "max": null
  }
}

Available operations

# Create a custom field
POST /v1/custom-field
Content-Type: application/json

# Get all custom fields
GET /v1/custom-field

# Update custom fields
PATCH /v1/custom-field
Content-Type: application/json

# Get custom fields by IDs
GET /v1/custom-field/fetchByIds

# Search custom field by name
GET /v1/custom-field/search

# Delete custom fields
POST /v1/custom-field/delete
Content-Type: application/json

# Get all custom field types
GET /v1/custom-field/types
All endpoints require authentication with Bearer token, API key, and Organization ID in the headers.
For detailed API specifications, see Custom Fields API Reference
The structure and available options for custom fields depend on the field type selected. The example above shows a SELECT type field with predefined options.
Each field type has its own specific configuration options and validation rules.