The CustomField complex type specifies a single custom field.

 <xs:complexType name="CustomField">
   <xs:complexContent mixed="false">
     <xs:extension base="ipam:BaseIpamObject">
         <xs:element minOccurs="0" name="BuiltInCustomFieldNumber" type="ipam:BuiltInCustomField" />
         <xs:element minOccurs="0" name="Name" nillable="true" type="xsd:string" />
         <xs:element minOccurs="0" name="Origin" type="ipam:CustomFieldOrigin" />
         <xs:element minOccurs="0" name="RecordId" nillable="true" type="xsd:long" />
         <xs:element minOccurs="0" name="Type" type="ipam:CustomFieldType" />
         <xs:element minOccurs="0" name="Values" nillable="true" type="ipam:ArrayOfCustomFieldValue" />

BuiltInCustomFieldNumber: Specifies a unique and fixed identifier for a built-in custom field. If the Origin is CustomFieldOrigin.External, the value of this MUST be ignored.

Name: Specifies the name of the custom field. This MUST be at least 2 characters and MUST NOT exceed 255 characters.

Origin: Specifies the origin of the custom field – whether it is built-in or user-defined. If it is built-in (such as CustomFieldOrigin.Builtin), the BuiltInCustomFieldNumber MUST be specified and MUST be a nonzero value.

RecordId: Specifies the unique identifier for the data in the IPAM data store.

Type: Specifies the type of the custom field – whether it is multivalued or free-form.

Values: If the custom field is a multivalued custom field, this specifies the list of possible custom field values.