| Requires any of the roles: | Agent, Administrator |
| GET,OPTIONS | /v1/project/{ProjectID}/timeline |
|---|
Imports System
Imports System.IO
Imports System.Collections
Imports System.Collections.Generic
Imports System.Runtime.Serialization
Imports ServiceStack
Imports ServiceStack.DataAnnotations
Imports CRM.AgencyPlatform.API.Internal
Namespace Global
Namespace CRM.AgencyPlatform.API.Internal
Public Partial Class JobDependency
Public Overridable Property JobDependencyID As Integer
Public Overridable Property TenantId As Guid
Public Overridable Property ProjectID As Integer
Public Overridable Property PredecessorJobID As Integer
Public Overridable Property SuccessorJobID As Integer
Public Overridable Property DependencyType As String
Public Overridable Property LagDays As Integer
Public Overridable Property CreatedBy As String
Public Overridable Property CreatedAt As Date?
Public Overridable Property UpdatedAt As Date?
End Class
Public Partial Class ProjectTimeline
Public Overridable Property ProjectID As Integer
Public Overridable Property Jobs As List(Of TimelineJob) = New List(Of TimelineJob)
Public Overridable Property Dependencies As List(Of JobDependency) = New List(Of JobDependency)
End Class
Public Partial Class ProjectTimelineRequest
Public Overridable Property ProjectID As Integer
End Class
Public Partial Class ProjectTimelineResponse
Public Overridable Property ResponseStatus As ResponseStatus
Public Overridable Property Timeline As ProjectTimeline
End Class
Public Partial Class TimelineCrew
Public Overridable Property ProjectJobCrewMemberID As Integer
Public Overridable Property ContactID As Integer
Public Overridable Property ContactName As String
Public Overridable Property BudgetedHours As Decimal?
End Class
Public Partial Class TimelineEquipment
Public Overridable Property ProjectJobEquipmentID As Integer
Public Overridable Property EquipmentID As Integer
Public Overridable Property EquipmentName As String
End Class
Public Partial Class TimelineJob
Public Overridable Property JobID As Integer
Public Overridable Property JobName As String
Public Overridable Property ExpectedStartDate As Date?
Public Overridable Property ExpectedCompletionDate As Date?
Public Overridable Property ActualStartDate As Date?
Public Overridable Property ActualEndDate As Date?
Public Overridable Property PercentComplete As Decimal
Public Overridable Property StatusID As Integer?
Public Overridable Property JobCategory As String
Public Overridable Property IsAgreementVisit As Boolean
Public Overridable Property OccurrenceDate As Date?
Public Overridable Property Crew As List(Of TimelineCrew) = New List(Of TimelineCrew)
Public Overridable Property Equipment As List(Of TimelineEquipment) = New List(Of TimelineEquipment)
End Class
End Namespace
End Namespace
VB.NET ProjectTimelineRequest DTOs
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.
GET /v1/project/{ProjectID}/timeline HTTP/1.1
Host: api.dev.dynamics.trendsic.com
Accept: application/xml
HTTP/1.1 200 OK
Content-Type: application/xml
Content-Length: length
<ProjectTimelineResponse xmlns:i="http://www.w3.org/2001/XMLSchema-instance" xmlns="http://schemas.datacontract.org/2004/07/CRM.AgencyPlatform.API.Internal">
<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>
<Timeline>
<Dependencies>
<JobDependency>
<CreatedAt>0001-01-01T00:00:00</CreatedAt>
<CreatedBy>String</CreatedBy>
<DependencyType>String</DependencyType>
<JobDependencyID>0</JobDependencyID>
<LagDays>0</LagDays>
<PredecessorJobID>0</PredecessorJobID>
<ProjectID>0</ProjectID>
<SuccessorJobID>0</SuccessorJobID>
<TenantId>00000000-0000-0000-0000-000000000000</TenantId>
<UpdatedAt>0001-01-01T00:00:00</UpdatedAt>
</JobDependency>
</Dependencies>
<Jobs>
<TimelineJob>
<ActualEndDate>0001-01-01T00:00:00</ActualEndDate>
<ActualStartDate>0001-01-01T00:00:00</ActualStartDate>
<Crew>
<TimelineCrew>
<BudgetedHours>0</BudgetedHours>
<ContactID>0</ContactID>
<ContactName>String</ContactName>
<ProjectJobCrewMemberID>0</ProjectJobCrewMemberID>
</TimelineCrew>
</Crew>
<Equipment>
<TimelineEquipment>
<EquipmentID>0</EquipmentID>
<EquipmentName>String</EquipmentName>
<ProjectJobEquipmentID>0</ProjectJobEquipmentID>
</TimelineEquipment>
</Equipment>
<ExpectedCompletionDate>0001-01-01T00:00:00</ExpectedCompletionDate>
<ExpectedStartDate>0001-01-01T00:00:00</ExpectedStartDate>
<IsAgreementVisit>false</IsAgreementVisit>
<JobCategory>String</JobCategory>
<JobID>0</JobID>
<JobName>String</JobName>
<OccurrenceDate>0001-01-01T00:00:00</OccurrenceDate>
<PercentComplete>0</PercentComplete>
<StatusID>0</StatusID>
</TimelineJob>
</Jobs>
<ProjectID>0</ProjectID>
</Timeline>
</ProjectTimelineResponse>