Billhighway Cloud API

<back to all web services

FormBuilderHistoryRq

The following routes are available for this service:
GET/signup/api/nat/{natID}/group/{groupId}/{usertype}/user/{userid}/formBuilderHistory/type/{FormBuilderTypeID}/info
GET/signup/api/nat/{natID}/formBuilderHistory/type/{FormBuilderTypeID}/info
import 'package:servicestack/servicestack.dart';

class FormBuilderHistoryRq implements IApiRequest, IConvertible
{
    int? NatID;
    int? GroupId;
    int? FormBuilderTypeID;
    String? UserType;
    String? UserId;

    FormBuilderHistoryRq({this.NatID,this.GroupId,this.FormBuilderTypeID,this.UserType,this.UserId});
    FormBuilderHistoryRq.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        NatID = json['NatID'];
        GroupId = json['GroupId'];
        FormBuilderTypeID = json['FormBuilderTypeID'];
        UserType = json['UserType'];
        UserId = json['UserId'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'NatID': NatID,
        'GroupId': GroupId,
        'FormBuilderTypeID': FormBuilderTypeID,
        'UserType': UserType,
        'UserId': UserId
    };

    getTypeName() => "FormBuilderHistoryRq";
    TypeContext? context = _ctx;
}

class BhNotifyPub implements IConvertible
{
    String? notifyType;
    String? notifyEventType;
    int? delay;

    BhNotifyPub({this.notifyType,this.notifyEventType,this.delay});
    BhNotifyPub.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        notifyType = json['notifyType'];
        notifyEventType = json['notifyEventType'];
        delay = json['delay'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'notifyType': notifyType,
        'notifyEventType': notifyEventType,
        'delay': delay
    };

    getTypeName() => "BhNotifyPub";
    TypeContext? context = _ctx;
}

class BhNotifySub implements IConvertible
{
    String? notifyType;
    String? notifyActionType;

    BhNotifySub({this.notifyType,this.notifyActionType});
    BhNotifySub.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        notifyType = json['notifyType'];
        notifyActionType = json['notifyActionType'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'notifyType': notifyType,
        'notifyActionType': notifyActionType
    };

    getTypeName() => "BhNotifySub";
    TypeContext? context = _ctx;
}

class BhNameValue implements IConvertible
{
    String? name;
    String? value;

    BhNameValue({this.name,this.value});
    BhNameValue.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        value = json['value'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'value': value
    };

    getTypeName() => "BhNameValue";
    TypeContext? context = _ctx;
}

class BhValidation implements IConvertible
{
    String? validationName;
    double? validationLength;
    String? validationPattern;

    BhValidation({this.validationName,this.validationLength,this.validationPattern});
    BhValidation.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        validationName = json['validationName'];
        validationLength = JsonConverters.toDouble(json['validationLength']);
        validationPattern = json['validationPattern'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'validationName': validationName,
        'validationLength': validationLength,
        'validationPattern': validationPattern
    };

    getTypeName() => "BhValidation";
    TypeContext? context = _ctx;
}

class BhCustomValidation implements IConvertible
{
    String? customFunctionName;
    List<String>? customParams;

    BhCustomValidation({this.customFunctionName,this.customParams});
    BhCustomValidation.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        customFunctionName = json['customFunctionName'];
        customParams = JsonConverters.fromJson(json['customParams'],'List<String>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'customFunctionName': customFunctionName,
        'customParams': JsonConverters.toJson(customParams,'List<String>',context!)
    };

    getTypeName() => "BhCustomValidation";
    TypeContext? context = _ctx;
}

class BhControlDto implements IConvertible
{
    bool? disabled;
    String? label;
    String? label2;
    String? name;
    List<BhNameValue>? options;
    List<String>? conditionalValues;
    String? selectGetUri;
    List<BhValidation>? validation;
    List<BhNotifyPub>? notifyPubs;
    List<BhNotifySub>? notifySubs;
    BhCustomValidation? customValidation;
    String? placeholder;
    String? type;
    dynamic? value;
    Map<String,String?>? validationMessages;
    String? validationPosition;
    bool? hideInitialValidation;
    String? widthClass;
    String? html;
    String? img;
    String? imgWidth;
    String? category;
    String? getUri;
    String? controlStyle;
    bool? hasSensitiveData;
    bool? debug;
    String? icon;
    String? mask;
    int? postService;
    String? printType;
    List<BhNameValue>? radioNames;
    List<BhControlDto>? children;

