| GET | /{Workspace}/API/Task/Schema | ||
|---|---|---|---|
| GET, PUT, POST, DELETE | /{Workspace}/API/Task/{Id} | ||
| GET, PUT, POST, DELETE | /{Workspace}/API/Task | ||
| GET | /{Workspace}/API/Task/Schema/{TaskTemplate} |
import 'package:servicestack/servicestack.dart';
class Location implements IConvertible
{
double? Latitude;
double? Longitude;
bool? HasValidLocation;
Location({this.Latitude,this.Longitude,this.HasValidLocation});
Location.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Latitude = JsonConverters.toDouble(json['Latitude']);
Longitude = JsonConverters.toDouble(json['Longitude']);
HasValidLocation = json['HasValidLocation'];
return this;
}
Map<String, dynamic> toJson() => {
'Latitude': Latitude,
'Longitude': Longitude,
'HasValidLocation': HasValidLocation
};
getTypeName() => "Location";
TypeContext? context = _ctx;
}
class AddressBase implements IConvertible
{
String? Id;
String? AddressLine1;
String? AddressLine2;
String? City;
String? State;
String? Zip;
Location? Location;
String? Name;
String? NameSingleLine;
String? NameSingleLine5DigitZip;
bool? HasValidLocation;
bool? GeocodeFailed;
String? GeocodeResultCode;
String? Country;
AddressBase({this.Id,this.AddressLine1,this.AddressLine2,this.City,this.State,this.Zip,this.Location,this.Name,this.NameSingleLine,this.NameSingleLine5DigitZip,this.HasValidLocation,this.GeocodeFailed,this.GeocodeResultCode,this.Country});
AddressBase.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
AddressLine1 = json['AddressLine1'];
AddressLine2 = json['AddressLine2'];
City = json['City'];
State = json['State'];
Zip = json['Zip'];
Location = JsonConverters.fromJson(json['Location'],'Location',context!);
Name = json['Name'];
NameSingleLine = json['NameSingleLine'];
NameSingleLine5DigitZip = json['NameSingleLine5DigitZip'];
HasValidLocation = json['HasValidLocation'];
GeocodeFailed = json['GeocodeFailed'];
GeocodeResultCode = json['GeocodeResultCode'];
Country = json['Country'];
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'AddressLine1': AddressLine1,
'AddressLine2': AddressLine2,
'City': City,
'State': State,
'Zip': Zip,
'Location': JsonConverters.toJson(Location,'Location',context!),
'Name': Name,
'NameSingleLine': NameSingleLine,
'NameSingleLine5DigitZip': NameSingleLine5DigitZip,
'HasValidLocation': HasValidLocation,
'GeocodeFailed': GeocodeFailed,
'GeocodeResultCode': GeocodeResultCode,
'Country': Country
};
getTypeName() => "AddressBase";
TypeContext? context = _ctx;
}
class Address extends AddressBase implements IConvertible
{
String? SiteName;
String? ContactTitle;
String? ContactName;
String? ContactPhone;
String? ContactEmail;
Address({this.SiteName,this.ContactTitle,this.ContactName,this.ContactPhone,this.ContactEmail});
Address.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
SiteName = json['SiteName'];
ContactTitle = json['ContactTitle'];
ContactName = json['ContactName'];
ContactPhone = json['ContactPhone'];
ContactEmail = json['ContactEmail'];
return this;
}
Map<String, dynamic> toJson() => super.toJson()..addAll({
'SiteName': SiteName,
'ContactTitle': ContactTitle,
'ContactName': ContactName,
'ContactPhone': ContactPhone,
'ContactEmail': ContactEmail
});
getTypeName() => "Address";
TypeContext? context = _ctx;
}
class Schedule implements IConvertible
{
String? Workspace;
String? ObjectId;
String? VersionId;
String? BasedOn;
String? Start;
String? End;
String? TimeZone;
List<String>? Users;
List<String>? Teams;
Map<String,dynamic?>? Data;
Schedule({this.Workspace,this.ObjectId,this.VersionId,this.BasedOn,this.Start,this.End,this.TimeZone,this.Users,this.Teams,this.Data});
Schedule.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
ObjectId = json['ObjectId'];
VersionId = json['VersionId'];
BasedOn = json['BasedOn'];
Start = json['Start'];
End = json['End'];
TimeZone = json['TimeZone'];
Users = JsonConverters.fromJson(json['Users'],'List<String>',context!);
Teams = JsonConverters.fromJson(json['Teams'],'List<String>',context!);
Data = JsonConverters.fromJson(json['Data'],'Map<String,dynamic?>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'ObjectId': ObjectId,
'VersionId': VersionId,
'BasedOn': BasedOn,
'Start': Start,
'End': End,
'TimeZone': TimeZone,
'Users': JsonConverters.toJson(Users,'List<String>',context!),
'Teams': JsonConverters.toJson(Teams,'List<String>',context!),
'Data': JsonConverters.toJson(Data,'Map<String,dynamic?>',context!)
};
getTypeName() => "Schedule";
TypeContext? context = _ctx;
}
class TimeWindow implements IConvertible
{
int? Start;
int? End;
TimeWindow({this.Start,this.End});
TimeWindow.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Start = json['Start'];
End = json['End'];
return this;
}
Map<String, dynamic> toJson() => {
'Start': Start,
'End': End
};
getTypeName() => "TimeWindow";
TypeContext? context = _ctx;
}
class DomainItem implements IConvertible
{
String? Workspace;
String? ObjectId;
String? VersionId;
String? LastUpdated;
DomainItem({this.Workspace,this.ObjectId,this.VersionId,this.LastUpdated});
DomainItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
ObjectId = json['ObjectId'];
VersionId = json['VersionId'];
LastUpdated = json['LastUpdated'];
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'ObjectId': ObjectId,
'VersionId': VersionId,
'LastUpdated': LastUpdated
};
getTypeName() => "DomainItem";
TypeContext? context = _ctx;
}
class ClassedItem implements IConvertible
{
String? ObjectId;
String? Class;
String? VersionId;
List<String>? Ancestors;
String? Type;
ClassedItem({this.ObjectId,this.Class,this.VersionId,this.Ancestors,this.Type});
ClassedItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ObjectId = json['ObjectId'];
Class = json['Class'];
VersionId = json['VersionId'];
Ancestors = JsonConverters.fromJson(json['Ancestors'],'List<String>',context!);
Type = json['Type'];
return this;
}
Map<String, dynamic> toJson() => {
'ObjectId': ObjectId,
'Class': Class,
'VersionId': VersionId,
'Ancestors': JsonConverters.toJson(Ancestors,'List<String>',context!),
'Type': Type
};
getTypeName() => "ClassedItem";
TypeContext? context = _ctx;
}
class RangeExceptionItem implements IConvertible
{
String? Binding;
String? Message;
String? Type;
String? ClassName;
RangeExceptionItem({this.Binding,this.Message,this.Type,this.ClassName});
RangeExceptionItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Binding = json['Binding'];
Message = json['Message'];
Type = json['Type'];
ClassName = json['ClassName'];
return this;
}
Map<String, dynamic> toJson() => {
'Binding': Binding,
'Message': Message,
'Type': Type,
'ClassName': ClassName
};
getTypeName() => "RangeExceptionItem";
TypeContext? context = _ctx;
}
class EventItem implements IConvertible
{
String? ObjectId;
String? Date;
Location? Location;
String? Barcode;
String? Details;
String? Type;
bool? IsScan;
String? User;
String? SelectedBy;
String? Status;
String? StatusType;
String? DateCreated;
bool? Automatic;
EventItem({this.ObjectId,this.Date,this.Location,this.Barcode,this.Details,this.Type,this.IsScan,this.User,this.SelectedBy,this.Status,this.StatusType,this.DateCreated,this.Automatic});
EventItem.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ObjectId = json['ObjectId'];
Date = json['Date'];
Location = JsonConverters.fromJson(json['Location'],'Location',context!);
Barcode = json['Barcode'];
Details = json['Details'];
Type = json['Type'];
IsScan = json['IsScan'];
User = json['User'];
SelectedBy = json['SelectedBy'];
Status = json['Status'];
StatusType = json['StatusType'];
DateCreated = json['DateCreated'];
Automatic = json['Automatic'];
return this;
}
Map<String, dynamic> toJson() => {
'ObjectId': ObjectId,
'Date': Date,
'Location': JsonConverters.toJson(Location,'Location',context!),
'Barcode': Barcode,
'Details': Details,
'Type': Type,
'IsScan': IsScan,
'User': User,
'SelectedBy': SelectedBy,
'Status': Status,
'StatusType': StatusType,
'DateCreated': DateCreated,
'Automatic': Automatic
};
getTypeName() => "EventItem";
TypeContext? context = _ctx;
}
/**
* Represents a DTO for a team in a workspace. Calls without an ObjectId will retrieve an array of all team objects for the workspace.
*/
class Team implements IConvertible
{
String? Workspace;
String? TimeZone;
String? ObjectId;
String? ExternalId;
String? VersionId;
String? BasedOn;
String? Name;
bool? Enabled;
List<DomainItem>? Members;
DomainItem? Lead;
DomainItem? Parent;
Address? Address;
Map<String,String?>? Data;
List<String>? Teams;
List<EventItem>? Events;
String? CreatedBy;
Map<String,dynamic?>? ActiveLaborTypes;
Team({this.Workspace,this.TimeZone,this.ObjectId,this.ExternalId,this.VersionId,this.BasedOn,this.Name,this.Enabled,this.Members,this.Lead,this.Parent,this.Address,this.Data,this.Teams,this.Events,this.CreatedBy,this.ActiveLaborTypes});
Team.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
TimeZone = json['TimeZone'];
ObjectId = json['ObjectId'];
ExternalId = json['ExternalId'];
VersionId = json['VersionId'];
BasedOn = json['BasedOn'];
Name = json['Name'];
Enabled = json['Enabled'];
Members = JsonConverters.fromJson(json['Members'],'List<DomainItem>',context!);
Lead = JsonConverters.fromJson(json['Lead'],'DomainItem',context!);
Parent = JsonConverters.fromJson(json['Parent'],'DomainItem',context!);
Address = JsonConverters.fromJson(json['Address'],'Address',context!);
Data = JsonConverters.toStringMap(json['Data']);
Teams = JsonConverters.fromJson(json['Teams'],'List<String>',context!);
Events = JsonConverters.fromJson(json['Events'],'List<EventItem>',context!);
CreatedBy = json['CreatedBy'];
ActiveLaborTypes = JsonConverters.fromJson(json['ActiveLaborTypes'],'Map<String,dynamic?>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'TimeZone': TimeZone,
'ObjectId': ObjectId,
'ExternalId': ExternalId,
'VersionId': VersionId,
'BasedOn': BasedOn,
'Name': Name,
'Enabled': Enabled,
'Members': JsonConverters.toJson(Members,'List<DomainItem>',context!),
'Lead': JsonConverters.toJson(Lead,'DomainItem',context!),
'Parent': JsonConverters.toJson(Parent,'DomainItem',context!),
'Address': JsonConverters.toJson(Address,'Address',context!),
'Data': Data,
'Teams': JsonConverters.toJson(Teams,'List<String>',context!),
'Events': JsonConverters.toJson(Events,'List<EventItem>',context!),
'CreatedBy': CreatedBy,
'ActiveLaborTypes': JsonConverters.toJson(ActiveLaborTypes,'Map<String,dynamic?>',context!)
};
getTypeName() => "Team";
TypeContext? context = _ctx;
}
class CustomDataField implements IConvertible
{
String? Binding;
String? Label;
dynamic? Value;
String? DataType;
bool? IsReadOnly;
bool? IsHidden;
String? Values;
CustomDataField({this.Binding,this.Label,this.Value,this.DataType,this.IsReadOnly,this.IsHidden,this.Values});
CustomDataField.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Binding = json['Binding'];
Label = json['Label'];
Value = JsonConverters.fromJson(json['Value'],'dynamic',context!);
DataType = json['DataType'];
IsReadOnly = json['IsReadOnly'];
IsHidden = json['IsHidden'];
Values = json['Values'];
return this;
}
Map<String, dynamic> toJson() => {
'Binding': Binding,
'Label': Label,
'Value': JsonConverters.toJson(Value,'dynamic',context!),
'DataType': DataType,
'IsReadOnly': IsReadOnly,
'IsHidden': IsHidden,
'Values': Values
};
getTypeName() => "CustomDataField";
TypeContext? context = _ctx;
}
class DocumentOwnerDataTask implements IConvertible
{
String? ObjectId;
String? Name;
String? Status;
String? TaskType;
DateTime? LastUpdated;
DateTime? Created;
int? Priority;
double? Rank;
Team? FirstTeam;
Address? Address;
List<CustomDataField>? CustomDataFields;
DocumentOwnerDataTask({this.ObjectId,this.Name,this.Status,this.TaskType,this.LastUpdated,this.Created,this.Priority,this.Rank,this.FirstTeam,this.Address,this.CustomDataFields});
DocumentOwnerDataTask.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ObjectId = json['ObjectId'];
Name = json['Name'];
Status = json['Status'];
TaskType = json['TaskType'];
LastUpdated = JsonConverters.fromJson(json['LastUpdated'],'DateTime',context!);
Created = JsonConverters.fromJson(json['Created'],'DateTime',context!);
Priority = json['Priority'];
Rank = JsonConverters.toDouble(json['Rank']);
FirstTeam = JsonConverters.fromJson(json['FirstTeam'],'Team',context!);
Address = JsonConverters.fromJson(json['Address'],'Address',context!);
CustomDataFields = JsonConverters.fromJson(json['CustomDataFields'],'List<CustomDataField>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ObjectId': ObjectId,
'Name': Name,
'Status': Status,
'TaskType': TaskType,
'LastUpdated': JsonConverters.toJson(LastUpdated,'DateTime',context!),
'Created': JsonConverters.toJson(Created,'DateTime',context!),
'Priority': Priority,
'Rank': Rank,
'FirstTeam': JsonConverters.toJson(FirstTeam,'Team',context!),
'Address': JsonConverters.toJson(Address,'Address',context!),
'CustomDataFields': JsonConverters.toJson(CustomDataFields,'List<CustomDataField>',context!)
};
getTypeName() => "DocumentOwnerDataTask";
TypeContext? context = _ctx;
}
class AddressBasic extends AddressBase implements IConvertible
{
AddressBasic();
AddressBasic.fromJson(Map<String, dynamic> json) : super.fromJson(json);
fromMap(Map<String, dynamic> json) {
super.fromMap(json);
return this;
}
Map<String, dynamic> toJson() => super.toJson();
getTypeName() => "AddressBasic";
TypeContext? context = _ctx;
}
class DocumentOwnerDataAsset implements IConvertible
{
String? ObjectId;
String? Name;
String? AssetType;
DateTime? LastUpdated;
DateTime? Created;
AddressBasic? Address;
List<CustomDataField>? CustomDataFields;
DocumentOwnerDataAsset({this.ObjectId,this.Name,this.AssetType,this.LastUpdated,this.Created,this.Address,this.CustomDataFields});
DocumentOwnerDataAsset.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
ObjectId = json['ObjectId'];
Name = json['Name'];
AssetType = json['AssetType'];
LastUpdated = JsonConverters.fromJson(json['LastUpdated'],'DateTime',context!);
Created = JsonConverters.fromJson(json['Created'],'DateTime',context!);
Address = JsonConverters.fromJson(json['Address'],'AddressBasic',context!);
CustomDataFields = JsonConverters.fromJson(json['CustomDataFields'],'List<CustomDataField>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'ObjectId': ObjectId,
'Name': Name,
'AssetType': AssetType,
'LastUpdated': JsonConverters.toJson(LastUpdated,'DateTime',context!),
'Created': JsonConverters.toJson(Created,'DateTime',context!),
'Address': JsonConverters.toJson(Address,'AddressBasic',context!),
'CustomDataFields': JsonConverters.toJson(CustomDataFields,'List<CustomDataField>',context!)
};
getTypeName() => "DocumentOwnerDataAsset";
TypeContext? context = _ctx;
}
class DocumentOwnerData implements IConvertible
{
String? OwnerType;
DocumentOwnerDataTask? TaskData;
DocumentOwnerDataAsset? AssetData;
DocumentOwnerData({this.OwnerType,this.TaskData,this.AssetData});
DocumentOwnerData.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
OwnerType = json['OwnerType'];
TaskData = JsonConverters.fromJson(json['TaskData'],'DocumentOwnerDataTask',context!);
AssetData = JsonConverters.fromJson(json['AssetData'],'DocumentOwnerDataAsset',context!);
return this;
}
Map<String, dynamic> toJson() => {
'OwnerType': OwnerType,
'TaskData': JsonConverters.toJson(TaskData,'DocumentOwnerDataTask',context!),
'AssetData': JsonConverters.toJson(AssetData,'DocumentOwnerDataAsset',context!)
};
getTypeName() => "DocumentOwnerData";
TypeContext? context = _ctx;
}
/**
* Represents a document associated with a task or user. To return multiple documents, call /{Workspace}/Document and pass in query parameter ids = comma separated list of document ids.
*/
class Document implements IConvertible
{
String? Workspace;
String? AssignedWorkspace;
String? ObjectId;
String? VersionId;
String? BasedOn;
String? Created;
String? ExternalId;
String? LastUpdated;
String? Type;
String? Name;
String? Title;
Map<String,dynamic?>? Data;
ClassedItem? Owner;
List<ClassedItem>? SecondaryOwners;
Location? Location;
String? Date;
String? CreatedBy;
double? PercentComplete;
int? PercentTotal;
int? PercentDone;
List<RangeExceptionItem>? RangeExceptions;
bool? Submitted;
String? Schema;
DocumentOwnerData? OwnerData;
Document({this.Workspace,this.AssignedWorkspace,this.ObjectId,this.VersionId,this.BasedOn,this.Created,this.ExternalId,this.LastUpdated,this.Type,this.Name,this.Title,this.Data,this.Owner,this.SecondaryOwners,this.Location,this.Date,this.CreatedBy,this.PercentComplete,this.PercentTotal,this.PercentDone,this.RangeExceptions,this.Submitted,this.Schema,this.OwnerData});
Document.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
AssignedWorkspace = json['AssignedWorkspace'];
ObjectId = json['ObjectId'];
VersionId = json['VersionId'];
BasedOn = json['BasedOn'];
Created = json['Created'];
ExternalId = json['ExternalId'];
LastUpdated = json['LastUpdated'];
Type = json['Type'];
Name = json['Name'];
Title = json['Title'];
Data = JsonConverters.fromJson(json['Data'],'Map<String,dynamic?>',context!);
Owner = JsonConverters.fromJson(json['Owner'],'ClassedItem',context!);
SecondaryOwners = JsonConverters.fromJson(json['SecondaryOwners'],'List<ClassedItem>',context!);
Location = JsonConverters.fromJson(json['Location'],'Location',context!);
Date = json['Date'];
CreatedBy = json['CreatedBy'];
PercentComplete = JsonConverters.toDouble(json['PercentComplete']);
PercentTotal = json['PercentTotal'];
PercentDone = json['PercentDone'];
RangeExceptions = JsonConverters.fromJson(json['RangeExceptions'],'List<RangeExceptionItem>',context!);
Submitted = json['Submitted'];
Schema = json['Schema'];
OwnerData = JsonConverters.fromJson(json['OwnerData'],'DocumentOwnerData',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'AssignedWorkspace': AssignedWorkspace,
'ObjectId': ObjectId,
'VersionId': VersionId,
'BasedOn': BasedOn,
'Created': Created,
'ExternalId': ExternalId,
'LastUpdated': LastUpdated,
'Type': Type,
'Name': Name,
'Title': Title,
'Data': JsonConverters.toJson(Data,'Map<String,dynamic?>',context!),
'Owner': JsonConverters.toJson(Owner,'ClassedItem',context!),
'SecondaryOwners': JsonConverters.toJson(SecondaryOwners,'List<ClassedItem>',context!),
'Location': JsonConverters.toJson(Location,'Location',context!),
'Date': Date,
'CreatedBy': CreatedBy,
'PercentComplete': PercentComplete,
'PercentTotal': PercentTotal,
'PercentDone': PercentDone,
'RangeExceptions': JsonConverters.toJson(RangeExceptions,'List<RangeExceptionItem>',context!),
'Submitted': Submitted,
'Schema': Schema,
'OwnerData': JsonConverters.toJson(OwnerData,'DocumentOwnerData',context!)
};
getTypeName() => "Document";
TypeContext? context = _ctx;
}
class RequiredAsset implements IConvertible
{
int? Number;
String? Type;
RequiredAsset({this.Number,this.Type});
RequiredAsset.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Number = json['Number'];
Type = json['Type'];
return this;
}
Map<String, dynamic> toJson() => {
'Number': Number,
'Type': Type
};
getTypeName() => "RequiredAsset";
TypeContext? context = _ctx;
}
class RequiredInventoryType implements IConvertible
{
int? Number;
String? Type;
String? Name;
bool? IsSerialized;
String? Description;
RequiredInventoryType({this.Number,this.Type,this.Name,this.IsSerialized,this.Description});
RequiredInventoryType.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Number = json['Number'];
Type = json['Type'];
Name = json['Name'];
IsSerialized = json['IsSerialized'];
Description = json['Description'];
return this;
}
Map<String, dynamic> toJson() => {
'Number': Number,
'Type': Type,
'Name': Name,
'IsSerialized': IsSerialized,
'Description': Description
};
getTypeName() => "RequiredInventoryType";
TypeContext? context = _ctx;
}
class RequiredUser implements IConvertible
{
int? Number;
List<String>? SkillTags;
RequiredUser({this.Number,this.SkillTags});
RequiredUser.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Number = json['Number'];
SkillTags = JsonConverters.fromJson(json['SkillTags'],'List<String>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Number': Number,
'SkillTags': JsonConverters.toJson(SkillTags,'List<String>',context!)
};
getTypeName() => "RequiredUser";
TypeContext? context = _ctx;
}
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;
}
class BindingDescriptor implements IConvertible
{
String? Binding;
bool? Required;
BindingDescriptor({this.Binding,this.Required});
BindingDescriptor.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Binding = json['Binding'];
Required = json['Required'];
return this;
}
Map<String, dynamic> toJson() => {
'Binding': Binding,
'Required': Required
};
getTypeName() => "BindingDescriptor";
TypeContext? context = _ctx;
}
class TaskStatusDef implements IConvertible
{
String? Name;
String? Color;
String? Code;
String? TransitionFrom;
String? TransitionMessage;
List<String>? TransitionCustomFields;
String? HiddenIf;
bool? IsStart;
bool? IsEnd;
bool? IsBlocked;
String? StatusType;
String? ProgressType;
List<String>? AutoCreateDocuments;
bool? LockTask;
List<BindingDescriptor>? SubmittedForms;
TaskStatusDef({this.Name,this.Color,this.Code,this.TransitionFrom,this.TransitionMessage,this.TransitionCustomFields,this.HiddenIf,this.IsStart,this.IsEnd,this.IsBlocked,this.StatusType,this.ProgressType,this.AutoCreateDocuments,this.LockTask,this.SubmittedForms});
TaskStatusDef.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Name = json['Name'];
Color = json['Color'];
Code = json['Code'];
TransitionFrom = json['TransitionFrom'];
TransitionMessage = json['TransitionMessage'];
TransitionCustomFields = JsonConverters.fromJson(json['TransitionCustomFields'],'List<String>',context!);
HiddenIf = json['HiddenIf'];
IsStart = json['IsStart'];
IsEnd = json['IsEnd'];
IsBlocked = json['IsBlocked'];
StatusType = json['StatusType'];
ProgressType = json['ProgressType'];
AutoCreateDocuments = JsonConverters.fromJson(json['AutoCreateDocuments'],'List<String>',context!);
LockTask = json['LockTask'];
SubmittedForms = JsonConverters.fromJson(json['SubmittedForms'],'List<BindingDescriptor>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Name': Name,
'Color': Color,
'Code': Code,
'TransitionFrom': TransitionFrom,
'TransitionMessage': TransitionMessage,
'TransitionCustomFields': JsonConverters.toJson(TransitionCustomFields,'List<String>',context!),
'HiddenIf': HiddenIf,
'IsStart': IsStart,
'IsEnd': IsEnd,
'IsBlocked': IsBlocked,
'StatusType': StatusType,
'ProgressType': ProgressType,
'AutoCreateDocuments': JsonConverters.toJson(AutoCreateDocuments,'List<String>',context!),
'LockTask': LockTask,
'SubmittedForms': JsonConverters.toJson(SubmittedForms,'List<BindingDescriptor>',context!)
};
getTypeName() => "TaskStatusDef";
TypeContext? context = _ctx;
}
class TaskTemplate implements IConvertible
{
List<CustomField>? CustomFields;
List<TaskStatusDef>? Statuses;
String? TaskListDetails;
String? AutoAssignStatus;
String? AutoUnassignStatus;
String? AutoScheduleStatus;
String? AutoUnscheduleStatus;
String? AutoUpdateStartStatus;
String? AutoUpdateEndStatus;
String? ArrivalStatus;
String? DepartureStatus;
bool? ConfirmArrival;
bool? ConfirmDeparture;
bool? ManualArrivalAllowed;
bool? ManualDepartureAllowed;
bool? HideDisabledStatuses;
int? GeofenceRadius;
TaskTemplate({this.CustomFields,this.Statuses,this.TaskListDetails,this.AutoAssignStatus,this.AutoUnassignStatus,this.AutoScheduleStatus,this.AutoUnscheduleStatus,this.AutoUpdateStartStatus,this.AutoUpdateEndStatus,this.ArrivalStatus,this.DepartureStatus,this.ConfirmArrival,this.ConfirmDeparture,this.ManualArrivalAllowed,this.ManualDepartureAllowed,this.HideDisabledStatuses,this.GeofenceRadius});
TaskTemplate.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
CustomFields = JsonConverters.fromJson(json['CustomFields'],'List<CustomField>',context!);
Statuses = JsonConverters.fromJson(json['Statuses'],'List<TaskStatusDef>',context!);
TaskListDetails = json['TaskListDetails'];
AutoAssignStatus = json['AutoAssignStatus'];
AutoUnassignStatus = json['AutoUnassignStatus'];
AutoScheduleStatus = json['AutoScheduleStatus'];
AutoUnscheduleStatus = json['AutoUnscheduleStatus'];
AutoUpdateStartStatus = json['AutoUpdateStartStatus'];
AutoUpdateEndStatus = json['AutoUpdateEndStatus'];
ArrivalStatus = json['ArrivalStatus'];
DepartureStatus = json['DepartureStatus'];
ConfirmArrival = json['ConfirmArrival'];
ConfirmDeparture = json['ConfirmDeparture'];
ManualArrivalAllowed = json['ManualArrivalAllowed'];
ManualDepartureAllowed = json['ManualDepartureAllowed'];
HideDisabledStatuses = json['HideDisabledStatuses'];
GeofenceRadius = json['GeofenceRadius'];
return this;
}
Map<String, dynamic> toJson() => {
'CustomFields': JsonConverters.toJson(CustomFields,'List<CustomField>',context!),
'Statuses': JsonConverters.toJson(Statuses,'List<TaskStatusDef>',context!),
'TaskListDetails': TaskListDetails,
'AutoAssignStatus': AutoAssignStatus,
'AutoUnassignStatus': AutoUnassignStatus,
'AutoScheduleStatus': AutoScheduleStatus,
'AutoUnscheduleStatus': AutoUnscheduleStatus,
'AutoUpdateStartStatus': AutoUpdateStartStatus,
'AutoUpdateEndStatus': AutoUpdateEndStatus,
'ArrivalStatus': ArrivalStatus,
'DepartureStatus': DepartureStatus,
'ConfirmArrival': ConfirmArrival,
'ConfirmDeparture': ConfirmDeparture,
'ManualArrivalAllowed': ManualArrivalAllowed,
'ManualDepartureAllowed': ManualDepartureAllowed,
'HideDisabledStatuses': HideDisabledStatuses,
'GeofenceRadius': GeofenceRadius
};
getTypeName() => "TaskTemplate";
TypeContext? context = _ctx;
}
/**
* Contains the data for a task within the system, with versioned object referneces to users and forms.
*/
class Task implements IConvertible
{
String? Workspace;
String? AssignedWorkspace;
String? ObjectId;
String? VersionId;
String? BasedOn;
String? ExternalId;
String? Created;
String? LastUpdated;
String? LastUpdatedLocal;
double? Rank;
String? Name;
String? Description;
Address? Address;
List<Schedule>? Schedules;
String? Status;
String? BlockedReason;
String? TaskType;
String? DueDate;
String? DesiredCompletionDate;
TimeWindow? DesiredTimeWindow;
int? Priority;
double? PercentComplete;
List<String>? Users;
List<DomainItem>? UsersExtended;
List<DomainItem>? Teams;
List<String>? Documents;
List<DomainItem>? Docs;
List<Document>? DocSummaries;
Map<String,dynamic?>? Data;
List<String>? Contacts;
Location? StatusLocation;
List<String>? Assets;
List<String>? Tasks;
String? Owner;
List<EventItem>? Events;
Map<String,List<EventItem>?>? UserStatuses;
String? CreatedBy;
String? TimeZone;
String? SeriesId;
int? JobTimerRunTime;
int? JobTimerPauseTime;
int? JobTimerTransitTime;
String? CurrentJobTimerStatus;
String? CurrentJobTimerTime;
List<String>? InventoryItems;
List<String>? LaborItems;
List<RequiredAsset>? RequiredAssets;
List<RequiredInventoryType>? RequiredInventoryTypes;
List<RequiredUser>? RequiredUsers;
bool? Locked;
bool? Ready;
TaskTemplate? TaskTemplate;
List<CustomDataField>? CustomDataFields;
Task({this.Workspace,this.AssignedWorkspace,this.ObjectId,this.VersionId,this.BasedOn,this.ExternalId,this.Created,this.LastUpdated,this.LastUpdatedLocal,this.Rank,this.Name,this.Description,this.Address,this.Schedules,this.Status,this.BlockedReason,this.TaskType,this.DueDate,this.DesiredCompletionDate,this.DesiredTimeWindow,this.Priority,this.PercentComplete,this.Users,this.UsersExtended,this.Teams,this.Documents,this.Docs,this.DocSummaries,this.Data,this.Contacts,this.StatusLocation,this.Assets,this.Tasks,this.Owner,this.Events,this.UserStatuses,this.CreatedBy,this.TimeZone,this.SeriesId,this.JobTimerRunTime,this.JobTimerPauseTime,this.JobTimerTransitTime,this.CurrentJobTimerStatus,this.CurrentJobTimerTime,this.InventoryItems,this.LaborItems,this.RequiredAssets,this.RequiredInventoryTypes,this.RequiredUsers,this.Locked,this.Ready,this.TaskTemplate,this.CustomDataFields});
Task.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Workspace = json['Workspace'];
AssignedWorkspace = json['AssignedWorkspace'];
ObjectId = json['ObjectId'];
VersionId = json['VersionId'];
BasedOn = json['BasedOn'];
ExternalId = json['ExternalId'];
Created = json['Created'];
LastUpdated = json['LastUpdated'];
LastUpdatedLocal = json['LastUpdatedLocal'];
Rank = JsonConverters.toDouble(json['Rank']);
Name = json['Name'];
Description = json['Description'];
Address = JsonConverters.fromJson(json['Address'],'Address',context!);
Schedules = JsonConverters.fromJson(json['Schedules'],'List<Schedule>',context!);
Status = json['Status'];
BlockedReason = json['BlockedReason'];
TaskType = json['TaskType'];
DueDate = json['DueDate'];
DesiredCompletionDate = json['DesiredCompletionDate'];
DesiredTimeWindow = JsonConverters.fromJson(json['DesiredTimeWindow'],'TimeWindow',context!);
Priority = json['Priority'];
PercentComplete = JsonConverters.toDouble(json['PercentComplete']);
Users = JsonConverters.fromJson(json['Users'],'List<String>',context!);
UsersExtended = JsonConverters.fromJson(json['UsersExtended'],'List<DomainItem>',context!);
Teams = JsonConverters.fromJson(json['Teams'],'List<DomainItem>',context!);
Documents = JsonConverters.fromJson(json['Documents'],'List<String>',context!);
Docs = JsonConverters.fromJson(json['Docs'],'List<DomainItem>',context!);
DocSummaries = JsonConverters.fromJson(json['DocSummaries'],'List<Document>',context!);
Data = JsonConverters.fromJson(json['Data'],'Map<String,dynamic?>',context!);
Contacts = JsonConverters.fromJson(json['Contacts'],'List<String>',context!);
StatusLocation = JsonConverters.fromJson(json['StatusLocation'],'Location',context!);
Assets = JsonConverters.fromJson(json['Assets'],'List<String>',context!);
Tasks = JsonConverters.fromJson(json['Tasks'],'List<String>',context!);
Owner = json['Owner'];
Events = JsonConverters.fromJson(json['Events'],'List<EventItem>',context!);
UserStatuses = JsonConverters.fromJson(json['UserStatuses'],'Map<String,List<EventItem>?>',context!);
CreatedBy = json['CreatedBy'];
TimeZone = json['TimeZone'];
SeriesId = json['SeriesId'];
JobTimerRunTime = json['JobTimerRunTime'];
JobTimerPauseTime = json['JobTimerPauseTime'];
JobTimerTransitTime = json['JobTimerTransitTime'];
CurrentJobTimerStatus = json['CurrentJobTimerStatus'];
CurrentJobTimerTime = json['CurrentJobTimerTime'];
InventoryItems = JsonConverters.fromJson(json['InventoryItems'],'List<String>',context!);
LaborItems = JsonConverters.fromJson(json['LaborItems'],'List<String>',context!);
RequiredAssets = JsonConverters.fromJson(json['RequiredAssets'],'List<RequiredAsset>',context!);
RequiredInventoryTypes = JsonConverters.fromJson(json['RequiredInventoryTypes'],'List<RequiredInventoryType>',context!);
RequiredUsers = JsonConverters.fromJson(json['RequiredUsers'],'List<RequiredUser>',context!);
Locked = json['Locked'];
Ready = json['Ready'];
TaskTemplate = JsonConverters.fromJson(json['TaskTemplate'],'TaskTemplate',context!);
CustomDataFields = JsonConverters.fromJson(json['CustomDataFields'],'List<CustomDataField>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Workspace': Workspace,
'AssignedWorkspace': AssignedWorkspace,
'ObjectId': ObjectId,
'VersionId': VersionId,
'BasedOn': BasedOn,
'ExternalId': ExternalId,
'Created': Created,
'LastUpdated': LastUpdated,
'LastUpdatedLocal': LastUpdatedLocal,
'Rank': Rank,
'Name': Name,
'Description': Description,
'Address': JsonConverters.toJson(Address,'Address',context!),
'Schedules': JsonConverters.toJson(Schedules,'List<Schedule>',context!),
'Status': Status,
'BlockedReason': BlockedReason,
'TaskType': TaskType,
'DueDate': DueDate,
'DesiredCompletionDate': DesiredCompletionDate,
'DesiredTimeWindow': JsonConverters.toJson(DesiredTimeWindow,'TimeWindow',context!),
'Priority': Priority,
'PercentComplete': PercentComplete,
'Users': JsonConverters.toJson(Users,'List<String>',context!),
'UsersExtended': JsonConverters.toJson(UsersExtended,'List<DomainItem>',context!),
'Teams': JsonConverters.toJson(Teams,'List<DomainItem>',context!),
'Documents': JsonConverters.toJson(Documents,'List<String>',context!),
'Docs': JsonConverters.toJson(Docs,'List<DomainItem>',context!),
'DocSummaries': JsonConverters.toJson(DocSummaries,'List<Document>',context!),
'Data': JsonConverters.toJson(Data,'Map<String,dynamic?>',context!),
'Contacts': JsonConverters.toJson(Contacts,'List<String>',context!),
'StatusLocation': JsonConverters.toJson(StatusLocation,'Location',context!),
'Assets': JsonConverters.toJson(Assets,'List<String>',context!),
'Tasks': JsonConverters.toJson(Tasks,'List<String>',context!),
'Owner': Owner,
'Events': JsonConverters.toJson(Events,'List<EventItem>',context!),
'UserStatuses': JsonConverters.toJson(UserStatuses,'Map<String,List<EventItem>?>',context!),
'CreatedBy': CreatedBy,
'TimeZone': TimeZone,
'SeriesId': SeriesId,
'JobTimerRunTime': JobTimerRunTime,
'JobTimerPauseTime': JobTimerPauseTime,
'JobTimerTransitTime': JobTimerTransitTime,
'CurrentJobTimerStatus': CurrentJobTimerStatus,
'CurrentJobTimerTime': CurrentJobTimerTime,
'InventoryItems': JsonConverters.toJson(InventoryItems,'List<String>',context!),
'LaborItems': JsonConverters.toJson(LaborItems,'List<String>',context!),
'RequiredAssets': JsonConverters.toJson(RequiredAssets,'List<RequiredAsset>',context!),
'RequiredInventoryTypes': JsonConverters.toJson(RequiredInventoryTypes,'List<RequiredInventoryType>',context!),
'RequiredUsers': JsonConverters.toJson(RequiredUsers,'List<RequiredUser>',context!),
'Locked': Locked,
'Ready': Ready,
'TaskTemplate': JsonConverters.toJson(TaskTemplate,'TaskTemplate',context!),
'CustomDataFields': JsonConverters.toJson(CustomDataFields,'List<CustomDataField>',context!)
};
getTypeName() => "Task";
TypeContext? context = _ctx;
}
// @DataContract
class PublicTask implements IConvertible
{
// @DataMember
String? Id;
// @DataMember
String? Workspace;
// @DataMember
String? TaskTemplate;
// @DataMember
Task? Task;
// @DataMember
List<Task>? Tasks;
PublicTask({this.Id,this.Workspace,this.TaskTemplate,this.Task,this.Tasks});
PublicTask.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Id = json['Id'];
Workspace = json['Workspace'];
TaskTemplate = json['TaskTemplate'];
Task = JsonConverters.fromJson(json['Task'],'Task',context!);
Tasks = JsonConverters.fromJson(json['Tasks'],'List<Task>',context!);
return this;
}
Map<String, dynamic> toJson() => {
'Id': Id,
'Workspace': Workspace,
'TaskTemplate': TaskTemplate,
'Task': JsonConverters.toJson(Task,'Task',context!),
'Tasks': JsonConverters.toJson(Tasks,'List<Task>',context!)
};
getTypeName() => "PublicTask";
TypeContext? context = _ctx;
}
class Address implements IConvertible
{
String? Street;
String? Unit;
String? City;
String? State;
String? Zip;
String? ContactTitle;
String? ContactName;
String? ContactPhone;
String? ContactEmail;
Location? Location;
String? SiteName;
bool? GeocodeFailed;
String? Country;
Address({this.Street,this.Unit,this.City,this.State,this.Zip,this.ContactTitle,this.ContactName,this.ContactPhone,this.ContactEmail,this.Location,this.SiteName,this.GeocodeFailed,this.Country});
Address.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
Street = json['Street'];
Unit = json['Unit'];
City = json['City'];
State = json['State'];
Zip = json['Zip'];
ContactTitle = json['ContactTitle'];
ContactName = json['ContactName'];
ContactPhone = json['ContactPhone'];
ContactEmail = json['ContactEmail'];
Location = JsonConverters.fromJson(json['Location'],'Location',context!);
SiteName = json['SiteName'];
GeocodeFailed = json['GeocodeFailed'];
Country = json['Country'];
return this;
}
Map<String, dynamic> toJson() => {
'Street': Street,
'Unit': Unit,
'City': City,
'State': State,
'Zip': Zip,
'ContactTitle': ContactTitle,
'ContactName': ContactName,
'ContactPhone': ContactPhone,
'ContactEmail': ContactEmail,
'Location': JsonConverters.toJson(Location,'Location',context!),
'SiteName': SiteName,
'GeocodeFailed': GeocodeFailed,
'Country': Country
};
getTypeName() => "Address";
TypeContext? context = _ctx;
}
class Location implements IConvertible
{
double? y;
double? x;
Location({this.y,this.x});
Location.fromJson(Map<String, dynamic> json) { fromMap(json); }
fromMap(Map<String, dynamic> json) {
y = JsonConverters.toDouble(json['y']);
x = JsonConverters.toDouble(json['x']);
return this;
}
Map<String, dynamic> toJson() => {
'y': y,
'x': x
};
getTypeName() => "Location";
TypeContext? context = _ctx;
}
TypeContext _ctx = TypeContext(library: 'dev.fieldsquared.com', types: <String, TypeInfo> {
'Location': TypeInfo(TypeOf.Class, create:() => Location()),
'AddressBase': TypeInfo(TypeOf.Class, create:() => AddressBase()),
'Address': TypeInfo(TypeOf.Class, create:() => Address()),
'Schedule': TypeInfo(TypeOf.Class, create:() => Schedule()),
'Map<String,dynamic?>': TypeInfo(TypeOf.Class, create:() => Map<String,dynamic?>()),
'TimeWindow': TypeInfo(TypeOf.Class, create:() => TimeWindow()),
'DomainItem': TypeInfo(TypeOf.Class, create:() => DomainItem()),
'ClassedItem': TypeInfo(TypeOf.Class, create:() => ClassedItem()),
'RangeExceptionItem': TypeInfo(TypeOf.Class, create:() => RangeExceptionItem()),
'EventItem': TypeInfo(TypeOf.Class, create:() => EventItem()),
'Team': TypeInfo(TypeOf.Class, create:() => Team()),
'List<DomainItem>': TypeInfo(TypeOf.Class, create:() => <DomainItem>[]),
'List<EventItem>': TypeInfo(TypeOf.Class, create:() => <EventItem>[]),
'CustomDataField': TypeInfo(TypeOf.Class, create:() => CustomDataField()),
'DocumentOwnerDataTask': TypeInfo(TypeOf.Class, create:() => DocumentOwnerDataTask()),
'List<CustomDataField>': TypeInfo(TypeOf.Class, create:() => <CustomDataField>[]),
'AddressBasic': TypeInfo(TypeOf.Class, create:() => AddressBasic()),
'DocumentOwnerDataAsset': TypeInfo(TypeOf.Class, create:() => DocumentOwnerDataAsset()),
'DocumentOwnerData': TypeInfo(TypeOf.Class, create:() => DocumentOwnerData()),
'Document': TypeInfo(TypeOf.Class, create:() => Document()),
'List<ClassedItem>': TypeInfo(TypeOf.Class, create:() => <ClassedItem>[]),
'List<RangeExceptionItem>': TypeInfo(TypeOf.Class, create:() => <RangeExceptionItem>[]),
'RequiredAsset': TypeInfo(TypeOf.Class, create:() => RequiredAsset()),
'RequiredInventoryType': TypeInfo(TypeOf.Class, create:() => RequiredInventoryType()),
'RequiredUser': TypeInfo(TypeOf.Class, create:() => RequiredUser()),
'CustomFieldDataType': TypeInfo(TypeOf.Enum, enumValues:CustomFieldDataType.values),
'CustomField': TypeInfo(TypeOf.Class, create:() => CustomField()),
'BindingDescriptor': TypeInfo(TypeOf.Class, create:() => BindingDescriptor()),
'TaskStatusDef': TypeInfo(TypeOf.Class, create:() => TaskStatusDef()),
'List<BindingDescriptor>': TypeInfo(TypeOf.Class, create:() => <BindingDescriptor>[]),
'TaskTemplate': TypeInfo(TypeOf.Class, create:() => TaskTemplate()),
'List<CustomField>': TypeInfo(TypeOf.Class, create:() => <CustomField>[]),
'List<TaskStatusDef>': TypeInfo(TypeOf.Class, create:() => <TaskStatusDef>[]),
'Task': TypeInfo(TypeOf.Class, create:() => Task()),
'List<Schedule>': TypeInfo(TypeOf.Class, create:() => <Schedule>[]),
'List<Document>': TypeInfo(TypeOf.Class, create:() => <Document>[]),
'Map<String,List<EventItem>?>': TypeInfo(TypeOf.Class, create:() => Map<String,List<EventItem>?>()),
'List<RequiredAsset>': TypeInfo(TypeOf.Class, create:() => <RequiredAsset>[]),
'List<RequiredInventoryType>': TypeInfo(TypeOf.Class, create:() => <RequiredInventoryType>[]),
'List<RequiredUser>': TypeInfo(TypeOf.Class, create:() => <RequiredUser>[]),
'PublicTask': TypeInfo(TypeOf.Class, create:() => PublicTask()),
'List<Task>': TypeInfo(TypeOf.Class, create:() => <Task>[]),
});
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}/API/Task/{Id} HTTP/1.1
Host: dev.fieldsquared.com
Accept: application/xml
Content-Type: application/xml
Content-Length: length
<PublicTask xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/Field2Office.API.Model.PublicApi.Tasks">
<Id>String</Id>
<Task>
<Asset xmlns="">String</Asset>
<City xmlns="">String</City>
<Contact xmlns="">String</Contact>
<Country xmlns="">String</Country>
<Created xmlns="">String</Created>
<Data xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays" xmlns="">
<d3p1:KeyValueOfstringanyType>
<d3p1:Key>String</d3p1:Key>
<d3p1:Value />
</d3p1:KeyValueOfstringanyType>
</Data>
<Description xmlns="">String</Description>
<DesiredCompletionDate xmlns="">String</DesiredCompletionDate>
<DueDate xmlns="">String</DueDate>
<ExternalId xmlns="">String</ExternalId>
<LastUpdated xmlns="">String</LastUpdated>
<Lat xmlns="">0</Lat>
<Lon xmlns="">0</Lon>
<Name xmlns="">String</Name>
<Priority xmlns="">0</Priority>
<ScheduleEnd xmlns="">String</ScheduleEnd>
<ScheduleStart xmlns="">String</ScheduleStart>
<State xmlns="">String</State>
<Status xmlns="">String</Status>
<StreetAddress xmlns="">String</StreetAddress>
<TaskType xmlns="">String</TaskType>
<Team xmlns="">String</Team>
<TimeZone xmlns="">String</TimeZone>
<Unit xmlns="">String</Unit>
<User xmlns="">String</User>
<Zip xmlns="">String</Zip>
</Task>
<TaskTemplate>String</TaskTemplate>
<Tasks>
<Task xmlns="">
<Asset>String</Asset>
<City>String</City>
<Contact>String</Contact>
<Country>String</Country>
<Created>String</Created>
<Data xmlns:d4p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
<d4p1:KeyValueOfstringanyType>
<d4p1:Key>String</d4p1:Key>
<d4p1:Value />
</d4p1:KeyValueOfstringanyType>
</Data>
<Description>String</Description>
<DesiredCompletionDate>String</DesiredCompletionDate>
<DueDate>String</DueDate>
<ExternalId>String</ExternalId>
<LastUpdated>String</LastUpdated>
<Lat>0</Lat>
<Lon>0</Lon>
<Name>String</Name>
<Priority>0</Priority>
<ScheduleEnd>String</ScheduleEnd>
<ScheduleStart>String</ScheduleStart>
<State>String</State>
<Status>String</Status>
<StreetAddress>String</StreetAddress>
<TaskType>String</TaskType>
<Team>String</Team>
<TimeZone>String</TimeZone>
<Unit>String</Unit>
<User>String</User>
<Zip>String</Zip>
</Task>
</Tasks>
<Workspace>String</Workspace>
</PublicTask>