Trendsic Platform Service

<back to all web services

MaterialProjectJobsRequest

Requires Authentication
The following routes are available for this service:
GET,OPTIONS/v1/Project/{ProjectID}/material/{MaterialID}/Jobs
namespace CRM.AgencyPlatform.API.Internal

open System
open System.IO
open System.Collections
open System.Collections.Generic
open System.Runtime.Serialization
open ServiceStack
open ServiceStack.DataAnnotations

    [<AllowNullLiteral>]
    type CalendarEvent() = 
        member val CalendarEventId:Int32 = new Int32() with get,set
        member val CalendarId:Guid = new Guid() with get,set
        member val EventStart:DateTime = new DateTime() with get,set
        member val EventEnd:DateTime = new DateTime() with get,set
        member val Location:String = null with get,set
        member val Summary:String = null with get,set
        member val Description:String = null with get,set
        member val EventTypeId:Int32 = new Int32() with get,set
        member val Recurrence:Boolean = new Boolean() with get,set
        member val RecurrenceFrequency:String = null with get,set
        member val RecurrenceBy:String = null with get,set
        member val RecurrenceByValue:String = null with get,set
        member val RecurrenceUntil:DateTime = new DateTime() with get,set
        member val CreatedBy:String = null with get,set
        member val CreatedByName:String = null with get,set
        member val DateCreated:DateTime = new DateTime() with get,set
        member val ModifiedBy:String = null with get,set
        member val DateModified:DateTime = new DateTime() with get,set
        member val Deleted:Boolean = new Boolean() with get,set
        member val TimeZone:String = null with get,set
        member val Offset:Int32 = new Int32() with get,set
        member val TextReminderSentDate:DateTime = new DateTime() with get,set
        member val Confirmed:Boolean = new Boolean() with get,set
        member val ConfirmationTextId:String = null with get,set
        member val FirstTextReminderId:String = null with get,set
        member val SecondTextReminderId:String = null with get,set
        member val LocationUID:Nullable<Guid> = new Nullable<Guid>() with get,set
        member val AgentReminderSentDate:DateTime = new DateTime() with get,set
        member val ContactId:Int32 = new Int32() with get,set
        member val IsPrivate:Boolean = new Boolean() with get,set
        member val ProjectID:Int32 = new Int32() with get,set
        member val JobID:Int32 = new Int32() with get,set
        member val ProjectStartDate:DateTime = new DateTime() with get,set
        member val ProjectEndDate:DateTime = new DateTime() with get,set
        member val MaxCrewEndDate:DateTime = new DateTime() with get,set
        member val MaxEquipmentEndDate:DateTime = new DateTime() with get,set
        member val CheckInId:Guid = new Guid() with get,set
        member val AllDay:Boolean = new Boolean() with get,set
        member val JobName:String = null with get,set
        member val JobStatusName:String = null with get,set
        member val JobStatusId:Int32 = new Int32() with get,set
        member val ProjectName:String = null with get,set
        member val ResourceId:Int32 = new Int32() with get,set
        member val ResourceName:String = null with get,set
        member val Original_EventStart:DateTime = new DateTime() with get,set
        member val Original_Recurrence:Boolean = new Boolean() with get,set
        member val Original_RecurrenceFrequency:String = null with get,set
        member val Original_RecurrenceBy:String = null with get,set
        member val Original_RecurrenceByValue:String = null with get,set
        member val Original_RecurrenceUntil:DateTime = new DateTime() with get,set
        member val Checksum:String = null with get,set

    [<AllowNullLiteral>]
    type Job() = 
        member val JobID:Int32 = new Int32() with get,set
        member val JobName:String = null with get,set
        member val JobTypeID:Int32 = new Int32() with get,set
        member val ExpectedStartDate:DateTime = new DateTime() with get,set
        member val ActualStartDate:DateTime = new DateTime() with get,set
        member val ExpectedCompletionDate:DateTime = new DateTime() with get,set
        member val ActualEndDate:DateTime = new DateTime() with get,set
        member val Active:Boolean = new Boolean() with get,set
        member val CreatedByUID:Guid = new Guid() with get,set
        member val ProjectID:Int32 = new Int32() with get,set
        member val StatusId:Int32 = new Int32() with get,set
        member val AdvancedScheduling:Boolean = new Boolean() with get,set
        member val ShowTimes:Boolean = new Boolean() with get,set
        member val Schedule:ResizeArray<CalendarEvent> = new ResizeArray<CalendarEvent>() with get,set

    [<AllowNullLiteral>]
    type MaterialProjectJobsResponse() = 
        member val ResponseStatus:ResponseStatus = null with get,set
        member val Jobs:ResizeArray<Job> = new ResizeArray<Job>() with get,set

    [<AllowNullLiteral>]
    type MaterialProjectJobsRequest() = 
        member val ProjectID:Int32 = new Int32() with get,set
        member val MaterialID:Int32 = new Int32() with get,set

