> ## Documentation Index
> Fetch the complete documentation index at: https://docs.superoffice.com/llms.txt
> Use this file to discover all available pages before exploring further.

# SuperOffice.WebApi.Data.UserDefinedFieldInfo

# <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo" /> Class UserDefinedFieldInfo

Namespace: [SuperOffice.WebApi.Data](SuperOffice.WebApi.Data.md)\
Assembly: SuperOffice.WebApi.dll

Carrier object for UserDefinedFieldInfo.
Return information about the user defined fields. The information can be used to mirror the layout of the user-defined fields in the user interface.

```csharp theme={null}
public class UserDefinedFieldInfo : Carrier
```

#### Inheritance

[object](https://learn.microsoft.com/dotnet/api/system.object) ←
[Carrier](SuperOffice.WebApi.Data.Carrier.md) ←
[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md)

#### Inherited Members

[Carrier.TableRight](SuperOffice.WebApi.Data.Carrier.md#SuperOffice_WebApi_Data_Carrier_TableRight),
[Carrier.FieldProperties](SuperOffice.WebApi.Data.Carrier.md#SuperOffice_WebApi_Data_Carrier_FieldProperties),
[object.ToString()](https://learn.microsoft.com/dotnet/api/system.object.tostring),
[object.Equals(object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object\)),
[object.Equals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.equals#system-object-equals\(system-object-system-object\)),
[object.ReferenceEquals(object, object)](https://learn.microsoft.com/dotnet/api/system.object.referenceequals),
[object.GetHashCode()](https://learn.microsoft.com/dotnet/api/system.object.gethashcode),
[object.GetType()](https://learn.microsoft.com/dotnet/api/system.object.gettype),
[object.MemberwiseClone()](https://learn.microsoft.com/dotnet/api/system.object.memberwiseclone)

## Examples

Get UserDefinedFieldInfo 123 using the WebApi client:
<pre><code class="lang-csharp">var configuration = new WebApiConfiguration(url);
var agent = new UserDefinedFieldInfoAgent(configuration);
var userDefinedFieldInfo = agent.GetUserDefinedFieldInfo( 123 );</code></pre>

## Constructors

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo__ctor" /> UserDefinedFieldInfo()

Default constructor - defaults any enum props to 0.

```csharp theme={null}
public UserDefinedFieldInfo()
```

## Properties

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_ColumnId" /> ColumnId

The ID of the database column this field corresponds to

```csharp theme={null}
public virtual int ColumnId { get; set; }
```

#### Property Value

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldDefault" /> FieldDefault

Optional default value for String fields

```csharp theme={null}
public virtual string FieldDefault { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldHeight" /> FieldHeight

field height in pixels, 0 = 'enough' (from font)

```csharp theme={null}
public virtual short FieldHeight { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldLabel" /> FieldLabel

The label (lead text)

```csharp theme={null}
public virtual string FieldLabel { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldLeft" /> FieldLeft

X pixel coordinate of field

```csharp theme={null}
public virtual short FieldLeft { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldTop" /> FieldTop

Y pixel coordinate of field

```csharp theme={null}
public virtual short FieldTop { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldType" /> FieldType

Field type: 0 = leadtext only, 1 = Edit, 2 = CheckBox, 3 = dropdown, 4 = listbox
NULL if unknown enum value.

```csharp theme={null}
[JsonIgnore]
public UDefFieldType? FieldType { get; set; }
```

#### Property Value

[UDefFieldType](SuperOffice.WebApi.Data.UDefFieldType.md)?

#### See Also

[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md).[FieldType\_String](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md#SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldType_String)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldType_String" /> FieldType\_String

Field type: 0 = leadtext only, 1 = Edit, 2 = CheckBox, 3 = dropdown, 4 = listbox
Raw string enum value.

```csharp theme={null}
[JsonProperty("FieldType")]
public string FieldType_String { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

#### See Also

[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md).[FieldType](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md#SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldType)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FieldWidth" /> FieldWidth

field width in pixels, 0 = 'enough' (from font)

```csharp theme={null}
public virtual short FieldWidth { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_FormatMask" /> FormatMask

Formatting mask, can be whatever the controls understand (currently nothing :-))

```csharp theme={null}
public virtual string FormatMask { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_HasBeenPublished" /> HasBeenPublished

Has the udef field been published?

```csharp theme={null}
public virtual bool HasBeenPublished { get; set; }
```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_HideLabel" /> HideLabel

Hide the label if 1

```csharp theme={null}
public virtual bool HideLabel { get; set; }
```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_IsIndexed" /> IsIndexed

Is this field indexed? 0 if no, index no. if yes

```csharp theme={null}
public virtual bool IsIndexed { get; set; }
```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_IsMandatory" /> IsMandatory

0 = no, 1 = yes (field must be filled out)

```csharp theme={null}
public virtual bool IsMandatory { get; set; }
```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_IsReadOnly" /> IsReadOnly

0 = read/write, 1 = readonly (don't combine with mandatory  8-) )

```csharp theme={null}
public virtual bool IsReadOnly { get; set; }
```

#### Property Value

[bool](https://learn.microsoft.com/dotnet/api/system.boolean)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Justification" /> Justification

Justification - 0 = default, left, right, center
NULL if unknown enum value.

```csharp theme={null}
[JsonIgnore]
public UdefJustification? Justification { get; set; }
```

#### Property Value

[UdefJustification](SuperOffice.WebApi.Data.UdefJustification.md)?

#### See Also

[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md).[Justification\_String](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md#SuperOffice_WebApi_Data_UserDefinedFieldInfo_Justification_String)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Justification_String" /> Justification\_String

Justification - 0 = default, left, right, center
Raw string enum value.

```csharp theme={null}
[JsonProperty("Justification")]
public string Justification_String { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

#### See Also

[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md).[Justification](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md#SuperOffice_WebApi_Data_UserDefinedFieldInfo_Justification)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_LabelHeight" /> LabelHeight

label height in pixels, 0 = 'enough' (from font)

```csharp theme={null}
public virtual short LabelHeight { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_LabelLeft" /> LabelLeft

X pixel coordinate of label

```csharp theme={null}
public virtual short LabelLeft { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_LabelTop" /> LabelTop

Y pixel coordinate of label

```csharp theme={null}
public virtual short LabelTop { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_LabelWidth" /> LabelWidth

label width in pixels, 0 = 'enough' (from font)

```csharp theme={null}
public virtual short LabelWidth { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_LastVersionId" /> LastVersionId

UDefFieldId this field had in the previous version, 0 = field is new in this version

```csharp theme={null}
public virtual int LastVersionId { get; set; }
```

#### Property Value

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_ListTableId" /> ListTableId

The table ID of the source table for lists: kTableAssoc, kTableContInt or whatever

```csharp theme={null}
public virtual short ListTableId { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_MdoListName" /> MdoListName

MDO list name used to populate this list. Derived from UDListDefinitionId and ListTableId. (Read-only)

```csharp theme={null}
public virtual string MdoListName { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Page1LineNo" /> Page1LineNo

Line no on View Page 1, used if MDO flags are OFF. 0 = this field is not visible on page 1

```csharp theme={null}
public virtual short Page1LineNo { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_ProgId" /> ProgId

Programmatic ID, for use by software that needs to find a particular field. Carried over like udefIdentity across generations. Use a Company.Product.Field format to avoid naming conflicts; the Company name SuperOffice is reserved.

```csharp theme={null}
public virtual string ProgId { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_ShortLabel" /> ShortLabel

Short name to be used in Archive headings and on page 1. If blank, the fieldLabel will be used everywhere.

```csharp theme={null}
public virtual string ShortLabel { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_TabOrder" /> TabOrder

Tab order value, sets the field processing sequence

```csharp theme={null}
public virtual short TabOrder { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_TemplateVariableName" /> TemplateVariableName

Template variable name

```csharp theme={null}
public virtual string TemplateVariableName { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_TextLength" /> TextLength

Length (in characters) of a text field, 0 for other types

```csharp theme={null}
public virtual short TextLength { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Tooltip" /> Tooltip

Optional tooltip text for this field

```csharp theme={null}
public virtual string Tooltip { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Type" /> Type

ID of owning table (contact, person, project) - this is not the actual tableNumber, rather it's an enum
NULL if unknown enum value.

```csharp theme={null}
[JsonIgnore]
public UDefType? Type { get; set; }
```

#### Property Value

[UDefType](SuperOffice.WebApi.Data.UDefType.md)?

#### See Also

[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md).[Type\_String](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md#SuperOffice_WebApi_Data_UserDefinedFieldInfo_Type_String)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Type_String" /> Type\_String

ID of owning table (contact, person, project) - this is not the actual tableNumber, rather it's an enum
Raw string enum value.

```csharp theme={null}
[JsonProperty("Type")]
public string Type_String { get; set; }
```

#### Property Value

[string](https://learn.microsoft.com/dotnet/api/system.string)

#### See Also

[UserDefinedFieldInfo](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md).[Type](SuperOffice.WebApi.Data.UserDefinedFieldInfo.md#SuperOffice_WebApi_Data_UserDefinedFieldInfo_Type)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_UDListDefinitionId" /> UDListDefinitionId

List to use for populating dropdown or listbox

```csharp theme={null}
public virtual int UDListDefinitionId { get; set; }
```

#### Property Value

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_UDefFieldId" /> UDefFieldId

Primary key

```csharp theme={null}
public virtual int UDefFieldId { get; set; }
```

#### Property Value

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_UdefIdentity" /> UdefIdentity

Unique number used to track field identity across layout changes

```csharp theme={null}
public virtual int UdefIdentity { get; set; }
```

#### Property Value

[int](https://learn.microsoft.com/dotnet/api/system.int32)

### <a id="SuperOffice_WebApi_Data_UserDefinedFieldInfo_Version" /> Version

Definition version number; ALL fields get new version whenever layout is updated.

```csharp theme={null}
public virtual short Version { get; set; }
```

#### Property Value

[short](https://learn.microsoft.com/dotnet/api/system.int16)

## See Also

[UserDefinedFieldInfoAgent](SuperOffice.WebApi.Agents.UserDefinedFieldInfoAgent.md)


## Related topics

- [SuperOffice.WebApi.Data.UserDefinedFieldInfo SaveUserDefinedFieldInfosRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.UserDefinedFieldInfo_SaveUserDefinedFieldInfosRequest.md)
- [SuperOffice.WebApi.Data.UserDefinedFieldInfo CreateUserDefinedFieldInfoRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.UserDefinedFieldInfo_CreateUserDefinedFieldInfoRequest.md)
- [SuperOffice.WebApi.Data.UserDefinedFieldInfo GetUserDefinedFieldFromFieldLabelRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.UserDefinedFieldInfo_GetUserDefinedFieldFromFieldLabelRequest.md)
- [SuperOffice.WebApi.Data.UserDefinedFieldInfo GetUserDefinedFieldListRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.UserDefinedFieldInfo_GetUserDefinedFieldListRequest.md)
- [SuperOffice.WebApi.Data.UserDefinedFieldInfo GetUserDefinedFieldFromIdsRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.UserDefinedFieldInfo_GetUserDefinedFieldFromIdsRequest.md)
- [SuperOffice.WebApi.Data.UserDefinedFieldInfo GetPublishedUserDefinedFieldFromFieldLabelRequest](/en/api/reference/webapi/SuperOffice.WebApi.Data.UserDefinedFieldInfo_GetPublishedUserDefinedFieldFromFieldLabelRequest.md)
