Trendsic Platform Service

<back to all web services

ProjectJobsListRequest

Requires Authentication
The following routes are available for this service:
GET,POST,PUT,DELETE,OPTIONS/v1/Project/Job/{ProjectID}
import 'package:servicestack/servicestack.dart';
import 'dart:typed_data';

class CalendarEvent implements IConvertible
{
    int? CalendarEventId;
    String? CalendarId;
    DateTime? EventStart;
    DateTime? EventEnd;
    String? Location;
    String? Summary;
    String? Description;
    int? EventTypeId;
    bool? Recurrence;
    String? RecurrenceFrequency;
    String? RecurrenceBy;
    String? RecurrenceByValue;
    DateTime? RecurrenceUntil;
    String? CreatedBy;
    String? CreatedByName;
    DateTime? DateCreated;
    String? ModifiedBy;
    DateTime? DateModified;
    bool? Deleted;
    String? TimeZone;
    int? Offset;
    DateTime? TextReminderSentDate;
    bool? Confirmed;
    String? ConfirmationTextId;
    String? FirstTextReminderId;
    String? SecondTextReminderId;
    String? LocationUID;
    DateTime? AgentReminderSentDate;
    int? ContactId;
    bool? IsPrivate;
    int? ProjectID;
    int? JobID;
    DateTime? ProjectStartDate;
    DateTime? ProjectEndDate;
    DateTime? MaxCrewEndDate;
    DateTime? MaxEquipmentEndDate;
    String? CheckInId;
    bool? AllDay;
    String? JobName;
    String? JobStatusName;
    int? JobStatusId;
    String? ProjectName;
    int? ResourceId;
    String? ResourceName;
    DateTime? Original_EventStart;
    bool? Original_Recurrence;
    String? Original_RecurrenceFrequency;
    String? Original_RecurrenceBy;
    String? Original_RecurrenceByValue;
    DateTime? Original_RecurrenceUntil;
    String? Checksum;

