AgileApps Support Wiki Pre Release

Difference between revisions of "REST API:field Resource"

From AgileApps Support Wiki
imported>Aeric
imported>Aeric
 
(13 intermediate revisions by the same user not shown)
Line 6: Line 6:


===Retrieve Field Metadata===
===Retrieve Field Metadata===
Retrieves metadata about a field in an object
Get metadata for a specific object field.
;Method:GET
;Method:GET
;URI:<tt>{{platformURL}}/rest/field/{objectName}/{fieldName}</tt>
;URI:<tt>{{platformURL}}/rest/field/{objectName}/{fieldName}</tt>
;Response:Metadata structure that defines the field, as described in the [[#Payload Examples|Payload Examples]].


;Response:Metadata structure that defines the field
===Retrieve Metadata for All Fields in an Object===
 
===Retrieve an Array of Metadata for Fields in an Object===
Retrieves an array of metadata for fields within an object
Retrieves an array of metadata for fields within an object
;Method:GET
;Method:GET
;URI:<tt>{{platformURL}}/rest/field/{objectName}</tt>
;URI:<tt>{{platformURL}}/rest/field/{objectName}</tt>
 
;Response:An array of metadata structures containing definitions of all the fields in the object, as described in the [[#Payload Examples|Payload Examples]].
;Response:An array of metadata structures containing definitions of all the fields in the object.
 
See also: [http://lj.platformatyourservice.com/~platfor1/V7/javadocs/fields/ JavaDocs for fields ]


===Add a Field===
===Add a Field===
Add metadata for a new object field.
Add metadata for a new object field.
;Method:POST
;Method:POST
;URI:<tt>{{platformURL}}/rest/field/{objectName}/{fieldName}</tt>
;URI:<tt>{{platformURL}}/rest/field/{objectName}</tt>


;Request:
;Request:
As described in the [[REST API/Payload Examples]]
:<syntaxhighlight lang="xml" enclose="div">
<platform>
    <field>
        <title>Field Label</title>
        <tableColumn>yourFieldName</tableColumn>
        ...
</syntaxhighlight>
:Other values as described in the [[#Payload Examples|Payload Examples]]
 
:;Considerations:
::* If you are adding a field to an object that was part of an installed package, the actual field name will differ somewhat from the name you specify. In that situation, the actual field name is the one you specified with a unique value (your tenant ID) appended to it. For example: <tt>yourFieldName_1234567</tt>. (The addition of your tenant ID distinguishes your field from one with the same name that the package provider might add in the future.)


;Response:
;Response:
Line 36: Line 42:
         <code>0</code>
         <code>0</code>
         <description>Success</description>
         <description>Success</description>
         <id>34813dcd768740ad91dc4f168023a9cc</id> -- field ID
         <id>34813dcd768740ad91dc4f168023a9cc</id>
        <tableColumn>yourFieldName_23456789</tableColumn>
     </message>
     </message>
</platform>
</platform>
Line 47: Line 54:


;Request:
;Request:
As described in the [[REST API/Payload Examples]]
:As described in the [[#Payload Examples|Payload Examples]]


;Response:
;Response:
Line 59: Line 66:
</platform>
</platform>
</syntaxhighlight>
</syntaxhighlight>


===Payload Examples===
===Payload Examples===
{{:REST API/Payload Examples}}
<!--
:*[[REST_API/Payload_Examples#Auto Number Field|Auto Number Field]]
:*[[REST_API/Payload_Examples#Auto Number Field|Auto Number Field]]
:*[[REST_API/Payload_Examples#CheckBox Field|CheckBox Field]]
:*[[REST_API/Payload_Examples#CheckBox Field|CheckBox Field]]
Line 85: Line 93:
:*[[REST_API/Payload_Examples#Text Area|Text Area]]
:*[[REST_API/Payload_Examples#Text Area|Text Area]]
:*[[REST_API/Payload_Examples#Text Field|Text Field]]
:*[[REST_API/Payload_Examples#Text Field|Text Field]]
-->
<noinclude>
<noinclude>



Latest revision as of 23:40, 24 July 2015

Manage Field metadata using the REST API.

Access Permissions

Lock-tiny.gif

Retrieve Field Metadata

Get metadata for a specific object field.

Method
GET
URI
https://{yourDomain}/networking/rest/field/{objectName}/{fieldName}
Response
Metadata structure that defines the field, as described in the Payload Examples.

Retrieve Metadata for All Fields in an Object

Retrieves an array of metadata for fields within an object

Method
GET
URI
https://{yourDomain}/networking/rest/field/{objectName}
Response
An array of metadata structures containing definitions of all the fields in the object, as described in the Payload Examples.

Add a Field

Add metadata for a new object field.

Method
POST
URI
https://{yourDomain}/networking/rest/field/{objectName}
Request
<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>Field Label</title>
       <tableColumn>yourFieldName</tableColumn>
        ...

</syntaxhighlight>

Other values as described in the Payload Examples
Considerations
  • If you are adding a field to an object that was part of an installed package, the actual field name will differ somewhat from the name you specify. In that situation, the actual field name is the one you specified with a unique value (your tenant ID) appended to it. For example: yourFieldName_1234567. (The addition of your tenant ID distinguishes your field from one with the same name that the package provider might add in the future.)
Response
<syntaxhighlight lang="xml" enclose="div">

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <platform>

   <message>
       0
       <description>Success</description>
       <id>34813dcd768740ad91dc4f168023a9cc</id>
       <tableColumn>yourFieldName_23456789</tableColumn> 
   </message>

</platform> </syntaxhighlight>

Update a Field Definition

Update field metadata.

Method
PUT
URI
https://{yourDomain}/networking/rest/field/{objectName}/{fieldName}
Request
As described in the Payload Examples
Response
<syntaxhighlight lang="xml" enclose="div">

<?xml version="1.0" encoding="UTF-8" standalone="yes"?> <platform>

   <message>
       0
       <description>Success</description>
   </message>

</platform> </syntaxhighlight>

Payload Examples

In all examples:

  • The <title> element is the field's display label.
  • The <tableColumn> element is the field name.
  • <customVisibilityCriteria> elements, when present, reflect non-default Field Visibility settings.
  • The isCaseSpecialField element is a read-only attribute. A user cannot the set the value for this attribute. This value is set to True for all standard cases or case-type specific fields like subject, description, status, and priority. In all other cases, it is set to False.

Auto Number Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>AUTO</type>
       <description>...</description>
       <universalProperty>true</universalProperty>
       <startingNumber>0001</startingNumber>
       <autoNumberFormat>YYYY-MM-DD-{0000}</autoNumberFormat>
   </field>

</platform> </syntaxhighlight>

Notepad.png

Note: The startingNumber field is editable only during add/POST requests and not during update/PUT requests.

CheckBox Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>BOOLEAN</type>
       <description>...</description>
       <defaultValue>true</defaultValue>
       <universalProperty>false</universalProperty>
   </field>

</platform> </syntaxhighlight>

Currency Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>CURRENCY</type>
       <description>...</description>
       <universalProperty>false</universalProperty>
       <maxFractionalDigits>2</maxFractionalDigits>
       <displayLength>30</displayLength>
   </field>

</platform> </syntaxhighlight>

Date Field

<syntaxhighlight lang="xml" enclose="div">

String postXml = "<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>DATE</type>
       <description>...</description>
       <universalProperty>false</universalProperty>
   </field>

</platform> </syntaxhighlight>

An additional <display> property can also be specified for custom fields in Custom Objects, with the values:

  • as_entered - Store and display the value as entered.
  • convert - Convert the value between time zones.

For example:

<syntaxhighlight lang="xml" enclose="div">

String postXml = "<platform>

   <field>
       ...
       <display>as_entered</display>
   </field>

</platform> </syntaxhighlight>

Learn more: Date/Time Display Types

DateTime Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>DATETIME</type>
       <description>...</description>
       <universalProperty>false</universalProperty>
   </field>

</platform> </syntaxhighlight>

An additional <display> property can also be specified for custom fields in Custom Objects, with the values:

  • as_entered - Store and display the value as entered.
  • convert - Convert the value between time zones.

For example:

<syntaxhighlight lang="xml" enclose="div">

String postXml = "<platform>

   <field>
       ...
       <display>as_entered</display>
   </field>

</platform> </syntaxhighlight>

Learn more: Date/Time Display Types

Dependent Picklist Field

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

   <title>FIELD LABEL</title>
   <tableColumn>FIELD_NAME</tableColumn>
   <type>DEPENDENT_PICK_LIST</type>
   <description>...</description>
   <parentPicklistId>70ab83f90c7c49f4</parentPicklistId>
   <universalProperty>false</universalProperty>
   <enumerationDetails>
       <showFirstValueAsDefault>false</showFirstValueAsDefault>
       <sortFlag>false</sortFlag>
       <enumerationItems>
           <picklistValue>1</picklistValue>
       </enumerationItems>
       <enumerationItems>
           <picklistValue>2</picklistValue>
       </enumerationItems>
       <enumerationItems>
           <picklistValue>3</picklistValue>
       </enumerationItems>
       <enumerationItems>
           <picklistValue>4</picklistValue>
       </enumerationItems>
       <enumerationItems>
           <picklistValue>5</picklistValue>
       </enumerationItems>
   </enumerationDetails>
   </field>

</platform> </syntaxhighlight>

Email Address

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

   <title>FIELD LABEL</title>
   <tableColumn>FIELD_NAME</tableColumn>
   <type>LEAD_EMAIL</type>
   <description>...</description>
   <isStandard>false</isStandard>
   <universalProperty>true</universalProperty>
   <displayLength>200</displayLength>
   <maxStorageLength>200</maxStorageLength>
   <customFieldVisibility>
       <roleId>1</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>2</roleId>
       <attribute>HIDDEN</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>3</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>1714555710</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
       <extendedFieldMetaData>Extended data</extendedFieldMetaData>
   </field>

</platform> </syntaxhighlight>

Email Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>LEAD_EMAIL</type>
       <description>...</description>
       <universalProperty>true</universalProperty>
       <maxStorageLength>50</maxStorageLength>
       <displayLength>30</displayLength>
   </field>

</platform> </syntaxhighlight>

File Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>FILE_FIELD</type>
       <description>...</description>
   </field>

</platform> </syntaxhighlight>

Formula Field (date)

Returns a date and no destination field.

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>FORMULA</type>
       <description>...</description>
       <numberPrecision>0</numberPrecision>
       <universalProperty>false</universalProperty>
       <formula>DATE(2010, 12, 1)</formula>
       <formulaReturnType>DATE</formulaReturnType>
       <formulaDestinationField/>
   </field>

</platform> </syntaxhighlight>

An additional <display> property can also be specified for custom fields in Custom Objects, with the values:

  • as_entered - Store and display the value as entered.
  • convert - Convert the value between time zones.

For example:

<syntaxhighlight lang="xml" enclose="div">

String postXml = "<platform>

   <field>
       ...
       <display>as_entered</display>
   </field>

</platform> </syntaxhighlight>

Learn more: Date/Time Display Types

Formula Field (number)

Returns a number and a Destination

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>FORMULA</type>
       <description>...</description>
       <numberPrecision>2</numberPrecision>
       <formula>wink_currency + wink_currency</formula>
       <formulaReturnType>NUMBER</formulaReturnType>
       <formulaDestinationField>wink_currency</formulaDestinationField>
       <formula>wink_currency + wink_currency</formula>
   </field>

</platform> </syntaxhighlight>

Global Picklist Field

This payload describes an Object field that references a Global Picklist.
To create or modify a Global Picklist, use the REST API:globalPicklist Resource.

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>GLOBAL_PICK_LIST</type>
       <description>...</description>
       <universalProperty>false</universalProperty>
       <enumerationDetails>
           <showFirstValueAsDefault>true</showFirstValueAsDefault>
           <sortFlag>false</sortFlag>
       </enumerationDetails>
       <globalPicklistId>dabda8ae68a74718a01286a676d3efdc</globalPicklistId>
   </field>

</platform> </syntaxhighlight>

Image File Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>IMAGE_FIELD</type>
       <description>...</description>
       <universalProperty>false</universalProperty>
   </field>

</platform> </syntaxhighlight>

Lookup Field

Lookup to a System Object

Add a Lookup to a System Object, with some preset filters:

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>LOOKUP</type>
       <description>...</description>
       <universalProperty>false</universalProperty>
       <lookUpObjectId>f5ed02cfbfdd4a4aaf2f2a3673f29741</lookUpObjectId>
       <lookupDisplayType>POPUP</lookupDisplayType>
       <sortBy>date_created</sortBy>
       <sortOrder>asc</sortOrder>
       <lookupPresetFilter>
           <criteria_1_join_operator/>
           <criteria_1_pre_bracket>(</criteria_1_pre_bracket>
           <criteria_1_post_bracket>)</criteria_1_post_bracket>
           <criteria_1_column>auto_number</criteria_1_column>
           <criteria_1_operator>equals</criteria_1_operator>
           <criteria_1_value>11111</criteria_1_value>
           <criteria_2_join_operator>and</criteria_2_join_operator>
           <criteria_2_pre_bracket/>
           <criteria_2_post_bracket>)</criteria_2_post_bracket>
           <criteria_2_column>wink_currency</criteria_2_column>
           <criteria_2_operator>equals</criteria_2_operator>
           <criteria_2_value>1</criteria_2_value>
           <criteria_3_join_operator>and</criteria_3_join_operator>
           <criteria_3_pre_bracket/>
           <criteria_3_post_bracket/>
           <criteria_3_column/>
           <criteria_3_operator>equals</criteria_3_operator>
           <criteria_3_value/>
           <criteria_4_join_operator>and</criteria_4_join_operator>
           <criteria_4_pre_bracket/>
           <criteria_4_post_bracket/>
           <criteria_4_column/>
           <criteria_4_operator>equals</criteria_4_operator>
           <criteria_4_value/>
           <criteria_5_join_operator>and</criteria_5_join_operator>
           <criteria_5_pre_bracket/>
           <criteria_5_post_bracket/>
           <criteria_5_column/>
           <criteria_5_operator>equals</criteria_5_operator>
           <criteria_5_value/>
       </lookupPresetFilter>
       <recordSelectionType>STANDARD_LOOKUP</recordSelectionType>
       <lookupDependentFieldList>
           <fieldId>63a2f09f16a14af999b81858363b34ba</fieldId>
           <baseFieldId>ebc004fdebb64a8888fc07d5a824c63d</baseFieldId>
       </lookupDependentFieldList>
       <lookupDependentFieldList>
           <fieldId>df02eaaab877428093dda87d8d29022d</fieldId>
           <baseFieldId>98e0b1ae0b8143b28cb1356c364e6ad1</baseFieldId>
       </lookupDependentFieldList>
       <postSelectionJS>alert(\"hello\");</postSelectionJS>
       <lookupFields>98e0b1ae0b8143b2,ebc004fd24c63d,...
       </lookupFields>
   </field>

</platform> </syntaxhighlight>

Lookup to a Custom Page

Add a Lookup to a Custom Object:

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>FIELD LABEL</title>
       <tableColumn>FIELD_NAME</tableColumn>
       <type>LOOKUP</type>
       <description>...</description>
       <universalProperty>true</universalProperty>
       <lookUpObjectId>f0772f53f82d41879a50c5392de83c3f</lookUpObjectId>
       <customPageId>e379c6e9dd694441b3f525fc7e0c0beb</customPageId>
       <recordSelectionType>CUSTOM_PAGE</recordSelectionType>
       <lookupFields/>
       <isMasterDetailRelationship>false</isMasterDetailRelationship>
       <lookupDisplayType>DROP_DOWN</lookupDisplayType>  
       <extendedFieldMetaData>Testing</extendedFieldMetaData>
       <lookupAutoCopyFields>    
           <lookupAutoCopyField>
              <srcFieldColumn>       // Source field Info
                  <tableColumn>a_currency</tableColumn>
              </srcFieldColumn>
              <destFieldColumn>      // Destination field info
                  <tableColumn>b_fmcurrency</tableColumn>
              </destFieldColumn>
           </lookupAutoCopyField>
           <lookupAutoCopyField>
             ...
           </lookupAutoCopyField>
             ...
       <lookupAutoCopyFields>
    </field>

</platform> </syntaxhighlight>

Field Notes
Field Possible Values Notes
lookupDisplayType
  • POPUP
  • DROP_DOWN
sortBy Internal field name

These tags are used for:

They are not used for other kinds of lookups (hierarchical, view/report, custom page), or for lookups to System Objects shown in a PopUp display.

sortOrder
  • asc
  • desc
tableColumn Internal field name

Notepad.png

Note: Internal field names are those returned by the field resource.

Multi Checkbox

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

   <title>Wink Multi Check Box</title>
   <type>MULTI_CHECK_BOX</type>
   <tableColumn>wink_multi_check_box</tableColumn>
   <universalProperty>false</universalProperty>
   <enumerationDetails>
       <showFirstValueAsDefault>true</showFirstValueAsDefault>
       <sortFlag>true</sortFlag>
       <enumerationItems>
           <picklistLabel>label1</picklistLabel>
           <picklistValue>value1</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
       <enumerationItems>
           <picklistLabel>label2</picklistLabel>
           <picklistValue>value2</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
       <enumerationItems>
           <picklistLabel>label3</picklistLabel>
           <picklistValue>value3</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
       <enumerationItems>
           <picklistLabel>label4</picklistLabel>
           <picklistValue>value4</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
       <enumerationItems>
           <picklistLabel>label5</picklistLabel>
           <picklistValue>value5</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
   </enumerationDetails>
   <orientation>HORIZONTAL</orientation>
   <description>...</description>
   <customFieldVisibility>
       <roleId>1</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>2</roleId>
       <attribute>HIDDEN</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>3</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>1714555710</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <extendedFieldMetaData>Extended Meta data</extendedFieldMetaData>

</field> </platform> </syntaxhighlight>

Multi Object Lookup

An example that has Post Selection JavaScript for the Multi Object Lookup field.

Notepad.png

Note: Either object name or object ID can be used in the <lookUpObjectId> element to specify a target object.

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>Wink lookup 1</title>
       <type>MULTI_OBJECT_LOOKUP</type>
       <tableColumn>molf1</tableColumn>
       <universalProperty>false</universalProperty>
       <multiObjectLookUpDetails>
           <includeAllObjects>false</includeAllObjects>
           <lookUpObjectId>ACCOUNT</lookUpObjectId>
           <lookUpObjectId>CONTACT</lookUpObjectId>
       </multiObjectLookUpDetails>
       <recordSelectionType>STANDARD_LOOKUP</recordSelectionType>
       <postSelectionJS>alert(\"this works\");</postSelectionJS>
       <description>...</description>
   </field>

</platform> </syntaxhighlight>

An example that uses a custom JSP for the lookup:

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>Wink lookup 1</title>
       <type>MULTI_OBJECT_LOOKUP</type>
       <tableColumn>molf1</tableColumn>
       <universalProperty>false</universalProperty>
       <multiObjectLookUpDetails>
           <lookUpObjectId>ACCOUNT</lookUpObjectId>
           <lookUpObjectId>CONTACT</lookUpObjectId>
       </multiObjectLookUpDetails>
       <recordSelectionType>CUSTOM_PAGE_STR</recordSelectionType>
       <customPageId>e379c6e9dd694441b3f525fc7e0c0beb</customPageId>
       <description>...</description>
   </field>

</platform>

Considerations
  • includeAllObjects is true for a multi-object lookup field that can target any object in the platform. When true, the lookUpObjectId list contains an entry for every possible object.

</syntaxhighlight>

Number

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>Wink number field</title>
       <type>NUMBER</type>
       <tableColumn>wink_number</tableColumn>
       <description>...</description>
       <isSignField>false</isSignField>
       <minNumericValue>0</minNumericValue>
       <maxNumericValue>0</maxNumericValue>
   </field>

</platform> </syntaxhighlight>

Number with Decimals

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>Wink number field</title>
       <type>DOUBLE</type>
       <tableColumn>test_field_decimal</tableColumn>
       <description>...</description>
       <isSignField>false</isSignField>
       <maxFractionalDigits>2</maxFractionalDigits>
       <displayLength>30</displayLength>
   </field>

</platform> </syntaxhighlight>

Picklist

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

   <title>Wink Picklist</title>
   <type>PICK_LIST</type>
   <tableColumn>wink_picklist</tableColumn>
   <universalProperty>false</universalProperty>
   <enumerationDetails>
       <showFirstValueAsDefault>true</showFirstValueAsDefault>
       <sortFlag>false</sortFlag>
       <enumerationItems>
           <picklistLabel>label1</picklistLabel>
           <picklistValue>value1</picklistValue>
           <itemOrder>1</itemOrder>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
       <enumerationItems>
           <picklistLabel>label2</picklistLabel>
           <picklistValue>value2</picklistValue>
           <itemOrder>2</itemOrder>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
   </enumerationDetails>
   <customFieldVisibility>
       <roleId>1</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>2</roleId>
       <attribute>HIDDEN</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>3</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>1714555710</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
       <description>...</description>
       <extendedFieldMetaData>Extended Meta data</extendedFieldMetaData>
   </field>

</platform> </syntaxhighlight>

Considerations
  • If the sortFlag is true, then itemOrder elements are not needed, as the elements are sorted alphabetically by label.
  • If false, then itemOrder determines the order in which the elements are displayed.
  • If itemOrder is not present, elements are displayed in the order they are defined.

Radio Button

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

   <title>Wink Radio Button</title>
   <type>RADIO_BUTTON</type>
   <tableColumn>wink_radio_button</tableColumn>
   <universalProperty>true</universalProperty>
   <enumerationDetails>
       <showFirstValueAsDefault>true</showFirstValueAsDefault>
       <sortFlag>true</sortFlag>
       <description>...</description>
       <enumerationItems>
           <picklistLabel>1</picklistLabel>
           <picklistValue>value1</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
           </enumerationItems>
       <enumerationItems>
           <picklistLabel>2</picklistLabel>
           <picklistValue>value2</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
       <enumerationItems>
           <picklistLabel>3</picklistLabel>
           <picklistValue>value3</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
           </enumerationItems>
       <enumerationItems>
           <picklistLabel>4</picklistLabel>
           <picklistValue>value4</picklistValue>
           <textColor>#000000</textColor>
           <textBgColor>#FFFFFF</textBgColor>
       </enumerationItems>
   </enumerationDetails>
   <orientation>VERTICAL</orientation>
   <customFieldVisibility>
       <roleId>1</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>2</roleId>
       <attribute>HIDDEN</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>3</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>1714555710</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <description>...</description>
   <extendedFieldMetaData>extended data</extendedFieldMetaData>

</field>

</platform> </syntaxhighlight>

Rich Text Area

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

       <title>Wink Rich Text Area</title>
       <type>RICHTEXT_AREA</type>
       <tableColumn>wink_rich_text_area</tableColumn>
       <universalProperty>true</universalProperty>
       <description>...</description>
       <width>600</width>
       <customFieldVisibility>
       <roleId>1</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>2</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>3</roleId>
       <attribute>HIDDEN</attribute>
   </customFieldVisibility>
       <extendedFieldMetaData>Rich Text Area</extendedFieldMetaData>
   </field>

</platform> </syntaxhighlight>

Text Area

<syntaxhighlight lang="xml" enclose="div">

<platform> <field>

   <title>Wink Text Area</title>
   <type>TEXT_AREA</type>
   <tableColumn>wink_text_area</tableColumn>
   <universalProperty>true</universalProperty>
   <description>...</description>
   <width>100</width>
   <height>100</height>
   <customFieldVisibility>
       <roleId>1</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>2</roleId>
       <attribute>READ_ONLY</attribute>
   </customFieldVisibility>
   <customFieldVisibility>
       <roleId>3</roleId>
       <attribute>HIDDEN</attribute>
   </customFieldVisibility>
   <extendedFieldMetaData>Text Area</extendedFieldMetaData>

</field> </platform> </syntaxhighlight>

Text Field

<syntaxhighlight lang="xml" enclose="div">

<platform>

   <field>
       <title>Wink Text Field</title>
       <type>TEXT_FIELD</type>
       <tableColumn>winkTextField</tableColumn>
       <universalProperty>false</universalProperty>
       <displayLength>30</displayLength>
       <description>...</description>
       <maxStorageLength>50</maxStorageLength>
       <customFieldVisibilityList>
           <roleId>1215761260</roleId>
           <attribute>READ_ONLY</attribute>
       </customFieldVisibilityList>
       <customFieldVisibilityList>
           <roleId>1</roleId>
           <attribute>READ_ONLY</attribute>
       </customFieldVisibilityList>
       <customFieldVisibilityList>
           <roleId>2</roleId>
           <attribute>READ_ONLY</attribute>
       </customFieldVisibilityList>
       <customFieldVisibilityList>
           <roleId>3</roleId>
           <attribute>READ_ONLY</attribute>
       </customFieldVisibilityList>
   </field>

</platform> </syntaxhighlight>