    BhControlDto({this.disabled,this.label,this.label2,this.name,this.options,this.conditionalValues,this.selectGetUri,this.validation,this.notifyPubs,this.notifySubs,this.customValidation,this.placeholder,this.type,this.value,this.validationMessages,this.validationPosition,this.hideInitialValidation,this.widthClass,this.html,this.img,this.imgWidth,this.category,this.getUri,this.controlStyle,this.hasSensitiveData,this.debug,this.icon,this.mask,this.postService,this.printType,this.radioNames,this.children});
    BhControlDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        disabled = json['disabled'];
        label = json['label'];
        label2 = json['label2'];
        name = json['name'];
        options = JsonConverters.fromJson(json['options'],'List<BhNameValue>',context!);
        conditionalValues = JsonConverters.fromJson(json['conditionalValues'],'List<String>',context!);
        selectGetUri = json['selectGetUri'];
        validation = JsonConverters.fromJson(json['validation'],'List<BhValidation>',context!);
        notifyPubs = JsonConverters.fromJson(json['notifyPubs'],'List<BhNotifyPub>',context!);
        notifySubs = JsonConverters.fromJson(json['notifySubs'],'List<BhNotifySub>',context!);
        customValidation = JsonConverters.fromJson(json['customValidation'],'BhCustomValidation',context!);
        placeholder = json['placeholder'];
        type = json['type'];
        value = JsonConverters.fromJson(json['value'],'dynamic',context!);
        validationMessages = JsonConverters.toStringMap(json['validationMessages']);
        validationPosition = json['validationPosition'];
        hideInitialValidation = json['hideInitialValidation'];
        widthClass = json['widthClass'];
        html = json['html'];
        img = json['img'];
        imgWidth = json['imgWidth'];
        category = json['category'];
        getUri = json['getUri'];
        controlStyle = json['controlStyle'];
        hasSensitiveData = json['hasSensitiveData'];
        debug = json['debug'];
        icon = json['icon'];
        mask = json['mask'];
        postService = json['postService'];
        printType = json['printType'];
        radioNames = JsonConverters.fromJson(json['radioNames'],'List<BhNameValue>',context!);
        children = JsonConverters.fromJson(json['children'],'List<BhControlDto>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'disabled': disabled,
        'label': label,
        'label2': label2,
        'name': name,
        'options': JsonConverters.toJson(options,'List<BhNameValue>',context!),
        'conditionalValues': JsonConverters.toJson(conditionalValues,'List<String>',context!),
        'selectGetUri': selectGetUri,
        'validation': JsonConverters.toJson(validation,'List<BhValidation>',context!),
        'notifyPubs': JsonConverters.toJson(notifyPubs,'List<BhNotifyPub>',context!),
        'notifySubs': JsonConverters.toJson(notifySubs,'List<BhNotifySub>',context!),
        'customValidation': JsonConverters.toJson(customValidation,'BhCustomValidation',context!),
        'placeholder': placeholder,
        'type': type,
        'value': JsonConverters.toJson(value,'dynamic',context!),
        'validationMessages': validationMessages,
        'validationPosition': validationPosition,
        'hideInitialValidation': hideInitialValidation,
        'widthClass': widthClass,
        'html': html,
        'img': img,
        'imgWidth': imgWidth,
        'category': category,
        'getUri': getUri,
        'controlStyle': controlStyle,
        'hasSensitiveData': hasSensitiveData,
        'debug': debug,
        'icon': icon,
        'mask': mask,
        'postService': postService,
        'printType': printType,
        'radioNames': JsonConverters.toJson(radioNames,'List<BhNameValue>',context!),
        'children': JsonConverters.toJson(children,'List<BhControlDto>',context!)
    };

    getTypeName() => "BhControlDto";
    TypeContext? context = _ctx;
}