    CalendarEvent({this.CalendarEventId,this.CalendarId,this.EventStart,this.EventEnd,this.Location,this.Summary,this.Description,this.EventTypeId,this.Recurrence,this.RecurrenceFrequency,this.RecurrenceBy,this.RecurrenceByValue,this.RecurrenceUntil,this.CreatedBy,this.CreatedByName,this.DateCreated,this.ModifiedBy,this.DateModified,this.Deleted,this.TimeZone,this.Offset,this.TextReminderSentDate,this.Confirmed,this.ConfirmationTextId,this.FirstTextReminderId,this.SecondTextReminderId,this.LocationUID,this.AgentReminderSentDate,this.ContactId,this.IsPrivate,this.ProjectID,this.JobID,this.ProjectStartDate,this.ProjectEndDate,this.MaxCrewEndDate,this.MaxEquipmentEndDate,this.CheckInId,this.AllDay,this.JobName,this.JobStatusName,this.JobStatusId,this.ProjectName,this.ResourceId,this.ResourceName,this.Original_EventStart,this.Original_Recurrence,this.Original_RecurrenceFrequency,this.Original_RecurrenceBy,this.Original_RecurrenceByValue,this.Original_RecurrenceUntil,this.Checksum});
    CalendarEvent.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        CalendarEventId = json['CalendarEventId'];
        CalendarId = json['CalendarId'];
        EventStart = JsonConverters.fromJson(json['EventStart'],'DateTime',context!);
        EventEnd = JsonConverters.fromJson(json['EventEnd'],'DateTime',context!);
        Location = json['Location'];
        Summary = json['Summary'];
        Description = json['Description'];
        EventTypeId = json['EventTypeId'];
        Recurrence = json['Recurrence'];
        RecurrenceFrequency = json['RecurrenceFrequency'];
        RecurrenceBy = json['RecurrenceBy'];
        RecurrenceByValue = json['RecurrenceByValue'];
        RecurrenceUntil = JsonConverters.fromJson(json['RecurrenceUntil'],'DateTime',context!);
        CreatedBy = json['CreatedBy'];
        CreatedByName = json['CreatedByName'];
        DateCreated = JsonConverters.fromJson(json['DateCreated'],'DateTime',context!);
        ModifiedBy = json['ModifiedBy'];
        DateModified = JsonConverters.fromJson(json['DateModified'],'DateTime',context!);
        Deleted = json['Deleted'];
        TimeZone = json['TimeZone'];
        Offset = json['Offset'];
        TextReminderSentDate = JsonConverters.fromJson(json['TextReminderSentDate'],'DateTime',context!);
        Confirmed = json['Confirmed'];
        ConfirmationTextId = json['ConfirmationTextId'];
        FirstTextReminderId = json['FirstTextReminderId'];
        SecondTextReminderId = json['SecondTextReminderId'];
        LocationUID = json['LocationUID'];
        AgentReminderSentDate = JsonConverters.fromJson(json['AgentReminderSentDate'],'DateTime',context!);
        ContactId = json['ContactId'];
        IsPrivate = json['IsPrivate'];
        ProjectID = json['ProjectID'];
        JobID = json['JobID'];
        ProjectStartDate = JsonConverters.fromJson(json['ProjectStartDate'],'DateTime',context!);
        ProjectEndDate = JsonConverters.fromJson(json['ProjectEndDate'],'DateTime',context!);
        MaxCrewEndDate = JsonConverters.fromJson(json['MaxCrewEndDate'],'DateTime',context!);
        MaxEquipmentEndDate = JsonConverters.fromJson(json['MaxEquipmentEndDate'],'DateTime',context!);
        CheckInId = json['CheckInId'];
        AllDay = json['AllDay'];
        JobName = json['JobName'];
        JobStatusName = json['JobStatusName'];
        JobStatusId = json['JobStatusId'];
        ProjectName = json['ProjectName'];
        ResourceId = json['ResourceId'];
        ResourceName = json['ResourceName'];
        Original_EventStart = JsonConverters.fromJson(json['Original_EventStart'],'DateTime',context!);
        Original_Recurrence = json['Original_Recurrence'];
        Original_RecurrenceFrequency = json['Original_RecurrenceFrequency'];
        Original_RecurrenceBy = json['Original_RecurrenceBy'];
        Original_RecurrenceByValue = json['Original_RecurrenceByValue'];
        Original_RecurrenceUntil = JsonConverters.fromJson(json['Original_RecurrenceUntil'],'DateTime',context!);
        Checksum = json['Checksum'];
        return this;
    }

    Map<String, dynamic> toJson() => {
        'CalendarEventId': CalendarEventId,
        'CalendarId': CalendarId,
        'EventStart': JsonConverters.toJson(EventStart,'DateTime',context!),
        'EventEnd': JsonConverters.toJson(EventEnd,'DateTime',context!),
        'Location': Location,
        'Summary': Summary,
        'Description': Description,
        'EventTypeId': EventTypeId,
        'Recurrence': Recurrence,
        'RecurrenceFrequency': RecurrenceFrequency,
        'RecurrenceBy': RecurrenceBy,
        'RecurrenceByValue': RecurrenceByValue,
        'RecurrenceUntil': JsonConverters.toJson(RecurrenceUntil,'DateTime',context!),
        'CreatedBy': CreatedBy,
        'CreatedByName': CreatedByName,
        'DateCreated': JsonConverters.toJson(DateCreated,'DateTime',context!),
        'ModifiedBy': ModifiedBy,
        'DateModified': JsonConverters.toJson(DateModified,'DateTime',context!),
        'Deleted': Deleted,
        'TimeZone': TimeZone,
        'Offset': Offset,
        'TextReminderSentDate': JsonConverters.toJson(TextReminderSentDate,'DateTime',context!),
        'Confirmed': Confirmed,
        'ConfirmationTextId': ConfirmationTextId,
        'FirstTextReminderId': FirstTextReminderId,
        'SecondTextReminderId': SecondTextReminderId,
        'LocationUID': LocationUID,
        'AgentReminderSentDate': JsonConverters.toJson(AgentReminderSentDate,'DateTime',context!),
        'ContactId': ContactId,
        'IsPrivate': IsPrivate,
        'ProjectID': ProjectID,
        'JobID': JobID,
        'ProjectStartDate': JsonConverters.toJson(ProjectStartDate,'DateTime',context!),
        'ProjectEndDate': JsonConverters.toJson(ProjectEndDate,'DateTime',context!),
        'MaxCrewEndDate': JsonConverters.toJson(MaxCrewEndDate,'DateTime',context!),
        'MaxEquipmentEndDate': JsonConverters.toJson(MaxEquipmentEndDate,'DateTime',context!),
        'CheckInId': CheckInId,
        'AllDay': AllDay,
        'JobName': JobName,
        'JobStatusName': JobStatusName,
        'JobStatusId': JobStatusId,
        'ProjectName': ProjectName,
        'ResourceId': ResourceId,
        'ResourceName': ResourceName,
        'Original_EventStart': JsonConverters.toJson(Original_EventStart,'DateTime',context!),
        'Original_Recurrence': Original_Recurrence,
        'Original_RecurrenceFrequency': Original_RecurrenceFrequency,
        'Original_RecurrenceBy': Original_RecurrenceBy,
        'Original_RecurrenceByValue': Original_RecurrenceByValue,
        'Original_RecurrenceUntil': JsonConverters.toJson(Original_RecurrenceUntil,'DateTime',context!),
        'Checksum': Checksum
    };

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

