| GET,POST,DELETE | /{Workspace}/AssetType/{Type} | ||
|---|---|---|---|
| GET | /{Workspace}/AssetType |
import 'package:servicestack/servicestack.dart';
enum CustomFieldDataType
{
Text,
Number,
Decimal,
Money,
PhoneNumber,
Ssn,
List,
Date,
File,
Barcode,
GPS,
Photo,
Spacer,
Separator,
AutoNumber,
TextArea,
Contact,
User,
Asset,
Checkbox,
CoreAssetList,
CoreTaskList,
CoreParentTask,
CoreContactList,
ComboBox,
DateTime,
Time,
Location,
CoreLocation,
Label,
EventLog,
Address,
Catalog,
CoreTeamList,
Segment,
CoreTimeSeries,
TimeSeries,
Command,
AutoNumberNumeric,
CatalogList,
CatalogComboBox,
DateRange,
DocumentGrid,
ReportLink,
Hyperlink,
PercentComplete,
Chart,
Range,
ExternalId,
AssetCatalog,
Inventory,
CoreTaskLaborItemTypes,
CoreTaskLaborItems,
ObjectList,
CoreTimeZone,
}
class CustomField implements IConvertible
{
String? Key;
String? Label;
bool? IsActive;
bool? IsReadOnly;
bool? IsHidden;
bool? IsMandatory;
bool? DisplayOnMap;
CustomFieldDataType? CustomFieldDataType;
String? Values;
String? Prompt;
String? Default;
bool? DefaultAutoUpdate;
String? RequiredIf;
List<String>? Hidden;
List<String>? ReadOnly;
Map<String,dynamic?>? ControlArgs;
String? IndexSlot;
String? Index;
CustomField({this.Key,this.Label,this.IsActive,this.IsReadOnly,this.IsHidden,this.IsMandatory,this.DisplayOnMap,this.CustomFieldDataType,this.Values,this.Prompt,this.Default,this.DefaultAutoUpdate,this.RequiredIf,this.Hidden,this.ReadOnly,this.ControlArgs,this.IndexSlot,this.Index});
CustomField.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Key = json['Key'];
Label = json['Label'];
IsActive = json['IsActive'];
IsReadOnly = json['IsReadOnly'];
IsHidden = json['IsHidden'];
IsMandatory = json['IsMandatory'];
DisplayOnMap = json['DisplayOnMap'];
CustomFieldDataType = JsonConverters.fromJson(json['CustomFieldDataType'],'CustomFieldDataType',context!);
Values = json['Values'];
Prompt = json['Prompt'];
Default = json['Default'];
DefaultAutoUpdate = json['DefaultAutoUpdate'];
RequiredIf = json['RequiredIf'];
Hidden = JsonConverters.fromJson(json['Hidden'],'List<String>',context!);
ReadOnly = JsonConverters.fromJson(json['ReadOnly'],'List<String>',context!);
ControlArgs = JsonConverters.fromJson(json['ControlArgs'],'Map<String,dynamic?>',context!);
IndexSlot = json['IndexSlot'];
Index = json['Index'];
return this;
}
Map<String, dynamic> toJson() => {
'Key': Key,
'Label': Label,
'IsActive': IsActive,
'IsReadOnly': IsReadOnly,
'IsHidden': IsHidden,
'IsMandatory': IsMandatory,
'DisplayOnMap': DisplayOnMap,
'CustomFieldDataType': JsonConverters.toJson(CustomFieldDataType,'CustomFieldDataType',context!),
'Values': Values,
'Prompt': Prompt,
'Default': Default,
'DefaultAutoUpdate': DefaultAutoUpdate,
'RequiredIf': RequiredIf,
'Hidden': JsonConverters.toJson(Hidden,'List<String>',context!),
'ReadOnly': JsonConverters.toJson(ReadOnly,'List<String>',context!),
'ControlArgs': JsonConverters.toJson(ControlArgs,'Map<String,dynamic?>',context!),
'IndexSlot': IndexSlot,
'Index': Index
};
getTypeName() => "CustomField";
TypeContext? context = _ctx;
}
/**
* Represents a single asset type.
*/
class AssetType implements IConvertible
{
String? Workspace;
String? Type;
bool? IsActive;
String? Name;
String? Make;
String? Model;
String? Manuf;
String? Barcode;
String? Symbol;
String? Color;
double? LineThickness;
double? Scale;
double? VisibilityMin;
double? VisibilityMax;
bool? SyncNode;
List<CustomField>? CustomFields;
List<String>? AllowedParentTypes;
List<String>? AllowedChildTypes;
bool? UseLocationHistory;
bool? IsMobileAsset;
Map<String,String?>? Data;
String? GeomType;
bool? DocFilter;
bool? ShowRelatedDocs;
List<String>? AllowedDocTypes;
String? TLA;
bool? UseTLAOnMap;
String? RoutingLocation;
String? Fill;
double? FillOpacity;
bool? ShowAnno;
String? AnnoColor;
double? MaxAnnoVisibility;
String? AnnoFont;
bool? HideTypeLabel;
bool? UseAddress;
bool? UseFullScreen;
int? TimeSeries;
bool? IsUnselectable;
List<String>? EditTeams;
bool? IsWarehouse;
bool? IsVehicle;
Map<String,dynamic?>? CustomSymbol;
List<String>? TaskSeriesTemplates;
AssetType({this.Workspace,this.Type,this.IsActive,this.Name,this.Make,this.Model,this.Manuf,this.Barcode,this.Symbol,this.Color,this.LineThickness,this.Scale,this.VisibilityMin,this.VisibilityMax,this.SyncNode,this.CustomFields,this.AllowedParentTypes,this.AllowedChildTypes,this.UseLocationHistory,this.IsMobileAsset,this.Data,this.GeomType,this.DocFilter,this.ShowRelatedDocs,this.AllowedDocTypes,this.TLA,this.UseTLAOnMap,this.RoutingLocation,this.Fill,this.FillOpacity,this.ShowAnno,this.AnnoColor,this.MaxAnnoVisibility,this.AnnoFont,this.HideTypeLabel,this.UseAddress,this.UseFullScreen,this.TimeSeries,this.IsUnselectable,this.EditTeams,this.IsWarehouse,this.IsVehicle,this.CustomSymbol,this.TaskSeriesTemplates});
AssetType.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
Type = json['Type'];
IsActive = json['IsActive'];
Name = json['Name'];
Make = json['Make'];
Model = json['Model'];
Manuf = json['Manuf'];
Barcode = json['Barcode'];
Symbol = json['Symbol'];
Color = json['Color'];
LineThickness = JsonConverters.toDouble(json['LineThickness']);
Scale = JsonConverters.toDouble(json['Scale']);
VisibilityMin = JsonConverters.toDouble(json['VisibilityMin']);
VisibilityMax = JsonConverters.toDouble(json['VisibilityMax']);
SyncNode = json['SyncNode'];
CustomFields = JsonConverters.fromJson(json['CustomFields'],'List<CustomField>',context!);
AllowedParentTypes = JsonConverters.fromJson(json['AllowedParentTypes'],'List<String>',context!);
AllowedChildTypes = JsonConverters.fromJson(json['AllowedChildTypes'],'List<String>',context!);
UseLocationHistory = json['UseLocationHistory'];
IsMobileAsset = json['IsMobileAsset'];
Data = JsonConverters.toStringMap(json['Data']);
GeomType = json['GeomType'];
DocFilter = json['DocFilter'];
ShowRelatedDocs = json['ShowRelatedDocs'];
AllowedDocTypes = JsonConverters.fromJson(json['AllowedDocTypes'],'List<String>',context!);
TLA = json['TLA'];
UseTLAOnMap = json['UseTLAOnMap'];
RoutingLocation = json['RoutingLocation'];
Fill = json['Fill'];
FillOpacity = JsonConverters.toDouble(json['FillOpacity']);
ShowAnno = json['ShowAnno'];
AnnoColor = json['AnnoColor'];
MaxAnnoVisibility = JsonConverters.toDouble(json['MaxAnnoVisibility']);
AnnoFont = json['AnnoFont'];
HideTypeLabel = json['HideTypeLabel'];
UseAddress = json['UseAddress'];
UseFullScreen = json['UseFullScreen'];
TimeSeries = json['TimeSeries'];
IsUnselectable = json['IsUnselectable'];
EditTeams = JsonConverters.fromJson(json['EditTeams'],'List<String>',context!);
IsWarehouse = json['IsWarehouse'];
IsVehicle = json['IsVehicle'];
CustomSymbol = JsonConverters.fromJson(json['CustomSymbol'],'Map<String,dynamic?>',context!);
TaskSeriesTemplates = JsonConverters.fromJson(json['TaskSeriesTemplates'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'Type': Type,
'IsActive': IsActive,
'Name': Name,
'Make': Make,
'Model': Model,
'Manuf': Manuf,
'Barcode': Barcode,
'Symbol': Symbol,
'Color': Color,
'LineThickness': LineThickness,
'Scale': Scale,
'VisibilityMin': VisibilityMin,
'VisibilityMax': VisibilityMax,
'SyncNode': SyncNode,
'CustomFields': JsonConverters.toJson(CustomFields,'List<CustomField>',context!),
'AllowedParentTypes': JsonConverters.toJson(AllowedParentTypes,'List<String>',context!),
'AllowedChildTypes': JsonConverters.toJson(AllowedChildTypes,'List<String>',context!),
'UseLocationHistory': UseLocationHistory,
'IsMobileAsset': IsMobileAsset,
'Data': Data,
'GeomType': GeomType,
'DocFilter': DocFilter,
'ShowRelatedDocs': ShowRelatedDocs,
'AllowedDocTypes': JsonConverters.toJson(AllowedDocTypes,'List<String>',context!),
'TLA': TLA,
'UseTLAOnMap': UseTLAOnMap,
'RoutingLocation': RoutingLocation,
'Fill': Fill,
'FillOpacity': FillOpacity,
'ShowAnno': ShowAnno,
'AnnoColor': AnnoColor,
'MaxAnnoVisibility': MaxAnnoVisibility,
'AnnoFont': AnnoFont,
'HideTypeLabel': HideTypeLabel,
'UseAddress': UseAddress,
'UseFullScreen': UseFullScreen,
'TimeSeries': TimeSeries,
'IsUnselectable': IsUnselectable,
'EditTeams': JsonConverters.toJson(EditTeams,'List<String>',context!),
'IsWarehouse': IsWarehouse,
'IsVehicle': IsVehicle,
'CustomSymbol': JsonConverters.toJson(CustomSymbol,'Map<String,dynamic?>',context!),
'TaskSeriesTemplates': JsonConverters.toJson(TaskSeriesTemplates,'List<String>',context!)
};
getTypeName() => "AssetType";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev.fieldsquared.com', types: <String, TypeInfo> {
'CustomFieldDataType': TypeInfo(TypeOf.Enum, enumValues:CustomFieldDataType.values),
'CustomField': TypeInfo(TypeOf.Class, create:() => CustomField()),
'Map<String,dynamic?>': TypeInfo(TypeOf.Class, create:() => Map<String,dynamic?>()),
'AssetType': TypeInfo(TypeOf.Class, create:() => AssetType()),
'List<CustomField>': TypeInfo(TypeOf.Class, create:() => <CustomField>[]),
});
To override the Content-type in your clients, use the HTTP Accept Header, append the .xml suffix or ?format=xml
The following are sample HTTP requests and responses. The placeholders shown need to be replaced with actual values.
POST /{Workspace}/AssetType/{Type} HTTP/1.1
Host: dev.fieldsquared.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<AssetType xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Field2Office.API.Model.Assets">
<AllowedChildTypes xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AllowedChildTypes>
<AllowedDocTypes xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AllowedDocTypes>
<AllowedParentTypes xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</AllowedParentTypes>
<AnnoColor>String</AnnoColor>
<AnnoFont>String</AnnoFont>
<Barcode>String</Barcode>
<Color>String</Color>
<CustomFields xmlns:d2p1="http://schemas.datacontract.org/2004/07/Field2Office.DomainObjects.Model">
<d2p1:CustomField>
<d2p1:ControlArgs xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringstring>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value>String</d4p1:Value>
</d4p1:KeyValueOfstringstring>
</d2p1:ControlArgs>
<d2p1:CustomFieldDataType>Text</d2p1:CustomFieldDataType>
<d2p1:Default>String</d2p1:Default>
<d2p1:DefaultAutoUpdate>false</d2p1:DefaultAutoUpdate>
<d2p1:DisplayOnMap>false</d2p1:DisplayOnMap>
<d2p1:Hidden xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:string>String</d4p1:string>
</d2p1:Hidden>
<d2p1:Index>String</d2p1:Index>
<d2p1:IndexSlot>String</d2p1:IndexSlot>
<d2p1:IsActive>false</d2p1:IsActive>
<d2p1:IsHidden>false</d2p1:IsHidden>
<d2p1:IsMandatory>false</d2p1:IsMandatory>
<d2p1:IsReadOnly>false</d2p1:IsReadOnly>
<d2p1:Key>String</d2p1:Key>
<d2p1:Label>String</d2p1:Label>
<d2p1:Prompt>String</d2p1:Prompt>
<d2p1:ReadOnly xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:string>String</d4p1:string>
</d2p1:ReadOnly>
<d2p1:RequiredIf>String</d2p1:RequiredIf>
<d2p1:Values>String</d2p1:Values>
</d2p1:CustomField>
</CustomFields>
<CustomSymbol xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringanyType>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value />
</d2p1:KeyValueOfstringanyType>
</CustomSymbol>
<Data xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:KeyValueOfstringstring>
<d2p1:Key>String</d2p1:Key>
<d2p1:Value>String</d2p1:Value>
</d2p1:KeyValueOfstringstring>
</Data>
<DocFilter>false</DocFilter>
<EditTeams xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</EditTeams>
<Fill>String</Fill>
<FillOpacity>0</FillOpacity>
<GeomType>String</GeomType>
<HideTypeLabel>false</HideTypeLabel>
<IsActive>false</IsActive>
<IsMobileAsset>false</IsMobileAsset>
<IsUnselectable>false</IsUnselectable>
<IsVehicle>false</IsVehicle>
<IsWarehouse>false</IsWarehouse>
<LineThickness>0</LineThickness>
<Make>String</Make>
<Manuf>String</Manuf>
<MaxAnnoVisibility>0</MaxAnnoVisibility>
<Model>String</Model>
<Name>String</Name>
<RoutingLocation>String</RoutingLocation>
<Scale>0</Scale>
<ShowAnno>false</ShowAnno>
<ShowRelatedDocs>false</ShowRelatedDocs>
<Symbol>String</Symbol>
<SyncNode>false</SyncNode>
<TLA>String</TLA>
<TaskSeriesTemplates xmlns:d2p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d2p1:string>String</d2p1:string>
</TaskSeriesTemplates>
<TimeSeries>0</TimeSeries>
<Type>String</Type>
<UseAddress>false</UseAddress>
<UseFullScreen>false</UseFullScreen>
<UseLocationHistory>false</UseLocationHistory>
<UseTLAOnMap>false</UseTLAOnMap>
<VisibilityMax>0</VisibilityMax>
<VisibilityMin>0</VisibilityMin>
<Workspace>String</Workspace>
</AssetType>