class BhGroupDto implements IConvertible
{
    String? name;
    String? type;
    String? groupStyle;
    bool? debug;
    List<BhNotifyPub>? notifyPubs;
    List<BhNotifySub>? notifySubs;
    List<BhControlDto>? controlDetails;
    BhGroupDto? childGroup;

    BhGroupDto({this.name,this.type,this.groupStyle,this.debug,this.notifyPubs,this.notifySubs,this.controlDetails,this.childGroup});
    BhGroupDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        name = json['name'];
        type = json['type'];
        groupStyle = json['groupStyle'];
        debug = json['debug'];
        notifyPubs = JsonConverters.fromJson(json['notifyPubs'],'List<BhNotifyPub>',context!);
        notifySubs = JsonConverters.fromJson(json['notifySubs'],'List<BhNotifySub>',context!);
        controlDetails = JsonConverters.fromJson(json['controlDetails'],'List<BhControlDto>',context!);
        childGroup = JsonConverters.fromJson(json['childGroup'],'BhGroupDto',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'name': name,
        'type': type,
        'groupStyle': groupStyle,
        'debug': debug,
        'notifyPubs': JsonConverters.toJson(notifyPubs,'List<BhNotifyPub>',context!),
        'notifySubs': JsonConverters.toJson(notifySubs,'List<BhNotifySub>',context!),
        'controlDetails': JsonConverters.toJson(controlDetails,'List<BhControlDto>',context!),
        'childGroup': JsonConverters.toJson(childGroup,'BhGroupDto',context!)
    };

    getTypeName() => "BhGroupDto";
    TypeContext? context = _ctx;
}

class BhFormDto implements IConvertible
{
    int? templateId;
    List<BhGroupDto>? groups;

    BhFormDto({this.templateId,this.groups});
    BhFormDto.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        templateId = json['templateId'];
        groups = JsonConverters.fromJson(json['groups'],'List<BhGroupDto>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'templateId': templateId,
        'groups': JsonConverters.toJson(groups,'List<BhGroupDto>',context!)
    };

    getTypeName() => "BhFormDto";
    TypeContext? context = _ctx;
}

class FormBuilderHistoryRs implements IApiResponse, IConvertible
{
    BhFormDto? form;

    FormBuilderHistoryRs({this.form});
    FormBuilderHistoryRs.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        form = JsonConverters.fromJson(json['form'],'BhFormDto',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'form': JsonConverters.toJson(form,'BhFormDto',context!)
    };

    getTypeName() => "FormBuilderHistoryRs";
    TypeContext? context = _ctx;
}

TypeContext _ctx = TypeContext(library: 'devapi.billhighway.com', types: <String, TypeInfo> {
    'FormBuilderHistoryRq': TypeInfo(TypeOf.Class, create:() => FormBuilderHistoryRq()),
    'BhNotifyPub': TypeInfo(TypeOf.Class, create:() => BhNotifyPub()),
    'BhNotifySub': TypeInfo(TypeOf.Class, create:() => BhNotifySub()),
    'BhNameValue': TypeInfo(TypeOf.Class, create:() => BhNameValue()),
    'BhValidation': TypeInfo(TypeOf.Class, create:() => BhValidation()),
    'BhCustomValidation': TypeInfo(TypeOf.Class, create:() => BhCustomValidation()),
    'BhControlDto': TypeInfo(TypeOf.Class, create:() => BhControlDto()),
    'List<BhNameValue>': TypeInfo(TypeOf.Class, create:() => <BhNameValue>[]),
    'List<BhValidation>': TypeInfo(TypeOf.Class, create:() => <BhValidation>[]),
    'List<BhNotifyPub>': TypeInfo(TypeOf.Class, create:() => <BhNotifyPub>[]),
    'List<BhNotifySub>': TypeInfo(TypeOf.Class, create:() => <BhNotifySub>[]),
    'List<BhControlDto>': TypeInfo(TypeOf.Class, create:() => <BhControlDto>[]),
    'BhGroupDto': TypeInfo(TypeOf.Class, create:() => BhGroupDto()),
    'BhFormDto': TypeInfo(TypeOf.Class, create:() => BhFormDto()),
    'List<BhGroupDto>': TypeInfo(TypeOf.Class, create:() => <BhGroupDto>[]),
    'FormBuilderHistoryRs': TypeInfo(TypeOf.Class, create:() => FormBuilderHistoryRs()),
});