class Job implements IConvertible
{
    int? JobID;
    String? JobName;
    int? JobTypeID;
    DateTime? ExpectedStartDate;
    DateTime? ActualStartDate;
    DateTime? ExpectedCompletionDate;
    DateTime? ActualEndDate;
    bool? Active;
    String? CreatedByUID;
    int? ProjectID;
    int? StatusId;
    bool? AdvancedScheduling;
    bool? ShowTimes;
    List<CalendarEvent>? Schedule = [];

    Job({this.JobID,this.JobName,this.JobTypeID,this.ExpectedStartDate,this.ActualStartDate,this.ExpectedCompletionDate,this.ActualEndDate,this.Active,this.CreatedByUID,this.ProjectID,this.StatusId,this.AdvancedScheduling,this.ShowTimes,this.Schedule});
    Job.fromJson(Map<String, dynamic> json) { fromMap(json); }

    fromMap(Map<String, dynamic> json) {
        JobID = json['JobID'];
        JobName = json['JobName'];
        JobTypeID = json['JobTypeID'];
        ExpectedStartDate = JsonConverters.fromJson(json['ExpectedStartDate'],'DateTime',context!);
        ActualStartDate = JsonConverters.fromJson(json['ActualStartDate'],'DateTime',context!);
        ExpectedCompletionDate = JsonConverters.fromJson(json['ExpectedCompletionDate'],'DateTime',context!);
        ActualEndDate = JsonConverters.fromJson(json['ActualEndDate'],'DateTime',context!);
        Active = json['Active'];
        CreatedByUID = json['CreatedByUID'];
        ProjectID = json['ProjectID'];
        StatusId = json['StatusId'];
        AdvancedScheduling = json['AdvancedScheduling'];
        ShowTimes = json['ShowTimes'];
        Schedule = JsonConverters.fromJson(json['Schedule'],'List<CalendarEvent>',context!);
        return this;
    }

    Map<String, dynamic> toJson() => {
        'JobID': JobID,
        'JobName': JobName,
        'JobTypeID': JobTypeID,
        'ExpectedStartDate': JsonConverters.toJson(ExpectedStartDate,'DateTime',context!),
        'ActualStartDate': JsonConverters.toJson(ActualStartDate,'DateTime',context!),
        'ExpectedCompletionDate': JsonConverters.toJson(ExpectedCompletionDate,'DateTime',context!),
        'ActualEndDate': JsonConverters.toJson(ActualEndDate,'DateTime',context!),
        'Active': Active,
        'CreatedByUID': CreatedByUID,
        'ProjectID': ProjectID,
        'StatusId': StatusId,
        'AdvancedScheduling': AdvancedScheduling,
        'ShowTimes': ShowTimes,
        'Schedule': JsonConverters.toJson(Schedule,'List<CalendarEvent>',context!)
    };

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

class ProjectJobsListResponse implements IConvertible
{
    ResponseStatus? ResponseStatus;
    List<Job>? ProjectJobs = [];

    ProjectJobsListResponse({this.ResponseStatus,this.ProjectJobs});
    ProjectJobsListResponse.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

class ProjectJobsListRequest implements IConvertible
{
    int? ProjectID;
    List<Job>? ProjectJobs = [];

