# Custom Fields

## Custom Field Types in Fairmarkit

Fairmarkit supports a variety of custom field types that can be configured to meet the unique data collection and intake needs of your organization. This guide outlines the types of custom fields available, how they behave, and when to use them.

***

### Standard Field Types

These fields help you capture a wide range of inputs during intake or RFx creation.

#### **Text Fields**

* **Text**: Basic single-line input.
* **Title**: Styled prominently as a section heading.
* **Description**: Paragraph-style text useful for instructions or context.

#### **Numeric Fields**

* **Number**: General numeric input (e.g., quantity, percentages).
* **Integer**: Whole numbers only.
* **Money**: Currency-formatted input. Can be linked to a currency selector.

#### **Date & Time Fields**

* **Date**: Choose a calendar date.
* **Datetime**: Select a date and specific time.

#### **Boolean & Choice Fields**

* **Checkbox**: Yes/no or true/false options.
* **Radio**: Select one option from a list.
* **Select**: Dropdown with one selection.
* **Multi-select**: Choose multiple options from a predefined list.

#### **File Uploads**

* **Single file**: Upload one file (e.g., PDFs, images).
* **Multiple files**: Upload a set of files together.

***

### Specialized Field Types

These support more advanced configurations or help control how fields behave visually and functionally.

#### **Category**

* Enables selection from a hierarchical structure (e.g., categories and subcategories).
* Optionally restrict users to lowest-level categories only.

#### **Currency Selector**

* Used in tandem with “Money” fields to specify the relevant currency type.

#### **Geolocation Search**

* Option to disable predictive address suggestions and force manual input from a predefined list.

#### **Custom Layout Controls**

* **Grid Column / Offset**: Controls how fields are arranged side-by-side.
* **Hidden Fields**: Fields that are not visible to users but still collect data.

***

### **Data Fields**

Data fields are **advanced structured fields** that pull from external data sets or lists.

These are especially powerful when you want to:

* Allow users to **select from a predefined dataset** (like a list of vendors or contracts).
* Automatically **preview or filter options** based on tags (e.g., country, type).
* Reuse data consistently across forms and workflows.

#### Data Field Features:

* **Slug Identifier**: References the dataset (e.g., `csv-test`).
* **Preview Fields**: Define which attributes (e.g., name) appear in dropdown views.
* **Filter Tags**: Narrow the list by metadata such as geography or category.

> Example: A data field labeled “Preferred Supplier” could present a searchable dropdown list of vendors in the U.S. only.

***

### Conditional Logic Support

Custom fields can be conditionally displayed or made required based on values from other fields.

#### Examples:

* Show “Budget” only if category is “IT and Telecoms.”
* Show “SOW Upload” if country is Malaysia.
* Update options in the "Unit of Measure" field if item type is set to "Service."

This dynamic behavior ensures users only see relevant fields, improving form clarity and accuracy.

***

### Summary

| Input Type                            | Description                             |
| ------------------------------------- | --------------------------------------- |
| Text, Title, Description              | Free-form entry fields                  |
| Number, Integer, Money                | Quantitative inputs                     |
| Date, Datetime                        | Temporal data                           |
| Radio, Checkbox, Select, Multi-select | Single or multiple choices              |
| File                                  | File upload support                     |
| Category, Currency                    | Specialized selectors                   |
| Data Field                            | Structured data from external lists     |
| Conditional Logic                     | Field behavior changes based on context |


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.fairmarkit.com/buyers/administration/custom-fields.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