Dart FormBuilderHistoryRq DTOs

To override the Content-type in your clients, use the HTTP Accept Header, append the .jsv suffix or ?format=jsv

HTTP + JSV

The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.

GET /signup/api/nat/{natID}/group/{groupId}/{usertype}/user/{userid}/formBuilderHistory/type/{FormBuilderTypeID}/info HTTP/1.1 
Host: devapi.billhighway.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	form: 
	{
		templateId: 0,
		groups: 
		[
			{
				name: String,
				type: String,
				groupStyle: String,
				debug: False,
				notifyPubs: 
				[
					{
						notifyType: String,
						notifyEventType: String,
						delay: 0
					}
				],
				notifySubs: 
				[
					{
						notifyType: String,
						notifyActionType: String
					}
				],
				controlDetails: 
				[
					{
						disabled: False,
						label: String,
						label2: String,
						name: String,
						options: 
						[
							{
								name: String,
								value: String
							}
						],
						conditionalValues: 
						[
							String
						],
						selectGetUri: String,
						validation: 
						[
							{
								validationName: String,
								validationLength: 0,
								validationPattern: String
							}
						],
						notifyPubs: 
						[
							{
								notifyType: String,
								notifyEventType: String,
								delay: 0
							}
						],
						notifySubs: 
						[
							{
								notifyType: String,
								notifyActionType: String
							}
						],
						customValidation: 
						{
							customFunctionName: String,
							customParams: 
							[
								String
							]
						},
						placeholder: String,
						type: String,
						value: {},
						validationMessages: 
						{
							String: String
						},
						validationPosition: String,
						hideInitialValidation: False,
						widthClass: String,
						html: String,
						img: String,
						imgWidth: String,
						category: String,
						getUri: String,
						controlStyle: String,
						hasSensitiveData: False,
						debug: False,
						icon: String,
						mask: String,
						postService: 0,
						printType: String,
						radioNames: 
						[
							{
								name: String,
								value: String
							}
						],
						children: 
						[
							{
								disabled: False,
								label: String,
								label2: String,
								name: String,
								options: 
								[
									{
										name: String,
										value: String
									}
								],
								conditionalValues: 
								[
									String
								],
								selectGetUri: String,
								validation: 
								[
									{
										validationName: String,
										validationLength: 0,
										validationPattern: String
									}
								],
								notifyPubs: 
								[
									{
										notifyType: String,
										notifyEventType: String,
										delay: 0
									}
								],
								notifySubs: 
								[
									{
										notifyType: String,
										notifyActionType: String
									}
								],
								customValidation: 
								{
									customFunctionName: String,
									customParams: 
									[
										String
									]
								},
								placeholder: String,
								type: String,
								value: {},
								validationMessages: 
								{
									String: String
								},
								validationPosition: String,
								hideInitialValidation: False,
								widthClass: String,
								html: String,
								img: String,
								imgWidth: String,
								category: String,
								getUri: String,
								controlStyle: String,
								hasSensitiveData: False,
								debug: False,
								icon: String,
								mask: String,
								postService: 0,
								printType: String,
								radioNames: 
								[
									{
										name: String,
										value: String
									}
								],
								children: 
								[
									{
										disabled: False,
										label: String,
										label2: String,
										name: String,
										options: 
										[
											{
												name: String,
												value: String
											}
										],
										conditionalValues: 
										[
											String
										],
										selectGetUri: String,
										validation: 
										[
											{
												validationName: String,
												validationLength: 0,
												validationPattern: String
											}
										],
										notifyPubs: 
										[
											{
												notifyType: String,
												notifyEventType: String,
												delay: 0
											}
										],
										notifySubs: 
										[
											{
												notifyType: String,
												notifyActionType: String
											}
										],
										customValidation: 
										{
											customFunctionName: String,
											customParams: 
											[
												String
											]
										},
										placeholder: String,
										type: String,
										value: {},
										validationMessages: 
										{
											String: String
										},
										validationPosition: String,
										hideInitialValidation: False,
										widthClass: String,
										html: String,
										img: String,
										imgWidth: String,
										category: String,
										getUri: String,
										controlStyle: String,
										hasSensitiveData: False,
										debug: False,
										icon: String,
										mask: String,
										postService: 0,
										printType: String,
										radioNames: 
										[
											{
												name: String,
												value: String
											}
										]
									}
								]
							}
						]
					}
				],
				childGroup: 
				{
					name: String,
					type: String,
					groupStyle: String,
					debug: False,
					notifyPubs: 
					[
						{
							notifyType: String,
							notifyEventType: String,
							delay: 0
						}
					],
					notifySubs: 
					[
						{
							notifyType: String,
							notifyActionType: String
						}
					],
					controlDetails: 
					[
						{
							disabled: False,
							label: String,
							label2: String,
							name: String,
							options: 
							[
								{
									name: String,
									value: String
								}
							],
							conditionalValues: 
							[
								String
							],
							selectGetUri: String,
							validation: 
							[
								{
									validationName: String,
									validationLength: 0,
									validationPattern: String
								}
							],
							notifyPubs: 
							[
								{
									notifyType: String,
									notifyEventType: String,
									delay: 0
								}
							],
							notifySubs: 
							[
								{
									notifyType: String,
									notifyActionType: String
								}
							],
							customValidation: 
							{
								customFunctionName: String,
								customParams: 
								[
									String
								]
							},
							placeholder: String,
							type: String,
							value: {},
							validationMessages: 
							{
								String: String
							},
							validationPosition: String,
							hideInitialValidation: False,
							widthClass: String,
							html: String,
							img: String,
							imgWidth: String,
							category: String,
							getUri: String,
							controlStyle: String,
							hasSensitiveData: False,
							debug: False,
							icon: String,
							mask: String,
							postService: 0,
							printType: String,
							radioNames: 
							[
								{
									name: String,
									value: String
								}
							],
							children: 
							[
								{
									disabled: False,
									label: String,
									label2: String,
									name: String,
									options: 
									[
										{
											name: String,
											value: String
										}
									],
									conditionalValues: 
									[
										String
									],
									selectGetUri: String,
									validation: 
									[
										{
											validationName: String,
											validationLength: 0,
											validationPattern: String
										}
									],
									notifyPubs: 
									[
										{
											notifyType: String,
											notifyEventType: String,
											delay: 0
										}
									],
									notifySubs: 
									[
										{
											notifyType: String,
											notifyActionType: String
										}
									],
									customValidation: 
									{
										customFunctionName: String,
										customParams: 
										[
											String
										]
									},
									placeholder: String,
									type: String,
									value: {},
									validationMessages: 
									{
										String: String
									},
									validationPosition: String,
									hideInitialValidation: False,
									widthClass: String,
									html: String,
									img: String,
									imgWidth: String,
									category: String,
									getUri: String,
									controlStyle: String,
									hasSensitiveData: False,
									debug: False,
									icon: String,
									mask: String,
									postService: 0,
									printType: String,
									radioNames: 
									[
										{
											name: String,
											value: String
										}
									],
									children: 
									[
										{
											disabled: False,
											label: String,
											label2: String,
											name: String,
											options: 
											[
												{
													name: String,
													value: String
												}
											],
											conditionalValues: 
											[
												String
											],
											selectGetUri: String,
											validation: 
											[
												{
													validationName: String,
													validationLength: 0,
													validationPattern: String
												}
											],
											notifyPubs: 
											[
												{
													notifyType: String,
													notifyEventType: String,
													delay: 0
												}
											],
											notifySubs: 
											[
												{
													notifyType: String,
													notifyActionType: String
												}
											],
											customValidation: 
											{
												customFunctionName: String,
												customParams: 
												[
													String
												]
											},
											placeholder: String,
											type: String,
											value: {},
											validationMessages: 
											{
												String: String
											},
											validationPosition: String,
											hideInitialValidation: False,
											widthClass: String,
											html: String,
											img: String,
											imgWidth: String,
											category: String,
											getUri: String,
											controlStyle: String,
											hasSensitiveData: False,
											debug: False,
											icon: String,
											mask: String,
											postService: 0,
											printType: String,
											radioNames: 
											[
												{
													name: String,
													value: String
												}
											]
										}
									]
								}
							]
						}
					],
					childGroup: 
					{
						name: String,
						type: String,
						groupStyle: String,
						debug: False,
						notifyPubs: 
						[
							{
								notifyType: String,
								notifyEventType: String,
								delay: 0
							}
						],
						notifySubs: 
						[
							{
								notifyType: String,
								notifyActionType: String
							}
						],
						controlDetails: 
						[
							{
								disabled: False,
								label: String,
								label2: String,
								name: String,
								options: 
								[
									{
										name: String,
										value: String
									}
								],
								conditionalValues: 
								[
									String
								],
								selectGetUri: String,
								validation: 
								[
									{
										validationName: String,
										validationLength: 0,
										validationPattern: String
									}
								],
								notifyPubs: 
								[
									{
										notifyType: String,
										notifyEventType: String,
										delay: 0
									}
								],
								notifySubs: 
								[
									{
										notifyType: String,
										notifyActionType: String
									}
								],
								customValidation: 
								{
									customFunctionName: String,
									customParams: 
									[
										String
									]
								},
								placeholder: String,
								type: String,
								value: {},
								validationMessages: 
								{
									String: String
								},
								validationPosition: String,
								hideInitialValidation: False,
								widthClass: String,
								html: String,
								img: String,
								imgWidth: String,
								category: String,
								getUri: String,
								controlStyle: String,
								hasSensitiveData: False,
								debug: False,
								icon: String,
								mask: String,
								postService: 0,
								printType: String,
								radioNames: 
								[
									{
										name: String,
										value: String
									}
								],
								children: 
								[
									{
										disabled: False,
										label: String,
										label2: String,
										name: String,
										options: 
										[
											{
												name: String,
												value: String
											}
										],
										conditionalValues: 
										[
											String
										],
										selectGetUri: String,
										validation: 
										[
											{
												validationName: String,
												validationLength: 0,
												validationPattern: String
											}
										],
										notifyPubs: 
										[
											{
												notifyType: String,
												notifyEventType: String,
												delay: 0
											}
										],
										notifySubs: 
										[
											{
												notifyType: String,
												notifyActionType: String
											}
										],
										customValidation: 
										{
											customFunctionName: String,
											customParams: 
											[
												String
											]
										},
										placeholder: String,
										type: String,
										value: {},
										validationMessages: 
										{
											String: String
										},
										validationPosition: String,
										hideInitialValidation: False,
										widthClass: String,
										html: String,
										img: String,
										imgWidth: String,
										category: String,
										getUri: String,
										controlStyle: String,
										hasSensitiveData: False,
										debug: False,
										icon: String,
										mask: String,
										postService: 0,
										printType: String,
										radioNames: 
										[
											{
												name: String,
												value: String
											}
										],
										children: 
										[
											{
												disabled: False,
												label: String,
												label2: String,
												name: String,
												options: 
												[
													{
														name: String,
														value: String
													}
												],
												conditionalValues: 
												[
													String
												],
												selectGetUri: String,
												validation: 
												[
													{
														validationName: String,
														validationLength: 0,
														validationPattern: String
													}
												],
												notifyPubs: 
												[
													{
														notifyType: String,
														notifyEventType: String,
														delay: 0
													}
												],
												notifySubs: 
												[
													{
														notifyType: String,
														notifyActionType: String
													}
												],
												customValidation: 
												{
													customFunctionName: String,
													customParams: 
													[
														String
													]
												},
												placeholder: String,
												type: String,
												value: {},
												validationMessages: 
												{
													String: String
												},
												validationPosition: String,
												hideInitialValidation: False,
												widthClass: String,
												html: String,
												img: String,
												imgWidth: String,
												category: String,
												getUri: String,
												controlStyle: String,
												hasSensitiveData: False,
												debug: False,
												icon: String,
												mask: String,
												postService: 0,
												printType: String,
												radioNames: 
												[
													{
														name: String,
														value: String
													}
												]
											}
										]
									}
								]
							}
						]
					}
				}
			}
		]
	}
}