    ProjectJobsListRequest({this.ProjectID,this.ProjectJobs});
    ProjectJobsListRequest.fromJson(Map<String, dynamic> json) { fromMap(json); }

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

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

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

TypeContext _ctx = TypeContext(library: 'api.dev.dynamics.trendsic.com', types: <String, TypeInfo> {
    'CalendarEvent': TypeInfo(TypeOf.Class, create:() => CalendarEvent()),
    'Job': TypeInfo(TypeOf.Class, create:() => Job()),
    'List<CalendarEvent>': TypeInfo(TypeOf.Class, create:() => <CalendarEvent>[]),
    'ProjectJobsListResponse': TypeInfo(TypeOf.Class, create:() => ProjectJobsListResponse()),
    'List<Job>': TypeInfo(TypeOf.Class, create:() => <Job>[]),
    'ProjectJobsListRequest': TypeInfo(TypeOf.Class, create:() => ProjectJobsListRequest()),
});

Dart ProjectJobsListRequest DTOs

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

HTTP + XML

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

POST /v1/Project/Job/{ProjectID} HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: application/xml
Content-Type: application/xml
Content-Length: length

<ProjectJobsListRequest xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ProjectID>0</ProjectID>
  <ProjectJobs>
    <Job>
      <Active>false</Active>
      <ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
      <ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
      <AdvancedScheduling>false</AdvancedScheduling>
      <CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
      <ExpectedCompletionDate>0001-01-01T00:00:00</ExpectedCompletionDate>
      <ExpectedStartDate>0001-01-01T00:00:00</ExpectedStartDate>
      <JobID>0</JobID>
      <JobName>String</JobName>
      <JobTypeID>0</JobTypeID>
      <ProjectID>0</ProjectID>
      <Schedule>
        <CalendarEvent>
          <AgentReminderSentDate>0001-01-01T00:00:00</AgentReminderSentDate>
          <AllDay>false</AllDay>
          <CalendarEventId>0</CalendarEventId>
          <CalendarId>00000000-0000-0000-0000-000000000000</CalendarId>
          <CheckInId>00000000-0000-0000-0000-000000000000</CheckInId>
          <Checksum>String</Checksum>
          <ConfirmationTextId>String</ConfirmationTextId>
          <Confirmed>false</Confirmed>
          <ContactId>0</ContactId>
          <CreatedBy>String</CreatedBy>
          <CreatedByName>String</CreatedByName>
          <DateCreated>0001-01-01T00:00:00</DateCreated>
          <DateModified>0001-01-01T00:00:00</DateModified>
          <Deleted>false</Deleted>
          <Description>String</Description>
          <EventEnd>0001-01-01T00:00:00</EventEnd>
          <EventStart>0001-01-01T00:00:00</EventStart>
          <EventTypeId>0</EventTypeId>
          <FirstTextReminderId>String</FirstTextReminderId>
          <IsPrivate>false</IsPrivate>
          <JobID>0</JobID>
          <JobName>String</JobName>
          <JobStatusId>0</JobStatusId>
          <JobStatusName>String</JobStatusName>
          <Location>String</Location>
          <LocationUID>00000000-0000-0000-0000-000000000000</LocationUID>
          <MaxCrewEndDate>0001-01-01T00:00:00</MaxCrewEndDate>
          <MaxEquipmentEndDate>0001-01-01T00:00:00</MaxEquipmentEndDate>
          <ModifiedBy>String</ModifiedBy>
          <Offset>0</Offset>
          <Original_EventStart>0001-01-01T00:00:00</Original_EventStart>
          <Original_Recurrence>false</Original_Recurrence>
          <Original_RecurrenceBy>String</Original_RecurrenceBy>
          <Original_RecurrenceByValue>String</Original_RecurrenceByValue>
          <Original_RecurrenceFrequency>String</Original_RecurrenceFrequency>
          <Original_RecurrenceUntil>0001-01-01T00:00:00</Original_RecurrenceUntil>
          <ProjectEndDate>0001-01-01T00:00:00</ProjectEndDate>
          <ProjectID>0</ProjectID>
          <ProjectName>String</ProjectName>
          <ProjectStartDate>0001-01-01T00:00:00</ProjectStartDate>
          <Recurrence>false</Recurrence>
          <RecurrenceBy>String</RecurrenceBy>
          <RecurrenceByValue>String</RecurrenceByValue>
          <RecurrenceFrequency>String</RecurrenceFrequency>
          <RecurrenceUntil>0001-01-01T00:00:00</RecurrenceUntil>
          <ResourceId>0</ResourceId>
          <ResourceName>String</ResourceName>
          <SecondTextReminderId>String</SecondTextReminderId>
          <Summary>String</Summary>
          <TextReminderSentDate>0001-01-01T00:00:00</TextReminderSentDate>
          <TimeZone>String</TimeZone>
        </CalendarEvent>
      </Schedule>
      <ShowTimes>false</ShowTimes>
      <StatusId>0</StatusId>
    </Job>
  </ProjectJobs>
</ProjectJobsListRequest>
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length

<ProjectJobsListResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
  <ProjectJobs>
    <Job>
      <Active>false</Active>
      <ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
      <ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
      <AdvancedScheduling>false</AdvancedScheduling>
      <CreatedByUID>00000000-0000-0000-0000-000000000000</CreatedByUID>
      <ExpectedCompletionDate>0001-01-01T00:00:00</ExpectedCompletionDate>
      <ExpectedStartDate>0001-01-01T00:00:00</ExpectedStartDate>
      <JobID>0</JobID>
      <JobName>String</JobName>
      <JobTypeID>0</JobTypeID>
      <ProjectID>0</ProjectID>
      <Schedule>
        <CalendarEvent>
          <AgentReminderSentDate>0001-01-01T00:00:00</AgentReminderSentDate>
          <AllDay>false</AllDay>
          <CalendarEventId>0</CalendarEventId>
          <CalendarId>00000000-0000-0000-0000-000000000000</CalendarId>
          <CheckInId>00000000-0000-0000-0000-000000000000</CheckInId>
          <Checksum>String</Checksum>
          <ConfirmationTextId>String</ConfirmationTextId>
          <Confirmed>false</Confirmed>
          <ContactId>0</ContactId>
          <CreatedBy>String</CreatedBy>
          <CreatedByName>String</CreatedByName>
          <DateCreated>0001-01-01T00:00:00</DateCreated>
          <DateModified>0001-01-01T00:00:00</DateModified>
          <Deleted>false</Deleted>
          <Description>String</Description>
          <EventEnd>0001-01-01T00:00:00</EventEnd>
          <EventStart>0001-01-01T00:00:00</EventStart>
          <EventTypeId>0</EventTypeId>
          <FirstTextReminderId>String</FirstTextReminderId>
          <IsPrivate>false</IsPrivate>
          <JobID>0</JobID>
          <JobName>String</JobName>
          <JobStatusId>0</JobStatusId>
          <JobStatusName>String</JobStatusName>
          <Location>String</Location>
          <LocationUID>00000000-0000-0000-0000-000000000000</LocationUID>
          <MaxCrewEndDate>0001-01-01T00:00:00</MaxCrewEndDate>
          <MaxEquipmentEndDate>0001-01-01T00:00:00</MaxEquipmentEndDate>
          <ModifiedBy>String</ModifiedBy>
          <Offset>0</Offset>
          <Original_EventStart>0001-01-01T00:00:00</Original_EventStart>
          <Original_Recurrence>false</Original_Recurrence>
          <Original_RecurrenceBy>String</Original_RecurrenceBy>
          <Original_RecurrenceByValue>String</Original_RecurrenceByValue>
          <Original_RecurrenceFrequency>String</Original_RecurrenceFrequency>
          <Original_RecurrenceUntil>0001-01-01T00:00:00</Original_RecurrenceUntil>
          <ProjectEndDate>0001-01-01T00:00:00</ProjectEndDate>
          <ProjectID>0</ProjectID>
          <ProjectName>String</ProjectName>
          <ProjectStartDate>0001-01-01T00:00:00</ProjectStartDate>
          <Recurrence>false</Recurrence>
          <RecurrenceBy>String</RecurrenceBy>
          <RecurrenceByValue>String</RecurrenceByValue>
          <RecurrenceFrequency>String</RecurrenceFrequency>
          <RecurrenceUntil>0001-01-01T00:00:00</RecurrenceUntil>
          <ResourceId>0</ResourceId>
          <ResourceName>String</ResourceName>
          <SecondTextReminderId>String</SecondTextReminderId>
          <Summary>String</Summary>
          <TextReminderSentDate>0001-01-01T00:00:00</TextReminderSentDate>
          <TimeZone>String</TimeZone>
        </CalendarEvent>
      </Schedule>
      <ShowTimes>false</ShowTimes>
      <StatusId>0</StatusId>
    </Job>
  </ProjectJobs>
  <ResponseStatus xmlns:d2p1="http://schemas.servicestack.net/types">
    <d2p1:ErrorCode>String</d2p1:ErrorCode>
    <d2p1:Message>String</d2p1:Message>
    <d2p1:StackTrace>String</d2p1:StackTrace>
    <d2p1:Errors>
      <d2p1:ResponseError>
        <d2p1:ErrorCode>String</d2p1:ErrorCode>
        <d2p1:FieldName>String</d2p1:FieldName>
        <d2p1:Message>String</d2p1:Message>
        <d2p1:Meta xmlns:d5p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
          <d5p1:KeyValueOfstringstring>
            <d5p1:Key>String</d5p1:Key>
            <d5p1:Value>String</d5p1:Value>
          </d5p1:KeyValueOfstringstring>
        </d2p1:Meta>
      </d2p1:ResponseError>
    </d2p1:Errors>
    <d2p1:Meta xmlns:d3p1="http://schemas.microsoft.com/2003/10/Serialization/Arrays">
      <d3p1:KeyValueOfstringstring>
        <d3p1:Key>String</d3p1:Key>
        <d3p1:Value>String</d3p1:Value>
      </d3p1:KeyValueOfstringstring>
    </d2p1:Meta>
  </ResponseStatus>
</ProjectJobsListResponse>