F# MaterialProjectJobsRequest 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 /v1/Project/{ProjectID}/material/{MaterialID}/Jobs HTTP/1.1 
Host: api.dev.dynamics.trendsic.com 
Accept: text/jsv
HTTP/1.1 200 OK
Content-Type: text/jsv
Content-Length: length

{
	ResponseStatus: 
	{
		ErrorCode: String,
		Message: String,
		StackTrace: String,
		Errors: 
		[
			{
				ErrorCode: String,
				FieldName: String,
				Message: String,
				Meta: 
				{
					String: String
				}
			}
		],
		Meta: 
		{
			String: String
		}
	},
	Jobs: 
	[
		{
			JobID: 0,
			JobName: String,
			JobTypeID: 0,
			ExpectedStartDate: 0001-01-01,
			ActualStartDate: 0001-01-01,
			ExpectedCompletionDate: 0001-01-01,
			ActualEndDate: 0001-01-01,
			Active: False,
			CreatedByUID: 00000000000000000000000000000000,
			ProjectID: 0,
			StatusId: 0,
			AdvancedScheduling: False,
			ShowTimes: False,
			Schedule: 
			[
				{
					CalendarEventId: 0,
					CalendarId: 00000000000000000000000000000000,
					EventStart: 0001-01-01,
					EventEnd: 0001-01-01,
					Location: String,
					Summary: String,
					Description: String,
					EventTypeId: 0,
					Recurrence: False,
					RecurrenceFrequency: String,
					RecurrenceBy: String,
					RecurrenceByValue: String,
					RecurrenceUntil: 0001-01-01,
					CreatedBy: String,
					CreatedByName: String,
					DateCreated: 0001-01-01,
					ModifiedBy: String,
					DateModified: 0001-01-01,
					Deleted: False,
					TimeZone: String,
					Offset: 0,
					TextReminderSentDate: 0001-01-01,
					Confirmed: False,
					ConfirmationTextId: String,
					FirstTextReminderId: String,
					SecondTextReminderId: String,
					LocationUID: 00000000000000000000000000000000,
					AgentReminderSentDate: 0001-01-01,
					ContactId: 0,
					IsPrivate: False,
					ProjectID: 0,
					JobID: 0,
					ProjectStartDate: 0001-01-01,
					ProjectEndDate: 0001-01-01,
					MaxCrewEndDate: 0001-01-01,
					MaxEquipmentEndDate: 0001-01-01,
					CheckInId: 00000000000000000000000000000000,
					AllDay: False,
					JobName: String,
					JobStatusName: String,
					JobStatusId: 0,
					ProjectName: String,
					ResourceId: 0,
					ResourceName: String,
					Original_EventStart: 0001-01-01,
					Original_Recurrence: False,
					Original_RecurrenceFrequency: String,
					Original_RecurrenceBy: String,
					Original_RecurrenceByValue: String,
					Original_RecurrenceUntil: 0001-01-01,
					Checksum: String
				}
			]
		}
	]
}